#include <bits/stdc++.h>
using namespace std;
const int maxn = 502;
int n, k;
int a[maxn], b[maxn], c[maxn];
bool check(int l, int r) {
  if (l == r) return true;
  for (int i = l + 1; i <= r; ++i)
    if (a[i] != a[l]) return true;
  return false;
}
bool print(int p, int r, int dir) {
  printf("%d %c\n", p, dir == -1 ? 'L' : 'R');
  if (dir == -1) --p;
  a[p] += a[p + 1];
  for (++p; p < r; ++p) a[p] = a[p + 1];
  return true;
}
bool solve(int l, int r) {
  if (l == r) return false;
  int i, mx = -1;
  for (i = l; i <= r; ++i) mx = max(mx, a[i]);
  for (i = l; i <= r; ++i) {
    if (a[i] != mx) continue;
    if (i == l && a[i] > a[i + 1]) return print(l, r, 1);
    if (i == r && a[i] > a[i - 1]) return print(r, r, -1);
    if (i != l && i != r && a[i] > a[i + 1]) return print(i, r, 1);
    if (i != l && i != r && a[i] > a[i - 1]) return print(i, r, -1);
  }
  return puts("WTF???");
}
int main() {
  int i, j, s = 0;
  scanf("%d", &n);
  for (i = 1; i <= n; ++i) scanf("%d", &a[i]);
  scanf("%d", &k);
  for (i = 1; i <= k; ++i) scanf("%d", &b[i]);
  for (i = j = 1; i <= n; ++i) {
    s += a[i];
    if (s < b[j]) continue;
    if (s > b[j]) return puts("NO"), 0;
    c[j] = i;
    s = 0;
    if (++j > k && i < n) return puts("NO"), 0;
  }
  if (j != k + 1) return puts("NO"), 0;
  for (i = 1; i <= k; ++i)
    if (!check(c[i - 1] + 1, c[i])) return puts("NO"), 0;
  puts("YES");
  for (i = k; i; --i)
    while (solve(c[i - 1] + 1, c[i])) --c[i];
  return 0;
}
