using System; using System.Collections.Generic; class B { const long M = 998244353; static void Main() { var n = int.Parse(Console.ReadLine()); var r = 1L; var ps = GetPrimes(n); for (int i = 0; i < ps.Length - 1; i++) { var p = ps[i]; var t = 1L; while (t * p <= n) t *= p; r *= t; r %= M; } Console.WriteLine(r); } static int[] GetPrimes(int n) { var b = new bool[n + 1]; for (int p = 2; p * p <= n; ++p) if (!b[p]) for (int x = p * p; x <= n; x += p) b[x] = true; var r = new List(); for (int x = 2; x <= n; ++x) if (!b[x]) r.Add(x); return r.ToArray(); } }