#include <bits/stdc++.h>
#define MAX_S 1000
using namespace std;
int n, s;
/*
int dp[MAX_S + 1];

//dfs
int rec(int pos, int sum, int before) {
    cout << dp[sum] << endl;
    if(pos > n) return(0);
    if(pos==n) {
        if(sum == s) return(1);
        else if (dp[sum] != INF) return(dp[sum]);
        else  return(0);
    }
    if(sum >= s) return(0);
    int ret = 0;
    for(int r = before + 1; r <= 100; r++) {
        ret += rec(pos+1, sum+r, r);
    }
    
    return(dp[sum] = ret);
}
*/
typedef long long ll;
ll dp[10][MAX_S + 1];
void solve() {
    dp[0][0] = 1;
    /*
    for(int r = 0; r < 101; r++) {
        for(int c = 9; c >= 0; c--) {
            for(int k = 0; r+k < MAX_S+1; k++) {
                dp[c+1][k+r] += dp[c][k];
            }
        }
    }
     */
    
    for(int r = 0; r <= 100; r++) {
        for(int c = 1000; c >= 0; c--) {
            for(int k = 9; k > 0; k--) {
                dp[k][c] += dp[k-1][c-r];
            }
        }
    }
    printf("%lld\n", dp[n][s]);
}


int main(void) {
    while(cin >> n >> s, n|s) {
        memset(dp, 0, sizeof(dp));
        //cout << rec(0, 0, -1) << endl;
        solve();
    }
    return(0);
}