M=10**9+7;U=2000001;F=[1];I=[0]*U;T=input();i=1 while i<U:F+=[i*F[i-1]%M];i+=1 I[U-1]=pow(F[U-1],M-2,M) while i>1:i-=1;I[i-1]=i*I[i]%M while T: T-=1;q=raw_input().split(",");Q=q[0][0];N=int(q[0][2:]);K=int(q[1][:-1]);print[I[K]**(Q=="C")*F[N]*I[N-K]%M*(N>=K),(F[N-1+K]*I[N-1]*I[K]%M*(N!=0))**(K!=0)][Q=="H"]