




a_   		=     [
    (1000, "M"),
    (900, "CM"),
    (500, "D"),
    (400, "CD"),
    (100, "C"),
    (90, "XC"),
    (50, "L"),
    (40, "XL"),
    (10, "X"),
    (9, "IX"),
    (5, "V"),
    (4, "IV"),
    (1, "I"),
]




def 					__SCREAMING_SNAKE_CASE   (  lowercase_      )       ->	int:

    """simple docstring"""


    __UpperCamelCase  		=						{'''I''': 1, '''V''': 5, '''X''': 10, '''L''': 50, '''C''': 1_00, '''D''': 5_00, '''M''': 10_00}
    __UpperCamelCase  		=						0
    __UpperCamelCase  		=						0
    while place < len(lowercase_      ):
        if (place + 1 < len(lowercase_      )) and (vals[roman[place]] < vals[roman[place + 1]]):
            total += vals[roman[place + 1]] - vals[roman[place]]
            place += 2
        else:
            total += vals[roman[place]]
            place += 1
    return total




def 					__SCREAMING_SNAKE_CASE   (  lowercase_      )       ->	str:

    """simple docstring"""


    __UpperCamelCase  		=						[]
    for arabic, roman in ROMAN:
        ((__UpperCamelCase)		,      (__UpperCamelCase))  		=						divmod(lowercase_					,     lowercase_      )
        result.append(roman * factor      )
        if number == 0:
            break
    return "".join(lowercase_      )


if __name__ == "__main__":
 import doctest

 doctest.testmod()












from abc import ABC, abstractmethod
from argparse import ArgumentParser

class  _lowerCamelCase						(			_SCREAMING_SNAKE_CASE   ):

      """simple docstring"""

      @staticmethod
      @abstractmethod
      def       snake_case	(     snake_case					: ArgumentParser				):
          raise NotImplementedError()







      @abstractmethod
      def       snake_case	(     self					: Optional[Any]				):
          raise NotImplementedError()






