private static @NotNull Map<PsiMethod, ChainedConstructorData> getChainedConstructorDataMap(List<PsiField> fields, List<PsiMethod> writableConstructors) {
      Map<PsiMethod, ChainedConstructorData> data = new HashMap<>();
      for (PsiMethod constructor : writableConstructors) {
        PsiMethodCallExpression methodCall = JavaPsiConstructorUtil.findThisOrSuperCallInConstructor(constructor);
        if (methodCall != null) {
          PsiMethod target = methodCall.resolveMethod();
          if (target != null && writableConstructors.contains(target)) {
            data.put(constructor, new ChainedConstructorData(methodCall, fillVariables(fields, target.getParameterList())));
          }
        }
      }
      return data;
    }
private static @NotNull Map<PsiMethod, ChainedConstructorData> getChainedConstructorDataMap(List<PsiField> fields, List<PsiMethod> writableConstructors)