#include<bits/stdc++.h>
using namespace std;
priority_queue<int >q;
vector<int > a[1000001];
int main()
{
	int n,m;
	cin>>n>>m;
	long long ans=0;
	for(int i=1;i<=n;i++)
	{
		int x,y;
		cin>>x>>y;
		if(x>m)
		{
			continue;
		}
		a[m-x+1].push_back(y);
	}
	for(int i=1;i<=m;i++)
	{
		for(int j=0;j<a[i].size();j++)
		{
			q.push(-a[i][j]);
			ans+=a[i][j];
		}
		while(q.size()>i)
		{
			ans+=q.top();
			q.pop();
		}
	}
	cout<<ans<<endl;
}