#include <stdio.h>
//回文数
int huiWen(int x){
	int h=0,y = x;
	while(x > 0){
		h = h * 10 + x % 10;
		x /= 10;
	}
	if(h == y)
		return 1;
	else
		return 0;
} 
 
int main(){
	int n,m;
	scanf("%d %d",&n,&m);
	int a[n][m],i,j;  //二维数组 

	int s = 0;  //回文数个数 
	//二维数组赋值,并删选回文数 
	for(i = 0;i < n;i++){
		for(j = 0;j < m;j++){
			scanf("%d",&a[i][j]);
			if(huiWen(a[i][j]))
				s++;
		}
	} 
	
	int b[s],z=0;  //存放回文数
	for(i = 0;i < n;i++){
		for(j = 0;j < m;j++){
			if(huiWen(a[i][j]))
				b[z++] = a[i][j];
		}
	}
	
	//遍历回文数
	for(i = 0;i < s;i++){
		printf("%d\n",b[i]);
	} 	 
	return 0;
}
/**************************************************************
	Problem: 1403
	User: admin
	Language: C
	Result: Accepted
	Time:19 ms
	Memory:1144 kb
****************************************************************/