if(self == null || obj == null) return self == obj; if(!(obj instanceof Stub)) return false; return self.hashCode() == ((Stub)obj).hashCode();
if (obj instanceof ObjectImpl) { ObjectImpl other = (ObjectImpl) obj; Delegate d1 = other._get_delegate(); Delegate d2 = self._get_delegate(); if (d1 == null || d2 == null) return d1 == d2; else return d1.equals(d2); } else return false;
  public boolean equals(Stub self, Object obj)  {    if(self == null || obj == null)      return self == obj;    if(!(obj instanceof Stub))      return false;    return self.hashCode() == ((Stub)obj).hashCode();  }