thing: foo Thing.Print: foo is int: 5 is byte: 120 is string: foo is Foo: 18 is Thing: foo is *Thing: foo is *Thing: foo is Doubler: 6 is Tuple: 1 7 11 13 Array len: 4 is Tuple: 1 7 11 13 ArrayStruct.Print: 4 3 is Tuple: 0 8 16 24 SmallPair.Print: 3 5 Stringer.String(): foo Stringer.(*Thing).String(): foo nested switch: true