#include <bits/stdc++.h>
using namespace std;
pair<long long, long long> p[200005];
long long dp[200005];
int n;
int k;
long long dfs(int idx) {
  if (idx > n) return 0;
  if (idx == n) return 1;
  long long &res = dp[idx];
  if (~res) return res;
  res = 0;
  for (int i = 0; i < k; i++) {
    int l = p[i].first, r = p[i].second;
    for (int j = l; j <= r; j++) {
      res += dfs(idx + j) % 998244353;
      res %= 998244353;
    }
  }
  return res % 998244353;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  memset(dp, -1, sizeof dp);
  cin >> n >> k;
  for (int i = 0; i < k; i++) cin >> p[i].first >> p[i].second;
  cout << (dfs(1) + 998244353) % 998244353;
  return 0;
}
