#include <bits/stdc++.h>
using namespace std;
template <class T>
void debug(T a, T b) {
  ;
}
template <class T>
void chmin(T& a, const T& b) {
  if (a > b) a = b;
}
template <class T>
void chmax(T& a, const T& b) {
  if (a < b) a = b;
}
namespace std {
template <class S, class T>
ostream& operator<<(ostream& out, const pair<S, T>& a) {
  out << '(' << a.first << ',' << a.second << ')';
  return out;
}
}  // namespace std
long long int readL() {
  long long int res;
  scanf("%I64d", &res);
  return res;
}
void printL(long long int res) { printf("%I64d", res); }
char L1[] =
    ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>"
    ".>.>.>.>.>.>.>.>.>.>.>.>.v";
char L_odd[] =
    "^v.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<<<<<<<"
    "<<<<<<<<<<<<<<<<<<<<<<<<<<";
char L_even[] =
    "^>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>.>"
    ".>.>.>.>.>.>.>.>.>.>.>.>.v";
char L_last[] =
    "^<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<<<<<<<"
    "<<<<<<<<<<<<<<<<<<<<<<<<<<";
int main() {
  int n, x;
  cin >> n >> x;
  if (n == 5) {
    char res[5][6] = {">...v", "v.<..", "..^..", ">....", "..^.<"};
    for (int i = 0; i < (5); ++i) printf("%s\n", res[i]);
    puts("1 1");
  } else if (n == 3) {
    char res[3][4] = {">vv", "^<.", "^.<"};
    for (int i = 0; i < (3); ++i) printf("%s\n", res[i]);
    puts("1 3");
  } else {
    printf("%s\n", L1);
    for (int i = 1; i < 99; ++i) {
      if (i & 1)
        printf("%s\n", L_odd);
      else
        printf("%s\n", L_even);
    }
    printf("%s\n", L_last);
    puts("1 1");
  }
  return 0;
}
