#include <bits/stdc++.h>
using namespace std;
void yes() { cout << "Yes"; }
void no() { cout << "No"; }
const int inf = 2 * (int)1e9 + 123;
bool offer(int x, int dx, int& t) {
  if (dx == 0) {
    if (x == 0) {
      t = inf;
    } else {
      return false;
    }
  } else {
    if (x % dx == 0) {
      t = x / dx;
      if (t < 0) return false;
    } else {
      return false;
    }
  }
  return true;
}
int main() {
  set<pair<int, int> > st;
  st.insert(make_pair(0, 0));
  int x = 0;
  int y = 0;
  int a, b;
  cin >> a >> b;
  string s;
  cin >> ws >> s;
  for (int i = 0; i < s.size(); ++i) {
    switch (s[i]) {
      case 'U':
        y++;
        break;
      case 'D':
        y--;
        break;
      case 'L':
        x--;
        break;
      case 'R':
        x++;
        break;
    }
    st.insert(make_pair(x, y));
  }
  vector<pair<int, int> > v(st.begin(), st.end());
  int dx = x;
  int dy = y;
  int t[2], good[2];
  for (int i = 0; i < v.size(); ++i) {
    x = a - v[i].first;
    y = b - v[i].second;
    good[0] = offer(x, dx, t[0]);
    good[1] = offer(y, dy, t[1]);
    if (good[0] && good[1] && (t[0] == t[1] || t[0] == inf || t[1] == inf)) {
      yes();
      return 0;
    }
  }
  no();
  return 0;
}
