#include <bits/stdc++.h>
using namespace std;
int book[15][15];
struct sair {
  string str[105];
  int co;
  int x, y;
};
int dir[8][2] = {0, 1, 1, 0, 0, -1, -1, 0, 1, 1, -1, -1, 1, -1, -1, 1};
string D[8] = {"R", "D", "L", "U", "RD", "LU", "LD", "RU"};
sair bfs(sair s) {
  queue<sair> Q;
  Q.push(s);
  sair e;
  while (!Q.empty()) {
    s = Q.front();
    Q.pop();
    for (int i = 0; i < 8; i++) {
      e = s;
      e.x = s.x + dir[i][0];
      e.y = s.y + dir[i][1];
      if (e.x >= 0 && e.x < 8 && e.y >= 0 && e.y < 8 && book[e.x][e.y] != 1) {
        e.str[e.co] = D[i];
        e.co++;
        Q.push(e);
        if (book[e.x][e.y] == 2) {
          return e;
        }
        book[e.x][e.y] = 1;
      }
    }
  }
}
int main() {
  string str, str1;
  cin >> str;
  sair s;
  book[7 - (str[1] - '1')][str[0] - 'a'] = 1;
  s.y = str[0] - 'a', s.x = 7 - (str[1] - '1'), s.co = 0;
  cin >> str1;
  book[7 - (str1[1] - '1')][str1[0] - 'a'] = 2;
  if (str == str1) {
    cout << 0 << endl;
    return 0;
  }
  s = bfs(s);
  cout << s.co << endl;
  for (int i = 0; i < s.co; i++) {
    cout << s.str[i] << endl;
  }
}
