#include using namespace std; #define int long long typedef long long ll; typedef pairpint; typedef vectorvint; typedef vectorvpint; #define pb push_back #define mp make_pair #define fi first #define se second #define ln <void chmin(T &t,U f){if(t>f)t=f;} templatevoid chmax(T &t,U f){if(t>=1){ if(m&1)(ret*=n)%=mod; (n*=n)%=mod; } return ret; } signed main(){ fact[0]=1; inv[0]=1; for(int i=1;i<2000000;i++){ fact[i]=fact[i-1]*i%mod; inv[i]=mpow(fact[i],mod-2); } scanf("%lld",&N); while(N--){ char T; int n,k; scanf(" %c(%lld,%lld)",&T,&n,&k); int ans=0; if(T=='P'){ if(k<=n)ans=fact[n]*inv[n-k]%mod; } else if(T=='C'){ if(k<=n)ans=fact[n]*inv[k]%mod*inv[n-k]%mod; } else{ if(n)ans=fact[n+k-1]*inv[k]%mod*inv[n-1]%mod; else if(k==0)ans=1; } printf("%lld\n",ans); } return 0; }