# include <iostream>

const int MAX_N = 9;
const int MAX_S = 1000;

int n;
unsigned long long s;
unsigned long long dp[1001][9][101];

int main() {
	while (1) {
		std::cin >> n >> s;
		if (n == 0 && s == 0)
			break;
		for (int i = 0; i <= s; ++i) {
			for (int j = 0; j < 9; ++j) {
				for (int k = 0; k < 101; ++k)
					dp[i][j][k] = 0;
			}
		}
		for (int i = 0; i < 101; ++i)
			dp[i][0][i] = 1;
		for (int i = 0; i <= s; ++i) {
			for (int j = 0; j < 9; ++j) {
				for (int k = 0; k < 101; ++k) {
					for (int l = k + 1; l < 101; ++l) {
						if (i + l > s)
							continue;
						dp[i + l][j + 1][l] += dp[i][j][k];
					}
				}
			}
		}
		unsigned long long res = 0;
		for (int i = 0; i < 101; ++i)
			res += dp[s][n - 1][i];
		std::cout << res << std::endl;
	}
	return 0;
}