local mfl, mce = math.floor, math.ceil local ffi = require("ffi") local C = ffi.C ffi.cdef[[ long long atoll(const char*); ]] local function lltonumber(str) return C.atoll(str) end local p, q, r, k = io.read():match("(%d+) (%d+) (%d+) (%d+)") p, q, r = tonumber(p), tonumber(q), tonumber(r) k = lltonumber(k) local t = {{}} for i = 1, 1000 do local v = i - 1 local p1 = v % 10 v = mfl(v / 10) local p2 = v % 10 local p3 = mfl(v / 10) local d = (p1 + p2 + p3) % 10 local dst = d * 100 + p3 * 10 + p2 + 1 t[1][i] = dst end for i = 2, 100 do t[i] = {} for j = 1, 1000 do t[i][j] = t[i - 1][ t[i - 1][j] ] end end p = p % 10 q = q % 10 r = r % 10 if k == 1LL then print(p) elseif k == 2LL then print(q) elseif k == 3LL then print(r) else k = k - 1LL local cur = p + q * 10 + r * 100 + 1 for i = 1, 100 do if k % 2LL == 1LL then cur = t[i][cur] end k = k / 2LL end print((cur + 9) % 10) end