;
  template  class S, class T> struct A ;
  template  class S, class T> struct A ;
  template  class S, class T> struct A, 1> {
    typedef char type;
  };
  template , nullptr> {
    typedef char type;
  };
  template , &some_decl> {
    typedef char type;
  };
  template