public MapDirection(Point relativeRelativeShift) { if (!IsPureDirection(relativeRelativeShift)) throw new ArgumentException("Invalid Value"); RelativeShift = relativeRelativeShift; }