#include<bits/stdc++.h>
using namespace std;
// #LeetCode #Stack
// 3
// 3[a]4[bc]2[def]
// 3[a2[c]]
// leetcode
// Output:
// aaabcbcbcbcdefdef
// accaccacc
// leetcode
string decodeString(string s) {
string dec;
int i=s.size()-1;
stack<char> st;
while(i>=0){
if(i>0 && s[i]=='['){
// if number k has more the 1 digit
int r=i-1;
int digitcount=0;
string num;
while(r>=0 && (s[r]-'0'>=0 && s[r]-'0'<=9)){
num.insert(num.begin()+0,s[r]);
r--;
digitcount++;
}
int k=stoi(num); // or use custom function
string temp;
while(true){
if(st.top()==']'){
st.pop();
break;
}
temp.push_back(st.top());
st.pop();
}
while(k--){
for(int i=temp.size()-1;i>=0;i--){
st.push(temp[i]);
}
}
i-=digitcount; // to skip number 123[
}else{
st.push(s[i]);
}
i--;
}
while(!st.empty()){
dec.push_back(st.top());
st.pop();
}
return dec;
}
int main(){
// freopen("ip.txt","r",stdin);
int t;
cin>>t;
while(t--){
string enc;
cin>>enc;
cout<<decodeString(enc)<<endl;
}
return 0;
}