

"""simple docstring"""




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_torch_available,
    is_vision_available,
)


SCREAMING_SNAKE_CASE_     :			List[str]	  =						{'''configuration_beit''': ['''BEIT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''BeitConfig''', '''BeitOnnxConfig''']}

try:
     if not is_vision_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_     :			Any	  =						['''BeitFeatureExtractor''']
     SCREAMING_SNAKE_CASE_     :			Union[str, Any]	  =						['''BeitImageProcessor''']

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_     :			List[str]	  =						[
         '''BEIT_PRETRAINED_MODEL_ARCHIVE_LIST''',
         '''BeitForImageClassification''',
         '''BeitForMaskedImageModeling''',
         '''BeitForSemanticSegmentation''',
         '''BeitModel''',
         '''BeitPreTrainedModel''',
     ]


try:
     if not is_flax_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_     :			int	  =						[
         '''FlaxBeitForImageClassification''',
         '''FlaxBeitForMaskedImageModeling''',
         '''FlaxBeitModel''',
         '''FlaxBeitPreTrainedModel''',
     ]

if TYPE_CHECKING:
     from .configuration_beit import BEIT_PRETRAINED_CONFIG_ARCHIVE_MAP, BeitConfig, BeitOnnxConfig

     try:
          if not is_vision_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .feature_extraction_beit import BeitFeatureExtractor
          from .image_processing_beit import BeitImageProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_beit import (
              BEIT_PRETRAINED_MODEL_ARCHIVE_LIST,
              BeitForImageClassification,
              BeitForMaskedImageModeling,
              BeitForSemanticSegmentation,
              BeitModel,
              BeitPreTrainedModel,
          )

     try:
          if not is_flax_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_flax_beit import (
              FlaxBeitForImageClassification,
              FlaxBeitForMaskedImageModeling,
              FlaxBeitModel,
              FlaxBeitPreTrainedModel,
          )


else:
     import sys

     SCREAMING_SNAKE_CASE_     :			Any	  =						_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)







"""simple docstring"""




import operator as op



def 	UpperCAmelCase__   (				A__   )      ->      Dict:




   """simple docstring"""
   lowerCamelCase__						=			[]
   lowerCamelCase__						=			lambda A__	,    A__   : int(x / y   )  # noqa: E731 integer division operation
   lowerCamelCase__						=			{
       "^": op.pow,
       "*": op.mul,
       "/": div,
       "+": op.add,
       "-": op.sub,
   }  # operators & their respective operation

   # print table header
   print("Symbol".center(8   )	,    "Action".center(12   )	,    "Stack"	,    sep=" | "   )
   print("-" * (30 + len(A__   ))   )

   for x in post_fix:
      if x.isdigit():  # if x in digit
         stack.append(A__   )  # append x to stack
         # output in tabular format
         print(x.rjust(8   )	,    ("push(" + x + ")").ljust(12   )	,    ",".join(A__   )	,    sep=" | "   )
      else:
         lowerCamelCase__						=			stack.pop()  # pop stack
         # output in tabular format
         print("".rjust(8   )	,    ("pop(" + b + ")").ljust(12   )	,    ",".join(A__   )	,    sep=" | "   )

         lowerCamelCase__						=			stack.pop()  # pop stack
         # output in tabular format
         print("".rjust(8   )	,    ("pop(" + a + ")").ljust(12   )	,    ",".join(A__   )	,    sep=" | "   )

         stack.append(
             str(opr[x](int(A__   )	,    int(A__   )   )   )   )  # evaluate the 2 values popped from stack & push result to stack
         # output in tabular format
         print(
             x.rjust(8   )	,    ("push(" + a + x + b + ")").ljust(12   )	,    ",".join(A__   )	,    sep=" | "	,    )

   return int(stack[0]   )


if __name__ == "__main__":
     SCREAMING_SNAKE_CASE_     :			Tuple	  =			input('''\n\nEnter a Postfix Equation (space separated) = ''').split(''' ''')
     print('''\n\tResult = ''', solve(Postfix))




