



'''simple docstring'''

__lowerCAmelCase									=   tuple[float, float, float]
__lowerCAmelCase									=   tuple[float, float, float]



def      __lowerCamelCase     (      lowerCAmelCase_						,			lowerCAmelCase_  )			->      Vectorad:
		_a     :      str        =							end_pointa[0] - end_pointa[0]
		_a     :      Optional[int]        =							end_pointa[1] - end_pointa[1]
		_a     :      str        =							end_pointa[2] - end_pointa[2]
		return (x, y, z)



def      __lowerCamelCase     (      lowerCAmelCase_						,			lowerCAmelCase_  )			->      Vectorad:
		_a     :      Optional[Any]        =							ab[1] * ac[2] - ab[2] * ac[1]  # *i
		_a     :      List[str]        =							(ab[0] * ac[2] - ab[2] * ac[0]) * -1  # *j
		_a     :      Dict        =							ab[0] * ac[1] - ab[1] * ac[0]  # *k
		return (x, y, z)



def      __lowerCamelCase     (      lowerCAmelCase_						,			lowerCAmelCase_  )			->      bool:
		return tuple(round(lowerCAmelCase_						,			lowerCAmelCase_  ) for x in vector  ) == (0, 0, 0)



def      __lowerCamelCase     (      lowerCAmelCase_						,			lowerCAmelCase_						,			lowerCAmelCase_						,			lowerCAmelCase_ = 10  )			->      bool:
		_a     :      Optional[int]        =							create_vector(lowerCAmelCase_						,			lowerCAmelCase_  )
		_a     :      List[str]        =							create_vector(lowerCAmelCase_						,			lowerCAmelCase_  )
		return is_zero_vector(get_ad_vectors_cross(lowerCAmelCase_						,			lowerCAmelCase_  )						,			lowerCAmelCase_  )









'''simple docstring'''

import math



def      __lowerCamelCase     (      lowerCAmelCase_  )			->      bool:
		_a     :      Optional[int]        =							math.loga(math.sqrt(4 * positive_integer + 1  ) / 2 + 1 / 2  )

		return exponent == int(lowerCAmelCase_  )



def      __lowerCamelCase     (      lowerCAmelCase_ = 1 / 12345  )			->      int:
		_a     :      int        =							0
		_a     :      Optional[Any]        =							0

		_a     :      int        =							3
		while True:
				_a     :      Tuple        =							(integer**2 - 1) / 4
				# if candidate is an integer, then there is a partition for k
				if partition_candidate == int(lowerCAmelCase_  ):
						_a     :      Union[str, Any]        =							int(lowerCAmelCase_  )
						total_partitions += 1
						if check_partition_perfect(lowerCAmelCase_  ):
								perfect_partitions += 1
				if perfect_partitions > 0:
						if perfect_partitions / total_partitions < max_proportion:
								return int(lowerCAmelCase_  )
				integer += 1


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




