정수 튜플 P=(P1,P2,P3,…,Pn)이 주어진다. 이 튜플에 대한 함수 F를 다음 세 규칙으로 정의한다.
Pi 중 하나라도 음수이거나 P1≥P2≥⋯≥Pn이 성립하지 않으면 F(P)=0이다.
P=(0,0,…,0)이면 F(P)=1이다.
그 밖의 경우에는 좌표 하나를 골라 1을 뺀 튜플 n개의 함숫값을 모두 더한다.
F(P1,P2,…,Pn)=∑k=1nF(P1,…,Pk−1,…,Pn)
n=4인 경우를 보자. F(4,3,2,−1)은 마지막 좌표가 음수이므로 0이다. F(4,3,2,5)는 좌표가 큰 수부터 작은 수 순서로 놓여 있지 않으므로 0이다. F(4,3,2,1)은 F(3,3,2,1)+F(4,2,2,1)+F(4,3,1,1)+F(4,3,2,0)이다.
튜플 P가 주어지면 F(P1,P2,…,Pn)을 구하라. 값이 매우 커질 수 있으므로 소수 1,000,000,009로 나눈 나머지를 출력한다.
첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 두 줄이다. 첫째 줄에 n이 주어지고, 둘째 줄에 공백 하나로 구분된 정수 n개가 주어진다. 이 수가 튜플 P다.
1≤n≤1000이고 1≤Pi≤1000이다. P는 P1≥P2≥⋯≥Pn을 만족한다.
각 테스트 케이스마다 Case #x: R 형식으로 한 줄씩 출력한다. x는 테스트 케이스 번호이고 1부터 시작한다. R은 F(P1,P2,…,Pn)을 1,000,000,009로 나눈 나머지다.