def combination(n, r, MOD=10**9+7): """ O(r) """ if not 0 <= r <= n: return 0 r = min(r, n - r) numerator = reduce(lambda x, y: x * y % MOD, range(n, n - r, -1), 1) denominator = reduce(lambda x, y: x * y % MOD, range(1, r + 1), 1) return numerator * pow(denominator, MOD - 2, MOD) % MOD def combination2(n, r): """ O(r) """ if not 0 <= r <= n: return 0 r = min(r, n - r) numerator = reduce(lambda x, y: x * y, range(n, n - r, -1), 1) denominator = reduce(lambda x, y: x * y, range(1, r + 1), 1) return numerator // denominator ############################################################################################## import sys input = sys.stdin.readline from functools import reduce x=int(input()) S=combination2(31,x) T=0 C=combination2(30,x-1) for i in range(31): T+=C*(1<