usernameForm :: (Monad m, 
                 TR.FormInput input, 
                 BH.ToMarkup (DemoFormError input)) =>
                String -> 
                TR.Form m input (DemoFormError input) BH.Html TR.NotNull Username
usernameForm initialValue = TRBS.errorList TR.++> 
                            (TRBS.label ("username: " :: String) TR.++> 
                            (Username CAI.<<$>> 
                                TR.prove (TRBS.inputText initialValue)
                                         (TR.notNullProof InvalidUsername)))
usernameForm :: (Monad m, 
                 TR.FormInput input, 
                 BH.ToMarkup (DemoFormError input)) =>
                String -> 
                TR.Form m input (DemoFormError input) BH.Html TR.NotNull Username
usernameForm initialValue = TRBS.errorList TR.++> 
                            (TRBS.label ("username: " :: String) TR.++> 
                            (Username CAI.<<$>> 
                                TR.prove (TRBS.inputText initialValue)
                                         (TR.notNullProof InvalidUsername)))
usernameForm initialValue = TRBS.errorList TR.++> 
                            (TRBS.label ("username: " :: String) TR.++> 
                            (Username CAI.<<$>> 
                                TR.prove (TRBS.inputText initialValue)
                                         (TR.notNullProof InvalidUsername)))