RT
#include<bits/stdc++.h>
using namespace std;
string s[100];
int n=1;
int c[3];
void f(int k)
{
for(int i=k;i<=n;i++)
s[i]=s[i+1];
s[n]="";
}
int main()
{
while(cin>>s[n])
n++;
n--;
//cout<<n;
if(s[1]=="and"||s[1]=="or"||s[n]=="and"||s[n]=="or"||s[n]=="not")
return cout<<"error"<<endl,0;
for(int i=1;i<=n;i++)
{
if(s[i]=="not")
{
for(int j=i+1;j<=n;j++)
{
if(s[j]=="true")
{
s[j]="false";
s[i]="";
f(i);
break;
}
else
if(s[j]=="false")
{
s[j]="true";
s[i]="";
f(i);
break;
}
else
if(s[j]=="not")
{
s[j]=s[i]="";
f(i);
f(j);
break;
}
else
return cout<<"error"<<endl,0;
}
}
}
for(int i=1;i<=n;i++)
{
if(s[i]=="and")
{
if(s[i-1]=="true")
{
if(s[i+1]=="true")
{
s[i-1]=s[i]="";
s[i+1]="true";
f(i-1);
f(i);
}
else
if(s[i+1]=="false")
{
s[i-1]=s[i]="";
s[i+1]="false";
f(i-1);
f(i);
}
else
return cout<<"error"<<endl,0;
}
else
if(s[i-1]=="false")
{
if(s[i+1]=="true"||s[i+1]=="false")
{
s[i-1]=s[i]="";
s[i+1]="false";
f(i-1);
f(i);
}
else
return cout<<"error"<<endl,0;
}
else
return cout<<"error"<<endl,0;
}
}
for(int i=1;i<=n;i++)
{
if(s[i]=="or")
{
if(s[i-1]=="true")
{
if(s[i+1]=="true")
{
s[i-1]=s[i]="";
s[i+1]="true";
f(i-1);
f(i);
}
else
if(s[i+1]=="false")
{
s[i-1]=s[i]="";
s[i+1]="true";
f(i-1);
f(i);
}
else
return cout<<"error"<<endl,0;
}
else
if(s[i-1]=="false")
{
if(s[i+1]=="true")
{
s[i-1]=s[i]="";
s[i+1]="true";
f(i-1);
f(i);
}
if(s[i+1]=="false")
{
s[i-1]=s[i]="";
s[i+1]="false";
f(i-1);
f(i);
}
else
return cout<<"error"<<endl,0;
}
else
return cout<<"error"<<endl,0;
}
}
for(int i=1;i<=n;i++)
{
if(s[i]=="true")
c[1]++;
else
if(s[i]=="false")
c[2]++;
}
if(c[1]+c[2]>1)
return cout<<"error"<<endl,0;
if(c[1]==1)
cout<<"true";
else
if(c[2]==1)
cout<<"false";
return 0;
}