#include <cstdio>
#include <algorithm>
#include <cstring>
#define Dim 1005
using namespace std;
int n,i,p,m,nr;
char s[Dim],t[Dim],ch,var[105];
int val[27];
int expresie();
int termen();
int factor ();
int expresie()
{
int sau = termen();
while(s[p] == '|')
{
p ++;
sau = sau | termen();
}
return sau;
}
int termen()
{
int si = factor();
while(s[p] == '&')
{
p ++;
si = si & factor();
}
return si;
}
int factor()
{
int Val = 0, semn = 1;
while(s[p] == '~')
{
if(semn) semn = 0;
else semn = 1;
p ++;
}
if(s[p] == '(')
{
p ++;
Val = expresie();
p++;
return semn * Val;
}
if(s[p] >= 'A' && s[p] <= 'Z')
{
if(val[s[p] - 'A'] == -1) Val = 0;
else Val = 1;
}
return semn * Val;
}
int main()
{
freopen("bool.in", "r", stdin);
freopen("bool.out", "w", stdout);
gets(s);
/// standardizez sirul
while(i < strlen(s))
{
if(s[i] == 'O' && s[i + 1] == 'R')
{
memset(t, 0, sizeof(t));
strncpy(t, s, i);
m = strlen(t);
t[m] = '|';
m ++;
strcat(t, s + i + 2);
memset(s, 0, sizeof(s));
strcpy(s, t);
i += 2;
}
else if(s[i] == 'N' && s[i + 1] == 'O' && s[i + 2] == 'T')
{
memset(t, 0, sizeof(t));
strncpy(t, s, i);
m = strlen(t);
t[m] = '~';
m ++;
strcat(t, s + i + 3);
memset(s, 0, sizeof(s));
strcpy(s, t);
i += 2;
}
else if(s[i] == 'A' && s[i + 1] == 'N' && s[i + 2] == 'D')
{
memset(t, 0, sizeof(t));
strncpy(t, s, i);
m = strlen(t);
t[m] = '&';
m ++;
strcat(t, s + i + 3);
memset(s, 0, sizeof(s));
strcpy(s, t);
i += 2;
}
else if(s[i] == 'T' && s[i + 1] == 'R' &&
s[i + 2] == 'U' && s[i + 3] == 'E')
{
memset(t, 0, sizeof(t));
strncpy(t, s, i);
m = strlen(t);
t[m] = '1';
m ++;
strcat(t, s + i + 4);
memset(s, 0, sizeof(s));
strcpy(s, t);
i += 2;
}
else if(s[i] == 'F' && s[i + 1] == 'A' &&
s[i + 2] == 'L' && s[i + 3] == 'S'
&& s[i + 4] == 'E')
{
memset(t, 0, sizeof(t));
strncpy(t, s, i);
m = strlen(t);
t[m] = '0';
m ++;
strcat(t, s + i + 5);
memset(s, 0, sizeof(s));
strcpy(s, t);
i += 2;
}
else
{
if (s[i] >= 'A' && s[i] <= 'Z')
val[s[i] - 'A'] = -1;
i ++;
}
}
scanf("\n");
scanf("%d\n", &n);
gets(var);
for(i = 0; i < n; ++ i)
{
if(val[var[i] - 'A'] == -1)
val[var[i] - 'A'] = 1;
else
val[var[i] - 'A'] = -1;
printf("%d",expresie());
}
return 0;
}