import sequtils,strutils,algorithm,math,sugar,macros,strformat import sets,tables,intsets,queues,heapqueue,bitops template get*():string = stdin.readLine().strip() macro unpack*(arr: auto,cnt: static[int]): auto = let t = genSym(); result = quote do:(let `t` = `arr`;()) for i in 0..= dec * 10: dec *= 10 continue return a * dec * 10 + b let n = get().parseInt() let factors = n.getFactorByProcess() var xs = initIntSet() xs.incl 1 for f in factors: for x in toSeq(xs.items): xs.incl(x * f) var results = initIntSet() for x in xs: results.incl concat(x,n div x) results.incl concat(n div x,x) echo results.card