#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <map>
#include <utility>
#include <algorithm>

using namespace std;

int n,m;
pair <int,int>det[100000];

int stri(pair <int,int> x,pair <int,int> z){
    return x.first>z.first;
    }

int tra(int lev,int des){
    int mini=lev;
    for (int k=lev+1;k<des+1;k++)if(det[mini].second>det[k].second)mini=k;
    return mini;
    }

long long fun(int lev,int des, int kolko){
     if (lev>des)return 0;
     int najm = tra(lev,des);
     return det[najm].second-kolko + fun(lev,najm-1,det[najm].second)+fun(najm+1,des,det[najm].second);
     }


int main(){
    scanf("%d%d",&n,&m);
    for(int k=0;k<n;k++)scanf("%d%d",&det[k].first,&det[k].second);
    sort(det,det+n,stri);
    printf("%lld\n",fun(0,n-1,0));
    //system("pause");
    }
