#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedef struct{
	int height;
	int one_side;
	int other_side;
} Column;

int colcmp(const void *p, const void *q){
	return ((Column*)q)->height - ((Column*)p)->height;
}

int main(void){
	int i;
	int n,m,a;
	Column *col;

	for(;;){
		scanf("%d %d %d",&n,&m,&a);
		if(n==0&&m==0&&a==0) break;
		col = (Column *)calloc(m,sizeof(Column));

		for(i=0;i<m;i++){
			scanf("%d %d %d",&col[i].height,&col[i].one_side,&col[i].other_side);
		}

		qsort(col, m, sizeof(Column), colcmp);
		
		for(i=0;i<m;i++){
			if(col[i].one_side==a){
				a=col[i].other_side;
			}
			else if(col[i].other_side==a){
				a=col[i].one_side;
			}
		}
		printf("%d\n",a);
	}

	return 0;
}