#include <bits/stdc++.h>
using namespace std;
int32_t main() {
  long long n, m, k;
  cin >> n >> m >> k;
  long long total = 4 * n * m - 2 * n - 2 * m;
  if (k > total) {
    cout << "NO\n";
    return 0;
  }
  cout << "YES\n";
  vector<pair<string, long long>> ans;
  long long temp;
  if (m > 1) {
    temp = k / 1;
    ans.push_back({"R", min(m - 1, temp)});
    k -= min(m - 1, temp);
    temp = k / 1;
    if (temp > 0) ans.push_back({"L", min(m - 1, temp)});
    k -= min(m - 1, temp);
  }
  for (long long i = 1; i < n && k > 0; i++) {
    ans.push_back({"D", 1});
    k--;
    if (k == 0) {
      continue;
    }
    temp = k / 3;
    long long mod = k % 3;
    long long maxi = m - 1;
    if (temp > 0 && m > 1) {
      ans.push_back({"RUD", min(temp, maxi)});
      k -= (min(temp, maxi) * 3);
    }
    if (m > 1 && temp < maxi && mod) {
      if (mod == 1) {
        ans.push_back({"R", 1});
      } else if (mod == 2) {
        ans.push_back({"RU", 1});
      }
      k -= mod;
    }
    if (k == 0) {
      continue;
    }
    if (m > 1) {
      ans.push_back({"L", min(m - 1, k)});
      k -= min(k, m - 1);
    }
  }
  if (k > 0) {
    temp = min(k, n - 1);
    ans.push_back({"U", temp});
  }
  cout << ans.size() << "\n";
  for (long long i = 0; i < ans.size(); i++) {
    cout << ans[i].second << " " << ans[i].first << "\n";
  }
  return 0;
}
