#include <iostream>
#include <algorithm>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <numeric>
#include <bitset>
#include <cmath>

static const int MOD = 1000000007;
using ll = long long;
using u32 = unsigned;
using u64 = unsigned long long;
using namespace std;

template<class T> constexpr T INF = ::numeric_limits<T>::max()/32*15+208;

int main() {
    int h, w;
    while(cin >> h >> w, h){
        vector<string> v(h);
        for (int i = 0; i < h; ++i) cin >> v[i];
        vector<vector<int>> visited(h, vector<int>(w, 0));
        [&](){
            int a = 0, b = 0;
            while(true){
                if(visited[a][b]){
                    puts("LOOP");
                    return;
                }
                visited[a][b] = 1;
                if(v[a][b] == '>') b++;
                else if(v[a][b] == '^') a--;
                else if(v[a][b] == '<') b--;
                else if(v[a][b] == 'v') a++;
                else break;
            }
            printf("%d %d\n", b, a);
        }();
    }
    return 0;
}
