#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")