# various things in here used to cause internal errors class Foo get bars as IList return List() class Bar get bars as ICollection return List() get bazs as ICollection return List() class Test def main is shared f1 = Foo() assert f1.bars.count == 0 f2 = Foo() assert f2.bars.count == 0 b = Bar() assert b.bars.count == 0 assert b.bazs.count == 0