|  | class Class1 { | 
|  | int field; | 
|  | Class1(this.field); | 
|  | String toString() => 'Class1($field)'; | 
|  | } | 
|  |  | 
|  | class Class2 { | 
|  | int field; | 
|  | Class2(this.field); | 
|  | String toString() => 'Class2($field)'; | 
|  | } | 
|  |  | 
|  | extension Extension1 on Class1 { | 
|  | int method() {} | 
|  | num genericMethod<T extends num>(T t) {} | 
|  | int get property {} | 
|  | set property(int value) {} | 
|  | } | 
|  |  | 
|  | extension Extension2 on Class2 { | 
|  | int method() {} | 
|  | num genericMethod<T extends num>(T t) {} | 
|  | int get property {} | 
|  | set property(int value) {} | 
|  | } | 
|  |  | 
|  | main() {} | 
|  |  | 
|  | testExtension1(Class1 c0, Class1 c1, Class1? c0n, Class1? c1n) {} | 
|  |  | 
|  | testExtension2(Class2 c0, Class2 c1, Class2? c0n) {} | 
|  |  | 
|  | expect(expected, actual) {} |