#include<bits/stdc++.h>
using namespace std;
int main()
{
int t, m;
cin >> t >> m;
if (t < 1 || t>1000 || m < 1 || m>100)
{
return 0;
}
int dp[1005][105] = { 0 };
int w[105];
int c[105];
int a, b;
for (int i = 1; i <= m; i++)
{
cin >> w[i] >> c[i];
if (w[i] < 1 || w[i]>100 || c[i] < 1 || c[i]>100)
{
return 0;
}
}
for (int m1 = 1; m1 <= m; m1++)
{
for (int t1 = 0; t1 <= t; t1++)
{
if (t1 < w[m1])
{
dp[m1][t1] = dp[m1 - 1][t1];
}
else
{
dp[m1][t1] = max(dp[m1 - 1][t1], dp[m1 - 1][t1 - w[m1]] + c[m1]);
}
}
}
cout << dp[m][t];
}