#include<bits/stdc++.h>
using namespace std;
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n;
        cin>>n;
        int arr[n];
        for(int i=0;i<n;i++)
        {
            cin>>arr[i];
        }
        map<int,int>m;
        set<int>s;
        for(int i=0;i<n;i++)
        {
            s.insert(i+1);
        }
        int low[n];
        int high[n];
        for(int i=0;i<n;i++)
        {
            if(m[arr[i]]==0)
            {
                m[arr[i]]=1;
                low[i]=arr[i];
                s.erase(arr[i]);
            }
            else
            {
                low[i]=*s.begin();
                s.erase(s.begin());
                m[low[i]]=1;
            }
        }
        m.clear();
        s.clear();
        for(int i=0;i<n;i++)
        {
            s.insert(i+1);
        }
        for(int i=0;i<n;i++)
        {
            if(m[arr[i]]==0)
            {
                m[arr[i]]=1;
                high[i]=arr[i];
                s.erase(arr[i]);
            }
            else
            {
                auto it=s.find(arr[i]+1);
                it--;
                high[i]=*it;
                s.erase(it);
                m[high[i]]=1;
            }
        }
        for(int i=0;i<n;i++)
        {
            cout<<low[i]<<" ";
        }
        cout<<"\n";
        for(int i=0;i<n;i++)
        {
            cout<<high[i]<<" ";
        }
        cout<<"\n";
    }
}