# your code goes here
# your code goes here
def valid_parentheses(string):
#your code here
stck = Stck()
check = {'(':1,')':-1,'[':2,']':-2,'{':3,'}':-3}
string = string.replace(" ", "")
print string
for i in string:
print i
if not i.isalnum():
if check[i] > 0 :
stck.push(i)
else:
if stck.index == -1: return False
a = stck.pop()
if (check[i]+check[a]) is not 0: return False
if stck.index >= 0: return False
return True
class Stck:
def __init__(self):
self.stack = []
self.index = -1
def push(self,n):
self.stack.append(n)
self.index += 1
def pop(self):
a = self.stack[self.index]
self.stack.pop(self.index)
self.index -= 1
return a
print valid_parentheses(" (")
IyB5b3VyIGNvZGUgZ29lcyBoZXJlCiMgeW91ciBjb2RlIGdvZXMgaGVyZQpkZWYgdmFsaWRfcGFyZW50aGVzZXMoc3RyaW5nKToKICAgICN5b3VyIGNvZGUgaGVyZQogICAgc3RjayA9IFN0Y2soKQogICAgY2hlY2sgPSB7JygnOjEsJyknOi0xLCdbJzoyLCddJzotMiwneyc6MywnfSc6LTN9CiAgICBzdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgiICIsICIiKQogICAgcHJpbnQgc3RyaW5nCiAgICBmb3IgaSBpbiBzdHJpbmc6CiAgICAJcHJpbnQgaQogICAgICAgIGlmIG5vdCBpLmlzYWxudW0oKToKICAgICAgICAgICAgaWYgY2hlY2tbaV0gPiAwIDoKICAgICAgICAgICAgICAgIHN0Y2sucHVzaChpKQogICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgaWYgc3Rjay5pbmRleCA9PSAtMTogcmV0dXJuIEZhbHNlCiAgICAgICAgICAgICAgICBhID0gc3Rjay5wb3AoKQogICAgICAgICAgICAgICAgaWYgKGNoZWNrW2ldK2NoZWNrW2FdKSBpcyBub3QgMDogcmV0dXJuIEZhbHNlCiAgICBpZiBzdGNrLmluZGV4ID49IDA6IHJldHVybiBGYWxzZQogICAgcmV0dXJuIFRydWUKCmNsYXNzIFN0Y2s6CiAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgc2VsZi5zdGFjayA9IFtdCiAgICAgICAgc2VsZi5pbmRleCA9IC0xCiAgICAKICAgIGRlZiBwdXNoKHNlbGYsbik6CiAgICAgICAgc2VsZi5zdGFjay5hcHBlbmQobikKICAgICAgICBzZWxmLmluZGV4ICs9IDEKICAgIAogICAgZGVmIHBvcChzZWxmKToKICAgICAgICBhID0gc2VsZi5zdGFja1tzZWxmLmluZGV4XQogICAgICAgIHNlbGYuc3RhY2sucG9wKHNlbGYuaW5kZXgpCiAgICAgICAgc2VsZi5pbmRleCAtPSAxCiAgICAgICAgcmV0dXJuIGEKICAgICAgICAKICAgICAgICAKcHJpbnQgdmFsaWRfcGFyZW50aGVzZXMoIiAgKCIp