#include <bits/stdc++.h>
using namespace std;
template <class T>
inline T min(T &a, T &b) {
  return a < b ? a : b;
}
template <class T>
inline T max(T &a, T &b) {
  return a > b ? a : b;
}
template <class T>
void read(T &x) {
  char ch;
  while ((ch = getchar()) && !isdigit(ch))
    ;
  x = ch - '0';
  while ((ch = getchar()) && isdigit(ch)) x = x * 10 + ch - '0';
}
struct point {
  int x, y;
  point() {}
  point(int _x, int _y) : x(_x), y(_y) {}
};
int n, x;
int main() {
  scanf("%d%d", &n, &x);
  if (n == 5) {
    puts(">...v");
    puts("v.<..");
    puts("..^..");
    puts(">....");
    puts("..^.<");
    puts("1 1");
  }
  if (n == 3) {
    puts(">vv");
    puts("^<.");
    puts("^.<");
    puts("1 3");
  }
  if (n == 100) {
    for (int i = 1; i <= 50; i++) {
      printf("v");
      for (int j = 1; j <= 25; j++) printf("<.");
      for (int j = 1; j <= 99 - 25 * 2; j++) printf("<");
      puts("");
      for (int j = 1; j <= 99 - 20 * 2; j++) printf(">");
      for (int j = 1; j <= 20; j++) printf(">.");
      puts("^");
    }
    puts("100 100");
  }
}
