#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pll = pair<ll, ll>;
#define drep(i, cc, n) for (ll i = (cc); i <= (n); ++i)
#define rep(i, n) drep(i, 0, n - 1)
#define all(a) (a).begin(), (a).end()
#define pb push_back
#define fi first
#define se second

const ll MOD = 1000000007;
const ll MOD2 = 998244353;
const ll INF = 1LL << 60;
const ll N_MAX = 2e5;

int main(){
    ll n, m;
    cin >> n >> m;

    vector<pll> itv(m);
    rep(i, m){
        cin >> itv[i].se >> itv[i].fi;
    }
    sort(all(itv));

    ll last = -INF;
    ll cnt = 0;
    rep(i, m){
        if(last <= itv[i].se){
            cnt++;
            last = itv[i].fi;
        }
    }

    cout << 2*n - 2 - cnt << endl;
}