Use STL stacks in this assignment. Your goal is to read in an arbitrary number of parentheses and determine if the parentheses are correctly matched. Each test case is terminated by a single '!'. The entire input is terminated by '!!'. Be sure to clear the stack between episodes. Sample Input: ()! ()()! (()())! ()(()! (())!! Sample Output: Yes. Yes. Yes. No. Yes. For extra credit, allow matching of '[' ,']' as well as '{' and '}'.