@Override
    public void undoMove(ChessBoard board) {
        board.setCoinAt(moved, start);
        board.setCoinAt(captured, getCapturedCoinPosition(start, end));
        board.setCoinAt(Coin.Empty, end);
        moved.MoveUndoved();
        is_executed = false;
    }