q,y=map(int,input().split()) S=input().split() def f(n): E=["+", "min", "max"] stc=[] for i in S: if i in E: c=E.index(i) if c==0: a=stc.pop() b=stc.pop() stc.append(a+b) elif c==1: a = stc.pop() b = stc.pop() stc.append(min(a,b)) else: a = stc.pop() b = stc.pop() stc.append(max(a, b)) else: if i=="X": stc.append(n) else: stc.append(int(i)) return stc[0] l,r=0,10**18 if f(0)>y or f(r)<y: print(-1) exit() elif f(0)==y: print(0) exit() while r-l>1: c=(l+r)//2 if f(c)>=y: r=c else: l=c if f(r)==y: print(r) else: print(-1)