#include <bits/stdc++.h>
#define REP(i, n) for (int i = 0; i < (int)(n); i++)
#define REPLL(i, n) for (ll i = 0; i < (ll)(n); i++)
using namespace std;
template<class T>inline bool chmax(T &a, const T &b){if(a < b){a = b; return 1;}return 0;}
template<class T>inline bool chmin(T &a, const T &b){if(a > b){a = b; return 1;}return 0;}
typedef long long ll;

// ABC052 C - Factors of Factorial
// 2020.06.13

ll MOD = 1e9+7;

map<ll, ll> PrimeFac(ll n){
  map<ll, ll> mp;
  ll cnt = 0;
  while(n%2 == 0){
    n /= 2;
    cnt++;
  }
  if(cnt != 0) mp[2] = cnt;
  for(ll i = 3; i*i <= n; i += 2){
    cnt = 0;
    while(n%i == 0){
      n /= i;
      cnt++;
    }
    if(cnt != 0) mp[i] = cnt;
  }
  if(n != 1) mp[n] = 1;
  return mp;
}

int main(){
  ios::sync_with_stdio(false);
  cin.tie(0);
  ll N; cin >> N;
  if(N == 1){
    cout << 1 << endl;
    return 0;
  }
  map<ll, ll> res;
  for(ll i = 2; i <= N; i++){
    map<ll, ll> tmp;
    tmp = PrimeFac(i);
    for(auto j : tmp){
      res[j.first] += j.second;
      res[j.first] %= MOD;
    }
  }
  ll ans = 1;
  for(auto i : res){
    ans = (ans*(i.second+1))%MOD;
  }
  ans %= MOD;
  cout << ans << endl;
}
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll INF = 1e18;
const int inf = 1e9;
#define rep(i, a, b) for (int i = a; i < b; i++)
#define per(i, b, a) for (int i = a - 1; i >= b; i--)
#define int long long
using Graph = vector<vector<int>>;
using pint = pair<int, int>;
int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};
int dxx[8] = {1, 1, 1, 0, 0, -1, -1, -1}, dyy[8] = {-1, 0, 1, -1, 1, -1, 0, 1};

signed main() {
    int n;
    cin >> n;
    map<int, int> mp;
    rep (i, 1, n + 1) {
        int k = i;
        for (int j = 2; j * j <= k; j++) {
            while (k % j == 0) {
                k /= j;
                mp[j]++;
            }
        }
        mp[k]++;
    }
    int ans = 1;
    const int mod = 1e9 + 7;
    for (auto p : mp) {
        // cout << p.first << " : " << p.second << "\n";
        if (p.first == 1) continue;
        ans = ans * (p.second + 1) % mod;
        // cout << ans << "\n";
    }
    cout << ans << "\n";
}