interface I {
	function f() external;
	function g() external;
}
interface J {
	function f() external;
}
abstract contract IJ is I, J {
	function f() external virtual override (I, J);
}
abstract contract A is IJ
{
	function f() external virtual override;
}
abstract contract B is IJ
{
	function g() external override {}
}
abstract contract C is A, B {}
// ----
