keep the URLValidator somewhere common