var n,m,l,i,j,k:longint;
f,g:text;
begin
assign(f,'tablete.in');
reset(f);
assign(g,'tablete.out');
rewrite(g);
readln(f,n,k);
if k mod 2=0 then
begin
m:=1;
l:=n*k+1;
for i:=1 to n do
begin
for j:=1 to k do begin write(g,m,' '); inc(m);end;
for j:=k+1 to n do begin write(g,l,' '); inc(l); end;
writeln(g);
end;
end
else
begin
l:=n*k;
m:=1;
if l mod 2=1 then
begin
for j:=1 to k-1 do begin write(g,m,' '); inc(m);end;
if m mod 2=0 then begin write(g,m,' '); inc(m); end
else begin write(g,m+1,' '); inc(m,2); end;
write(g,l,' '); inc(l,2);
for j:=k+2 to n do
begin
write(g,l,' '); inc(l);
end;
writeln(g);
for i:=2 to n do
begin
if m=(i-1)*k+1 then
begin
for j:=1 to k-1 do begin write(g,m,' '); inc(m);end;
if m mod 2=0 then begin write(g,m,' '); inc(m); end
else begin write(g,m+1,' '); inc(m,2); end;
for j:=k+1 to n do
begin
write(g,l,' '); inc(l);
end;
writeln(g);
end
else
begin
write(g,m-2,' ');
for j:=2 to k-1 do begin write(g,m,' '); inc(m);end;
if m mod 2=0 then begin write(g,m,' '); inc(m); end
else begin write(g,m+1,' '); inc(m,2); end;
for j:=k+1 to n do
begin
write(g,l,' '); inc(l);
end;
writeln(g);
end;
end;
end
else
begin
l:=l+1;
for i:=1 to n do
begin
if m=(i-1)*k+1 then
begin
for j:=1 to k-1 do begin write(g,m,' '); inc(m);end;
if m mod 2=0 then begin write(g,m,' '); inc(m); end
else begin write(g,m+1,' '); inc(m,2); end;
for j:=k+1 to n do
begin
write(g,l,' '); inc(l);
end;
writeln(g);
end
else
begin
write(g,m-2,' ');
for j:=2 to k-1 do begin write(g,m,' '); inc(m);end;
if m mod 2=0 then begin write(g,m,' '); inc(m); end
else begin write(g,m+1,' ');inc(m,2); end;
for j:=k+1 to n do
begin
write(g,l,' '); inc(l);
end;
writeln(g);
end;
end;
end; end;
close(f);
close(g);
end.