#include <bits/stdc++.h>
using namespace std;
int n, m, k, temp, sisa;
vector<int> v;
vector<string> s;
void solve() {
  if (k <= (m - 1)) {
    v.push_back(k);
    s.push_back("R");
    return;
  }
  if (m - 1 > 0) {
    v.push_back(m - 1);
    s.push_back("R");
  }
  k -= (m - 1);
  if (k <= (m - 1)) {
    v.push_back(k);
    s.push_back("L");
    return;
  }
  if (m - 1 > 0) {
    v.push_back(m - 1);
    s.push_back("L");
  }
  k -= (m - 1);
  for (int i = 1; i < n; i++) {
    if (k <= 3 * (m - 1)) {
      temp = k / 3;
      sisa = k % 3;
      if (temp > 0) {
        v.push_back(temp);
        s.push_back("DRU");
      }
      if (sisa == 1) {
        v.push_back(1);
        s.push_back("D");
      }
      if (sisa == 2) {
        v.push_back(1);
        s.push_back("DR");
      }
      return;
    }
    if (m - 1 > 0) {
      v.push_back(m - 1);
      s.push_back("DRU");
    }
    k -= (3 * (m - 1));
    v.push_back(1);
    s.push_back("D");
    k--;
    if (k == 0) return;
    if (k <= m - 1) {
      v.push_back(k);
      s.push_back("L");
      return;
    }
    if (m - 1 > 0) {
      v.push_back(m - 1);
      s.push_back("L");
    }
    k -= (m - 1);
  }
  v.push_back(k);
  s.push_back("U");
  return;
}
int main() {
  int maxi;
  scanf("%d %d %d", &n, &m, &k);
  maxi = (4 * n * m) - (2 * m) - (2 * n);
  if (k > maxi) {
    puts("NO");
    return 0;
  }
  puts("YES");
  solve();
  printf("%d\n", (int)v.size());
  for (int i = 0; i < (int)v.size(); i++) printf("%d %s\n", v[i], s[i].c_str());
  return 0;
}
