#include<iostream>
#include<string.h>
using namespace std;
int table[80];
void dp(int n,int m)
{
memset(table, 0, sizeof(table));
table[0] = 1;
for (int i = 0; i < n; i++)
{
for (int j = 1; j <= m; j++)
{
table[i + j] += table[i];
}
}
}
int main()
{
int n, m;
while (cin >> n >> m&&n)
{
dp(n,m);
cout << table[n - 1] << endl;
}
return 0;
}