from itertools import count
from math import asin, pi, sqrt




def 				_snake_case     (       lowerCAmelCase							:       float     ):
		"""simple docstring"""







		return (
		    (1 - 2 * point) * sqrt(point - point**2     ) + 2 * point + asin(sqrt(1 - point     )     )
		) / 4




def 				_snake_case     (       lowerCAmelCase							:       int     ):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		Optional[Any]    				=   (circles_number + 1 - sqrt(2 * circles_number     )) / (
		    2 * (circles_number**2 + 1)
		)
		SCREAMING_SNAKE_CASE_  :		Any    				=   circles_number * intersection_y

		SCREAMING_SNAKE_CASE_  :		Union[str, Any]    				=   intersection_x * intersection_y / 2
		SCREAMING_SNAKE_CASE_  :		Tuple    				=   circle_bottom_arc_integral(
		    1 / 2     ) - circle_bottom_arc_integral(lowerCAmelCase     )

		return triangle_area + concave_region_area




def 				_snake_case     (       lowerCAmelCase							:       float = 1 / 1_0_0_0     ):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		Optional[Any]    				=   (1 - pi / 4) / 4

		for n in count(1     ):
				if concave_triangle_area(lowerCAmelCase     ) / l_section_area < fraction:
						return n

		return -1


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

__lowerCamelCase :     List[Any]          =  {hex(i)[2:]: i for i in range(16)}  # Use [:2] to strip off the leading '0x'




def 				_snake_case     (       lowerCAmelCase							:       str     ):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		Optional[Any]    				=   hex_string.strip().lower()
		if not hex_string:
				raise ValueError("Empty string was passed to the function"     )
		SCREAMING_SNAKE_CASE_  :		str    				=   hex_string[0] == "-"
		if is_negative:
				SCREAMING_SNAKE_CASE_  :		Optional[int]    				=   hex_string[1:]
		if not all(char in hex_table for char in hex_string     ):
				raise ValueError("Non-hexadecimal value was passed to the function"     )
		SCREAMING_SNAKE_CASE_  :		List[Any]    				=   0
		for char in hex_string:
				SCREAMING_SNAKE_CASE_  :		Tuple    				=   1_6 * decimal_number + hex_table[char]
		return -decimal_number if is_negative else decimal_number


if __name__ == "__main__":
		from doctest import testmod

		testmod()
