n = read_line.to_i minimum_divisor = Array.new(n + 1) { |i| i } 2.upto(n // 2) do |i| 2.upto(minimum_divisor[i]) do |p| break if i * p > n minimum_divisor[i * p] = p end end mu = Array.new(n + 1, 1) 2.upto(n) do |i| d = minimum_divisor[i] if i % (d.to_i64 * d) == 0 mu[i] = 0 else mu[i] = -1 * mu[i // d] end end puts mu.sum - 1