#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const ll INF = (1LL << 60);
#define rep(i, n) for (ll i = 0; i < (ll)(n); i++)
int main(){
    ll T;cin>>T;
    string seq0,seq1;
    rep(i,100000)seq0+="0";
    rep(i,100000)seq1+="1";
    rep(i,T){
        ll N;
        cin >> N;
        rep(j,3){
        string t;cin>>t;
        }
        string ans;
      ans=seq0.substr(0,N)+seq1.substr(0,N)+"0";
      cout<<ans<<endl;
    }
}
//#define _GLIBCXX_DEBUG
#include<bits/stdc++.h>
#include<algorithm>//next_permutation
#define rep(i,n) for (int i = 0;i < (n);i++)
#define all(v) v.begin(),v.end()
#define dec(n) cout << fixed << setprecision(n);
#define large "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
#define small "abcdefghijklmnopqrstuvwxyz"
using namespace std;
using ll = long long;
using P = pair<ll,ll>;
using vl = vector<ll>;
using vvl = vector<vl>;

ll gcd(ll a,ll b){
  if(b == 0) return a;
  return gcd(b , a % b);
}

const ll MOD = 1000000007;
const ll MAX = 2000001;
const ll inf = 2e18;

ll mod(ll a){
  return a % MOD;
}

ll lcm(ll a,ll b){
  return (a*b)/gcd(a,b);
}

vector<pair<ll,ll>> prime_factorize(ll n){
  vector<pair<ll,ll>> res;
  
  for(ll i=2; i*i <= n; i++){
    if(n % i != 0) continue;
    
    ll ex = 0;
    while(n % i == 0){
      ex++;
      n /= i;
    }
    
    res.push_back({i,ex});
  }
  
  if(n != 1) res.push_back({n,1});
  
  return res;
  
}


int main(){
  ll t; cin >> t;
  
  rep(i,t){
    ll n; string s; cin >> n >> s >> s >> s;
    
    cout << string(n,'0') << string(n,'1') << '0' << endl;
  }
  
}