import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static boolean isRight(int n, char c) { //判断校验码的有效性
char[] m = {'1','0','X','9','8','7','6','5','4','3','2'}; // 校验码
if(m[n] == c) {
return true;
}
return false;
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.valueOf(br.readLine());
int[] arr = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; // 权重数组
char[] m = {'1','0','X','9','8','7','6','5','4','3','2'}; // 校验码
int count = 0 ; // 记录有效身份证号码的个数
for(int i = 0 ; i < n ; i++) {
int sum = 0; // 记录权重和
int mod = 0; // 记录对11取模之后的数字
boolean flag = true; // 记录身份证的有效性
String str = br.readLine();
String sFront = str.substring(0,str.length()-1); // 截取前17位
char sLast = str.substring(str.length()-1,str.length()).charAt(0); // 截取最后一位
for(int j = 0 ; j < sFront.length() ; j++) { // 计算权重和并判断是否为数字
int num = (int)sFront.charAt(j); // 转换为ASCII码表表示的十进制,0~9为48~57
if(num <48 || num > 57) { // 判断前17位是否全为数字
flag = false;
break;
}
int number = sFront.charAt(j) - '0';
sum += number * arr[j];
}
if(flag) {
mod = sum % 11;
if(isRight(mod,sLast)) {
count ++;
} else {
System.out.println(str);
}
} else {
System.out.println(str);
}
}
if(count == n) {
System.out.println("All passed");
}
}
}