#include <iostream>
#include <fstream>
#include <string>
#include <cmath>
using namespace std;
int utszj(int x)
{
int u = x%10;
int n = x%4;
if(u<=5)
{
if(u==1) return 1;
if(u==2 and n==2) return 4;
if(u==2 and n==0) return 6;
if(u==3 and n==1) return 3;
if(u==3 and n==3) return 7;
if(u==4) return 6;
if(u==5) return 5;
}
if(u==6) return 6;
if(u==7 and n==1) return 7;
if(u==7 and n==3) return 3;
if(u==8 and n==2) return 4;
if(u==8 and n==0) return 6;
if(u==9) return 9;
if(u==0) return 0;
}
int main()
{
ifstream f("cifra.in");
ofstream g("cifra.out");
int t;
f>>t;
//cout<<t<<endl;
string s;
getline(f, s);
int m, ered;
//tomb generalasa
int v[100]={0, 1, 5, 2, 8, 3, 9, 2, 8, 7, 7,
8, 4, 7, 3, 8, 4, 1, 5, 4, 4,
5, 9, 6, 2, 7, 3, 6, 2, 1, 1,
2, 8, 1, 7, 2, 8, 5, 9, 8, 8,
9, 3, 0, 6, 1, 7, 0, 6, 5, 5,
6, 2, 5, 1, 6, 2, 9, 3, 2, 2,
3, 7, 4, 0, 5, 1, 4, 0, 9, 9,
0, 6, 9, 5, 0, 6, 3, 7, 6, 6,
7, 1, 8, 4, 9, 5, 8, 4, 3, 3,
4, 0, 3, 9, 4, 0, 7, 1, 0};
for(int i=1; i<=t; i++)
{
getline(f, s);
if(s.length()>=2){
m=(s[s.length()-2]-48)*10+(s[s.length()-1]-48);
}
else m=s[0]-48;
g<<v[m]<<endl;
}
return 0;
}