{
Var sets,n,r,b,w,nu,de:longint;
s:string;
ch:char; rep:boolean;
Procedure
get(c:char);
begin case c of 'R':begin nu:=nu*r;
if not rep then dec(r) end;
'B':begin
nu:=nu*b;
if not rep then dec(b)
end;
'W':begin
nu:=nu*w; if not rep
then dec(w)
end;
'r':nu:=nu*(n-r);
'b':nu:=nu*(n-b);
'w':nu:=nu*(n-w); else exit
end;
de:=de*n;
if not rep then dec(n)
end;
Begin {
assign(input,'PROB.in');
reset(input);} sets:=5;
while sets>0 do begin dec(sets);
read(n,r,b,w);
n:=r+b+w;
de:=1;nu:=1;
read(ch);
while ch='
' do read(ch);
if not((ch='Y')or(ch='N')) then get(ch) else begin
if ch='Y' then rep:=true else
rep:=false; readln(s);
while s<>'' do begin
get(s[1]);
delete(s,1,1) end end;
writeln(nu,'/',de) end;
close(input) End.