#include <iostream>
using namespace std;
int side(int aT,int bT){
__int64 p,t;//acm里的这种题就是要注意再注意数值大小
if(bT==1){
return aT%10;
}
p=(aT%10)*(aT%10);
t=side(p,bT/2);
return (bT%2==0?t:(t*aT))%10;
}
int main()
{
int a,n;
cin>>n;
while(n--){
cin>>a;
cout<<side(a,a)<<endl;
}
return 0;
}
using namespace std;
int side(int aT,int bT){
__int64 p,t;//acm里的这种题就是要注意再注意数值大小
if(bT==1){
return aT%10;
}
p=(aT%10)*(aT%10);
t=side(p,bT/2);
return (bT%2==0?t:(t*aT))%10;
}
int main()
{
int a,n;
cin>>n;
while(n--){
cin>>a;
cout<<side(a,a)<<endl;
}
return 0;
}