#include #include using namespace std; #define REP(i,a,b) for(int i=a;i<(int)b;i++) #define rep(i,n) REP(i,0,n) int main() { int T, A, B; cin >> T >> A >> B; int M = max(A,B); if(M>T) { cout << "NO\n"; return 0; } if(T==1&&A==0&&B==0) { cout << "NO\n"; return 0; } cout << "YES\n"; if(A == B) { if(A==0) { if(T%2) { cout << ">^\nv\n<\n"; T-=3; } rep(i,T/2) cout << ">\n"; rep(i,T/2) cout << "<\n"; return 0; } if(T==1) { cout << ">^\n"; return 0; } if(T==2) { cout << ">\n^\n"; return 0; } rep(i, A-1) cout << ">^\n"; T-=A-1; if(T%2==0) { cout << ">\n^\n"; T-=2; } else { cout << ">^\n"; T--; } rep(i,T/2) cout << ">\n"; rep(i,T/2) cout << "<\n"; return 0; } int ur = min(A,B); rep(i, ur) cout << ">^\n"; T -= ur; if(A < B) { rep(i,B-ur-1) cout << ">\n"; T-=B-ur-1; if(T%2==0) { cout << "^\n>v\n"; T-=2; } else { cout << ">\n"; T--; } rep(i,T/2)cout << ">\n"; rep(i,T/2)cout << "<\n"; } else if(A > B) { swap(A,B); rep(i,B-ur-1) cout << "^\n"; T-=B-ur-1; if(T%2==0) { cout << ">\n^<\n"; T-=2; } else { cout << "^\n"; T--; } rep(i,T/2)cout << "^\n"; rep(i,T/2)cout << "v\n"; } return 0; }