#include <fstream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
char n[110];
int a[110],t;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
class preprocces{
public:
int putere(int k){
int i,sol=1;
for (i=1; i<=k; i++){
sol=sol*k;
sol=sol%10;
}
return sol;
}
void calcul(){
int i;
for (i=1; i<=100; ++i)
{
a[i]=a[i-1]+putere(i);
a[i]=a[i]%10;
}
}
};
int main(){
preprocces execute;
execute.calcul();
fin>>t;
for(int i=1;i<=t;i++){
fin>>n;
int l=strlen(n);
char last2[110];
if(l>2)
strcpy(last2,n-1);
else
strcpy(last2,n);
int ultimacif=atoi(last2);
fout<<a[ultimacif]<<"\n";
}
}
/*
Brute 1^1+2^2+3^3+...+n^n
#include<iostream>
using namespace std;
int main() {
int n,m=9999999,i,j,sum,t;
cin>>n;
sum=0;
for(i=1;i<=n;i++) {
t=1;
for(j=1;j<=i;j++)
t=((long long)t*i)%m;
sum=(sum+t)%m;
}
cout<<sum%10;
}
*/
/*
int a[] = {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};
*/