#include<bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
for(int i=0;i<t;i++)
{
int n;
cin>>n;
int a[n],b[n],c[n],d[n],count=0,temp=0;
for(int j=0;j<n;j++)
{
cin>>a[j];
a[j]-=1;
d[j]=a[j];
c[j]=j;
cout<<a[j]<<" ";
}
cout<<"\n";
for(int j=0;j<n;j++)
{
b[a[j]]=j;
}
for(int j=0;j<n;j++)
cout<<b[j]<<" ";
cout<<"\n";
for(int j=0;j<n;j++)
{
if(b[j]==d[j])
temp=1;
else
{
temp=0;
break;
}
}
if(temp==1)
cout<<count<<"\n";
else
{
for(int j=0;j<n;j++)
{
a[j]=b[j];
}
while(temp==0)
{
cout<<"YES\n";
for(int j=0;j<n;j++)
{
b[a[j]]=j;
}
for(int j=0;j<n;j++)
cout<<b[j]<<" ";
for(int j=0;j<n;j++)
{
a[j]=b[j];
}
cout<<"\n";
for(int j=0;j<n;j++)
{
if(b[j]==d[j])
temp=1;
else
{
temp=0;
break;
}
}
count++;
}
cout<<count<<"\n";
}
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKICAgIGludCB0OwogICAgY2luPj50OwogICAgZm9yKGludCBpPTA7aTx0O2krKykKICAgIHsKICAgICAgICBpbnQgbjsKICAgICAgICBjaW4+Pm47CiAgICAgICAgaW50IGFbbl0sYltuXSxjW25dLGRbbl0sY291bnQ9MCx0ZW1wPTA7CiAgICAgICAgZm9yKGludCBqPTA7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGNpbj4+YVtqXTsKICAgICAgICAgICAgYVtqXS09MTsKICAgICAgICAgICAgZFtqXT1hW2pdOwogICAgICAgICAgICBjW2pdPWo7CiAgICAgICAgICAgIGNvdXQ8PGFbal08PCIgIjsKICAgICAgICB9ICAgICAKICAgICAgICBjb3V0PDwiXG4iOwogICAgICAgIGZvcihpbnQgaj0wO2o8bjtqKyspCiAgICAgICAgewogICAgICAgICAgICBiW2Fbal1dPWo7CiAgICAgICAgfQogICAgICAgIGZvcihpbnQgaj0wO2o8bjtqKyspCiAgICAgICAgCWNvdXQ8PGJbal08PCIgIjsKICAgICAgICBjb3V0PDwiXG4iOwogICAgICAgIGZvcihpbnQgaj0wO2o8bjtqKyspCiAgICAgICAgewogICAgICAgICAgICBpZihiW2pdPT1kW2pdKQogICAgICAgICAgICAgICAgdGVtcD0xOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHRlbXA9MDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmKHRlbXA9PTEpCiAgICAgICAgICAgIGNvdXQ8PGNvdW50PDwiXG4iOwogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgZm9yKGludCBqPTA7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGFbal09YltqXTsKICAgICAgICB9CiAgICAgICAgd2hpbGUodGVtcD09MCkKICAgICAgICB7CiAgICAgICAgCWNvdXQ8PCJZRVNcbiI7CiAgICAgICAgICAgIGZvcihpbnQgaj0wO2o8bjtqKyspCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGJbYVtqXV09ajsKICAgICAgICAgICAgfQogICAgICAgICAgICBmb3IoaW50IGo9MDtqPG47aisrKQogICAgICAgICAgICAJY291dDw8YltqXTw8IiAiOwogICAgICAgICAgICBmb3IoaW50IGo9MDtqPG47aisrKQogICAgICAgIAl7CiAgICAgICAgICAgIAlhW2pdPWJbal07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY291dDw8IlxuIjsKICAgICAgICAgICAgZm9yKGludCBqPTA7ajxuO2orKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYoYltqXT09ZFtqXSkKICAgICAgICAgICAgICAgICAgICB0ZW1wPTE7CiAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdGVtcD0wOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIGNvdXQ8PGNvdW50PDwiXG4iOwogICAgICAgIH0KICAgIH0KfQ==