


'''simple docstring'''



__UpperCAmelCase      :int			    =       tuple[float, float, float]
__UpperCAmelCase      :Tuple			    =       tuple[float, float, float]




def      _a     (						_lowercase :     Pointad      , _lowercase :     Pointad  ):





     '''simple docstring'''






     __UpperCAmelCase     :			int  							=      end_pointa[0] - end_pointa[0]
     __UpperCAmelCase     :			List[Any]  							=      end_pointa[1] - end_pointa[1]
     __UpperCAmelCase     :			str  							=      end_pointa[2] - end_pointa[2]
     return (x, y, z)




def      _a     (						_lowercase :     Vectorad      , _lowercase :     Vectorad  ):





     '''simple docstring'''






     __UpperCAmelCase     :			List[str]  							=      ab[1] * ac[2] - ab[2] * ac[1]  # *i
     __UpperCAmelCase     :			Optional[Any]  							=      (ab[0] * ac[2] - ab[2] * ac[0]) * -1  # *j
     __UpperCAmelCase     :			List[str]  							=      ab[0] * ac[1] - ab[1] * ac[0]  # *k
     return (x, y, z)




def      _a     (						_lowercase :     Vectorad      , _lowercase :     int  ):





     '''simple docstring'''






     return tuple(round(_lowercase      , _lowercase  ) for x in vector  ) == (0, 0, 0)




def      _a     (						_lowercase :     Pointad      , _lowercase :     Pointad      , _lowercase :     Pointad      , _lowercase :     int = 10  ):





     '''simple docstring'''






     __UpperCAmelCase     :			Any  							=      create_vector(_lowercase      , _lowercase  )
     __UpperCAmelCase     :			Dict  							=      create_vector(_lowercase      , _lowercase  )
     return is_zero_vector(get_ad_vectors_cross(_lowercase      , _lowercase  )      , _lowercase  )



'''simple docstring'''



def      _a     (						_lowercase :     int = 600851475143  ):





     '''simple docstring'''






     try:
          __UpperCAmelCase     :			str  							=      int(_lowercase  )
     except (TypeError, ValueError):
          raise TypeError('''Parameter n must be int or castable to int.'''  )
     if n <= 0:
          raise ValueError('''Parameter n must be greater than or equal to one.'''  )
     __UpperCAmelCase     :			Dict  							=      1
     __UpperCAmelCase     :			List[str]  							=      2
     while i * i <= n:
          while n % i == 0:
               __UpperCAmelCase     :			int  							=      i
               n //= i
          i += 1
     if n > 1:
          __UpperCAmelCase     :			List[str]  							=      n
     return int(_lowercase  )


if __name__ == "__main__":
      print(f"""{solution() = }""")