public boolean spacesAvailable(Vehicle v) {
		// Test for Cars.
		if (v instanceof Car) {
			// Test for small cars.
			if (((Car) v).isSmall()) {
				if (smallCarsParked.size() < maxSmallCarSpaces) {
					return true;
				} else if (carsParked.size() < maxCarSpaces) {
					return true;
				}
			}

			// Test for normal cars.
			else if (((Car) v).isSmall() == false) {
				if (carsParked.size() < maxCarSpaces) {
					return true;
				}
			}
			return false;
		}

		// Test for MotorCycles.
		else if (v instanceof MotorCycle) {
			if (motorCyclesParked.size() < maxMotorCycleSpaces) {
				return true;
			} else if (smallCarsParked.size() < maxSmallCarSpaces) {
				return true;
			}
		}
		// Else return false. I.e. No available parks.
		return false;
	}