public override bool Equals(object obj) { if (obj == null) return false; MoveNode move = (MoveNode)obj; if ((object)move == null) return false; if (move.currentMove != this.currentMove) return false; return true; }