#include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifndef ONLINE_JUDGE //POJ # include # include # include # define mkt make_tuple # define empb emplace_back #endif #ifdef _LOCAL # include "for_local.h" #endif using namespace std; typedef unsigned int uint; typedef long long ll; typedef unsigned long long ull; #define repi(_I, _B, _E) for(int _I = (_B); (_I) < (_E); ++ (_I)) #define rep(_I, _N) for(int _I = 0; (_I) < (_N); ++ (_I)) #define mkp make_pair #define all(_X) (_X).begin(), (_X).end() int t, a, b; signed main() { cin >> t >> a >> b; int mi = min(a, b); int ma = max(a, b); int u = t - ma; int c = u / 4; int d = u % 4; int e = 0; if ( d == 1 ) { c -= 1; e += 1; } if ( u >= 0 && c >= 0 ) { cout << "YES" << endl; rep(_, mi) { cout << "^>" << endl; } rep(_, a - mi) { cout << ">" << endl; } rep(_, b - mi) { cout << "^" << endl; } rep(_, c) { cout << "<" << endl << "v" << endl << ">" << endl << "^" << endl; } switch ( d ) { case 0: break; case 2: cout << "<" << endl << ">" << endl; break; case 3: cout << "<" << endl << ">v" << endl << "^" << endl; break; } rep(_, e) { cout << "<" << endl << "v" << endl << ">" << endl << "<^" << endl << ">" << endl; } } else { cout << "NO" << endl; } return 0; }