#include<bits/stdc++.h>
using namespace std;
using ll=long long;

int main(){
	// 输入输出流优化,加速cin/cout的读写速度
	ios::sync_with_stdio(0),cin.tie(0);
    ll T;
    cin>>T; // 读取测试用例的数量
    // 循环处理每一组测试用例
    while(T--){
        ll n,m;
        cin>>n>>m; // 读取每组用例的n(数组长度)和m(要求的最小不同元素数)
        
        // 算法核心逻辑:基于"好数组"的生成规律,分情况统计满足条件的数组数量
        // 情况1:要求不同元素数≥1 → 所有合法的"好数组"都满足(共n+1个,对应a_n取0~n)
        if(m==1){
            cout<<n+1<<endl;
        }
        // 情况2:要求不同元素数≥2 → 排除a_n=0的情况(仅1种),剩余n个满足
        else if(m==2){
            cout<<n<<endl;
        }
        // 情况3:要求不同元素数≥3 → 仅当a_n=n时满足(n≥3时不同元素数为3),仅1种
        else if(m==3){
            cout<<1<<endl;
        }
        // 情况4:要求不同元素数>3 → 好数组的不同元素数最大为3,无满足条件的数组
        else{
            cout<<0<<endl;
        }
    }

	return 0;
}