#include #define int long long using namespace std; const int mod=1e9+7; const int sz=1000010; int fact[sz],inv[sz],ifact[sz]; void make(){ fact[0]=fact[1]=inv[1]=ifact[0]=ifact[1]=1; for(int i=2;i>N>>K; if(N==1){ cout<<0< dp(N); int ans=0; for(int i=1;i<=N/2;i++){ if(N%i!=0) continue; if(K%(N/i)==0){ dp[i]=comb(i,K/(N/i)); for(int j=1;j*j<=i;j++){ if(i%j!=0) continue; dp[i]=(dp[i]-dp[j]+mod)%mod; int k=i/j; if(j==1 or k==j) continue; dp[i]=(dp[i]-dp[k]+mod)%mod; } ans=(ans+dp[i])%mod; } } cout<