#include using namespace std; typedef signed long long ll; #undef _P #define _P(...) (void)printf(__VA_ARGS__) #define FOR(x,to) for(x=0;xN_) return 0; return factr[C_]*fact[N_]%mo*factr[N_-C_]%mo; } ll per(ll N_, ll C_) { if(C_<0 || C_>N_) return 0; return fact[N_]*factr[N_-C_]%mo; } ll hcomb(int P_,int Q_) { if(P_==0 && Q_==0) return 1; return combi(P_+Q_-1,Q_); } int T; char hoge[1010]; void solve() { int i,j,k,l,r,x,y; string s; init(); scanf("%d",&T); FOR(i,T) { assert(scanf("%1s(%d,%d)",hoge,&x,&y)==3); ll ret=0; if(hoge[0]=='C') ret=combi(x,y); else if(hoge[0]=='P') ret=per(x,y); else if(hoge[0]=='H') ret=hcomb(x,y); else assert(0); cout<