#include<bits/stdc++.h>
using namespace std;
struct lu{
int l,r;
}a[10005];
int n,L,b,sum,summ,ans;
bool cmp(lu x,lu y){
return x.l<y.l;
}
int main(){
cin>>n>>L;
for(int i=1;i<=n;i++){
cin>>a[i].l>>a[i].r;
}
sort(a+1,a+n+1,cmp);
b=a[1].l;
for(int i=1;i<=n;i++){
if(b>a[i].l){
sum=a[i].r-a[i].l-(b-a[i].l);
summ=sum;
sum/=L;
ans+=sum;
if(summ%L!=0){
b+=L*(sum+1);
ans+=1;
}else{
b+=L*sum;
}
}else{
b=a[i].l;
sum=a[i].r-a[i].l;
summ=sum;
sum/=L;
ans+=sum;
if(summ%L!=0){
b+=L*(sum+1);
ans+=1;
}else{
b+=L*sum;
b=a[i+1].l;
}
}
}
cout<<ans;
return 0;
}