#include <bits/stdc++.h>
using namespace std;
int main() {
  long long int a, b;
  cin >> a >> b;
  string s;
  cin >> s;
  int len = s.length();
  long long int px = 0, py = 0;
  int f = 0;
  vector<pair<long long int, long long int> > v;
  v.push_back(make_pair(px, py));
  for (int i = 0; i < len; i++) {
    if (px == a && py == b) {
      f = 1;
      break;
    }
    if (s[i] == 'U')
      py++;
    else if (s[i] == 'L')
      px--;
    else if (s[i] == 'R')
      px++;
    else if (s[i] == 'D')
      py--;
    v.push_back(make_pair(px, py));
  }
  if (f == 1)
    cout << "Yes";
  else {
    if (px != 0 && py != 0) {
      for (int i = 0; i < v.size(); i++) {
        long long int p1 = a - v[i].first;
        long long int p2 = b - v[i].second;
        if (p1 % px == 0 && p2 % py == 0 && p1 / px >= 0) {
          if (p1 / px == p2 / py) {
            f = 1;
            break;
          }
        }
      }
    } else if (px == 0 && py != 0) {
      for (int i = 0; i < v.size(); i++) {
        long long int p2 = b - v[i].second;
        if (p2 % py == 0 && v[i].first == a && p2 / py >= 0) {
          f = 1;
          break;
        }
      }
    } else if (px != 0 && py == 0) {
      for (int i = 0; i < v.size(); i++) {
        long long int p1 = a - v[i].first;
        if (p1 % px == 0 && v[i].second == b && p1 / px >= 0) {
          f = 1;
          break;
        }
      }
    } else if (px == 0 && py == 0) {
      for (int i = 0; i < v.size(); i++) {
        if (v[i].first == a & v[i].second == b) {
          f = 1;
          break;
        }
      }
    }
    if (f == 1)
      cout << "Yes";
    else
      cout << "No";
  }
}
