public static bool operator ==(Move move1, Move move2)
{
if (ReferenceEquals(move1, move2))
return true;
if ((object)move1 == null || (object)move2 == null)
return false;
return move1.Equals(move2);
}