#S5093. 整数划分

整数划分

将正整数 n 表示成一系列正整数之和:

n=n1+n2++nkn=n_1+n_2 + \cdots +n_k

其中 n1n2nk1k1n_1 \ge n_2 \ge \cdots \ge n_k \ge 1 ,k \ge 1

正整数 n 的这种表示称为正整数 n 的划分。求正整数 n 的不同划分个数。

例如正整数 6 有如下 11 种不同的划分:

6、5+1、4+2,4+1+1、3+3,3+2+1,3+1+1+1、2+2+2,2+2+1+1,2+1+1+1+1、1+1+1+1+1+1 。

输入格式

第一行是测试数据的数目 M(1M10)M(1 \le M \le 10) 。以下每行均包含一个整数 n(1n1000)n(1 \le n \le 1000)

输出格式

输出M行,第i行为第i组测试数据有多少种分法,最终结果模 109+910^9 + 9

输出时每行末尾的多余空格,不影响答案正确性

要求使用「文件输入输出」的方式解题,输入文件为 divide.in,输出文件为 divide.out

样例输入

1
6

样例输出

11