A,B,N=map(int,input().split()) L=[0 for i in range(11)] for i in range(B,A-1,-1): #print(i) if i*2>B: L[i]=1 elif i==5 or i==4: if B>=i*2: L[i]=(2**N)-L[i*2] else: L[i]=1 elif i==3: if B>=3*i: L[i]=(3**N)-L[i*3]-L[i*2] elif B>=2*i: L[i]=(2**N)-L[i*2] else: L[i]=1 elif i==2: if B>=5*i: L[i]=(5**N)-L[i*5]-L[i*3]-(2**N) elif B>=4*i: L[i]=(4**N)-L[i*3]-(2**N) elif B>=3*i: L[i]=(3**N)-L[i*3]-L[i*2] elif B>=2*i: L[i]=(2**N)-L[i*2] else: L[i]=1 mod=10**9+7 ans=1 for i in range(1,11): ans=ans*pow(i,L[i],mod) ans%=mod print(ans)