#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+5;
int n,m,a[N],ans,v[N],del[N];
vector<pair<int,int>>vec;
signed main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i]>>v[i];
}
for(int i=1;i<=n;i++){
int tmp=i,num=v[i];
while(a[i]==a[i+1]){
i++,num=max(num,v[i]);
}
ans+=num,vec.push_back(pair<int,int>{num,i}),m-=(i-tmp);
}
if(m<0){
cout<<-1;
}
else{
if(m){
for(int i=1;i+1<vec.size();i++){
if(a[vec[i-1].second]==a[vec[i+1].second]){
del[vec[i].second]=1;
}
}
sort(vec.begin(),vec.end());
for(auto [num,idx]:vec){
if(!del[idx]){
m--,ans-=num;
if(!m){
break;
}
}
}
}
if(m){
cout<<-1;
return 0;
}
cout<<ans;
}
}