interface I1 { m1(callback: (p: T) => U): I1; } var v1: I1; var v2: I1 = v1;