#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=30010;
ll dp[26][N];
struct ty{
int v,imp;
ll sum;
}a[N];
int main()
{
int N,m;
cin >> N >> m;
for(int i=1;i<=m;i++){
cin >> a[i].v >> a[i].imp;
a[i].sum=a[i].v*a[i].imp;
}
dp[0][0]=0;
for(int i=1;i<=m;i++){
for(int j=0;j<=N;j++){
if(a[i].v>j){
dp[i][j]=dp[i-1][j];
}else{
dp[i][j]=max(dp[i-1][j],dp[i-1][j-a[i].v]+a[i].sum);
}
}
}
cout << dp[m][N];
}