#include <bits/stdc++.h>
using namespace std;
const int N = 100 + 10;
map<char, int> dx, dy;
char s[N];
bool check(int x, int y, int tx, int ty, int a, int b) {
  if (!a && !b) return (x == tx) && (y == ty);
  if (!a) return (x == tx) && ((ty - y) / b >= 0) && ((ty - y) % b == 0);
  if (!b) return (y == ty) && ((tx - x) / a >= 0) && ((tx - x) % a == 0);
  return ((tx - x) / a >= 0) && ((tx - x) % a == 0) && ((ty - y) % b == 0) &&
         ((tx - x) / a == (ty - y) / b);
}
int main() {
  dx['U'] = 0;
  dx['D'] = 0;
  dx['L'] = -1;
  dx['R'] = 1;
  dy['U'] = 1;
  dy['D'] = -1;
  dy['L'] = 0;
  dy['R'] = 0;
  int tx, ty;
  scanf("%d%d", &tx, &ty);
  scanf("%s", s);
  int n = strlen(s), a = 0, b = 0, x = 0, y = 0;
  for (int i = 0; i < n; i++) a += dx[s[i]], b += dy[s[i]];
  bool flag = check(x, y, tx, ty, a, b);
  for (int i = 0; i < n; i++) {
    x += dx[s[i]];
    y += dy[s[i]];
    flag |= check(x, y, tx, ty, a, b);
  }
  puts(flag ? "Yes" : "No");
  return 0;
}
