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 {H3} at (0,0) size 784x22
        RenderText {#text} at (0,0) size 164x22
          text run at (0,0) width 164: "Default Appearance"
      RenderBlock (anonymous) at (0,40) size 784x42
        RenderText {#text} at (0,0) size 456x18
          text run at (0,0) width 456: "List color controls have different appearance if ENABLE(DATALIST)."
        RenderBR {BR} at (456,14) size 0x0
        RenderBlock {INPUT} at (0,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#000000] [border: (1px solid #777777)]
        RenderBlock {INPUT} at (44,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#000000] [border: (1px solid #777777)]
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {H3} at (0,100) size 784x23
        RenderText {#text} at (0,0) size 160x22
          text run at (0,0) width 160: "Different Font Sizes"
      RenderBlock (anonymous) at (0,141) size 784x42
        RenderText {#text} at (0,0) size 577x18
          text run at (0,0) width 577: "List color controls have different sizes depending on font sizes. Normal color controls don't."
        RenderBR {BR} at (577,14) size 0x0
        RenderBlock {INPUT} at (0,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (44,21) size 4x18
          text run at (44,21) width 4: " "
        RenderBlock {INPUT} at (48,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (92,21) size 4x18
          text run at (92,21) width 4: " "
        RenderBlock {INPUT} at (96,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (140,21) size 4x18
          text run at (140,21) width 4: " "
        RenderBlock {INPUT} at (144,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (188,21) size 4x18
          text run at (188,21) width 4: " "
        RenderBlock {INPUT} at (192,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (236,21) size 4x18
          text run at (236,21) width 4: " "
        RenderBlock {INPUT} at (240,18) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {H3} at (0,200) size 784x23
        RenderText {#text} at (0,0) size 124x22
          text run at (0,0) width 124: "Various Colors"
      RenderBlock (anonymous) at (0,241) size 784x24
        RenderBlock {INPUT} at (0,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#FF0000] [border: (1px solid #777777)]
        RenderText {#text} at (44,3) size 4x18
          text run at (44,3) width 4: " "
        RenderBlock {INPUT} at (48,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (92,3) size 4x18
          text run at (92,3) width 4: " "
        RenderBlock {INPUT} at (96,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#0000FF] [border: (1px solid #777777)]
        RenderText {#text} at (140,3) size 4x18
          text run at (140,3) width 4: " "
        RenderBlock {INPUT} at (144,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#EC008C] [border: (1px solid #777777)]
        RenderText {#text} at (188,3) size 4x18
          text run at (188,3) width 4: " "
        RenderBlock {INPUT} at (192,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#40E0D0] [border: (1px solid #777777)]
        RenderText {#text} at (236,3) size 4x18
          text run at (236,3) width 4: " "
        RenderBlock {INPUT} at (240,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#FF0000] [border: (1px solid #777777)]
        RenderText {#text} at (284,3) size 4x18
          text run at (284,3) width 4: " "
        RenderBlock {INPUT} at (288,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#00FF00] [border: (1px solid #777777)]
        RenderText {#text} at (332,3) size 4x18
          text run at (332,3) width 4: " "
        RenderBlock {INPUT} at (336,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#0000FF] [border: (1px solid #777777)]
        RenderText {#text} at (380,3) size 4x18
          text run at (380,3) width 4: " "
        RenderBlock {INPUT} at (384,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#EC008C] [border: (1px solid #777777)]
        RenderText {#text} at (428,3) size 4x18
          text run at (428,3) width 4: " "
        RenderBlock {INPUT} at (432,0) size 44x23 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 38x21
            RenderBlock {DIV} at (2,4) size 34x13 [bgcolor=#40E0D0] [border: (1px solid #777777)]
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {H3} at (0,283) size 784x23
        RenderText {#text} at (0,0) size 117x22
          text run at (0,0) width 117: "Arbitrary Size"
      RenderBlock (anonymous) at (0,324) size 784x31
        RenderBlock {INPUT} at (0,0) size 100x30 [bgcolor=#FFFFFF] [border: none (2px inset #000000) none (2px inset #000000)]
          RenderFlexibleBox {DIV} at (3,1) size 94x28
            RenderBlock {DIV} at (2,4) size 90x20 [bgcolor=#FF0000] [border: (1px solid #777777)]
