class DoubleMapGenotype extends DoubleGenotype implements MapGenotype<K, Double> {

	@Override
	public void setValue(K key, Double value) {
		if (!containsKey(key)) {
			throw new IllegalArgumentException(MapGenotype.ERROR_MESSAGE_INVALID_KEY);
		}
		int i = keys.indexOf(key);
		if (value < bounds.getLowerBound(i) || value > bounds.getUpperBound(i)) {
			throw new IllegalArgumentException(MapGenotype.ERROR_MESSAGE_OUT_OF_BOUNDS);
		}
		while (size() <= i) {
			add(bounds.getLowerBound(i));
		}
		set(i, value);
	}

	public  DoubleMapGenotype(List<K> keys, Bounds<Double> bounds);

}