#include <bits/stdc++.h>
using namespace std;
int dirK[8][2] = {{-2, 1}, {-1, 2},  {1, 2},  {2, 1},
                  {2, -1}, {-1, -2}, {1, -2}, {-2, -1}};
int dir8[8][2] = {{-1, 0},  {0, 1}, {1, 0},  {0, -1},
                  {-1, -1}, {1, 1}, {1, -1}, {-1, 1}};
int dir4[4][2] = {{-1, 0}, {0, 1}, {1, 0}, {0, -1}};
int month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
long long powerMod(long long base, long long power, int mod) {
  long long value = 1;
  base %= mod;
  while (power) {
    if (power & 1) {
      value = (value * base) % mod;
    }
    power >>= 1;
    base = (base * base) % mod;
  }
  return value;
}
int arr[] = {2,       3,       5,       7,        13,      17,      19,
             31,      61,      89,      107,      127,     521,     607,
             1279,    2203,    2281,    3217,     4253,    4423,    9689,
             9941,    11213,   19937,   21701,    23209,   44497,   86243,
             110503,  132049,  216091,  756839,   859433,  1257787, 1398269,
             2976221, 3021377, 6972593, 13466917, 20996011};
int main() {
  int n;
  scanf("%d", &n);
  printf("%lld\n", (powerMod(2, arr[n - 1] - 1, 1000000007) - 1) % 1000000007);
}
