#include <bits/stdc++.h>
const char dc[4] = {'U', 'D', 'L', 'R'};
const int dx[4] = {0, 0, -1, 1};
const int dy[4] = {1, -1, 0, 0};
const int MAXLEN = 100;
char S[MAXLEN + 1];
int main() {
  long long a, b;
  long long x, y, x1, y1;
  int i;
  char c, *ptr;
  scanf("%I64d%I64d%s", &a, &b, S);
  x = y = 0;
  for (ptr = S, c = *ptr; c; ++ptr, c = *ptr)
    for (i = 0; i < 4; ++i)
      if (c == dc[i]) {
        x = x + dx[i];
        y = y + dy[i];
      }
  x1 = x;
  y1 = y;
  bool ans = false;
  int n;
  x = y = 0;
  for (ptr = S, c = *ptr; c; ++ptr, c = *ptr) {
    ans |= (x == a && y == b);
    if (x1) {
      n = (a - x) / x1;
      ans |= (n >= 0 && a - x == n * x1 && b - y == n * y1);
    }
    if (y1) {
      n = (b - y) / y1;
      ans |= (n >= 0 && a - x == n * x1 && b - y == n * y1);
    }
    for (i = 0; i < 4; ++i)
      if (c == dc[i]) {
        x = x + dx[i];
        y = y + dy[i];
      }
  }
  puts(ans ? "Yes" : "No");
  return 0;
}
