#include <iostream>
using namespace std;

int main() {
    int L, M;
    bool tree[10000];
    scanf("%d %d", &L, &M);
  // 初始化 0~L之间的所有树
    for (int i = 0; i <= L; ++i) {
        tree[i] = true;
    }
  // 消除 区间树
    for (; M > 0; --M) {
//        printf("%d %d", L, M);
        int begin, end;
        scanf("%d %d", &begin, &end);
        for (int i = begin; i <= end; ++i) {
            tree[i] = false;
        }
    }

  // 统计 0 ~ L 上还存在的树
    int number = 0;
    for (int i = 0; i <= L; ++i) {
        if (tree[i] == true) {
            ++number;
        }
    }
    printf("%d\n", number);
    return 0;
}