

def  __lowerCamelCase     (			UpperCamelCase__       ,							UpperCamelCase__				):







							'''simple docstring'''






							snake_case_          =   [1]
							for i in range(2       ,							UpperCamelCase__				):
														factorials.append(factorials[-1] * i				)
							assert 0 <= k < factorials[-1] * n, "k out of bounds"

							snake_case_          =   []
							snake_case_          =   list(range(UpperCamelCase__				)				)

							# Find permutation
							while factorials:
														snake_case_          =   factorials.pop()
														snake_case_    ,   snake_case_          =   divmod(UpperCamelCase__       ,							UpperCamelCase__				)
														permutation.append(elements[number]				)
														elements.remove(elements[number]				)
							permutation.append(elements[0]				)

							return permutation


if __name__ == "__main__":
					import doctest

					doctest.testmod()







def  __lowerCamelCase     (			UpperCamelCase__				):







							'''simple docstring'''






							snake_case_          =   1
							snake_case_          =   2
							while i * i <= n:
														snake_case_          =   0
														while n % i == 0:
																					n //= i
																					multiplicity += 1
														n_divisors *= multiplicity + 1
														i += 1
							if n > 1:
														n_divisors *= 2
							return n_divisors





def  __lowerCamelCase     (			):







							'''simple docstring'''






							snake_case_          =   1
							snake_case_          =   1

							while True:
														i += 1
														t_num += i

														if count_divisors(UpperCamelCase__				) > 500:
																					break

							return t_num


if __name__ == "__main__":
					print(solution())




