/*
 * rummy.c
 *
 *  Created on: 2017/05/16
 *      Author: SS-76
 */
 
#include <stdio.h>

void handread(int * , int * , int *);			//????????????????????????????????£???hand???????´?????????¢??°

int judge1(int * , int * , int *);
int judge2(int *);

enum cardcolor{ RED , GREEN , BLUE };

int main (void){

	/*?????????????´?????????????
	  0?????????????????????????¨??????°?????????????????????
	  1???9???????????????????????°???????????????????????°?????????????????????*/
	int handR[10] = {} ;
	int handG[10] = {} ;
	int handB[10] = {} ;

	int i = 0 ;
	int n = 0 ;

	scanf("%d", &n);

	for(i = 1 ; i <= n ; i++ ){					//n?????°?????????

		/*?????????????????????????????????*/
		handread(handR,handG,handB);

		/*?????????????¨??????°????????????????????????*/
		if(judge1 (handR,handG,handB) ){		//????????????1?????????????????????
			printf("0\n");
			return 0;
		}

		/*?????????????????§?????????????§??????§???????????????*/
		if(handR[0]){					//???????????°???0??????????????????????????????
			if(judge2 (handR) ){		//????????????1?????????????????????
				printf("0\n");
				return 0;
			}
		}								//???????????????????????§

		/*?????????????????§?????????????§??????§???????????????*/
		if(handG[0]){
			if(judge2 (handG) ){
				printf("0\n");
				return 0;
			}
		}								//???????????????????????§

		/*?????????????????§?????????????§??????§???????????????*/
		if(handB[0]){
			if(judge2 (handB) ){
				printf("0\n");
				return 0;
			}
		}								//???????????????????????§

		printf("1\n");

	}//n?????°?????????????????????????????§

	return 0 ;
}
/*
 * handread??¢??°???2????????????????????????????????????????????????????????????
 * ?????¨???????????¢???hand??????????????????hand?????????????????¨??????????????????
 */
void handread(int *handR ,int *handG , int *handB){
	int cnum[9] = {} ;			//???????????????????????°??????????????????
	char color[9] = {} ;		//??????????????????????????°???????????????
	int i = 0 ;

	for( i = 0 ; i < 9 ; i ++){
		scanf("%d", &cnum[i]);
//		printf("%d", cnum[i]);
	}
	for( i = 0 ; i < 9 ; i ++){
		getchar();				//????????????????£???°???
		color[i] = getchar();
//		printf("%c", color[i]);
	}

	for( i = 1 ; i <= 9 ; i++){
		switch(color[i-1]){
		case 'R':
			handR[0]++ ;	//???????????°?????????????????¢??????
			handR[(cnum[i-1])]++ ;	//???i????????°?????????????????¢??????
			break ;

		case 'G':
			handG[0]++ ;	//???????????°?????????????????¢??????
			handG[(cnum[i-1])]++ ;	//???i????????°?????????????????¢??????
			break ;

		case 'B':
			handB[0]++ ;	//???????????°?????????????????¢??????
			handB[(cnum[i-1])]++ ;	//???i????????°?????????????????¢??????
			break ;

		default:
			printf("wrong data");
			break;
		}
	}//???????§????????????????????????§

}


/*judge1????????????????¨??????°?????????????????????*/
/*????¨??????°???0,3,6,9???????????????????????£??????????????¨????????????????§??????§??????????????°???????????????????????¨????????????*/
/*?????????????????????????§??????¢??°????????????????????§????????°??¬??\????????????????????????????????????????????????????????????*/
int judge1(int *handR,int *handG,int *handB){

	if( handR[0]%3 || handG[0]%3 ){
		return 1 ;					//???????????????????????°??????????????????1?????????
	}
	return 0;
}

/*judge2???????????§?????????????§??????????????????????????????????????????????????????????*/
/*?????????????????¨????????§????????°1?????????????????????????????¶???????????????????????°0????????????*/
int judge2(int *hand){
	int i = 0 ;

	/*??????????????????????????????i???
	 ????????¨???????????£?????????????????§??????????????????????????§???????°?????????°?????§??????*/
	for( i = 1 ; i <= 7 ; i++){
		if(hand[i] < 0){		//0???????°?????????¨?¨?????????¨??????
			return 1 ;			//?????????????§??????§??????????????????????????¨???????????????????????????????????????????????????
		}
		if(hand[i] >= 3 ){
			hand[i] -= 3 ;		//i???3?????\????????£???????????°???????????????????????????3????????¨????????????????????????
			hand[0] -= 3 ;
		}
		if(hand[i]){			//??????i????????£???????????°?????£?????¨??????????????????????????°???????????????
			hand[i+1] -= hand[i];
			hand[i+2] -= hand[i];
			hand[0] -= 3 * hand [i] ;
			hand[i] = 0 ;		//i,i+1,i+2???i????????°???????????????i+1,i+2????????°????¶???????????????°??????????????¨??????
		}
	/*???????????§???????????§????????£????????????????????????????????¨????????°?????????8???9*/
	/*6,7??????????????§??????????????????3?????¨????????????????§??????§??????????????°???????????????*/
	/*?????????7?????§?????£??????????????§8,9????????°??????????????£???????????´?????????????????????*/
		if(hand[8]%3 || hand[8]< 0|| hand[9]%3 || hand[9] < 0){
			return 1 ;
		}
	}

	/*????????????????????§??°????????????????????????????????????????????????????????¶?????????????????????*/
	return 0;
}