#include <bits/stdc++.h>
using namespace std;
int n, m, ans[105][105], rot;
void gg() {
  printf("-1\n");
  exit(0);
}
int main() {
  scanf("%d %d", &n, &m);
  if (n > m) {
    swap(n, m);
    rot = 1;
  }
  if (m == 1) {
    printf("1\n");
    return 0;
  }
  if (m == 2 || (n == 1 && m == 3)) gg();
  if (n == 1) {
    int p = 0;
    for (int i = (m); i >= (1); i--)
      if (i % 2 == 1) ans[1][i] = ++p;
    for (int i = (m); i >= (1); i--)
      if (i % 2 == 0) ans[1][i] = ++p;
  } else {
    int p = 0;
    for (int i = (1); i <= (n); i++) {
      int tmp = i;
      for (int j = (1); j <= (m); j++) {
        ans[tmp][j] = ++p;
        tmp++;
        if (tmp > n) tmp = 1;
      }
    }
  }
  if (rot) {
    for (int i = (1); i <= (m); i++)
      for (int j = (1); j <= (n); j++)
        printf("%d%c", ans[j][i], j == n ? '\n' : ' ');
  } else {
    for (int i = (1); i <= (n); i++)
      for (int j = (1); j <= (m); j++)
        printf("%d%c", ans[i][j], j == m ? '\n' : ' ');
  }
  return 0;
}
