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

int main(void) {
	int lin, col;
	scanf("%i %i\n", &lin, &col); //https://w...content-available-to-author-only...m.br/topico/C-C++/problema-ao-ler-um-char-apos-um-ler-inteiro-(usando-scanf)..
	int mapa[lin][col];
	int i, j;
	
	//preenche matriz
	for (i = 0; i < lin; i++) {
		//fflush(stdin);
    	for (j = 0; j < col; j++) {
    		scanf("%c", &mapa[i][j]);
    	}
	}

	for (i = 0; i < lin; i++) {
    	for (j = 0; j < col; j++) {
    		printf("%c", mapa[i][j]);
    	}	
    	printf("\n");
	}

	//percorre o mapa
	int posX = 0, posY = 0;
	char direcao = '>', leitura;
	
	while (posX < 10) {
		leitura = mapa[posY][posX];
	    if (leitura == '>') {
	        direcao = '>';
	        posX = posX + 1;
	    } else if (leitura == '<') {
	        direcao = '<';
	        posX = posX - 1;
	    } else if (leitura == '^') {
	        direcao = '^';
	        posY = posY - 1;
	    } else if (leitura == 'v') {
	        direcao = 'v';
	        posY = posY + 1;
	    } else if (leitura == '*') {
	        printf("Achou o tesouro!");
	        break;
	    } else { //nao ouve mudanca de direcao
	        if (direcao == '>') { posX = posX + 1; }
	        if (direcao == '<') { posX = posX - 1; }
	        if (direcao == '^') { posY = posY - 1; }
	        if (direcao == 'v') { posY = posY + 1; }
	    }
	    
	    printf("X e Y: %i %i |%c|%c|\n", posX, posY, leitura, direcao);
	}

	return 0;
}
