T, A, B = map(int, input().split()) dis = max(A, B) if dis > T: print('NO') elif (A, B) == (0, 0): if T % 2 == 0: print('YES') print('^\nv\n' * (T // 2), end = '') elif T == 1: print('NO') else: print('YES') print('^\n>\nv<\n' + '^\nv\n' * ((T - 3) // 2), end = '') elif A == 0: print('YES') if (T - B) % 2 == 0: print('>\n' * B + '^\nv\n' * ((T - B) // 2), end = '') else: print('>\n' * (B - 1) + '^>\n' + 'v\n' + '^\nv\n' * ((T - B) // 2), end = '') elif B == 0: print('YES') if (T - A) % 2 == 0: print('^\n' * A + '^\nv\n' * ((T - A) // 2), end = '') else: print('^\n' * (A - 1) + '^>\n' + '<\n' + '^\nv\n' * ((T - A) // 2), end = '') else: print('YES') if A == 0: if A % 2 == 0: print('^' * A + '^\nv\n' * ((T - A) // 2)) else: print('^' * (A - 1) + '^\nv\n' * ((T - A) // 2)) if A > B: if (T - dis) % 2 == 0: print('^\n' * (A - B) + '^>\n' * B + '^\nv\n' * ((T - dis) // 2), end = '') else: print('^\n' * (A - B) + '^>\n' * (B - 1) + '^\n' + '>\n' + '^\nv\n' * ((T - dis) // 2), end = '') pass else: if (T - dis) % 2 == 0: print('>\n' * (B - A) + '^>\n' * A + '^\nv\n' * ((T - dis) // 2), end = '') else: print('>\n' * (B - A) + '^>\n' * (A - 1) + '^\n' + '>\n' + '^\nv\n' * ((T - dis) // 2), end = '') pass