#include <cstdio>
#include <queue>
#include <stack>
#include <cmath>
#include <cstdlib>
#include <map>
#include <vector>
#include <iostream>
#include <cstring>
#include <set>
#include <algorithm>
using namespace std;
int n;
char a[256],l,r;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a;
queue<char> q;
queue<char> k;
for(int j=0;j<strlen(a);j++)
{
if(a[j]=='('||a[j]=='[')
{
q.push(a[i]);
}
if(a[j]==')'||a[j]==']')
{
k.push(a[j]);
}
}
int linea=q.size();
int lineb=k.size();
int flag=0;
if(linea!=lineb)
{
cout<<"No"<<endl;
}
if(linea==lineb)
{
while(!q.empty())
{
l=q.front();
r=k.front();
q.pop();
k.pop();
}
if(flag==0)
{
cout<<"Yes"<<endl;
}
if(flag==1)
{
cout<<"No"<<endl;
}
}
}
return 0;
}