def f(t, x, lr): assert t >= x d, m = divmod(t-x, 2) res = [] res.append(' ' * m) res.append(lr[0] * (x + d)) res.append(lr[1] * d) return ''.join(res) T, A, B = map(int, input().split()) if T < A or T < B: print('NO') exit(0) s = f(T, A, '^v') t = reversed(f(T, B, '><')) ans = [] for a, b in zip(s, t): if a == b == ' ': print('NO') break ans.append((a + b).strip()) else: print('YES') print(*ans, sep='\n')