#include <bits/stdc++.h>
using namespace std;
set<long long> s;
long long sta[100001];
long long stairs(long long x) {
  if (x == 1) return 1;
  if (sta[x] != -1) return sta[x];
  long long re = 0;
  set<long long>::iterator it;
  for (it = s.begin(); it != s.end(); it++) {
    if (*it >= x) continue;
    re += stairs(x - *it);
  }
  sta[x] = re;
  return re;
}
signed main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  memset(sta, -1, sizeof(sta));
  long long n, k;
  cin >> n >> k;
  while (k--) {
    long long a, b;
    cin >> a >> b;
    s.insert(a);
    s.insert(b);
  }
  cout << stairs(n) % 998244353;
  return 0;
}
