layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584
      RenderTable {TABLE} at (0,0) size 468x146 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 466x144
          RenderTableRow {TR} at (0,0) size 466x144
            RenderTableCell {TD} at (0,0) size 466x144 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
              RenderTable {TABLE} at (1,1) size 464x142 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 462x140
                  RenderTableRow {TR} at (0,1) size 462x28
                    RenderTableCell {TD} at (1,1) size 140x28 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                      RenderText {#text} at (5,5) size 130x18
                        text run at (5,5) width 130: "General Preferences"
                    RenderTableCell {TD} at (141,1) size 148x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
                      RenderInline {A} at (0,0) size 137x18 [color=#0000EE]
                        RenderText {#text} at (5,5) size 137x18
                          text run at (5,5) width 137: "Groups / Permissions"
                    RenderTableCell {TD} at (289,1) size 72x28 [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=1]
                      RenderInline {A} at (0,0) size 62x18 [color=#0000EE]
                        RenderText {#text} at (5,5) size 62x18
                          text run at (5,5) width 62: "Password"
                    RenderTableCell {TD} at (361,1) size 49x28 [border: (1px inset #808080)] [r=0 c=3 rs=1 cs=1]
                      RenderInline {A} at (0,0) size 39x18 [color=#0000EE]
                        RenderText {#text} at (5,5) size 39x18
                          text run at (5,5) width 39: "Email"
                    RenderTableCell {TD} at (410,1) size 51x28 [border: (1px inset #808080)] [r=0 c=4 rs=1 cs=1]
                      RenderText {#text} at (5,5) size 40x18
                        text run at (5,5) width 40: "Views"
                  RenderTableRow {TR} at (0,30) size 462x109
                    RenderTableCell {TD} at (1,30) size 460x109 [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=5]
                      RenderBlock (anonymous) at (5,5) size 450x18
                        RenderBR {BR} at (224,0) size 1x18
                      RenderTable {TABLE} at (82,23) size 296x81
                        RenderTableSection {TBODY} at (0,0) size 295x81
                          RenderTableRow {TR} at (0,2) size 295x77
                            RenderTableCell {TD} at (2,2) size 291x77 [r=0 c=0 rs=1 cs=1]
                              RenderBlock {FORM} at (1,1) size 289x59
                                RenderTable {TABLE} at (0,0) size 289x59 [border: (1px outset #808080)]
                                  RenderTableSection {TBODY} at (1,1) size 287x57
                                    RenderTableRow {TR} at (0,0) size 287x57
                                      RenderTableCell {TD} at (0,0) size 287x57 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                                        RenderBlock (anonymous) at (1,1) size 285x18
                                          RenderText {#text} at (88,0) size 109x18
                                            text run at (88,0) width 109: "User Preferences"
                                        RenderTable {TABLE} at (1,19) size 285x37 [border: (1px outset #808080)]
                                          RenderTableSection {TBODY} at (1,1) size 283x35
                                            RenderTableRow {TR} at (0,1) size 283x33
                                              RenderTableCell {TH} at (1,3) size 120x29 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                                                RenderInline {NOBR} at (0,0) size 110x18
                                                  RenderText {#text} at (5,5) size 110x19
                                                    text run at (5,6) width 110: "Email Address :"
                                              RenderTableCell {TD} at (121,1) size 161x33 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
                                                RenderTextControl {INPUT} at (7,7) size 146x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
                                                RenderText {#text} at (0,0) size 0x0
layer at (232,99) size 140x13 scrollWidth 191
  RenderBlock {DIV} at (3,3) size 140x13
    RenderText {#text} at (0,0) size 190x13
      text run at (0,0) width 190: "simon.king@pipinghotnetworks.com"
