
import operator as op



def      __lowerCAmelCase						(							UpperCAmelCase__				:      Dict       )  ->    Optional[int]:
							lowerCamelCase_							  =					[]
							lowerCamelCase_							  =					lambda UpperCAmelCase__			,				UpperCAmelCase__       : 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(1_2       )			,				"""Stack"""			,				sep=""" | """       )
							print("""-""" * (3_0 + len(UpperCAmelCase__       ))       )

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

																					lowerCamelCase_							  =					stack.pop()  # pop stack
																					# output in tabular format
																					print("""""".rjust(8       )			,				("""pop(""" + a + """)""").ljust(1_2       )			,				""",""".join(UpperCAmelCase__       )			,				sep=""" | """       )

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

							return int(stack[0]       )


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






import numpy as np
from matplotlib import pyplot as plt
from sklearn.datasets import load_iris
from sklearn.metrics import ConfusionMatrixDisplay
from sklearn.model_selection import train_test_split
from xgboost import XGBClassifier



def      __lowerCAmelCase						(							UpperCAmelCase__				:      dict       )  ->    tuple:
							return (data["data"], data["target"])



def      __lowerCAmelCase						(							UpperCAmelCase__				:      np.ndarray			,				UpperCAmelCase__				:      np.ndarray       )  ->    XGBClassifier:
							lowerCamelCase_							  =					XGBClassifier()
							classifier.fit(UpperCAmelCase__			,				UpperCAmelCase__       )
							return classifier



def      __lowerCAmelCase						(							)  ->    None:
							lowerCamelCase_							  =					load_iris()
							lowerCamelCase_  ,   lowerCamelCase_							  =					data_handling(UpperCAmelCase__       )
							lowerCamelCase_  ,   lowerCamelCase_  ,   lowerCamelCase_  ,   lowerCamelCase_							  =					train_test_split(
							    UpperCAmelCase__			,				UpperCAmelCase__			,				test_size=0.2_5       )

							lowerCamelCase_							  =					iris["""target_names"""]

							# Create an XGBoost Classifier from the training data
							lowerCamelCase_							  =					xgboost(UpperCAmelCase__			,				UpperCAmelCase__       )

							# Display the confusion matrix of the classifier with both training and test sets
							ConfusionMatrixDisplay.from_estimator(
							    UpperCAmelCase__			,				UpperCAmelCase__			,				UpperCAmelCase__			,				display_labels=UpperCAmelCase__			,				cmap="""Blues"""			,				normalize="""true"""			,				)
							plt.title("""Normalized Confusion Matrix - IRIS Dataset"""       )
							plt.show()


if __name__ == "__main__":
		import doctest

		doctest.testmod(verbose=True)
		main()





