#include<iostream>
#include<vector>
#include<algorithm>
#include<cstring>
#include<cstdio>

#define oo ((1<<31)-1)

using namespace std;

int n, m;
vector< pair<int,int> > t;

long long rec(int a, int b, int mn)
{
    int i;
    vector<int> mnp;
    int mnn = oo;
    for(i = a; i < b; ++i)
        if(t[i].second < mnn)
        {
            mnp.clear();
            mnn = t[i].second;
            mnp.push_back(a - 1);
            mnp.push_back(i);
        }
        else if(t[i].second == mnn)
            mnp.push_back(i);
    mnp.push_back(b);
    long long sum = 0;
    for(i = 0; i < mnp.size() - 1; ++i)
        if(mnp[i] + 1 < mnp[i+1])
            sum += rec(mnp[i] + 1, mnp[i+1], mnn);
    return sum + mnn - mn;
}

int main()
{
    int i, a, b;
    scanf("%d %d", &n, &m);
    for(i = 0; i < n; ++i)
    {
        scanf("%d %d", &a, &b);
        t.push_back(make_pair(a, b));
    }
    sort(t.begin(), t.end());
    printf("%lld\n", rec(0, t.size(), 0));
    return 0;
}
