layer at (0,0) size 982x600
  RenderView at (0,0) size 800x585
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584
      RenderBlock (anonymous) at (0,0) size 784x36
        RenderText {#text} at (0,0) size 597x17
          text run at (0,0) width 597: "This test verifies the visual alignment of items in a select element while changing text direction."
        RenderBR {BR} at (597,0) size 0x17
        RenderText {#text} at (0,18) size 426x17
          text run at (0,18) width 426: "All the items in the following select elements should be left-aligned."
      RenderTable {TABLE} at (0,36) size 864x164
        RenderTableSection {TBODY} at (0,0) size 864x164
          RenderTableRow {TR} at (0,2) size 864x79
            RenderTableCell {TD} at (2,2) size 204x79 [r=0 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 198x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (208,2) size 223x79 [r=0 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 217x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (433,2) size 204x79 [r=0 c=2 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 198x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (639,2) size 223x79 [r=0 c=3 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 217x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
          RenderTableRow {TR} at (0,83) size 864x79
            RenderTableCell {TD} at (2,83) size 204x79 [r=1 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 198x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (208,83) size 223x79 [r=1 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 217x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
      RenderBlock (anonymous) at (0,200) size 784x18
        RenderText {#text} at (0,0) size 435x17
          text run at (0,0) width 435: "All the items in the following select elements should be right-aligned."
      RenderTable {TABLE} at (0,218) size 850x164
        RenderTableSection {TBODY} at (0,0) size 850x164
          RenderTableRow {TR} at (0,2) size 850x79
            RenderTableCell {TD} at (2,2) size 214x79 [r=0 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 208x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (218,2) size 206x79 [r=0 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 200x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (426,2) size 214x79 [r=0 c=2 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 208x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (642,2) size 206x79 [r=0 c=3 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 200x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
          RenderTableRow {TR} at (0,83) size 850x79
            RenderTableCell {TD} at (2,83) size 214x79 [r=1 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 208x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (218,83) size 206x79 [r=1 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 200x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
      RenderBlock (anonymous) at (0,382) size 784x18
        RenderText {#text} at (0,0) size 444x17
          text run at (0,0) width 444: "All the items in the following select elements should be center-aligned."
      RenderTable {TABLE} at (0,400) size 908x83
        RenderTableSection {TBODY} at (0,0) size 908x83
          RenderTableRow {TR} at (0,2) size 908x79
            RenderTableCell {TD} at (2,2) size 227x79 [r=0 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 221x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (231,2) size 222x79 [r=0 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 216x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (455,2) size 227x79 [r=0 c=2 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 221x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (684,2) size 222x79 [r=0 c=3 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 216x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
      RenderBlock (anonymous) at (0,483) size 784x18
        RenderText {#text} at (0,0) size 290x17
          text run at (0,0) width 290: "The following tables check mixed alignments."
      RenderTable {TABLE} at (0,501) size 974x83
        RenderTableSection {TBODY} at (0,0) size 974x83
          RenderTableRow {TR} at (0,2) size 974x79
            RenderTableCell {TD} at (2,2) size 224x79 [r=0 c=0 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 218x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (228,2) size 224x79 [r=0 c=1 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 218x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (454,2) size 258x79 [r=0 c=2 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 252x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
            RenderTableCell {TD} at (714,2) size 258x79 [r=0 c=3 rs=1 cs=1]
              RenderListBox {SELECT} at (3,3) size 252x73 [bgcolor=#FFFFFF] [border: (1px inset #808080)]
