

from collections import namedtuple

lowerCAmelCase     :   Dict						     =  namedtuple('from_to', 'from_ to')

lowerCAmelCase     :   Optional[int]						     =  {
    'cubicmeter': from_to(1, 1),
    'litre': from_to(0.001, 10_00),
    'kilolitre': from_to(1, 1),
    'gallon': from_to(0.00_454, 264.172),
    'cubicyard': from_to(0.76_455, 1.30_795),
    'cubicfoot': from_to(0.028, 35.3_147),
    'cup': from_to(0.000_236_588, 4_226.75),
}

def    A_  (							a					,   a					,   a  ):

      """simple docstring"""



      if from_type not in METRIC_CONVERSION:
            raise ValueError(
                f"Invalid 'from_type' value: {from_type!r}  Supported values are:\n"
                + ', '.join(a  )  )
      if to_type not in METRIC_CONVERSION:
            raise ValueError(
                f"Invalid 'to_type' value: {to_type!r}.  Supported values are:\n"
                + ', '.join(a  )  )
      return value * METRIC_CONVERSION[from_type].from_ * METRIC_CONVERSION[to_type].to


if __name__ == "__main__":
    import doctest

    doctest.testmod()









def    A_  (							a  ):

      """simple docstring"""



      SCREAMING_SNAKE_CASE_				:  List[Any]           =     0
      while num > 0:
            digit_sum += num % 1_0
            num //= 1_0
      return digit_sum

def    A_  (							a = 1_0_0  ):

      """simple docstring"""



      SCREAMING_SNAKE_CASE_				:  List[str]           =     1
      SCREAMING_SNAKE_CASE_				:  Union[str, Any]           =     2

      for i in range(2					,   max_n + 1  ):
            SCREAMING_SNAKE_CASE_				:  List[str]           =     pre_numerator
            SCREAMING_SNAKE_CASE_				:  str           =     2 * i // 3 if i % 3 == 0 else 1
            SCREAMING_SNAKE_CASE_				:  Tuple           =     cur_numerator
            SCREAMING_SNAKE_CASE_				:  Tuple           =     e_cont * pre_numerator + temp

      return sum_digits(a  )


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






