text: public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0) {double result;if (arg0 instanceof RefEval) {result = CountUtils.countMatchingCellsInRef((RefEval) arg0, predicate);} else if (arg0 instanceof ThreeDEval) {result = CountUtils.countMatchingCellsInArea((ThreeDEval) arg0, predicate);} else {throw new IllegalArgumentException("Bad range arg type (" + arg0.getClass().getName() + ")");}return new NumberEval(result);}