#include <bits/stdc++.h>
using namespace std;
map<char, bool> moves = {{'L', 0}, {'R', 0}, {'U', 0}, {'D', 0}};
char mvs[4] = {'L', 'R', 'U', 'D'};
int main() {
  string l1, l2;
  cin >> l1 >> l2;
  char c1 = l1[0], c2 = l2[0];
  int x1 = l1[1] - '0', x2 = l2[1] - '0';
  int cnt = 0;
  vector<string> steps;
  while (c1 != c2 || x1 != x2) {
    cnt++;
    if (c1 < c2) {
      moves['R'] = 1;
      c1++;
    } else if (c1 > c2) {
      moves['L'] = 1;
      c1--;
    }
    if (x1 < x2) {
      moves['U'] = 1;
      x1++;
    } else if (x1 > x2) {
      moves['D'] = 1;
      x1--;
    }
    string ans = "";
    for (char c : mvs) {
      if (moves[c]) {
        moves[c] = 0;
        ans += c;
      }
    }
    steps.push_back(ans);
  }
  cout << cnt << endl;
  for (string step : steps) cout << step << endl;
  return 0;
}
