#include<cstdio> #include<cstring> #include<iostream> #include<cmath> #include<ctime> #include<string> #include<algorithm> #include<vector> #include<queue> #include<stack> #include<map> using namespace std; typedef long long LL; const int MR=1e6+10; const int MOD=1e9+7; int x[MR]; int main(){ int M; cin>>M; x[0]=1; /* for(int k=1;k<=M;k++){ for(int i=1;i*i<=k;i++){ if(k%i!=0) continue; x[k]+=x[k/i-1]; x[k]%=MOD; if(i*i<k) x[k]+=x[i-1]; x[k]%=MOD; } } */ for(int i=1;i<=M;i++){ for(int k=i;k<=M;k+=i){ x[k]+=x[i-1]; x[k]%=MOD; } } cout<<x[M]<<endl; return 0; }