
"""simple docstring"""





def 						_lowerCAmelCase				(				UpperCamelCase_				):
		if not numbers:
				return 0

		if not isinstance(UpperCamelCase_  ,				(list, tuple)				) or not all(
		    isinstance(UpperCamelCase_  ,				UpperCamelCase_				) for number in numbers				):
				raise ValueError("""numbers must be an iterable of integers"""				)

		__SCREAMING_SNAKE_CASE            = __SCREAMING_SNAKE_CASE            = __SCREAMING_SNAKE_CASE            = numbers[0]

		for i in range(1  ,				len(UpperCamelCase_				)				):
				# update the maximum and minimum subarray products
				__SCREAMING_SNAKE_CASE            = numbers[i]
				if number < 0:
						__SCREAMING_SNAKE_CASE       ,__SCREAMING_SNAKE_CASE            = min_till_now, max_till_now
				__SCREAMING_SNAKE_CASE            = max(UpperCamelCase_  ,				max_till_now * number				)
				__SCREAMING_SNAKE_CASE            = min(UpperCamelCase_  ,				min_till_now * number				)

				# update the maximum product found till now
				__SCREAMING_SNAKE_CASE            = max(UpperCamelCase_  ,				UpperCamelCase_				)

		return max_prod






"""simple docstring"""





def 						_lowerCAmelCase				(				UpperCamelCase_				):

		if isinstance(UpperCamelCase_  ,				UpperCamelCase_				):
				raise TypeError("""'float' object cannot be interpreted as an integer"""				)
		if isinstance(UpperCamelCase_  ,				UpperCamelCase_				):
				raise TypeError("""'str' object cannot be interpreted as an integer"""				)

		if num == 0:
				return "0b0"

		__SCREAMING_SNAKE_CASE            = False

		if num < 0:
				__SCREAMING_SNAKE_CASE            = True
				__SCREAMING_SNAKE_CASE            = -num

		__SCREAMING_SNAKE_CASE            = []
		while num > 0:
				binary.insert(0  ,				num % 2				)
				num >>= 1

		if negative:
				return "-0b" + "".join(str(UpperCamelCase_				) for e in binary				)

		return "0b" + "".join(str(UpperCamelCase_				) for e in binary				)


if __name__ == "__main__":
							import doctest

							doctest.testmod()




