#$ A function which contains the same "UCI" has two different instantiations. # () # 420 # 111 # True # 8008 # () # 111 # True class MyStr print-str(self _) -> Unit bool-const = 111 inst MyStr Bool print-str (self Bool) -> Unit println(bool-const) println(self) fn g (n) print-str(n) return int-const = Unit inst MyStr I32 print-str (self I32) -> Unit println(int-const) println(self) return fn f (x) g(x) g(True) return unit-const = 8008 inst MyStr Unit print-str (self Unit) -> Unit println(unit-const) println(Unit) f(420) f(Unit)