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
      RenderBlock {P} at (0,0) size 784x40
        RenderText {#text} at (0,0) size 54x19
          text run at (0,0) width 54: "Test for "
        RenderInline {I} at (0,0) size 716x39
          RenderInline {A} at (0,0) size 305x19 [color=#0000EE]
            RenderText {#text} at (53,0) size 305x19
              text run at (53,0) width 305: "http://bugs.webkit.org/show_bug.cgi?id=13775"
          RenderText {#text} at (357,0) size 716x39
            text run at (357,0) width 5: " "
            text run at (361,0) width 355: "REGRESSION: Popup button text should use \"natural\""
            text run at (0,20) width 330: "directionality to match the items in the popup menu"
        RenderText {#text} at (329,20) size 5x19
          text run at (329,20) width 5: "."
      RenderBlock {DIV} at (0,56) size 784x48
        RenderBlock {DIV} at (0,0) size 784x24
          RenderMenuList {SELECT} at (0,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 14x14
                text run at (0,0) width 7 RTL: "\x{5D0}"
                text run at (6,0) width 8: "A"
          RenderText {#text} at (70,0) size 4x19
            text run at (70,0) width 4: " "
          RenderMenuList {SELECT} at (74,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 14x14
                text run at (0,0) width 8: "A"
                text run at (7,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (144,0) size 4x19
            text run at (144,0) width 4: " "
          RenderMenuList {SELECT} at (148,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 18x14
                text run at (0,0) width 4: "("
                text run at (3,0) width 7 RTL: "\x{5D0}"
                text run at (9,0) width 9: "A"
          RenderText {#text} at (218,0) size 4x19
            text run at (218,0) width 4: " "
          RenderMenuList {SELECT} at (222,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 18x14
                text run at (0,0) width 11: "(A"
                text run at (11,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {DIV} at (0,24) size 784x24
          RenderMenuList {SELECT} at (492,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 14x14
                text run at (0,0) width 7 RTL: "\x{5D0}"
                text run at (6,0) width 8: "A"
          RenderText {#text} at (562,0) size 4x19
            text run at (562,0) width 4: " "
          RenderMenuList {SELECT} at (566,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 14x14
                text run at (0,0) width 8: "A"
                text run at (7,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (636,0) size 4x19
            text run at (636,0) width 4: " "
          RenderMenuList {SELECT} at (640,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 18x14
                text run at (0,0) width 4: "("
                text run at (3,0) width 7 RTL: "\x{5D0}"
                text run at (9,0) width 9: "A"
          RenderText {#text} at (710,0) size 4x19
            text run at (710,0) width 4: " "
          RenderMenuList {SELECT} at (714,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (0,0) size 18x14
                text run at (0,0) width 11: "(A"
                text run at (11,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (0,0) size 0x0
      RenderBlock {DIV} at (0,104) size 784x48
        RenderBlock {DIV} at (0,0) size 784x24
          RenderMenuList {SELECT} at (222,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (44,0) size 14x14
                text run at (44,0) width 8: "A"
                text run at (51,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (218,0) size 4x19
            text run at (218,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (148,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (44,0) size 14x14
                text run at (44,0) width 7 RTL: "\x{5D0}"
                text run at (50,0) width 8: "A"
          RenderText {#text} at (144,0) size 4x19
            text run at (144,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (74,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (40,0) size 18x14
                text run at (40,0) width 9: "A"
                text run at (48,0) width 10 RTL: "(\x{5D0}"
          RenderText {#text} at (70,0) size 4x19
            text run at (70,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (0,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (40,0) size 18x14
                text run at (40,0) width 7 RTL: "\x{5D0}"
                text run at (47,0) width 8: "A"
                text run at (54,0) width 4 RTL: "("
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {DIV} at (0,24) size 784x24
          RenderMenuList {SELECT} at (714,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (44,0) size 14x14
                text run at (44,0) width 8: "A"
                text run at (51,0) width 7 RTL: "\x{5D0}"
          RenderText {#text} at (710,0) size 4x19
            text run at (710,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (640,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (44,0) size 14x14
                text run at (44,0) width 7 RTL: "\x{5D0}"
                text run at (50,0) width 8: "A"
          RenderText {#text} at (636,0) size 4x19
            text run at (636,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (566,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (40,0) size 18x14
                text run at (40,0) width 9: "A"
                text run at (48,0) width 10 RTL: "(\x{5D0}"
          RenderText {#text} at (562,0) size 4x19
            text run at (562,0) width 4 RTL: " "
          RenderMenuList {SELECT} at (492,2) size 70x20 [bgcolor=#FFFFFF03] [border: (1px solid #4C4C4C)]
            RenderBlock (anonymous) at (6,2) size 58x16
              RenderText at (40,0) size 18x14
                text run at (40,0) width 7 RTL: "\x{5D0}"
                text run at (47,0) width 8: "A"
                text run at (54,0) width 4 RTL: "("
          RenderText {#text} at (0,0) size 0x0
