MAX = 100000000 def bsearch(min, max, target): while min < max: middle = (min + max) // 2 if middle == target: return middle elif middle < target: min = middle + 1 elif target < middle: max = middle -1 else: return -1 def encode(p, q, negative): code = [] if positive: for _ in range(p): code.append('c') for _ in range(q): code.append('w') for _ in range(p+q-1): code.append('C') else: for _ in range(q): code.append('w') for _ in range(p): code.append('c') for _ in range(p-1): code.append('C') for _ in range(q): code.append('W') return ''.join(code) X,Y,Z = list(map(int, input().split())) # p * X + q * Y = Z coef = None positive = True for p in range(MAX+1): rest = Z - p * X if rest % Y == 0: target = rest // Y if target < 0: positive = False q = bsearch(0, MAX+1, abs(target)) if q != -1: coef = (p,q) break if coef: p,q = coef code = encode(p, q, positive) if 10000 < len(code): print('NO') else: print(code) else: print('NO')