import sys read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines B,C,D = map(int,read().split()) MOD = 10**9 + 7 def power(n): """return x^n modulo x^2 - (C+1) x + C""" if n == 0: return 1, 0 a,b = power(n//2) a,b = a*a - C * b * b, 2 * a * b + (C+1) * b * b a,b = a % MOD, b % MOD if n % 2 == 0: return a,b a,b = -C * b, a + (C+1) * b a,b = a % MOD, b % MOD return a,b a,b = power(D) answer = B * b * C % MOD print(answer)