#include<iostream>
#include<vector>
using namespace std;
int solve_test_case(int tn){
    long long  n;
    vector<long long > myStack;
    cin>>n;
    vector<long long> a(n);
    vector<string> res(n);
     for(long long i=0;i<n;i++){
        cin>>a[i];
    }
    for(long long i=0;i<n;i++){
        if(myStack.empty()){
            myStack.push_back(a[i]);
        }
        else{
            if(a[i]==1){
                myStack.push_back(1);
            }else{
                while(myStack.size() && myStack.back()+1!=a[i]){
                    myStack.pop_back();
                }
                myStack.pop_back();
                myStack.push_back(a[i]);
            }
            
        }
        string line="";
        for(int j=0;j<myStack.size();j++){
            line+=to_string(myStack[j])+".";
        }
        res[i]=line.substr(0,line.size()-1);
    }
    for(auto &line :res){
        cout<<line<<"\n";
    }
    
    return 0;
}

int main()
{
    int T = 1;
    cin >> T;
    while(T--)
    {
        solve_test_case(T);
    }
    return 0;
}