Problem: 

Input

The input contains a single integer a (1 ≤ a ≤ 40).

Output

Output a single string.

Examples

Input

2


Output

Adams


Input

8


Output

Van Buren


Input

29


Output

Harding

Solution (in CPP):

Solution:
#include <bits/stdc++.h>
using namespace std;
struct bd {
  int64_t v;
  int64_t c;
};
const int64_t po[94] = {0,   1,  1, 1, 2,  1, 2,  1, 5,  2, 2,  1, 5,  1, 2, 1,
                        14,  1,  5, 1, 5,  2, 2,  1, 15, 2, 2,  5, 4,  1, 4, 1,
                        51,  1,  2, 1, 14, 1, 2,  2, 14, 1, 6,  1, 4,  2, 2, 1,
                        52,  2,  5, 1, 5,  1, 15, 2, 13, 2, 2,  1, 13, 1, 2, 4,
                        267, 1,  4, 1, 5,  1, 4,  1, 50, 1, 2,  3, 4,  1, 6, 1,
                        52,  15, 2, 1, 15, 1, 2,  1, 12, 1, 10, 1, 4,  2};
int64_t n, i, j, x, y, z, minn = 0, t, pr, a, b, k;
bd all[300001];
bd h;
int64_t dp[300001][3];
string s;
int main() {
  cin >> n;
  cout << po[n];
}