You will implement the calculator using stacks and queues. Your calculator should support following operators:
* Addition
* Subtraction
* Multiplication
* Division
* Modulo
* Parenthesis
The input will be given in form of infix expressions, e.g. ( 2 + 3 ) * 5. Implement parenthesis checking to make sure that input is valid expression. If expression is not valid, output error message. Convert checked infix expression it into postfix expression ( e.g. 2 3 + 5 * ). Use stack for infix to postfix conversion. Store resulting postfix expression in queue and print it onto screen. Then, using second stack, estimate postfix expression and print result. Include README file explaining how to run your program and write example.