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
#include <cstdio>
#include <stack>

std::stack<int> st;

int main()
{
  char ch[10];
  while( scanf( "%s", ch ) != EOF )
    {
        if( *ch >= '0' && *ch <= '9' )
        {
            int p;
            sscanf( ch, "%d", &p );

            st.push( p );
        }
        else
        {
            int a = st.top(); st.pop();
            int b = st.top(); st.pop();

            st.push( *ch=='+'?b+a:*ch=='-'?b-a:b*a );
        }
    }

    printf( "%d\n", st.top() );

    return 0;
}