#include<bits/stdc++.h>
using namespace std;
#define int long long
const int P=1e9+7;
int jicheng(int a){
int ans=1;
for(int i=2;i<=a;i++){
ans=ans*i%P;
}
return ans;
}
int power(int a,int b,int p){
int ans=1;
while(b>0){
if(b&1==1){
ans=ans*a%p;
}
a=a*a%p;
b=b>>1;
}
return ans;
}
int n;
void solve(){
if(n<5){
cout<<0<<endl;
return;
}
else if(n==5){
cout<<1<<endl;
return;
}else if(n==6){
cout<<7<<endl;
return;
}else if(n==7){
cout<<29<<endl;
return;
}
int n_jicheng=jicheng(n);
int five_jicheng=jicheng(5);
int six_jicheng=jicheng(6);
int seven_jicheng=jicheng(7);
int n5_jicheng=jicheng(n-5);
int n6_jicheng=jicheng(n-6);
int n7_jicheng=jicheng(n-7);
int n5_5_power=power(n5_jicheng,P-2,P)*power(five_jicheng,P-2,P)%P;
int n6_6_power=power(n6_jicheng,P-2,P)*power(six_jicheng,P-2,P)%P;
int n7_7_power=power(n7_jicheng,P-2,P)*power(seven_jicheng,P-2,P)%P;
int res=(n5_5_power*n_jicheng%P+n6_6_power*n_jicheng%P+n7_7_power*n_jicheng%P)%P;
cout<<res<<endl;
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
solve();
return 0;
}