#include <bits/stdc++.h>
#define mod 1000000007
#define ll unsigned long long
using namespace std;
ll func(ll a,ll b)
{
long long int l=(2*a-b-1);
if((l%(b-a))==0)
{
return (b-a)%mod;
}
else
{
ll k= l%(b-a);
return k;
}
}
int main()
{
ll t;
cin>>t;
while(t--)
{
ll n,k,a,b,k1;
long long int l;
cin>>n>>k;
a=k;
b=k+n-1;
l=(2*a-b-1);
ll s=(a-1)%mod;
if(l<=0)
{
s=s%mod;
}
else{
ll a1=func(a,b);
k1=(l-a1)/(n-1);
k1++;
k1=(k1*(a1+l));
k1=k1/2;
k1=k1%mod;
s=s+k1;
}
cout<<s%mod<<endl;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbW9kIDEwMDAwMDAwMDcKI2RlZmluZSBsbCB1bnNpZ25lZCBsb25nIGxvbmcKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmxsIGZ1bmMobGwgYSxsbCBiKQp7CiAgICBsb25nIGxvbmcgaW50IGw9KDIqYS1iLTEpOwogICAgaWYoKGwlKGItYSkpPT0wKQogICAgewogICAgICAgIHJldHVybiAoYi1hKSVtb2Q7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAgICAgbGwgaz0gbCUoYi1hKTsKICAgICAgICByZXR1cm4gazsKICAgIH0KfQppbnQgbWFpbigpCnsKICAgbGwgdDsKICAgY2luPj50OwogICB3aGlsZSh0LS0pCiAgIHsKICAgICAgIGxsIG4sayxhLGIsazE7CiAgICAgICBsb25nIGxvbmcgaW50IGw7CiAgICAgICBjaW4+Pm4+Pms7CiAgICAgICBhPWs7CiAgICAgICBiPWsrbi0xOwogICAgICAgbD0oMiphLWItMSk7CiAgICAgICBsbCBzPShhLTEpJW1vZDsKICAgICAgIGlmKGw8PTApCiAgICAgICB7CiAgICAgICAgICAgcz1zJW1vZDsKICAgICAgIH0KICAgICAgIGVsc2V7CiAgICAgICAgbGwgYTE9ZnVuYyhhLGIpOwogICAgICAgIGsxPShsLWExKS8obi0xKTsKICAgICAgICBrMSsrOwogICAgICAgIGsxPShrMSooYTErbCkpOwogICAgICAgIGsxPWsxLzI7CiAgICAgICAgazE9azElbW9kOwogICAgICAgIHM9cytrMTsKICAgICAgIH0KICAgICAgIGNvdXQ8PHMlbW9kPDxlbmRsOwogICB9Cn0K