optimize isvalid