@NotNull
  public static List<PsiType[]> findFittingSignatures(@NotNull GrFunctionalExpression expression) {
    GrMethodCall call = findCall(expression);
    if (call == null) return Collections.emptyList();

    GroovyResolveResult variant = call.advancedResolve();

    List<PsiType[]> expectedSignatures = inferExpectedSignatures(variant, call, expression);

    final GrParameter[] parameters = expression.getAllParameters();
    return ContainerUtil.findAll(expectedSignatures, types -> types.length == parameters.length);
  }
@NotNull
  public static List<PsiType[]> findFittingSignatures(@NotNull GrFunctionalExpression expression)