#include <bits/stdc++.h>
const int mod = (int)1e09 + 7;
int in(void) {
  int i;
  scanf("%d", &i);
  return i;
}
long long llin(void) {
  long long i;
  scanf("%lld", &i);
  return i;
}
double din(void) {
  double i;
  scanf("%lf", &i);
  return i;
}
void chin(char s[]) { scanf("%s", s); }
void print(int a) { printf("%d\n", a); }
void llprint(long long a) { printf("%lld\n", a); }
void dprint(double a) { printf("%.10f\n", a); }
void print2(int a, int b) { printf("%d %d\n", a, b); }
long long max(long long a, long long b) { return a > b ? a : b; }
long long min(long long a, long long b) { return a < b ? a : b; }
long long llabs(long long a) { return a > 0 ? a : -a; }
double dmax(double a, double b) { return a > b ? a : b; }
int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; }
int cmp_r(const void *a, const void *b) { return *(int *)b - *(int *)a; }
int main(void) {
  int a = in(), b = in(), i;
  char s[30];
  chin(s);
  for (i = 0; i < a; i++) {
    if (!isdigit(s[i])) {
      puts("No");
      return 0;
    }
  }
  if (s[i] != '-') {
    puts("No");
    return 0;
  }
  for (i++; i < b; i++) {
    if (!isdigit(s[i])) {
      puts("No");
      return 0;
    }
  }
  puts("Yes");
  return 0;
}
