generic file input done