public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1,ValueEval arg2) {double result;try {double d0 = NumericFunction.singleOperandEvaluate(arg0, srcRowIndex, srcColumnIndex);double d1 = NumericFunction.singleOperandEvaluate(arg1, srcRowIndex, srcColumnIndex);double d2 = NumericFunction.singleOperandEvaluate(arg2, srcRowIndex, srcColumnIndex);result = evaluate(getYear(d0), (int) (d1 - 1), (int) d2);NumericFunction.checkValue(result);} catch (EvaluationException e) {return e.getErrorEval();}return new NumberEval(result);}

public ValueEval evaluate ( int srcRowIndex , int srcColumnIndex , ValueEval arg0 , ValueEval arg1 , ValueEval arg2 ) { double result ; try { double d0 = NumericFunction . singleOperandEvaluate ( arg0 , srcRowIndex , srcColumnIndex ) ; double d1 = NumericFunction . singleOperandEvaluate ( arg1 , srcRowIndex , srcColumnIndex ) ; double d2 = NumericFunction . singleOperandEvaluate ( arg2 , srcRowIndex , srcColumnIndex ) ; result = evaluate ( getYear ( d0 ) , ( int ) ( d1 - 1 ) , ( int ) d2 ) ; NumericFunction . checkValue ( result ) ; } catch ( EvaluationException e ) { return e . getErrorEval ( ) ; } return new NumberEval ( result ) ; }
public override ValueEval Evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1,ValueEval arg2){double result;try{double d0 = NumericFunction.SingleOperandEvaluate(arg0, srcRowIndex, srcColumnIndex);double d1 = NumericFunction.SingleOperandEvaluate(arg1, srcRowIndex, srcColumnIndex);double d2 = NumericFunction.SingleOperandEvaluate(arg2, srcRowIndex, srcColumnIndex);result = Evaluate(GetYear(d0), (int)d1, (int)d2);NumericFunction.CheckValue(result);}catch (EvaluationException e){return e.GetErrorEval();}return new NumberEval(result);}
