n=int(input()) P=[] i=1 while i*i<=n: if n%i==0: P+=[i,n//i] i+=1 P=sorted(set(P)) q=[0]*(n+1) for i in range(2,n+1): if n%i==0: p=[] for j in range(len(P)): if P[j]<=i: if i%P[j]==0: p+=[n//P[j]] else: break for ii in reversed(range(len(p))): p[ii]-=sum(p[jj] for jj in range(ii+1,len(p)) if P[jj]%P[ii]==0) q[i]=(sum(p[ii]*q[P[ii]] for ii in range(len(p)-1))+n)/(n-p[len(p)-1]) print(q[n])