protected List<? extends Neuron> getLayer(int index) throws IndexOutOfBoundsException {
		if (index == 0) {
			return inputLayer;
		} else if (index == numberOfLayers() - 1) {
			return outputLayer;
		} else {
			return midLayers.get(index - 1);
		}
	}