#include<stdio.h>
#include<string.h>
char a[10010],b[10010];
int main()
{
int s;
scanf("%d",&s);
while(s--)
{
int n,i,m,b1;
scanf("%s",a);
n=strlen(a);
memset(b,0,sizeof(b));
b1=1;m=0;
if(n%2==0)
{
for(i=0;i<n;i++)
{
if(a[i]=='['||a[i]=='(')
{
b[b1++]=a[i];
}
if(a[i]==']')
{
if(b[--b1]=='[')
m=0;
else m=1;
}
if(m==1)
{
printf("No\n");
break;
}
if(a[i]==')')
{
if(b[--b1]=='(')
m=0;
else m=1;
}
if(m==1)
{
printf("No\n");
break;
}
}
if(m==0)
printf("Yes\n");
}
else
printf("No\n");
}
return 0;
}
#include<string.h>
char a[10010],b[10010];
int main()
{
int s;
scanf("%d",&s);
while(s--)
{
int n,i,m,b1;
scanf("%s",a);
n=strlen(a);
memset(b,0,sizeof(b));
b1=1;m=0;
if(n%2==0)
{
for(i=0;i<n;i++)
{
if(a[i]=='['||a[i]=='(')
{
b[b1++]=a[i];
}
if(a[i]==']')
{
if(b[--b1]=='[')
m=0;
else m=1;
}
if(m==1)
{
printf("No\n");
break;
}
if(a[i]==')')
{
if(b[--b1]=='(')
m=0;
else m=1;
}
if(m==1)
{
printf("No\n");
break;
}
}
if(m==0)
printf("Yes\n");
}
else
printf("No\n");
}
return 0;
}