improve input