




def     UpperCAmelCase_ (							__snake_case					,						__snake_case					,						__snake_case					,						__snake_case						)					->      Tuple:







 """simple docstring"""


 _lowercase											=int((lower_bound + upper_bound) // 2						)
 if array[r] == value:
  return r
 if lower_bound >= upper_bound:
  return -1
 if array[r] < value:
  return binary_search(lowercase_					,						r + 1					,						lowercase_					,						lowercase_						)
 else:
  return binary_search(lowercase_					,						lowercase_					,						r - 1					,						lowercase_						)
def     UpperCAmelCase_ (							__snake_case					,						__snake_case						)					->      Optional[Any]:







 """simple docstring"""


 _lowercase											=0
 if matrix[index][0] == value:
  return [index, 0]
 while index < len(lowercase_						) and matrix[index][0] < value:
  _lowercase											=binary_search(matrix[index]					,						0					,						len(matrix[index]						) - 1					,						lowercase_						)
  if r != -1:
   return [index, r]
  index += 1
 return [-1, -1]


if __name__ == "__main__":
  import doctest

  doctest.testmod()





from math import sqrt
def     UpperCAmelCase_ (							__snake_case						)					->      list[int]:







 """simple docstring"""


 _lowercase											=[1]
 for i in range(2					,						int(sqrt(__snake_case						)						) + 1					,						1						):
  if number % i == 0:
   values.append(__snake_case						)
   if int(number // i						) != i:
    values.append(int(number // i						)						)
 return sorted(__snake_case						)
def     UpperCAmelCase_ (							__snake_case						)					->      bool:







 """simple docstring"""


 return sum(factors(__snake_case						)						) > n
def     UpperCAmelCase_ (							__snake_case						)					->      bool:







 """simple docstring"""


 _lowercase											=factors(__snake_case						)
 _lowercase											=len(__snake_case						)
 _lowercase											=[[0 for i in range(number + 1						)] for j in range(r + 1						)]
 for i in range(r + 1						):
  _lowercase											=True

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

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

 return subset[r][number] != 0
def     UpperCAmelCase_ (							__snake_case						)					->      bool:







 """simple docstring"""


 return abundant(__snake_case						) and not semi_perfect(__snake_case						)


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.''')

