implement isValidInterval