
"""simple docstring"""




from math import sqrt



def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     UpperCAmelCase__				:			Any							=    [1]
     for i in range(2							,     int(sqrt(lowerCAmelCase		)		) + 1							,     1		):
          if number % i == 0:
               values.append(lowerCAmelCase		)
               if int(number // i		) != i:
                    values.append(int(number // i		)		)
     return sorted(lowerCAmelCase		)



def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     return sum(factors(lowerCAmelCase		)		) > n



def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     UpperCAmelCase__				:			Optional[Any]							=    factors(lowerCAmelCase		)
     UpperCAmelCase__				:			Dict							=    len(lowerCAmelCase		)
     UpperCAmelCase__				:			int							=    [[0 for i in range(number + 1		)] for j in range(r + 1		)]
     for i in range(r + 1		):
          UpperCAmelCase__				:			Tuple							=    True

     for i in range(1							,     number + 1		):
          UpperCAmelCase__				:			str							=    False

     for i in range(1							,     r + 1		):
          for j in range(1							,     number + 1		):
               if j < values[i - 1]:
                    UpperCAmelCase__				:			List[str]							=    subset[i - 1][j]
               else:
                    UpperCAmelCase__				:			Union[str, Any]							=    subset[i - 1][j] or subset[i - 1][j - values[i - 1]]

     return subset[r][number] != 0



def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     return abundant(lowerCAmelCase		) and not semi_perfect(lowerCAmelCase		)


if __name__ == "__main__":
    import doctest

    doctest.testmod(verbose=True)
    for number in (69, 70, 71):
        print(f"""{number} is {"" if weird(number) else "not "}weird.""")





"""simple docstring"""




def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     if number != int(lowerCAmelCase		):
          raise ValueError("factorial() only accepts integral values"		)
     if number < 0:
          raise ValueError("factorial() not defined for negative values"		)
     UpperCAmelCase__				:			int							=    1
     for i in range(1							,     number + 1		):
          value *= i
     return value



def 				a__			(					lowerCAmelCase						:							int		):






     '''simple docstring'''
     if not isinstance(lowerCAmelCase							,     lowerCAmelCase		):
          raise ValueError("factorial() only accepts integral values"		)
     if n < 0:
          raise ValueError("factorial() not defined for negative values"		)
     return 1 if n == 0 or n == 1 else n * factorial(n - 1		)


if __name__ == "__main__":
    import doctest

    doctest.testmod()

    A__   :						Any 							=     int(input("""Enter a positive integer: """).strip() or 0)
    print(f"""factorial{n} is {factorial(n)}""")



