public final Output createCustomOutput(final String implementor, final String[] params) throws CustomOutputException {
		Class<Output> customClassToCreate = Output.class;
		Output custom = customClassToCreate.cast(createCustom(implementor, params, customClassToCreate));
		if (custom == null) {
			throw new CustomOutputException();
		}
		return custom;
	}