/*
* Problem :: 2688 / 줄어들지 않아
*
* Kind :: Dynamic Programming
*
* Insight
* - dp[i][j] = j로 시작하는 줄어들지 않은 i자리 수
* + dp[i][j] = dp[i-1][j] + dp[i-1][j+1] + ... + dp[i-1][9]
* # 줄어들지 않은 i자리 수의 개수
* dp[i][0] + dp[i][1] + ... + dp[i][9]
*
* Point
* - 줄어들지 않은 i자리 수의 개수
* dp[i][0] + dp[i][1] + ... + dp[i][9]
* + 이는, dp[i+1][0] 과 같다
* # '0' + 줄어들지 않는 i자리 수 = 줄어들지 않는 (i+1)자리 수
*/
//
// BOJ
// ver.C++
//
// Created by GGlifer
//
// Open Source
#include <iostream>
#include <cstring>
using namespace std;
#define endl '\n'
// Set up : Global Variables
/* None */
// Set up : Functions Declaration
/* None */
int main()
{
// Set up : I/O
ios::sync_with_stdio(false);
cin.tie(nullptr);
// Process
long dp[65+1][9+1]; /* dp[i][j] = j로 시작하는 줄어들지 않은 i자리 수 */
/* 초기화 */
memset(dp, 0, sizeof(dp));
for (int i=0; i<=9; i++) {
dp[1][i] = 1;
}
/* DP */
for (int i=2; i<=65; i++) {
for (int j=0; j<=9; j++) {
for (int k=j; k<=9; k++) {
dp[i][j] += dp[i-1][k];
}
}
}
// Set up : Input
int T; cin >> T;
while (T--) {
int N; cin >> N;
// Control : Output
/* dp[N][0] + dp[N][1] + ... + dp[N][9] = dp[N+1][0] */
cout << dp[N+1][0] << endl;
}
}
// Helper Functions
/* None */