
from __future__ import annotations

from typing import Any






class 							SCREAMING_SNAKE_CASE__     :

							"""simple docstring"""






							def __init__(	self  ,						SCREAMING_SNAKE_CASE_  ,						SCREAMING_SNAKE_CASE_      )-> None:  # noqa: A002





													'''simple docstring'''






													__UpperCamelCase  	=      item
													__UpperCamelCase  	=      next






class 							SCREAMING_SNAKE_CASE__     :

							"""simple docstring"""






							def __init__(	self      )-> None:





													'''simple docstring'''






													__UpperCamelCase  	=      None
													__UpperCamelCase  	=      0



							def      A__		(	self  ,						SCREAMING_SNAKE_CASE_      )-> None:





													'''simple docstring'''






													__UpperCamelCase  	=      Node(SCREAMING_SNAKE_CASE_  ,						self.head      )
													self.size += 1



							def      A__		(	self      )-> Any:





													'''simple docstring'''






													if self.head is None:
																			return None
													else:
																			__UpperCamelCase  	=      self.head.item
																			__UpperCamelCase  	=      self.head.next
																			self.size -= 1
																			return item



							def      A__		(	self      )-> bool:





													'''simple docstring'''






													return self.head is None



							def __str__(	self      )-> str:





													'''simple docstring'''






													if self.is_empty():
																			return ""
													else:
																			__UpperCamelCase  	=      self.head
																			__UpperCamelCase  	=      ''''''
																			__UpperCamelCase  	=      []
																			while iterate:
																									item_list.append(str(iterate.item      )      )
																									__UpperCamelCase  	=      iterate.next

																			__UpperCamelCase  	=      ''' --> '''.join(SCREAMING_SNAKE_CASE_      )

																			return item_str



							def __len__(	self      )-> int:





													'''simple docstring'''






													return self.size






from math import sqrt


def  A__ (       __lowerCamelCase						):
   SCREAMING_SNAKE_CASE_	=      [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						):
   return sum(factors(__lowerCamelCase						)						) > n


def  A__ (       __lowerCamelCase						):
   SCREAMING_SNAKE_CASE_	=      factors(__lowerCamelCase						)
   SCREAMING_SNAKE_CASE_	=      len(__lowerCamelCase						)
   SCREAMING_SNAKE_CASE_	=      [[0 for i in range(number + 1						)] for j in range(r + 1						)]
   for i in range(r + 1						):
      SCREAMING_SNAKE_CASE_	=      True

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

   for i in range(1,  r + 1						):
      for j in range(1,  number + 1						):
         if j < values[i - 1]:
            SCREAMING_SNAKE_CASE_	=      subset[i - 1][j]
         else:
            SCREAMING_SNAKE_CASE_	=      subset[i - 1][j] or subset[i - 1][j - values[i - 1]]

   return subset[r][number] != 0


def  A__ (       __lowerCamelCase						):
   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.""")


