





'''simple docstring'''





SCREAMING_SNAKE_CASE_      :			Optional[int]		  =      {
    '''0000''': '''0''',
    '''0001''': '''1''',
    '''0010''': '''2''',
    '''0011''': '''3''',
    '''0100''': '''4''',
    '''0101''': '''5''',
    '''0110''': '''6''',
    '''0111''': '''7''',
    '''1000''': '''8''',
    '''1001''': '''9''',
    '''1010''': '''a''',
    '''1011''': '''b''',
    '''1100''': '''c''',
    '''1101''': '''d''',
    '''1110''': '''e''',
    '''1111''': '''f''',
}



def    SCREAMING_SNAKE_CASE							(			snake_case       )		->						str:
		__lowercase					=    str(snake_case       ).strip()

		# Exceptions
		if not binary_str:
				raise ValueError('Empty string was passed to the function'       )
		__lowercase					=    binary_str[0] == '-'
		__lowercase					=    binary_str[1:] if is_negative else binary_str
		if not all(char in '01' for char in binary_str       ):
				raise ValueError('Non-binary value was passed to the function'       )

		__lowercase					=    (
		    '0' * (4 * (divmod(len(snake_case       )	,      4       )[0] + 1) - len(snake_case       )) + binary_str
		)

		__lowercase					=    []
		for x in range(0	,      len(snake_case       )	,      4       ):
				hexadecimal.append(BITS_TO_HEX[binary_str[x : x + 4]]       )
		__lowercase					=    '0x' + ''.join(snake_case       )

		return "-" + hexadecimal_str if is_negative else hexadecimal_str


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

		testmod()











def    SCREAMING_SNAKE_CASE							(			snake_case       )		->						int:
		__lowercase					=    str(snake_case       ).strip()
		if not bin_string:
				raise ValueError('Empty string was passed to the function'       )
		__lowercase					=    bin_string[0] == '-'
		if is_negative:
				__lowercase					=    bin_string[1:]
		if not all(char in '01' for char in bin_string       ):
				raise ValueError('Non-binary value was passed to the function'       )
		__lowercase					=    0
		for char in bin_string:
				__lowercase					=    2 * decimal_number + int(snake_case       )
		return -decimal_number if is_negative else decimal_number


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

		testmod()




