



"""simple docstring"""







from collections import namedtuple

UpperCAmelCase:  Tuple			     =				namedtuple("""from_to""", """from_ to""")

UpperCAmelCase:  Union[str, Any]			     =				{
    """atm""": from_to(1, 1),
    """pascal""": from_to(0.0_000_098, 101_325),
    """bar""": from_to(0.986_923, 1.01_325),
    """kilopascal""": from_to(0.00_986_923, 101.325),
    """megapascal""": from_to(9.86_923, 0.101_325),
    """psi""": from_to(0.068_046, 14.6_959),
    """inHg""": from_to(0.0_334_211, 29.9_213),
    """torr""": from_to(0.00_131_579, 760),
}


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


if __name__ == "__main__":
		import doctest

		doctest.testmod()




'''simple docstring'''

from __future__ import annotations

_lowerCamelCase :				Optional[int]														= """Alexander Joslin"""



def  _lowerCAmelCase				(				__a      )  ->      int:
     '''simple docstring'''







     if number <= 0:
          _UpperCamelCase  :Optional[Any]       =F'''n must be greater than 0. Got n = {number}'''
          raise ValueError(__a      )

     _UpperCamelCase  :Optional[Any]       =[number + 1] * (number + 1)

     # starting position
     _UpperCamelCase  :int       =0
     for i in range(1			,      __a      ):
          _UpperCamelCase  :List[str]       =min(table[i + 1]			,      table[i] + 1      )
          # check if out of bounds
          if i * 2 <= number:
               _UpperCamelCase  :int       =min(table[i * 2]			,      table[i] + 1      )
          # check if out of bounds
          if i * 3 <= number:
               _UpperCamelCase  :Tuple       =min(table[i * 3]			,      table[i] + 1      )
     return table[number]


if __name__ == "__main__":
      import doctest

      doctest.testmod()