




'''simple docstring'''






from math import sqrt




def 		a_( lowerCamelCase      )				->list[int]:






       '''simple docstring'''




       lowercase  :		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      )				->bool:






       '''simple docstring'''




       return sum(factors(lowerCamelCase      )      ) > n




def 		a_( lowerCamelCase      )				->bool:






       '''simple docstring'''




       lowercase  :		Any						=      factors(lowerCamelCase      )
       lowercase  :		List[Any]						=      len(lowerCamelCase      )
       lowercase  :		Any						=      [[0 for i in range(number + 1      )] for j in range(r + 1      )]
       for i in range(r + 1      ):
              lowercase  :		Optional[Any]						=      True

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

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

       return subset[r][number] != 0




def 		a_( lowerCamelCase      )				->bool:






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






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowercase	:      Optional[int]				=       {
    '''configuration_prophetnet''': ['''PROPHETNET_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''ProphetNetConfig'''],
    '''tokenization_prophetnet''': ['''ProphetNetTokenizer'''],
}

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase	:      List[str]				=       [
          '''PROPHETNET_PRETRAINED_MODEL_ARCHIVE_LIST''',
          '''ProphetNetDecoder''',
          '''ProphetNetEncoder''',
          '''ProphetNetForCausalLM''',
          '''ProphetNetForConditionalGeneration''',
          '''ProphetNetModel''',
          '''ProphetNetPreTrainedModel''',
      ]


if TYPE_CHECKING:
      from .configuration_prophetnet import PROPHETNET_PRETRAINED_CONFIG_ARCHIVE_MAP, ProphetNetConfig
      from .tokenization_prophetnet import ProphetNetTokenizer

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_prophetnet import (
                PROPHETNET_PRETRAINED_MODEL_ARCHIVE_LIST,
                ProphetNetDecoder,
                ProphetNetEncoder,
                ProphetNetForCausalLM,
                ProphetNetForConditionalGeneration,
                ProphetNetModel,
                ProphetNetPreTrainedModel,
            )

else:
      import sys

      lowercase	:      int				=       _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)




