updated isvalid