refactor of the default input element