#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:60777216")
using namespace std;
char c[111][111];
int n = 10;
void iterate(int x, int y) {
  int it = 0;
  while (1) {
    cout << "new it " << it << endl;
    if (c[x][y] == '.') break;
    int dx = 0, dy = 0;
    if (c[x][y] == '>') dy = 1;
    if (c[x][y] == '<') dy = -1;
    if (c[x][y] == 'v') dx = 1;
    if (c[x][y] == '^') dx = -1;
    int nx = x + dx;
    int ny = y + dy;
    if (nx < 0 || nx >= n || ny < 0 || ny >= n) break;
    if (c[nx][ny] != '.') {
      x = nx;
      y = ny;
      continue;
    }
    it++;
    while (1) {
      swap(c[x][y], c[x + dx][y + dy]);
      x += dx;
      y += dy;
      nx = x + dx;
      ny = y + dy;
      if (nx < 0 || nx >= n || ny < 0 || ny >= n) goto end;
      if (c[nx][ny] != '.') {
        x = nx;
        y = ny;
        break;
      }
    }
  }
end:
  cout << "TOTAL: " << it << endl;
}
void generate(int n) {
  for (int i = (0); i < (n); i++) {
    if (i == 0)
      cout << '>';
    else
      cout << '^';
    if (i % 2 == 0) {
      for (int j = (0); j < (n / 2 - 1); j++) cout << ">";
      for (int j = (0); j < (n / 2 / 2 - 1); j++) cout << ".>";
      cout << ".v";
    } else {
      if (i == n - 1)
        cout << "..";
      else
        cout << "v.";
      for (int j = (0); j < (n / 2 / 2 - 1); j++) cout << "<.";
      for (int j = (0); j < (n / 2 - 1); j++) cout << "<";
    }
    puts("");
  }
  cout << "1 1" << endl;
}
int main() {
  cin >> n;
  if (n == 5) {
    puts(">...v");
    puts("v.<..");
    puts("..^..");
    puts(">....");
    puts("..^.<");
    puts("1 1");
    return 0;
  } else if (n == 3) {
    puts(">vv");
    puts("^<.");
    puts("^.<");
    puts("1 3");
    return 0;
  } else {
    generate(100);
    return 0;
  }
  return 0;
}
