#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  while (t--) {
    int n;
    cin >> n;
    int f = 1;
    int s = 0;
    vector<int> A;
    for (int i = 0; i < n; i++) {
      int a;
      cin >> a;
      A.push_back(a);
    }
    if (A.size() == 1) {
      cout << "First" << endl;
      continue;
    }
    if (n == 2) {
      if (A[0] != 1) {
        cout << "First" << endl;
        continue;
      } else {
        cout << "Second" << endl;
        continue;
      }
    }
    for (int i = 0; i < n - 2; i++) {
      if (A[i] != 1 && A[i + 1] != 1) {
        if (f == 1) {
          f = 1;
          s = 0;
        } else {
          s = 1;
          f = 0;
        }
      } else if (A[i] != 1 && A[i + 1] == 1) {
        int count = 0;
        int j = i + 1;
        while (A[j] == 1 && j <= n - 2) {
          count++;
          j++;
        }
        if (count % 2 == 1) {
          if (f == 1) {
            s = 1;
            f = 0;
          } else {
            f = 1;
            s = 0;
          }
        } else {
          if (f == 1) {
            f = 1;
            s = 0;
          } else {
            s = 1;
            f = 0;
          }
        }
      } else if (A[i] == 1) {
        if (f == 1) {
          s = 1;
          f = 0;
        } else {
          f = 1;
          s = 0;
        }
      }
    }
    if (A[n - 2] != 1 && f == 1) {
      cout << "First" << endl;
      continue;
    } else if (A[n - 2] == 1 && f == 1) {
      cout << "Second" << endl;
      continue;
    } else if (A[n - 2] != 1 && s == 1) {
      cout << "Second" << endl;
      continue;
    } else if (A[n - 2] == 1 && s == 1) {
      cout << "First" << endl;
      continue;
    }
  }
  return 0;
}
