#include #include #define MOD 1000000007 int main(void) { long long int B, C, D, E, x, c, i, j, ANS1, ANS2, ANS3; scanf("%lld%lld%lld", &B, &C, &D); B = B % MOD; C = C % MOD; E = MOD - 2; c = C - 1; ANS1 = 1; ANS2 = 1; ANS3 = B * C % MOD; if (C == 1) { printf("%lld\n", (B % MOD)*(D % MOD) % MOD); } else { for (i = 0; E > 0; i++) { if ((E & 1) == 1) { ANS1 = ANS1 * c % MOD; } E = E >> 1; c = c * c % MOD; } for (j = 0; D > 0; j++) { if ((D & 1) == 1) { ANS2 = ANS2 * C % MOD; } D = D >> 1; C = C * C % MOD; } ANS2 = (ANS2 - 1) % MOD; x = (ANS1 * ANS2 % MOD) * ANS3 % MOD; printf("%lld\n", x); } return 0; }