public A identity(A a)
 {
     if (Equals(a, default(A)))
     {
         IGenericInterfaceCalling <A> id = new GenericCircularIdentity <A>();
         return(id.identity(a));
     }
     else
     {
         return(a);
     }
 }
    public static void testGenericInterfaceCircular()
    {
        IGenericInterfaceCalling <int> iface = new GenericCircularIdentity <int>();

        iface.identity(3);
    }
 public static void testGenericInterfaceCircular()
 {
     IGenericInterfaceCalling<int> iface = new GenericCircularIdentity<int>();
     iface.identity(3);
 }