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 784x38
        RenderText {#text} at (0,1) size 65x17
          text run at (0,1) width 65: "Test for "
        RenderInline {I} at (0,0) size 755x36
          RenderInline {A} at (0,0) size 373x17 [color=#0000EE]
            RenderText {#text} at (64,1) size 373x17
              text run at (64,1) width 373: "http://bugs.webkit.org/show_bug.cgi?id=13775"
          RenderText {#text} at (436,1) size 755x36
            text run at (436,1) width 6: " "
            text run at (441,1) width 314: "REGRESSION: Popup button text should"
            text run at (0,20) width 525: "use \"natural\" directionality to match the items in the popup menu"
        RenderText {#text} at (525,20) size 5x17
          text run at (525,20) width 5: "."
      RenderBlock {DIV} at (0,54) size 784x68
        RenderBlock {DIV} at (0,0) size 784x34
          RenderMenuList {SELECT} at (0,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 21x17
                text run at (9,5) width 10 RTL: "\x{5D0}"
                text run at (19,5) width 11: "A"
          RenderText {#text} at (70,8) size 5x17
            text run at (70,8) width 5: " "
          RenderMenuList {SELECT} at (75,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 21x17
                text run at (9,5) width 11: "A"
                text run at (20,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (145,8) size 5x17
            text run at (145,8) width 5: " "
          RenderMenuList {SELECT} at (150,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 26x17
                text run at (9,5) width 5: "("
                text run at (14,5) width 10 RTL: "\x{5D0}"
                text run at (24,5) width 11: "A"
          RenderText {#text} at (220,8) size 5x17
            text run at (220,8) width 5: " "
          RenderMenuList {SELECT} at (225,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 26x17
                text run at (9,5) width 16: "(A"
                text run at (25,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {DIV} at (0,34) size 784x34
          RenderMenuList {SELECT} at (489,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 21x17
                text run at (9,5) width 10 RTL: "\x{5D0}"
                text run at (19,5) width 11: "A"
          RenderText {#text} at (559,8) size 5x17
            text run at (559,8) width 5: " "
          RenderMenuList {SELECT} at (564,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 21x17
                text run at (9,5) width 11: "A"
                text run at (20,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (634,8) size 5x17
            text run at (634,8) width 5: " "
          RenderMenuList {SELECT} at (639,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 26x17
                text run at (9,5) width 5: "("
                text run at (14,5) width 10 RTL: "\x{5D0}"
                text run at (24,5) width 11: "A"
          RenderText {#text} at (709,8) size 5x17
            text run at (709,8) width 5: " "
          RenderMenuList {SELECT} at (714,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (9,5) size 26x17
                text run at (9,5) width 16: "(A"
                text run at (25,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (0,0) size 0x0
      RenderBlock {DIV} at (0,122) size 784x68
        RenderBlock {DIV} at (0,0) size 784x34
          RenderMenuList {SELECT} at (225,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (38,5) size 21x17
                text run at (38,5) width 11: "A"
                text run at (49,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (220,8) size 5x17
            text run at (220,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (150,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (38,5) size 21x17
                text run at (38,5) width 10 RTL: "\x{5D0}"
                text run at (48,5) width 11: "A"
          RenderText {#text} at (145,8) size 5x17
            text run at (145,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (75,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (33,5) size 26x17
                text run at (33,5) width 11: "A"
                text run at (44,5) width 15 RTL: "(\x{5D0}"
          RenderText {#text} at (70,8) size 5x17
            text run at (70,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (0,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (33,5) size 26x17
                text run at (33,5) width 10 RTL: "\x{5D0}"
                text run at (43,5) width 11: "A"
                text run at (54,5) width 5 RTL: "("
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {DIV} at (0,34) size 784x34
          RenderMenuList {SELECT} at (714,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (38,5) size 21x17
                text run at (38,5) width 11: "A"
                text run at (49,5) width 10 RTL: "\x{5D0}"
          RenderText {#text} at (709,8) size 5x17
            text run at (709,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (639,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (38,5) size 21x17
                text run at (38,5) width 10 RTL: "\x{5D0}"
                text run at (48,5) width 11: "A"
          RenderText {#text} at (634,8) size 5x17
            text run at (634,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (564,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (33,5) size 26x17
                text run at (33,5) width 11: "A"
                text run at (44,5) width 15 RTL: "(\x{5D0}"
          RenderText {#text} at (559,8) size 5x17
            text run at (559,8) width 5 RTL: " "
          RenderMenuList {SELECT} at (489,2) size 70x30 [color=#2E3436] [bgcolor=#FFFFFF] [border: (1px solid #2E3436)]
            RenderBlock (anonymous) at (1,1) size 68x28
              RenderText at (33,5) size 26x17
                text run at (33,5) width 10 RTL: "\x{5D0}"
                text run at (43,5) width 11: "A"
                text run at (54,5) width 5 RTL: "("
          RenderText {#text} at (0,0) size 0x0
