refactor signup form