public override bool Equals(object obj) { if (ReferenceEquals(this, obj)) { return(true); } if (obj == null || !GetType().Equals(obj.GetType())) { return(false); } Body body = (Body)obj; return(!(limb != null ? !limb.Equals(body.limb) : body.limb != null)); }