#include <iostream>
#include<deque>
#include<string>
#include<algorithm>
using namespace std;
#define ll long long int
#define ld long double
#define endl '\n'
#define MIR183_Mac ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define yes cout << "YES" << endl
#define no cout << "NO" << endl
void solve() {
// Your code here
string s;
cin>>s;
deque<char>v(s.begin(),s.end());
int n=v.size();
bool rev=false;
ll q;cin>>q;
while (q--){
ll p;cin>>p;
ll q;
char r;
if(p!=1){
cin>>q;
cin>>r;
if(rev){
if(q==1)v.push_back(r);
else v.push_front(r);
}else{
if(q==1)v.push_front(r);
else v.push_back(r);
}
}else rev=!rev;
}
if(rev)reverse(v.begin(),v.end());
for(auto i:v) cout<<i;
cout<<endl;
}
signed main() {
MIR183_Mac;
// Always use ll, int may give TLE
ll tt;
// tt=1;
cin >> tt;
while (tt--) {
solve();
}
return 0;
}