#include <iostream>
using namespace std;
int newton_triangle( int x, int y );
int main()
{
int t, n, k;
cin >> t;
for ( int i = 1; i <= t; i++ )
{
cin >> n >> k;
cout << newton_triangle(n,k) << endl;
}
return 0;
}
int newton_triangle( int x, int y )
{
int z;
if ( y > x / 2 )
z = x - y;
else
z = y;
if ( z == 1 ) return x;
else if ( z == x || z == 0 ) return 1;
else return newton_triangle(x-1, z-1) + newton_triangle(x-1, z);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBuZXd0b25fdHJpYW5nbGUoIGludCB4LCBpbnQgeSApOwoKaW50IG1haW4oKQp7CiAgICBpbnQgdCwgbiwgazsKCiAgICBjaW4gPj4gdDsKCiAgICBmb3IgKCBpbnQgaSA9IDE7IGkgPD0gdDsgaSsrICkKICAgIHsKICAgICAgICBjaW4gPj4gbiA+PiBrOwoKICAgICAgICBjb3V0IDw8IG5ld3Rvbl90cmlhbmdsZShuLGspIDw8IGVuZGw7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0KCmludCBuZXd0b25fdHJpYW5nbGUoIGludCB4LCBpbnQgeSApCnsKICAgIGludCB6OwoKICAgIGlmICggeSA+IHggLyAyICkKICAgICAgICB6ID0geCAtIHk7CiAgICBlbHNlCiAgICAgICAgeiA9IHk7CgogICAgaWYgKCB6ID09IDEgKSByZXR1cm4geDsKICAgIGVsc2UgaWYgKCB6ID09IHggfHwgeiA9PSAwICkgcmV0dXJuIDE7CiAgICBlbHNlIHJldHVybiBuZXd0b25fdHJpYW5nbGUoeC0xLCB6LTEpICsgbmV3dG9uX3RyaWFuZ2xlKHgtMSwgeik7Cn0KCg==