// https://github.com/touma6174/competitive-programming-library.git #ifdef ONLINE_JUDGE #pragma GCC target("avx2") #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") #endif #include #include #define rep(i, n) for (int i = 0; i < (int)(n); ++i) #define rep2(i, s, n) for (int i = (s); i < (int)(n); ++i) using namespace std; using ll = long long; int mod(vector &a, int b) { int tmp = 0; rep(i, a.size()) { tmp = tmp * 10 + a[i]; if (tmp < b) continue; tmp %= b; if (i > 0) a[i - 1] = 0; a[i] = tmp; } return a[a.size() - 1]; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); constexpr int nums[] = {4, 2, 8, 5, 7, 1}; string N_str, K_str; cin >> N_str >> K_str; vector N_vec(N_str.size()), K_vec(K_str.size()); rep(i, N_str.size()) { N_vec[i] = N_str[i] - '0'; } rep(i, K_str.size()) { K_vec[i] = K_str[i] - '0'; } int N = mod(N_vec, 6); int K = mod(K_vec, 6); int n = 1; rep(i, K) { n *= N; } n %= 6; cout << nums[n] << endl; }