with text input