import Data.Char main = do n <- getLine k <- getLine let r = [2,8,5,7,1,4] print $ r !! ((powerMod (modBigInteger n 6) (modBigInteger k 6) 6 + 5) `mod` 6) modBigInteger :: String -> Int -> Int modBigInteger [] _ = 0 modBigInteger xs m = foldl (\x y -> (x*10 + y) `mod` m) 0 (map digitToInt xs) powerMod :: Integral a => a -> a -> a -> a powerMod n 0 m = 1 powerMod n 1 m = n `mod` m powerMod n p m = ((k * k) `mod` m * (if mod p 2 == 0 then 1 else n)) `mod` m where k = powerMod n (div p 2) m