#include using namespace std; typedef long long ll; const int maxl=3e5+10; mt19937 rnd(time(NULL)); int n,m,k,cnt,tot,cas,ans; int a[maxl],b[maxl]; char s[maxl]; inline void prework() { scanf("%d",&n);cnt=0; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(a[i]==i) cnt++; } if(cnt<=10) puts("Second"); else puts("First"); } inline void add(int i,int x) { while(i<=n) b[i]+=x,i+=i&-i; } inline int sum(int i) { int ret=0; while(i) ret+=b[i],i-=i&-i; return ret; } inline void mainwork() { /*n=100000; mt19937 rnd(time(NULL)); uniform_int_distribution<> dis(1, n); ll ans1=0,ans2=0; for(int i=1;i<=n;i++) a[i]=i,b[i]=0; for(int i=1;i<=3*n;i++) { int u=dis(rnd),v=dis(rnd); while(u==v) u=dis(rnd),v=dis(rnd); swap(a[u],a[v]); } for(int i=1;i<=n;i++) if(a[i]==i) ans1++; for(int i=1;i<=n;i++) a[i]=i,b[i]=0; for(int i=1;i<=7*n;i++) { int u=dis(rnd),v=dis(rnd); while(u==v) u=dis(rnd),v=dis(rnd); swap(a[u],a[v]); } for(int i=1;i<=n;i++) if(a[i]==i) ans2++; printf("%lld %lld\n",ans1,ans2); printf("%lld\n",ans1-ans2);*/ } inline void print() { } int main() { int t=1; scanf("%d",&t); for(cas=1;cas<=t;cas++) { prework(); mainwork(); print(); } return 0; }