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;
}