Solution (source code)

= Solution

\b[Permitted; returns `"AB"`.] A receiver of <static type> `B` exposes `show(A)` and `show(B)`, but the argument's <static type> `A` is not a <subtype> of `B`. Only `show(A)` is applicable. Its effective implementation on the `C` receiver is `B.show(A)`, which concatenates the superclass result `"A"` and `"B"`.