The king is left alone on the chessboard. In spite of this loneliness, he doesn't lose heart, because he has business of national importance. For example, he has to pay an official visit to square *t*. As the king is not in habit of wasting his time, he wants to get from his current position *s* to square *t* in the least number of moves. Help him to do this.

In one move the king can get to the square that has a common side or a common vertex with the square the king is currently in (generally there are 8 different squares he can move to).
The first line contains the chessboard coordinates of square *s*, the second line — of square *t*.

Chessboard coordinates consist of two characters, the first one is a lowercase Latin letter (from a to h), the second one is a digit from 1 to 8.
def get_king_moves(start, end):
    # 将棋盘坐标转换为行列索引
    start_col = ord(start[0]) - ord('a')
    start_row = int(start[1]) - 1
    end_col = ord(end[0]) - ord('a')
    end_row = int(end[1]) - 1

    # 计算行和列的差值
    col_diff = end_col - start_col
    row_diff = end_row - start_row

    # 计算最小步数
    min_steps = max(abs(col_diff), abs(row_diff))

    # 存储移动步骤的列表
    moves = []

    # 根据行和列的差值确定移动步骤
    for i in range(min_steps):
        move = ''
        if col_diff > 0:
            move += 'R'
            col_diff -= 1
        elif col_diff < 0:
            move += 'L'
            col_diff += 1

        if row_diff > 0:
            move += 'U'
            row_diff -= 1
        elif row_diff < 0:
            move += 'D'
            row_diff += 1

        moves.append(move)

    # 输出最小步数和移动步骤
    print(min_steps)
    for move in moves:
        print(move)


# 测试示例
start = input("")
end = input("")
get_king_moves(start, end)
