#include <fstream>
#include <cstring>
using namespace std;
ifstream fin ("cifra.in");
ofstream fout ("cifra.out");
int t,i,n,nr,rest,uc,a[10][5],suma;
int w[] = {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, 0};
char v[110];
int main (){
//a[i][j] - ultima cufra a lui i la puterea j(0<=j<4);
for (nr=1;nr<=9;nr++){
i = nr;
rest = nr%4;
if (i==1){
a[1][0] = a[1][1] = a[1][2] = a[1][3] = 1;
}
if (i==2){
if (rest == 0)
a[2][0] = 6;
if (rest == 1)
a[2][1] = 2;
if (rest == 2)
a[2][2] = 4;
if (rest == 3)
a[2][3] = 8;
}
if (i==3){
if (rest == 0)
a[3][0] = 1;
if (rest == 1)
a[3][1] = 3;
if (rest == 2)
a[3][2] = 9;
if (rest == 3)
a[3][3] = 7;
}
if (i==4){
if (rest%2 == 0)
a[4][0] = a[4][2] = 6;
else
a[4][1] = a[4][3] = 4;
}
if (i==5){
a[5][0] = a[5][1] = a[5][2] = a[5][3] = 5;
}
if (i==6){
a[6][0] = a[6][1] = a[6][2] = a[6][3] = 6;
}
if (i==7){
if (rest == 0)
a[7][0] = 1;
if (rest == 1)
a[7][1] = 7;
if (rest == 2)
a[7][2] = 9;
if (rest == 3)
a[7][3] = 3;
}
if (i==8){
if (rest == 0)
a[8][0] = 6;
if (rest == 1)
a[8][1] = 8;
if (rest == 2)
a[8][2] = 4;
if (rest == 3)
a[8][3] = 2;
}
if (i==9){
if (rest%2 == 0)
a[9][0] = a[9][2] = 1;
else
a[9][1] = a[9][3] = 9;
}
}
/* w[0] = 0;
for (i=1;i<=99;i++){
uc = a[i%10][i%4];
w[i] = (w[i-1]+uc)%10;
fout<<w[i]<<" ";
}*/
suma %= 10;
fin>>t;
for (;t--;){
fin>>v;
n = strlen (v);
if (n > 1){
nr = (v[n-2]-'0')*10+(v[n-1]-'0');
}
else{
nr = v[n-1]-'0';
}
// trebuie sa afisam ultima cifra a numarului nr
fout<<w[nr]<<"\n";
}
return 0;
}