Notes

Template in C

Constraints

2 ≤ the number of operands in the expression ≤ 100
1 ≤ the number of operators in the expression ≤ 99
-1 × 109 ≤ values in the stack ≤ 109

Input

An expression is given in a line. Two consequtive symbols (operand or operator) are separated by a space character.

You can assume that +, - and * are given as the operator and an operand is a positive integer less than 106

Output

Print the computational result in a line.

Examples

Input

1 2 +


Output

3


Input

1 2 + 3 4 - *


Output

-3
import java.util.*;
public class Main {
	
	public static Integer revPol(String s) {
		
		String[] notation = s.split(" ");
		Stack<Integer> workS = new Stack<>();
		ArrayList<String> operations = new ArrayList<>();
		operations.add("+");
		operations.add("-");
		operations.add("*");
		operations.add("/");
		for(String current : notation) {
			//System.out.println(workS);
			if(operations.contains(current)) {
				//System.out.println("Operation");
				int toAdd = 0;
				int val1 = workS.pop();
				int val2 = workS.pop();
				if(current.equals("+")) {
					toAdd = val1 + val2;
				}
				else if(current.equals("-")) {
					toAdd = val2 - val1;
				}
				else if(current.equals("*")) {
					toAdd = val1 * val2;
				}
				
				
				workS.push(toAdd);
			}
			else {
				workS.push(Integer.parseInt(current));
			}
		}
		
		return workS.pop();
	}
	
	
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		String inp = s.nextLine();
		System.out.println(revPol(inp));
		s.close();
		
	}

}

