#include<bits/stdc++.h>
#define int long long
using namespace std;
int jc[200005],ny[200005];
int qpow(int a,int x,int p)
{
if(x==0)return 1;
if(x==1)return a%p;
int c=qpow(a,x/2,p),y=qpow(a,x%2,p);
return c*y%p*c%p;
}
int inv(int a,int p)
{
return qpow(a,p-2,p);
}
int c(int n,int m,int p)
{
return jc[n]*ny[m]%p*ny[n-m]%p;
}
signed main()
{
int t,n,m,p;
cin>>t;
while(t--)
{
cin>>n>>m>>p;
n+=m;
jc[0]=ny[0]=1;
for(int i=1;i<=max(n,p);i++)
{
jc[i]=jc[i-1]*i%p;
ny[i]=ny[i-1]*inv(i,p)%p;
}
cout<<c(n/p,m/p,p)*c(n%p,m%p,p)%p<<'\n';
}
}
开O2全RE,不开O2 AC了