M=998244353
y=lambda:map(int,input().split())
n,k=y()
q=set()
for i in range(k):
    a,b=y()
    for j in range(a,b+1):q.add(j)
s=[(n,n+1)]
t=[[0,-1]for i in range(n+1)]
t[0]=[1,0]
t[-1]=[0,1]
while s:
    v=s[-1][0]
    if t[v-1][1]<0:
        t[v-1][1]=0
        for i in q:
            if v-i>0:
                if t[v-i-1][1]>=0:t[v-1][0]+=t[v-i-1][0];t[v-i][0]%=M
                else:s.append((v-i,v));t[v-1][1]+=1
    else:
        t[s[-1][1]-1][0]+=t[v-1][0]
        t[s[-1][1]-1][0]%=M
        t[s[-1][1]-1][1]-=1
        s.pop()
print(t[-2][0])