layer at (0,0) size 800x600
  LayoutView at (0,0) size 800x600
layer at (0,0) size 800x600
  LayoutBlockFlow {HTML} at (0,0) size 800x600
    LayoutBlockFlow {BODY} at (8,8) size 784x576
      LayoutBlockFlow {P} at (0,0) size 784x36
        LayoutText {#text} at (0,0) size 54x18
          text run at (0,0) width 54: "Test for "
        LayoutInline {I} at (0,0) size 757x36
          LayoutInline {A} at (0,0) size 305x18 [color=#0000EE]
            LayoutText {#text} at (53,0) size 305x18
              text run at (53,0) width 305: "http://bugs.webkit.org/show_bug.cgi?id=15181"
          LayoutText {#text} at (357,0) size 757x36
            text run at (357,0) width 5: " "
            text run at (361,0) width 396: "text-transform: uppercase not working in input (submit, reset,"
            text run at (0,18) width 107: "button) elements"
        LayoutText {#text} at (106,18) size 5x18
          text run at (106,18) width 5: "."
      LayoutBlockFlow {P} at (0,52) size 784x19
        LayoutButton {BUTTON} at (0,1) size 82.44x18 [bgcolor=#FFFFFF] [border: none (2px solid #D1D1D1) none (2px solid #D1D1D1)]
          LayoutBlockFlow (anonymous) at (8,2) size 66.44x13
            LayoutText {#text} at (0,0) size 67x13
              text run at (0,0) width 67: "UPPERCASE"
        LayoutText {#text} at (82,0) size 5x18
          text run at (82,0) width 5: " "
        LayoutButton {BUTTON} at (86.44,1) size 66.50x18 [bgcolor=#FFFFFF] [border: none (2px solid #D1D1D1) none (2px solid #D1D1D1)]
          LayoutBlockFlow (anonymous) at (8,2) size 50.50x13
            LayoutText {#text} at (0,0) size 51x13
              text run at (0,0) width 51: "lowercase"
        LayoutText {#text} at (152,0) size 5x18
          text run at (152,0) width 5: " "
        LayoutButton {BUTTON} at (156.94,1) size 65.05x18 [bgcolor=#FFFFFF] [border: none (2px solid #D1D1D1) none (2px solid #D1D1D1)]
          LayoutBlockFlow (anonymous) at (8,2) size 49.05x13
            LayoutText {#text} at (0,0) size 50x13
              text run at (0,0) width 50: "Capitalize"
        LayoutText {#text} at (0,0) size 0x0
      LayoutBlockFlow {P} at (0,87) size 784x19
        LayoutButton {INPUT} at (0,1) size 82.44x18 [bgcolor=#FFFFFF]
          LayoutBlockFlow (anonymous) at (8,2) size 66.44x13
            LayoutText {#text} at (0,0) size 67x13
              text run at (0,0) width 67: "UPPERCASE"
        LayoutText {#text} at (82,0) size 5x18
          text run at (82,0) width 5: " "
        LayoutButton {INPUT} at (86.44,1) size 66.50x18 [bgcolor=#FFFFFF]
          LayoutBlockFlow (anonymous) at (8,2) size 50.50x13
            LayoutText {#text} at (0,0) size 51x13
              text run at (0,0) width 51: "lowercase"
        LayoutText {#text} at (152,0) size 5x18
          text run at (152,0) width 5: " "
        LayoutButton {INPUT} at (156.94,1) size 65.05x18 [bgcolor=#FFFFFF]
          LayoutBlockFlow (anonymous) at (8,2) size 49.05x13
            LayoutText {#text} at (0,0) size 50x13
              text run at (0,0) width 50: "Capitalize"
        LayoutText {#text} at (0,0) size 0x0
