@NotNull
    @Override
    public List<PsiType[]> inferExpectedSignatures(@NotNull PsiMethod method,
                                                   @NotNull PsiSubstitutor substitutor,
                                                   String @NotNull [] options) {
      List<PsiType[]> signatures = new FirstParamHintProcessor().inferExpectedSignatures(method, substitutor, options);
      if (signatures.size() == 1) {
        PsiType[] signature = signatures.get(0);
        if (signature.length == 1) {
          PsiType type = signature[0];
          if (type instanceof PsiArrayType) {
            return produceResult(((PsiArrayType)type).getComponentType());
          }
        }
      }
      return Collections.emptyList();
    }
@NotNull
    @Override
    public List<PsiType[]> inferExpectedSignatures(@NotNull PsiMethod method,
                                                   @NotNull PsiSubstitutor substitutor,
                                                   String @NotNull [] options)