#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const double pi=4*atan(1.0); constexpr long long mod=static_cast(1e9+7); using cWeightEdges=vector>>; using cEdges=vector>; int main(){ long long x,y,z; cin>>x>>y>>z; bool is_find=false; long long n=1; string ans; while(2*(n-1)+1<=10000){ long long rest=z-n*x; if(rest%y==0){ long long m=rest/y; if(2*n-1+2*abs(m)-1+1<=10000){ is_find=true; string s1(n,'c'); string s2(n-1,'C'); string s3(abs(m),'w'); string s4(abs(m)-1,'C'); if(m==0){ ans+=s1+s2; } else if(m>0){ ans+=s1+s2+s3+s4; ans+="C"; } else{ ans+=s1+s2+s3+s4; ans+="W"; } break; } } ++n; } if(!is_find){ while(2*(n-1)+1<=10000){ long long rest=z-n*y; if(rest%x==0){ long long m=rest/x; if(2*n-1+2*abs(m)-1+1<=10000){ is_find=true; string s1(n,'w'); string s2(n-1,'C'); string s3(abs(m),'c'); string s4(abs(m)-1,'C'); if(m==0){ ans+=s1+s2; } else if(m>0){ ans+=s1+s2+s3+s4; ans+="C"; } else{ ans+=s1+s2+s3+s4; ans+="W"; } break; } } } ++n; } if(is_find)cout<