@NotNull
    private List<PyFunction> findComplementaryMethods(@NotNull PyClass cls, @NotNull PyFunction original) {
      final String complementaryName = PyUtil.isNewMethod(original) ? PyNames.INIT : PyNames.NEW;
      final List<PyFunction> complementaryMethods = cls.multiFindMethodByName(complementaryName, true, myTypeEvalContext);

      for (PyFunction complementaryMethod : complementaryMethods) {
        final PyClass complementaryMethodClass = complementaryMethod.getContainingClass();

        if (complementaryMethodClass == null ||
            PyUtil.isObjectClass(complementaryMethodClass) ||
            ContainerUtil.exists(PyInspectionExtension.EP_NAME.getExtensionList(),
                                 extension -> extension.ignoreInitNewSignatures(original, complementaryMethod))) {
          return Collections.emptyList();
        }
      }

      return complementaryMethods;
    }
@NotNull
    private List<PyFunction> findComplementaryMethods(@NotNull PyClass cls, @NotNull PyFunction original)