public override bool Equals(object obj) { if (ReferenceEquals(this, obj)) return true; if (obj == null || GetType() != obj.GetType()) return false; Position pos2 = (Position)obj; return File == pos2.File && Rank == pos2.Rank; }