import java.util.Arrays; import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; import java.util.PriorityQueue; import java.util.Scanner; import java.util.Set; import java.util.TreeSet; public class Main { public static class Ref { T value; public void setValue(T value){ this.value = value; } public T getValue(){ return value; } } public static long gcd(long a, long b){ return b == 0 ? a : gcd(b, a % b); } public static long extcdf(long a, long b, Ref x, Ref y){ long g = a; x.setValue(1l); y.setValue(0l); if(b != 0){ g = extcdf(b, a % b, y, x); y.setValue(y.getValue() - (a / b) * x.getValue()); } return g; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); final long x = sc.nextLong(); final long y = sc.nextLong(); final long z = sc.nextLong(); final long gcd = gcd(x, y); if(z % gcd != 0){ System.out.println("mourennaihasimasenn"); }else{ Ref a = new Ref(); Ref b = new Ref(); extcdf(x, y, a, b); final long x_size = Math.abs(a.getValue()) * (z / gcd); final long y_size = Math.abs(b.getValue()) * (z / gcd); final StringBuilder x_sum = new StringBuilder(); final StringBuilder y_sum = new StringBuilder(); for(long i = 0; i < x_size; i++){ x_sum.append('c'); if(i != 0){ x_sum.append('C'); } } for(long i = 0; i < y_size; i++){ y_sum.append('w'); if(i != 0){ y_sum.append('C'); } } final StringBuilder answer = new StringBuilder(); if(a.getValue() >= 0){ answer.append(y_sum); answer.append(x_sum); if(b.getValue() >= 0){ answer.append('C'); }else{ answer.append('W'); } }else{ answer.append(y_sum); answer.append(x_sum); answer.append('W'); } System.out.println(answer); } } }