import java.util.*;
public class Solution {
public boolean isValid (String s) {
Deque<Character> stack = new ArrayDeque<>();
stack.push('b');
for(int i=0;i<s.length();i++){
char c = s.charAt(i);
if(c=='['||c=='('||c=='{'){
stack.push(c);
}
if(c==']'&&!stack.isEmpty()){
if(stack.pop()!='[')return false;
continue;
}
if(c==')'&&!stack.isEmpty()){
if(stack.pop()!='(')return false;
continue;
}
if(c=='}'&&!stack.isEmpty()){
if(stack.pop()!='{')return false;
continue;
}
}
stack.pop();
if(!stack.isEmpty())return false;
else return true;
}
}