#include<cstdio>
#include<algorithm>
using namespace std;
#define MAX 100
struct regin{
int begin;
int end;
};
int compare(struct regin re1,struct regin re2){
return re1.begin < re2.begin;
}
int main(){
struct regin re[MAX];
long l,m;
int sum = 0;
while(scanf("%ld%ld",&l,&m)!=EOF){
for(int i = 0;i<m;i++){
scanf("%d%d",&re[i].begin,&re[i].end);
}
sort(re,re+m,compare);
int i = 0;
while(i<m-1){
for(int j = i + 1;j<m;j++){
if(re[i].end >= re[j].begin){
re[i].end = re[j].end;
re[j].begin = 0;
re[j].end = 0;
}
}
i++;
}
for(int i = 0;i<m;i++){
if(re[i].end == re[i].begin and re[i].end == 0) continue;
sum = sum + re[i].end - re[i].begin + 1;
}
printf("%lld",l + 1 - sum);
}
}