#include <iostream>
using namespace std;
long long time[10000005],value[10000005],dp[10000005];
int main(){
long long m,t;
cin>>m>>t;
for(int i=1;i<=t;i++){
cin>>time[i]>>value[i];
}
for(int i=1;i<=t;i++){
for(int j=time[i];j<=m;j++){
dp[j]=max(dp[j],dp[j-time[i]]+value[i]);
}
}
cout<<dp[m];
return 0;
}