#include <bits/stdc++.h>
using namespace std;
int DEBUG = 0;
int Min(int a, int b) { return (a < b ? a : b); }
int Max(int a, int b) { return (a > b ? a : b); }
int Abs(int a) { return (a >= 0 ? a : -a); }
void print1d(int *vec, int M, const char *str = NULL) {
  if (str != NULL) printf("%s ", str);
  for (int i = 0; i < M; i++) {
    if (i > 0) printf(" ");
    printf("%d", vec[i]);
  }
  printf("\n");
}
int main(int argc, char **argv) {
  DEBUG = (argc >= 2) ? atoi(argv[1]) : 0;
  int x, t, a, b, da, db;
  cin >> x >> t >> a >> b >> da >> db;
  int valid = 0;
  if ((a + b) < x) {
    valid = 0;
  } else if (x == 0) {
    valid = 1;
  } else {
    for (int i = 0; i <= t - 1 && valid == 0; i++) {
      for (int j = 0; j <= t - 1 && valid == 0; j++) {
        if ((a + b - x) == (i * da + j * db)) {
          valid = 1;
        }
      }
    }
    for (int i = 0; i <= t - 1 && valid == 0; i++) {
      if ((a - x) == (i * da)) {
        valid = 1;
      }
    }
    for (int j = 0; j <= t - 1 && valid == 0; j++) {
      if ((b - x) == (j * db)) {
        valid = 1;
      }
    }
  }
  if (valid == 1) {
    cout << "YES" << endl;
  } else {
    cout << "NO" << endl;
  }
  return 0;
}
