local n = io.read() if #n <= 3 then n = 0 else n = n:sub(1, #n - 3) n = tonumber(n) end local m = io.read("*n") local mod = 1000000000 n = n % m local dp1, dp2 = {}, {} dp1[1] = {1} for i = 1, m do local src = i % 2 == 1 and dp1 or dp2 local dst = i % 2 == 1 and dp2 or dp1 dst[1] = 1 for j = 1, i - 1 do dst[j + 1] = (src[j] + src[j + 1]) % mod end dst[i + 1] = 1 end local ret = m % 2 == 1 and dp2 or dp1 print(ret[n + 1])