boolean (@NotNull PyClass cls, @NotNull TypeEvalContext context) { final String className = cls.getName(); for (PyClass baseClass : cls.getAncestorClasses(context)) { if (!PyUtil.isObjectClass(baseClass) && !Objects.equals(className, baseClass.getName())) { var initMethod = baseClass.findMethodByName(INIT, false, context); if (initMethod != null && !PyKnownDecoratorUtil.hasAbstractDecorator(initMethod, context)) { return true; } } } return false; }