#include <stdio.h>
int Max(int x,int y)
{
if(x>y) return x;
else return y;
}
int time[105];
int value[105];
int dp[105][1005];
int T,M;
int main()
{
scanf("%d %d",&T,&M);
for(int i=1;i<=M;i++)
scanf("%d %d",&time[i],&value[i]);
for(int i=1;i<=M;i++)
for(int j=1;j<=T;j++){
if(j>=time[i]) dp[i][j] = Max(dp[i-1][j],dp[i-1][j-time[i]]+value[i]);
else dp[i][j] = dp[i-1][j];
}
printf("%d",dp[M][T]);
return 0;
}