Problem: 

Input

The first line of the input contains a single integer N (1 ≤ N ≤ 24). The next N lines contain 5 space-separated integers each. The first three integers will be between 0 and 2, inclusive. The last two integers will be between 0 and 3, inclusive. The sum of the first three integers will be equal to the sum of the last two integers.

Output

Output the result – a string of lowercase English letters.

Examples

Input


1
1 0 0 1 0


Output


a


Input


10
2 0 0 1 1
1 1 1 2 1
2 1 0 1 2
1 1 0 1 1
2 1 0 2 1
1 1 1 2 1
1 2 1 3 1
2 0 0 1 1
1 1 0 1 1
1 1 2 2 2


Output


codeforcez

Solution (in CPP):

Solution:
// Author : Epsilon573
// If it works, don't touch it.

#include <bits/stdc++.h>
using namespace std;

typedef unsigned long long ull;
typedef long long ll;
typedef long double ld;

const ll mod  = 1e9+7;
const ld eps  = 1e-9 ;
const ll maxn = 1e5+1;
const ll inf  = 5e18 ;
const ll minf = -inf ;

#define mp make_pair
#define pb push_back
#define endl "\n"

bool solve()
{
    ll n;
    cin >> n;
    map<char, vector<ll>> a;

    a['a'] = {1,0,0,1,0};
    a['b'] = {1,1,0,2,0};
    a['c'] = {2,0,0,1,1};
    a['d'] = {2,1,0,1,2};
    a['e'] = {1,1,0,1,1};
    a['f'] = {2,1,0,2,1};
    a['g'] = {2,2,0,2,2};
    a['h'] = {1,2,0,2,1};
    a['i'] = {1,1,0,1,1};
    a['j'] = {1,2,0,1,2};
    a['k'] = {1,0,1,2,0};
    a['l'] = {1,1,1,3,0};
    a['m'] = {2,0,1,2,1};
    a['n'] = {2,1,1,2,2};
    a['o'] = {1,1,1,2,1};
    a['p'] = {2,1,1,3,1};
    a['q'] = {2,2,1,3,2};
    a['r'] = {1,2,1,3,1};
    a['s'] = {1,1,1,2,1};
    a['t'] = {1,2,1,2,2};
    a['u'] = {1,0,2,2,1};
    a['v'] = {1,1,2,3,1};
    a['w'] = {1,2,1,1,3};
    a['x'] = {2,0,2,2,2};
    a['y'] = {2,1,2,2,3};
    a['z'] = {1,1,2,2,2};

    for(ll i=0 ; i<n ; ++i)
    {
        vector<ll> v(5);
        for(ll j=0 ; j<5 ; ++j) cin >> v[j];

        char ans = 'a';
        for( ; ans<='z' ; ++ans)
        {
            ll j=0;
            for(j=0 ; j<5 ; ++j)
            {
                if(v[j] != a[ans][j]) break; 
            }

            if(j==5) break;
        }

        cout << ans;
    }

    return true;    
}

int main()
{
    ios_base :: sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    #ifdef EPSILON
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    freopen("error.txt","w",stderr);
    #endif

    ll t=1;

    while(t--)
    {
        if(solve())
        {
            // cout << "YES" << endl;
        }
        else
        {
            // cout << "NO" << endl;
        }
    }

    return 0;
}