#include <iostream>
#include <cstring>
#include <cmath>
using namespace std;
#define fas(i,a,b) for(int i=a;i<b;++i) //[)
#define fdes(i,b,a) for(int i=b;a<=i;--i) //[]
#define mm memset
const int MAXN=100;
const int MAXC=1000;
int dp[MAXC+1];
int v[MAXN];
int w[MAXN];
int main()
{
int c,n;
while (cin >> c>>n)
{
fas(i,0,n)
cin>>w[i]>>v[i];
mm(dp,0,(MAXC+1)*sizeof(int));
fas(i,0,n)
{
fdes(j,MAXC,0)
{
if(w[i]<=j)
{
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
}
}
}
cout<<dp[c]<<endl;
}
}
// 64 位输出请用 printf("%lld")