from functools import lru_cache import sys, time, random from collections import deque, Counter, defaultdict input = lambda: sys.stdin.readline().rstrip() ii = lambda: int(input()) mi = lambda: map(int, input().split()) li = lambda: list(mi()) inf = 2 ** 61 - 1 mod = 998244353 n = ii() ni = 1 / n @lru_cache(None) def solve(x): if x == 1: return 0 ans = 1 for i in range(2, x + 1): if i * i > x: break if x % i == 0: ans += solve(x // i) / x if x // i != i: ans += solve(i) / x return ans * x / (x - 1) print(solve(n))