#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <queue>
#include <ctime>
#include <cassert>
#include <complex>
#include <string>
#include <cstring>
#include <chrono>
#include <random>
#include <bitset>
#include <fstream>
using namespace std;
#define int long long
#define ii pair <int, int>
#define app push_back
#define all(a) a.begin(), a.end()
#define bp __builtin_popcountll
#define ll long long
#define mp make_pair
#define x first
#define y second
#define Time (double)clock()/CLOCKS_PER_SEC
#define debug(x) std::cerr << #x << ": " << x << '\n';
#define FOR(i, n) for (int i = 0; i < n; ++i)
#define FORN(i, n) for (int i = 1; i <= n; ++i)
#define pb push_back
#define trav(a, x) for (auto& a : x)
using vi = vector<int>;
template <typename T>
std::istream& operator >>(std::istream& input, std::vector<T>& data)
{
    for (T& x : data)
        input >> x;
    return input;
}
template <typename T>
std::ostream& operator <<(std::ostream& output, const pair <T, T> & data)
{
    output << "(" << data.x << "," << data.y << ")";
    return output;
}
template <typename T>
std::ostream& operator <<(std::ostream& output, const std::vector<T>& data)
{
    for (const T& x : data)
        output << x << " ";
    return output;
}
ll div_up(ll a, ll b) { return a/b+((a^b)>0&&a%b); } // divide a by b rounded up
ll div_down(ll a, ll b) { return a/b-((a^b)<0&&a%b); } // divide a by b rounded down 
ll math_mod(ll a, ll b) { return a - b * div_down(a, b); }
#define tcT template<class T
#define tcTU tcT, class U
tcT> using V = vector<T>; 
tcT> void re(V<T>& x) { 
    trav(a, x)
        cin >> a;
}
tcT> bool ckmin(T& a, const T& b) {
    return b < a ? a = b, 1 : 0; 
} // set a = min(a,b)
tcT> bool ckmax(T& a, const T& b) {
    return a < b ? a = b, 1 : 0; 
}
ll gcd(ll a, ll b) {
    while (b) {
        tie(a, b) = mp(b, a % b);
    }
    return a;
}

const int N = 5e5+7;
int f[N], pref[N];

int div_(int a, int b) {
	while (a % b) {
		a += 3;
	}
	return a/b;
}

int get(int n, int k) {
    if (pref[n] > pref[k] + pref[n - k]) {
        return 0;
    }
    else {
        return div_(f[n], f[k] * f[n - k] % 3);
    }
}  

signed main() {
    #ifdef LOCAL
    #else
    #define endl '\n'
    ios_base::sync_with_stdio(0); cin.tie(0);
    #endif

    f[0] = 1;
    for (int i = 1; i < N; ++i) {
    	int t = i;
    	int pw = 0;
    	while (t % 3 == 0) {
    		t /= 3;
    		pw++;
    	}
    	pref[i] = pref[i - 1] + pw;
    	f[i] = f[i - 1] * t % 3;
    }

    string A = "BWR";
    auto num = [&] (char c) {
    	FOR (i, 3) {
    		if (A[i] == c) {
    			return i;
    		}
    	}
    	assert(0);
    };	

    int n;
    cin >> n;
    string s;
    cin >> s;
    int ans = 0;

    int f = 1;
    if (n % 2 == 0) {
    	f = 2;
    }

    FOR (i, n) {

    	//debug(i);
    	//debug(get(n - 1, i));

    	ans += f * get(n - 1, i) * num(s[i]);
    	ans %= 3;
    }

    //debug(ans);

    cout << A[ans] << endl;

}
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
using vin=vector<int>;
using vll=vector<long long>;
using vvin=vector<vector<int>>;
using vvll=vector<vector<long long>>;
using vstr=vector<string>;
using vvstr=vector<vector<string>>;
using vch=vector<char>;
using vvch=vector<vector<char>>;
using vbo=vector<bool>;
using vvbo=vector<vector<bool>>;
using vpii=vector<pair<int,int>>;
using pqsin=priority_queue<int,vector<int>,greater<int>>;
#define mp make_pair
#define rep(i,n) for(int i=0;i<(int)(n);i++)
#define rep2(i,s,n) for(int i=(s);i<(int)(n);i++)
#define all(v) v.begin(),v.end()
#define decp(n) cout<<fixed<<setprecision((int)n)
const ll inf=1e9+7;
const ll INF=1e18;
const ll mod=99824453;
vin dx={-1,0,1,0};
vin dy={0,1,0,-1};

int main(){
    int t;cin>>t;
    vstr ans(t);
    int n;ll a;
    rep(i,t){
        cin>>n;
        if(n%2){
            rep(i,n)cin>>a;
            ans[i]="Second";
            continue;
        }
        set<int> num;
        rep(i,n){
            cin>>a;
            if(num.count(a))num.erase(a);
            else num.insert(a);
        }
        if(num.size())ans[i]="First";
        else ans[i]="Second";
    }
    rep(i,t)cout<<ans[i]<<endl;
}