#!/usr/bin/python3 def intlist(): return map(int, input().split()) diff = { ">": (0, 1), "<": (0, -1), "^": (-1, 0), "v": (1, 0), "o": (0, 0) } # Funkce počítající novou pozici pavouka def move(pos, c): def l(a): return min(K - 1, max(a, 0)) return (l(pos[0] + diff[c][0]), l(pos[1] + diff[c][1])) K, N = intlist() pos = [(i, i) for i in range(K)] # Odsimulujeme si kroky a pomocí převedení na množinu funkcí set # zjišťujeme, jestli se nějaké pozice opakovaly for r in range(N): for i, c in enumerate(input()): pos[i] = move(pos[i], c) if len(set(pos)) < K: print(r + 1) exit(0) print(-1)