#include <bits/stdc++.h>
int mod = 998244353;
int main() {
  int N, K, k = 0;
  scanf("%d %d", &N, &K);
  int LR[K][2], T[N], S[N];
  int M[N];
  for (int i = 0; i < K; i++) {
    scanf("%d %d", &LR[i][0], &LR[i][1]);
    for (int j = LR[i][0]; j <= LR[i][1]; j++) {
      T[k] = j;
      k++;
    }
  }
  int temp[k];
  for (int i = 0; i < k; i++) {
    temp[i] = 1;
    for (int j = 0; j < k; j++) {
      if (T[i] > T[j]) {
        temp[i]++;
      }
    }
  }
  for (int i = 0; i < k; i++) {
    S[temp[i] - 1] = T[i];
  }
  for (int i = 0; i < N; i++) {
    M[i] = 0;
    for (int j = 0; j < k; j++) {
      if (i == S[j]) {
        M[i]++;
      }
      if (i > S[j]) {
        M[i] += M[i - S[j]];
        M[i] %= mod;
      } else
        break;
    }
    M[i] %= mod;
  }
  printf("%d", M[N - 1]);
}
