//
// Written by Fyodor Menshikov 21.02.2006
// 10:34-10:41
//
var
   n,i,t:integer;
begin
//   assign(input,'input.txt');
   reset(input);
//   assign(output,'output.txt');
   rewrite(output);
   readln(n);
   if (n mod 4=1) or (n mod 4=2) then begin
      writeln('NO');
      halt;
   end;
   writeln('YES');
   for i:=1 to n do begin
      readln(t);
      if n mod 4=0 then begin
         if (t<=n div 4) or (t>n div 4*3) then begin
            writeln('-');
         end
         else begin
            writeln('+');
         end;
      end
      else begin
         assert(n mod 4=3);
         if (t=1) or (t=2) then begin
            writeln('-');
         end
         else if t=3 then begin
            writeln('+');
         end
         else begin
            t:=t-3;
            if (t<=n div 4) or (t>n div 4*3) then begin
               writeln('-');
            end
            else begin
               writeln('+');
            end;
         end;
      end;
   end;
end.