{
ZADATAK: proizvod
JEZIK: pascal
}

type broj = record
        cif: array [1..100] of integer;
        komada: longint;
        end;

procedure pishi (a: broj);
var i: longint;
begin
for i := a.komada downto 1 do write (a.cif[i]);
writeln;
end;

function min (a, b: longint): longint;
begin
if a < b then min := a else min := b;
end;

function proizvod (a, b: broj): broj;
var k: broj;
var i, j: longword;
begin
fillchar (k.cif, sizeof (k.cif), 0);
k.komada := a.komada + b.komada;
for i := 1 to a.komada do
        for j := 1 to b.komada do
                k.cif [i+j-1] := k.cif [i+j-1] + a.cif[i]*b.cif[j];
for i := 1 to k.komada do
        if k.cif[i] > 9 then begin
                k.cif[i+1] := k.cif[i+1] + k.cif[i] div 10;
                k.cif[i] := k.cif[i] mod 10;
                end;
while k.cif[k.komada] = 0 do dec (k.komada);
proizvod := k;
end;


var cifre, manjih: array [0..9] of longint;
var n, m: longint;
var c: char;
var i, j, granica: longint;
var manji, vetji: broj;
begin
assign (input, 'proizvod.in');
reset (input);
assign (output, 'proizvod.out');
rewrite (output);
readln (n, m);
fillchar (cifre, sizeof (cifre), 0);
for i := 1 to n do begin
        read (c);
        inc (cifre [ord (c) - 48]);
        end;
manjih [0] := 0;
for i := 1 to 9 do manjih [i] := manjih [i-1] + cifre [i - 1];
granica := 9;
while (granica >= 0) and (cifre[granica] mod 2 = 0) do dec (granica);
manji.komada := 0;
vetji.komada := 0;
i := 0;
fillchar (manji.cif, sizeof (manji.cif), 0);
fillchar (vetji.cif, sizeof (vetji.cif), 0);
while (manji.komada < m) and (i <= 9) do begin
        for j := 1 to min (m, cifre[i] div 2) do begin
                inc (manji.komada);
                manji.cif [manji.komada] := i;
                vetji.cif [manji.komada] := i;
                end;
        j := i + 1;
        while (j < 10) and (cifre [j] = 0) do inc (j);
        if cifre [i] mod 2 > 0 then begin
                if (j < 10) and (m > manji.komada) then begin
                        inc (manji.komada);
                        manji.cif [manji.komada] := j;
                        vetji.cif [manji.komada] := i;
                        dec (cifre [j]);
                        end else begin
                        inc (manji.komada);
                        manji.cif [manji.komada] := i;
                        vetji.cif [manji.komada] := 0;
                        end;
                end;
        i := j;
        end;
vetji.komada := manji.komada;
while (manji.cif[i] = vetji.cif[i]) and (i > 0) do dec (i);
if i > 0 then begin
        j := manji.cif[i];
        manji.cif[i] := vetji.cif[i];
        vetji.cif[i] := j;
        end;
for i := manji.komada + 1 to m do begin
        manji.cif[i] := 0;
        vetji.cif[i] := 0;
        end;
manji.komada := m;
vetji.komada := m;
manji := proizvod (manji, vetji);
for i := manji.komada + 1 to m do
        manji.cif[i] := 0;
manji.komada := m;
pishi (manji);
close (input);
close (output);
end.
