public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1,ValueEval arg2) {TwoDEval reference = convertFirstArg(arg0);try {int columnIx = resolveIndexArg(arg2, srcRowIndex, srcColumnIndex);int rowIx = resolveIndexArg(arg1, srcRowIndex, srcColumnIndex);return getValueFromArea(reference, rowIx, columnIx);} catch (EvaluationException e) {return e.getErrorEval();}}

public ValueEval Evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1,ValueEval arg2){TwoDEval reference = ConvertFirstArg(arg0);try{int columnIx = ResolveIndexArg(arg2, srcRowIndex, srcColumnIndex);int rowIx = ResolveIndexArg(arg1, srcRowIndex, srcColumnIndex);return GetValueFromArea(reference, rowIx, columnIx);}catch (EvaluationException e){return e.GetErrorEval();}}
