public int compareTo(Object o) {
		HardwareComponent cheapestThis = hardwareComponents.get(0);
		HardwareComponent cheapestOther = ((HardwareAlternative) o).getHardwareComponents().get(0);
		for (HardwareComponent hardwareComponent : hardwareComponents)
			if (hardwareComponent.getConsumptionIndicator() < cheapestThis.getConsumptionIndicator())
				cheapestThis = hardwareComponent;
		for (HardwareComponent hardwareComponent : ((HardwareAlternative) o).getHardwareComponents())
			if (hardwareComponent.getConsumptionIndicator() < cheapestOther.getConsumptionIndicator())
				cheapestOther = hardwareComponent;
		if (cheapestThis.getConsumptionIndicator() < cheapestOther.getConsumptionIndicator())
			return -1;
		if (cheapestThis.getConsumptionIndicator() > cheapestOther.getConsumptionIndicator())
			return 1;
		return 0;
	}