#include
#include
#include
char stack[10000];
struct string{
char s[10000];
char b[10];
};
int top=-1;
main(){
char rightornot(char s[]);
int N;
struct string str[5];
int j;
// scanf("%d",&N);
for(j=0;j
scanf("%s",str[j].s);
strcpy(str[j].b,rightornot(str[j].s));
}
for(j=0;j>=0;j++)
printf("%s",str[j].b);
return 0;
}
char rightornot(char s[]){
int i;
for(i=0;i<10000;i++)
{
if(s[i]=='('||s[i]=='[')
{
top++;
stack[top]=s[i];
}
if(s[i]==')')
{
if(stack[top]=='(')
top--;
else
{
break;
}
}
if(s[i]==']')
{
if(stack[top]=='[')
top--;
else
{
break;
}
}
if(s[i]=='/0')
{
break;
}
if(top==-1)
return "yes";
else
return "no";
}
}