public override int GetHashCode() { unchecked { int hash = base.GetHashCode(); hash = hash * 37 + (GameTime != null ? GameTime.GetHashCode() : 0); hash = hash * 37 + (MouseState != null ? MouseState.GetHashCode() : 0); hash = hash * 37 + (TouchState != null ? TouchState.GetHashCode() : 0); hash = hash * 37 + (CursorPosition != null ? CursorPosition.GetHashCode() : 0); hash = hash * 37 + (ObjectPool != null ? ObjectPool.GetHashCode() : 0); return(hash); } }