#include const int Mod = 998244353; long long pow_mod(int n, int k) { long long N, ans = 1; for (N = n; k > 0; k >>= 1, N = N * N % Mod) if (k & 1) ans = ans * N % Mod; return ans; } int main() { int N; scanf("%d", &N); char flag[1000001] = {}; int i, j, k, x, max; long long ans = 1; for (i = 2; i < N; i++) { if (flag[i] != 0) continue; for (j = i * 2; j < N; j += i) flag[j] = 1; for (k = i, max = 0; k < N; k += i) { for (x = k, j = 0; x % i == 0; x /= i, j++); for (x = N - k; x % i == 0; x /= i, j++); if (max < j) max = j; } ans = ans * pow_mod(i, max) % Mod; } printf("%lld\n", ans); fflush(stdout); return 0; }