#include <stdio.h>
int a[100][2];//价格 重要度
int n;//最大价钱
int m;//商品个数
int max = 0;//记录最大总和
void fun(int money, int t, int k, int j);
int main() {
scanf("%d", &n);
scanf("%d", &m);
for (int i = 0; i < m; i++) {
scanf("%d %d", &a[i][0], &a[i][1]);
}
fun(0, 0, 0, 1);
printf("%d", max);
return 0;
}
void fun(int money, int t, int k, int j) {
if (k == m && max < t)
max = t;
for (int i = k; i < m; i++) {
if (money + a[k][0] < n)
fun(money + a[i][0], t + a[i][0] * a[i][1], i + 1, j + 1);
else {
if (t > max)
max = t;
}
fun(money, t, i + 1, j + 1);
}
}