class A<X> {
  A.foo1(X x) {}
  A.foo2(X x, int y) {}
  A();
  factory A.bar1() => new A();
}
A<X> Function<X>(X) test1() => A.foo1;
A<X> Function<X>(X) test2() => A.foo2;
A<X> Function<X>(X) test3() => A.new;
A<X> Function<X>(X) test4() => A<int>.new;
A<X> Function<X>(X) test5() => A<int, String>.new;
A<X> Function<X>(X) test6() => A<int>.foo1;
A<X> Function<X>(X) test7() => A<int, String>.foo1;
A<X> Function<X>(X) test8() => A<int>.foo2;
A<X> Function<X>(X) test9() => A<int, String>.foo2;
A<X> Function<X>() test10() => A.bar1;
A<X> Function<X>(X) test11() => A.bar1;
A<int> Function() test12() => A<int>.bar1;
A<int> Function() test13() => A.bar1;
main() {}
