@Override
  public Result calculateResult(Expression @NotNull [] params, ExpressionContext context) {
    final List<PsiClass> classes = findDescendants(context, params);
    if (classes == null || classes.size() == 0) return null;
    Result[] results = calculateResults(classes);

    return results[0];
  }
@Override
  public Result calculateResult(Expression @NotNull [] params, ExpressionContext context)