#include <stdio.h>
#include <string.h>
using namespace std;
const int MN = 10010;
int Nextint()
{
char S[100];
int Num = 0,i = 0;
bool Neg = 0;
scanf("%s",S);
if (S[0] == '-')
Neg = 1,i++;
for (;i < strlen(S);i++)
Num = Num * 10 + (S[i] - '0');
if (Neg)
Num *= -1;
return Num;
}
int N,M;
int V[MN];
int B(int it);
int C(int it);
bool Check()
{
if (M == 1 || B(1) == M + 1 || C(1) == M + 1)
return 1;
return 0;
}
int B(int it)
{
if (V[it] == 2)
return B(it + 1);
if (V[it] == 1 && V[it + 2] == 3)
return C(it + 4);
return 0;
}
int C(int it)
{
if (V[it] == 2)
return it + 1;
if (V[it] == 3)
return C(B(it + 1));
if (V[it] == 1 && V[it + 1] == 2)
return it + 3;
return 0;
}
int main()
{
freopen("perle.in","r",stdin);
freopen("perle.out","w",stdout);
N = Nextint();
while (N--)
{
M = Nextint();
for (int i = 1;i <= M;i++)
V[i] = Nextint();
printf("%d\n",Check());
}
return 0;
}