import sys import math input = sys.stdin.readline def read_values(): return map(int, input().split()) def read_index(): return map(lambda x: int(x) - 1, input().split()) def read_list(): return list(read_values()) def read_lists(N): return [read_list() for _ in range(N)] def main(): n=int(input()) l=list() for v in range(1,int(math.sqrt(n))+1): if n%v==0: l.append(v) if v < n//v: l.append(n//v) p=list() for v in l: if v==1:continue isprime = True for v2 in l: if v2==1:continue if v==v2:continue isprime=isprime and v%v2>0 if isprime==True:p.append(v) l.sort() s=len(l) dp=[0]*s dp[0]=1 for i in range(s): for j in range(i+1,s): if l[j]%l[i]!=0:continue v=l[j]//l[i] add=dp[i] for pv in p: if v%pv==0:continue cnt=1 vi=l[i] while vi%pv==0: vi//=pv cnt+=1 add*=cnt dp[j]=(dp[j]+add)%998244353 print(dp[-1]) if __name__ == "__main__": main()