add input valid enhancement