contract a is b {
function baz() public returns (uint64) {
// this will return 1
return super.foo();
}
function foo() internal override returns (uint64) {
return 2;
}
}
abstract contract b {
function foo() internal virtual returns (uint64) {
return 1;
}
}