In this assignment you will be writing a program to check for matched parenthesis. stacks have a function "empty" that describes if the stack is empty or not. For example, if the stack is empty, then stack.empty() is true. You should write a function that takes as an argument a string and simply outputs MATCHED or UNMATCHED based on whether the symbols are matched or not. This string will contain either parenthesis (), square brackets [] and curly brackets {}. Your program will examine the string to determine if the symbols are matched appropriately. Pseudocode for this is as we discussed in class: For every symbol in the string, if it is not an open or close symbol then ignore it and move on to the next symbol if it is an open symbol: there are three ( [ { push it on the stack if it is a close symbol, there are three ) ] } check if the stack is empty if it is empty, then output UNMATCHED //sample input is ")" if the stack is not empty then check that the top matches the closed symbol ) matches (, } matches {, ] matches [ if they match, pop that symbol off the stack if they don't match, then output UNMATCHED //sample input is "[)" if all symbols have been examined, the output MATCHED if the stack is empty //sample input is "()" and "" and output UNMATCHED otherwise //sample input is "(("