T, A, B = map(int, raw_input().split()) if A == B == 0: print 'YES' if T == 0 else 'NO' exit() if max(A, B) > T: print 'NO' exit() if max(A, B) == T: for i in xrange(T): arrow = '' if A > i: arrow += '^' if B > i: arrow += '>' print arrow a, b = 0, 0 ans = [] while A-a > 1 or B-b > 1: arrow = '' if A-a > 0: a += 1 arrow += '^' if B-b > 0: b += 1 arrow += '>' ans.append(arrow) T -= 1 if A == B: T -= 1 ans.append('^') if A > B: T -= 1 ans.append('^<') while T > 2: ans.append('^') ans.append('V') T -= 2 if T == 2: ans.append('^') ans.append('V>') else: ans.append('>') print 'YES' for a in ans: print a