unit a unit b unit c(a, b) def func1(x: in a): print("in a") def func1(x: in b): print("in b") def func2(x: in a): print("in a") def func2(x: in b): print("in b") def func2(x: in c): print("in c") def main(x): func1(x in c) func2(x in c) # EXECUTE # in a # in c