

from __future__ import annotations

from enum import Enum, unique
from typing import TypeVar

# Create a generic variable that can be 'Enum', or any subclass.
_SCREAMING_SNAKE_CASE							 =			TypeVar('''T''', bound='''Enum''')


@unique
class      lowerCamelCase_ (			_lowerCAmelCase):
 _lowerCAmelCase									=	80
 _lowerCAmelCase									=	70
 _lowerCAmelCase									=	60
 _lowerCAmelCase									=	50
 _lowerCAmelCase									=	40
 _lowerCAmelCase									=	30
 _lowerCAmelCase									=	20
 _lowerCAmelCase									=	10



@unique
class      lowerCamelCase_ (			_lowerCAmelCase):
 _lowerCAmelCase									=	24
 _lowerCAmelCase									=	21
 _lowerCAmelCase									=	18
 _lowerCAmelCase									=	15
 _lowerCAmelCase									=	12
 _lowerCAmelCase									=	9
 _lowerCAmelCase									=	6
 _lowerCAmelCase									=	3
 _lowerCAmelCase									=	2
 _lowerCAmelCase									=	1
 _lowerCAmelCase									=	-1
 _lowerCAmelCase									=	-2
 _lowerCAmelCase									=	-3
 _lowerCAmelCase									=	-6
 _lowerCAmelCase									=	-9
 _lowerCAmelCase									=	-12
 _lowerCAmelCase									=	-15
 _lowerCAmelCase									=	-18
 _lowerCAmelCase									=	-21
 _lowerCAmelCase									=	-24




 @classmethod
 def     a       (			cls							):
   return {unit.name: unit.value for unit in cls if unit.value > 0}




 @classmethod
 def     a       (			cls							):
   return {unit.name: unit.value for unit in cls if unit.value < 0}





def  _snake_case		(snake_case_					:     float  )							->		str:
  __UpperCAmelCase	:  Dict		=     SIUnit.get_positive() if value > 0 else SIUnit.get_negative()
  for name_prefix, value_prefix in prefixes.items():
    __UpperCAmelCase	:  Optional[int]		=     value / (10**value_prefix)
    if numerical_part > 1:
      return F"{numerical_part!s} {name_prefix}"
  return str(snake_case_  )





def  _snake_case		(snake_case_					:     float  )							->		str:
  for prefix in BinaryUnit:
    __UpperCAmelCase	:  Union[str, Any]		=     value / (2**prefix.value)
    if numerical_part > 1:
      return F"{numerical_part!s} {prefix.name}"
  return str(snake_case_  )


if __name__ == "__main__":
      import doctest

      doctest.testmod()






"""simple docstring"""






def     a_		(   lowerCamelCase			):
				if num < 0:
								return -1
				return 1 if num else 0



def     a_		(   ):
				assert signum(5			) == 1
				assert signum(-5			) == -1
				assert signum(0			) == 0


if __name__ == "__main__":
						print(signum(12))
						print(signum(-12))
						print(signum(0))



