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() var results = initIntSet() let iMax = n.float.sqrt.int for i in 1..iMax: if n mod i != 0: continue results.incl(i.concat(cast[int](n div i))) results.incl(cast[int](n div i).concat(i)) echo results.card