


'''simple docstring'''





def 					a__    (				UpperCamelCase_	:			int	):
   if not isinstance(UpperCamelCase_,      UpperCamelCase_	):
      UpperCAmelCase__  :Optional[Any]            =			F'''Input value of [number={number}] must be an integer'''
      raise TypeError(UpperCamelCase_	)
   if number < 0 or number % 2 == 1:
      return False
   UpperCAmelCase__  :Optional[Any]            =			int(number**0.5	)
   return number == number_sqrt * (number_sqrt + 1)


if __name__ == "__main__":
    import doctest

    doctest.testmod()







'''simple docstring'''





def 					a__    (				UpperCamelCase_	:			int	):
   UpperCAmelCase__  :str            =			[True for i in range(n + 1	)]
   UpperCAmelCase__  :List[str]            =			[i - 1 for i in range(n + 1	)]
   UpperCAmelCase__  :str            =			[]
   for i in range(2,      n + 1	):
      if is_prime[i]:
         primes.append(UpperCamelCase_	)
      for j in range(0,      len(UpperCamelCase_	)	):
         if i * primes[j] >= n:
            break
         UpperCAmelCase__  :List[str]            =			False

         if i % primes[j] == 0:
            UpperCAmelCase__  :Any            =			totients[i] * primes[j]
            break

         UpperCAmelCase__  :str            =			totients[i] * (primes[j] - 1)

   return totients


if __name__ == "__main__":
    import doctest

    doctest.testmod()



