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