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
      RenderText {#text} at (0,0) size 336x18
        text run at (0,0) width 336: "This tests that you can set the placeholder text color."
      RenderBR {BR} at (335,14) size 1x0
      RenderTextControl {INPUT} at (2,20) size 147x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
      RenderText {#text} at (150,20) size 5x18
        text run at (150,20) width 5: " "
      RenderTextControl {INPUT} at (156,20) size 175x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
        RenderFlexibleBox {DIV} at (3,0) size 168x19
          RenderBlock {DIV} at (0,0) size 8x19
          RenderBlock {DIV} at (8,3) size 141x13
          RenderBlock {DIV} at (148,0) size 20x19
      RenderText {#text} at (332,20) size 5x18
        text run at (332,20) width 5: " "
      RenderTextControl {INPUT} at (338,20) size 148x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
        RenderFlexibleBox {DIV} at (3,3) size 141x13
          RenderBlock {DIV} at (0,0) size 141x13
      RenderText {#text} at (487,20) size 5x18
        text run at (487,20) width 5: " "
      RenderTextControl {INPUT} at (493,20) size 147x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
      RenderText {#text} at (641,20) size 5x18
        text run at (641,20) width 5: " "
      RenderTextControl {INPUT} at (2,43) size 147x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
      RenderText {#text} at (150,43) size 5x18
        text run at (150,43) width 5: " "
      RenderTextControl {INPUT} at (156,43) size 148x19 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
      RenderText {#text} at (0,0) size 0x0
layer at (13,31) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13 [color=#640000]
    RenderText {#text} at (0,0) size 21x13
      text run at (0,0) width 21: "text"
layer at (13,31) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13
layer at (176,31) size 141x13
  RenderBlock {DIV} at (11,3) size 141x13 [color=#640000]
    RenderText {#text} at (0,0) size 36x13
      text run at (0,0) width 36: "search"
layer at (176,31) size 141x13
  RenderBlock {DIV} at (0,0) size 141x13
layer at (350,31) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13 [color=#640000]
    RenderText {#text} at (0,0) size 51x13
      text run at (0,0) width 51: "password"
layer at (350,31) size 141x13
  RenderBlock {DIV} at (0,0) size 141x13
layer at (505,31) size 140x13
  RenderBlock {DIV} at (3,3) size 140x13 [color=#640000]
    RenderText {#text} at (0,0) size 68x13
      text run at (0,0) width 68: "disabled text"
layer at (505,31) size 140x13
  RenderBlock {DIV} at (3,3) size 140x13 [color=#545454]
layer at (13,54) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13 [color=#A9A9A9]
    RenderText {#text} at (0,0) size 37x13
      text run at (0,0) width 37: "default"
layer at (13,54) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13
layer at (168,54) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13 [color=#A9A9A9]
    RenderText {#text} at (0,0) size 85x13
      text run at (0,0) width 85: "default disabled"
layer at (168,54) size 141x13
  RenderBlock {DIV} at (3,3) size 141x13
