#include <bits/stdc++.h>
const int mod = 998244353;
long long int power(long long int a, long long int b) {
  long long int r = 1;
  for (; b; b >>= 1) {
    if (b & 1) r = r * a % mod;
    a = a * a % mod;
  }
  return r;
}
using namespace std;
map<int, int> m;
int count(int i, int j, int n, vector<int> &v) {
  if (i == n) return 1;
  if (i > n || j == int(v.size())) return 0;
  if (m.count(i)) return m[i];
  for (int i1 = 0; i1 < v.size(); i1++)
    m[i] = (m[i] + count(i + v[i1], i1, n, v)) % mod;
  return m[i];
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  int n, k;
  cin >> n >> k;
  vector<int> v;
  for (int i = 0, j, k1; i < k; i++) {
    cin >> j >> k1;
    for (int j1 = j; j1 <= k1; j1++) v.push_back(j1);
  }
  cout << count(1, 0, n, v) << '\n';
  return 0;
}
