/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
System.
out.
println(p
("!!!0x!!1")); System.
out.
println(p
("1xaa1l0&0bx!a1&!0&1bb")); }
int x,y;
while((y=s.indexOf("b"))>=0){
x=s.lastIndexOf("a",y);
s=s.replaceAll(s.substring(x,y+1),p(s.substring(x+1,y)));
}
while(s.indexOf("!")>=0){
s=s.replaceAll("!0",a);
s=s.replaceAll("!1",b);
}
while(s.length()>1){
t=s.substring(0,3);
if(t.charAt(1)=='l')
s=s.replaceFirst(t,t.equals("0l0")?b:a);
else if(t.charAt(1)=='&')
s=s.replaceFirst(t,t.equals("1&1")?a:b);
else
s=s.replaceFirst(t,t.charAt(0)==t.charAt(2)?b:a);
}
return s;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihwKCIhISEweCEhMSIpKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4ocCgiMXhhYTFsMCYwYnghYTEmITAmMWJiIikpOwoJfQoKICAgIHN0YXRpYyBTdHJpbmcgcChTdHJpbmcgcyl7CiAgICAgICAgaW50IHgseTsKICAgICAgICB3aGlsZSgoeT1zLmluZGV4T2YoImIiKSk+PTApewogICAgICAgICAgICB4PXMubGFzdEluZGV4T2YoImEiLHkpOwogICAgICAgICAgICBzPXMucmVwbGFjZUFsbChzLnN1YnN0cmluZyh4LHkrMSkscChzLnN1YnN0cmluZyh4KzEseSkpKTsKICAgICAgICB9CiAgICAgICAgU3RyaW5nIHQsYT0iMSIsYj0iMCI7CiAgICAgICAgd2hpbGUocy5pbmRleE9mKCIhIik+PTApewogICAgICAgICAgICBzPXMucmVwbGFjZUFsbCgiITAiLGEpOwogICAgICAgICAgICBzPXMucmVwbGFjZUFsbCgiITEiLGIpOwogICAgICAgIH0KICAgICAgICB3aGlsZShzLmxlbmd0aCgpPjEpewogICAgICAgICAgICB0PXMuc3Vic3RyaW5nKDAsMyk7CiAgICAgICAgICAgIGlmKHQuY2hhckF0KDEpPT0nbCcpCiAgICAgICAgICAgICAgICBzPXMucmVwbGFjZUZpcnN0KHQsdC5lcXVhbHMoIjBsMCIpP2I6YSk7CiAgICAgICAgICAgIGVsc2UgaWYodC5jaGFyQXQoMSk9PScmJykKICAgICAgICAgICAgICAgIHM9cy5yZXBsYWNlRmlyc3QodCx0LmVxdWFscygiMSYxIik/YTpiKTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgcz1zLnJlcGxhY2VGaXJzdCh0LHQuY2hhckF0KDApPT10LmNoYXJBdCgyKT9iOmEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gczsKICAgIH0KCn0=