import org.jetbrains.annotations.*; interface NotNullInt { @NotNull String getString(); void setString(@Nullable String s); } abstract class MethodBase { @Nullable public String getString() { return null; } } abstract class ParamBase { public void setString(@NotNull String s) {} } abstract class MethodFail extends MethodBase implements NotNullInt { } abstract class ParamFail extends ParamBase implements NotNullInt { }