input refine