{ arvutab n faktoriaali }
function fact(n : integer) : integer;
var i : integer;
begin
   fact := 1;
   for i := 1 to n do begin
      fact := fact * i;
   end;
end;

{ leiab n-täheliste permutatsioonide hulgas r. kohal oleva }
function unrank(n, r : integer) : string;
var i, j : integer; s : string;
begin
   r := r - 1;
   s := '';
   for i := 1 to n do begin
      s := s + 'a';
      for j := 1 to r div fact(n - i) do begin
         s[i] := succ(s[i]);
      end;
      r := r mod fact(n - i);
   end;
   for i := n downto 1 do begin
      for j := i + 1 to n do begin
         if s[j] >= s[i] then begin
            s[j] := succ(s[j]);
         end;
      end;
   end;
   unrank := s;
end;

var n, r : integer;
begin
   readln(n, r);
   writeln(unrank(n, r));
end.
