#include<iostream>
using namespace std;
int dp[1008][104];
struct piece{
int time,price;
};
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
int t,b;
cin>>t>>b;
piece a[b];
for(int i=0;i<b;i++){
cin>>a[i].time>>a[i].price;
}
for(int i=1;i<=t;i++){
for(int j=1;j<=b;j++){
if(i>=a[j].time)dp[i][j]=max(dp[i][j-1],dp[i-a[j].time][j-1]+a[j].price);
else dp[i][j]=dp[i][j-1];
}
}
cout<<dp[t][b];
return 0;
}