public virtual void DoMove(Move move) { ulong moveFrom = 1UL << (int)move.From; ulong moveTo = 1UL << (int)move.To; this.board &= (~moveFrom); this.board |= moveTo; }