# テストケースが素晴らしい! require 'prime' N = gets.to_i ans = N if Prime.prime?(N) unless ans then q, r = N.divmod(2) ans = q if q >= 3 && r == 0 && Prime.prime?(q) end unless ans then for d in 3..N do if N % d == 0 && d >= 3 then ans = d break end end end puts ans