code: 
  
  
  '''simple docstring'''
  
  
  
  
  import math
  
  
  
  
  
  def 							a_       (						lowercase    )			->list:
  
  
  
  
  
  
      '''simple docstring'''
  
      if n <= 0:
          raise ValueError("Only positive integers have prime factors"    )
      __lowerCamelCase		:      List[str]											=					[]
      while n % 2 == 0:
          pf.append(2    )
          __lowerCamelCase		:      str											=					int(n / 2    )
      for i in range(3							,						int(math.sqrt(lowercase    )    ) + 1							,						2    ):
          while n % i == 0:
              pf.append(lowercase    )
              __lowerCamelCase		:      Dict											=					int(n / i    )
      if n > 2:
          pf.append(lowercase    )
      return pf
  
  
  
  
  
  def 							a_       (						lowercase    )			->int:
  
  
  
  
  
  
      '''simple docstring'''
  
      if n <= 0:
          raise ValueError("Only positive numbers are accepted"    )
      __lowerCamelCase		:      List[Any]											=					1
      __lowerCamelCase		:      Dict											=					1
      while n % 2 == 0:
          temp += 1
          __lowerCamelCase		:      str											=					int(n / 2    )
      div *= temp
      for i in range(3							,						int(math.sqrt(lowercase    )    ) + 1							,						2    ):
          __lowerCamelCase		:      List[Any]											=					1
          while n % i == 0:
              temp += 1
              __lowerCamelCase		:      Tuple											=					int(n / i    )
          div *= temp
      if n > 1:
          div *= 2
      return div
  
  
  
  
  
  def 							a_       (						lowercase    )			->int:
  
  
  
  
  
  
      '''simple docstring'''
  
      if n <= 0:
          raise ValueError("Only positive numbers are accepted"    )
      __lowerCamelCase		:      List[Any]											=					1
      __lowerCamelCase		:      Dict											=					1
      while n % 2 == 0:
          temp += 1
          __lowerCamelCase		:      List[str]											=					int(n / 2    )
      if temp > 1:
          s *= (2**temp - 1) / (2 - 1)
      for i in range(3							,						int(math.sqrt(lowercase    )    ) + 1							,						2    ):
          __lowerCamelCase		:      Optional[int]											=					1
          while n % i == 0:
              temp += 1
              __lowerCamelCase		:      List[Any]											=					int(n / i    )
          if temp > 1:
              s *= (i**temp - 1) / (i - 1)
      return int(lowercase    )
  
  
  
  
  
  def 							a_       (						lowercase    )			->int:
  
  
  
  
  
  
      '''simple docstring'''
  
      __lowerCamelCase		:      Optional[Any]											=					n
      for x in set(prime_factors(lowercase    )    ):
          s *= (x - 1) / x
      return int(lowercase    )
  
  
  if __name__ == "__main__":
      import doctest
  
      doctest.testmod()
  
  
  
  
  
  
style_context: 
  
  
  '''simple docstring'''
  
  
  
  
  # tests directory-specific settings - this file is run automatically
  # by pytest before any tests are run
  
  import sys
  import warnings
  from os.path import abspath, dirname, join
  
  
  # allow having multiple repository checkouts and not needing to remember to rerun
  # 'pip install -e .[dev]' when switching between checkouts and running tests.
  __lowercase  :      Tuple      		=				abspath(join(dirname(dirname(dirname(__file__))), """src"""))
  sys.path.insert(1, git_repo_path)
  
  
  # silence FutureWarning warnings in tests since often we can't act on them until
  # they become normal warnings - i.e. the tests still need to test the current functionality
  warnings.simplefilter(action="""ignore""", category=FutureWarning)
  
  
  
  
  
  def 							a_       (						lowercase    )			->Any:
  
  
  
  
  
  
  				'''simple docstring'''
  
  				from diffusers.utils.testing_utils import pytest_addoption_shared
  
  				pytest_addoption_shared(lowercase    )
  
  
  
  
  
  def 							a_       (						lowercase    )			->str:
  
  
  
  
  
  
  				'''simple docstring'''
  
  				from diffusers.utils.testing_utils import pytest_terminal_summary_main
  
  				__lowerCamelCase		:      Union[str, Any]											=					terminalreporter.config.getoption("--make-reports"    )
  				if make_reports:
  								pytest_terminal_summary_main(lowercase							,						id=lowercase    )
  
  
  
  
  
  