A,B,N=map(int,input().split()) mod=10**9+7 X=[0]*(B+1) S=B-A+1 for i in range(2,B+1): ko=B//i-(A-1)//i X[i]=pow(ko,N,mod) for i in range(B,0,-1): score=0 for j in range(i+i,B+1,i): score+=X[j] X[i]-=score ANS=1 for i in range(1,B+1): ANS=ANS*pow(i,X[i],mod)%mod print(ANS)