#include<bits/stdc++.h>
using namespace std;
struct node{
int p,a;
}a[5005];
int n,m,cnt;
bool cmp(node a,node b){return a.p<b.p;}
int main(){
ios::sync_with_stdio(NULL);
cin.tie(0);cout.tie(0);
cin>>n>>m;
for(int i=1;i<=m;i++)
cin>>a[i].p>>a[i].a;
sort(a+1,a+n+1,cmp);
for(int i=1;i<=m;i++){
if(a[i].a<=n){
cnt=cnt+a[i].p*a[i].a;
n-=a[i].a;
}else{
cnt=cnt+a[i].p*n;
break;
}
}cout<<cnt;
return 0;
}
rt,不知为什么样例输出0