#include <cstdio>
#include <algorithm>
using namespace std;
int main()
{
int m, b;
scanf("%d %d", &m, &b);
long long ans = max((1 + b) * b / 2, (1 + b * m) * b * m / 2);
for (int i = 1; i < b; i++)
{
long long cur_ans = 0;
int cur_x = -1 * (i - b) * m;
if (cur_x == 0)
{
continue;
}
for (int x = 0; x <= cur_x; x++)
{
cur_ans += (1 + i) * i / 2 + x * (i + 1);
}
ans = max(ans, cur_ans);
}
printf("%lld", ans);
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKQp7CglpbnQgbSwgYjsKCXNjYW5mKCIlZCAlZCIsICZtLCAmYik7Cglsb25nIGxvbmcgYW5zID0gbWF4KCgxICsgYikgKiBiIC8gMiwgKDEgKyBiICogbSkgKiBiICogbSAvIDIpOwoJZm9yIChpbnQgaSA9IDE7IGkgPCBiOyBpKyspCgl7CgkJbG9uZyBsb25nIGN1cl9hbnMgPSAwOwoJCWludCBjdXJfeCA9IC0xICogKGkgLSBiKSAqIG07CgkJaWYgKGN1cl94ID09IDApCgkJewoJCQljb250aW51ZTsKCQl9CgkJZm9yIChpbnQgeCA9IDA7IHggPD0gY3VyX3g7IHgrKykKCQl7CgkJCWN1cl9hbnMgKz0gKDEgKyBpKSAqIGkgLyAyICsgeCAqIChpICsgMSk7CgkJfQoJCWFucyA9IG1heChhbnMsIGN1cl9hbnMpOwoJfQoJcHJpbnRmKCIlbGxkIiwgYW5zKTsKfQ==