layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x443
  RenderBlock {HTML} at (0,0) size 800x444
    RenderBody {BODY} at (8,16) size 784x420
      RenderBlock {P} at (0,0) size 784x36
        RenderText {#text} at (0,0) size 139x18
          text run at (0,0) width 139: "This is a test case for "
        RenderInline {I} at (0,0) size 773x36
          RenderText {#text} at (138,0) size 773x36
            text run at (138,0) width 635: "http://bugzilla.opendarwin.org/show_bug.cgi?id=5826 Blocks with direction:rtl and overflow:auto"
            text run at (0,18) width 219: "or scroll have incorrect scrollbars"
        RenderText {#text} at (218,18) size 5x18
          text run at (218,18) width 5: "."
      RenderBlock (anonymous) at (0,52) size 784x18
        RenderText {#text} at (0,0) size 469x18
          text run at (0,0) width 469: "The right column should be a mirror-image of the left column in terms of"
      RenderBlock {UL} at (0,86) size 784x72
        RenderListItem {LI} at (40,0) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 168x18
            text run at (0,0) width 168: "the presence of a scrollbar"
        RenderListItem {LI} at (40,18) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 242x18
            text run at (0,0) width 242: "the initial position of the scroll thumb"
        RenderListItem {LI} at (40,36) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 462x18
            text run at (0,0) width 462: "which letters are visible initially and when you scroll (in the top 3 rows)"
        RenderListItem {LI} at (40,54) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 591x18
            text run at (0,0) width 591: "the position of the blue and olive boxes, initially and when you scroll (in the bottom 2 rows)"
      RenderTable {TABLE} at (0,174) size 256x246
        RenderTableSection {TBODY} at (0,0) size 256x246
          RenderTableRow {TR} at (0,2) size 256x242
            RenderTableCell {TD} at (2,2) size 125x242 [r=0 c=0 rs=1 cs=1]
            RenderTableCell {TD} at (129,2) size 125x242 [r=0 c=1 rs=1 cs=1]
layer at (15,197) size 115x43 clip at (25,197) size 100x28 scrollWidth 191
  RenderBlock {DIV} at (5,5) size 115x44 [bgcolor=#FFFF00] [border: none (5px solid #008000) none (10px solid #FF0000)]
    RenderText {#text} at (10,0) size 192x18
      text run at (10,0) width 192: "abcdefghijklmnopqrstuvwxyz"
layer at (15,244) size 115x43 clip at (25,244) size 100x43
  RenderBlock {DIV} at (5,52) size 115x44 [bgcolor=#FFFF00] [border: none (5px solid #008000) none (10px solid #FF0000)]
    RenderBlock {DIV} at (10,0) size 100x18 [bgcolor=#D3D3D3]
      RenderText {#text} at (-91,0) size 192x18
        text run at (-91,0) width 191: "abcdefghijklmnopqrstuvwxyz"
layer at (15,291) size 115x43 clip at (25,291) size 100x28 scrollWidth 191
  RenderBlock {DIV} at (5,99) size 115x44 [bgcolor=#FFFF00] [border: none (5px solid #008000) none (10px solid #FF0000)]
    RenderBlock {DIV} at (10,0) size 100x18 [bgcolor=#D3D3D3]
      RenderText {#text} at (0,0) size 192x18
        text run at (0,0) width 192: "abcdefghijklmnopqrstuvwxyz"
layer at (142,197) size 115x43 clip at (147,197) size 100x28 scrollX 91 scrollWidth 191
  RenderBlock {DIV} at (5,5) size 115x44 [bgcolor=#FFFF00] [border: none (10px solid #FF0000) none (5px solid #008000)]
    RenderText {#text} at (-86,0) size 192x18
      text run at (-86,0) width 191: "zyxwvutsrqponmlkjihgfedcba"
layer at (142,244) size 115x43 clip at (147,244) size 100x43
  RenderBlock {DIV} at (5,52) size 115x44 [bgcolor=#FFFF00] [border: none (10px solid #FF0000) none (5px solid #008000)]
    RenderBlock {DIV} at (5,0) size 100x18 [bgcolor=#D3D3D3]
      RenderText {#text} at (0,0) size 192x18
        text run at (0,0) width 192: "zyxwvutsrqponmlkjihgfedcba"
layer at (142,291) size 115x43 clip at (147,291) size 100x28 scrollX 91 scrollWidth 191
  RenderBlock {DIV} at (5,99) size 115x44 [bgcolor=#FFFF00] [border: none (10px solid #FF0000) none (5px solid #008000)]
    RenderBlock {DIV} at (5,0) size 100x18 [bgcolor=#D3D3D3]
      RenderText {#text} at (-91,0) size 192x18
        text run at (-91,0) width 191: "zyxwvutsrqponmlkjihgfedcba"
layer at (15,338) size 115x43 clip at (25,338) size 100x43
  RenderBlock (relative positioned) {DIV} at (5,146) size 115x44 [bgcolor=#FFFF00] [border: none (5px solid #008000) none (10px solid #FF0000)]
layer at (71,358) size 8x4
  RenderBlock (positioned) {DIV} at (56,20) size 8x4 [bgcolor=#0000FF]
layer at (-25,338) size 70x20 backgroundClip at (25,338) size 100x43 clip at (25,338) size 100x43
  RenderBlock (positioned) {DIV} at (-40,0) size 70x20 [bgcolor=#808000]
layer at (15,385) size 115x43 clip at (25,385) size 100x28 scrollWidth 150
  RenderBlock (relative positioned) {DIV} at (5,193) size 115x44 [bgcolor=#FFFF00] [border: none (5px solid #008000) none (10px solid #FF0000)]
layer at (71,405) size 8x4
  RenderBlock (positioned) {DIV} at (56,20) size 8x4 [bgcolor=#0000FF]
layer at (105,385) size 70x20 backgroundClip at (25,385) size 100x28 clip at (25,385) size 100x28
  RenderBlock (positioned) {DIV} at (90,0) size 70x20 [bgcolor=#808000]
layer at (142,338) size 115x43 clip at (147,338) size 100x43
  RenderBlock (relative positioned) {DIV} at (5,146) size 115x44 [bgcolor=#FFFF00] [border: none (10px solid #FF0000) none (5px solid #008000)]
layer at (193,358) size 8x4
  RenderBlock (positioned) {DIV} at (51,20) size 8x4 [bgcolor=#0000FF]
layer at (227,338) size 70x20 backgroundClip at (147,338) size 100x43 clip at (147,338) size 100x43
  RenderBlock (positioned) {DIV} at (85,0) size 70x20 [bgcolor=#808000]
layer at (142,385) size 115x43 clip at (147,385) size 100x28 scrollX 50 scrollWidth 150
  RenderBlock (relative positioned) {DIV} at (5,193) size 115x44 [bgcolor=#FFFF00] [border: none (10px solid #FF0000) none (5px solid #008000)]
layer at (193,405) size 8x4
  RenderBlock (positioned) {DIV} at (51,20) size 8x4 [bgcolor=#0000FF]
layer at (97,385) size 70x20 backgroundClip at (147,385) size 100x28 clip at (147,385) size 100x28
  RenderBlock (positioned) {DIV} at (-45,0) size 70x20 [bgcolor=#808000]
