struct U {
    int f ();
    int f () { return 0; }
    void f (int i) { ; }
    void f (int i, int j) { ; }

    U ();
    U (const U&) { ; }
    U (int i) { ; }
    ~U() { ; }
};

U::U () {
 ;
}


int main () {
  U a;
  U b(a);
  U c(0);
  return a.f ();
}
