import org.checkerframework.checker.tainting.qual.PolyTainted;
import org.checkerframework.checker.tainting.qual.Tainted;
import org.checkerframework.checker.tainting.qual.Untainted;

class FakeOverrideRMid {

  public @Untainted int returnsTaintedIntWithFakeOverride();

  public @Tainted int returnsUntaintedIntWithFakeOverride();

  public @PolyTainted int returnsUntaintedIntWithFakeOverride2();

  public @Untainted int returnsPolyTaintedIntWithFakeOverride();

}
