@Override
	@SuppressWarnings("unchecked")
	public O evaluate(I input) {

		Assert.notNull(input, "input");

		MI modelInput = inputMapper.mapInput((A) this, input);

		MO modelOutput = evaluateInternal(modelInput);

		O output = outputMapper.mapOutput((A) this, input, modelOutput);

		return output;
	}
Evaluates the encoded {@code Analytic} against the given {@code input}. The {@code inputMapper} is used to map
the given {@code input} to an appropriate input for the internal evaluation of the {@code Analytic}. The
resulting output of internal evaluation is mapped via the {@code outputMapper} to an appropriate result.
spring-xd-analytics-ml/src/main/java/org/springframework/xd/analytics/ml/MappedAnalytic.java