namespace N0 class A pass class B inherits A pass namespace N1 class A cue init(i as int) base.init _i = i get i from var as int class B inherits A pass namespace N2 class A cue init(i as int) base.init _i = i cue init(n as number) base.init _n = n get i from var as int get n from var as number class B inherits A pass namespace N3 class A cue init(i as int) base.init _i = i cue init(n as number) base.init _n = n cue init(i as int, s as String) .init(i) _s = s get i from var as int get n from var as number get s from var = '' class B inherits A pass class Test def main N0.B() b1 = N1.B(3) assert b1.i == 3 b2 = N2.B(3) assert b2.i == 3 b2 = N2.B(4.5) assert b2.n == 4.5 assert N3.B(3).i == 3 assert N3.B(4.5).n == 4.5 b3 = N3.B(6, 'six') assert b3.i == 6 and b3.s == 'six'