private void EnsureNextMoveIsInSequence(PieceMove pieceMove)
        {
            var nextMoveSequenceNumber = movesReplayer.MovesLog.NextMoveSequenceNumber();

            if (pieceMove.SequenceNumber != nextMoveSequenceNumber)
            {
                throw new Exception();
            }
        }
        public IMove TranslateNextMove(PieceMove pieceMove)
        {
            EnsureNextMoveIsInSequence(pieceMove);

            return(TranslateNextMove(pieceMove.From, pieceMove.To));
        }