program jj;
const nmax=300;
type tarr=array[0..nmax] of integer;
var a:tarr;

procedure print(const a:tarr);
var i:integer;
begin
for i:=a[0] downto 1 do write(a[i]);
writeln;
end;
procedure solve;
var i,j,r,w,n:integer;
begin {fillchar(a,sizeof(a), 0); }
readln(n);
a[0]:=1; a[1]:=1;j:=1;
while (j<=n) and (a[0]
begin
r:=0; i:=1;
while (i<=a[0]) or

(r<>0) do
begin

w:=a[i]*j+r;

a[i]:=w mod 10;
r:=w
div 10;
if
a[a[0]+1]<>0 then Inc(a[0]);

Inc(i);
end;
end;
end;

begin

write(j,'!=');

print(a);

Inc(j);

end;
end.