#include <bits/stdc++.h>
using namespace std;
int n, m, ans[100010];
int ord[100010], tmp[100010];
int id(int i, int j, int m) { return (i - 1) * m + j; }
int main() {
  int i, j;
  short flag = 0;
  scanf("%d%d", &n, &m);
  if (n == 1 && m == 1)
    printf("YES\n1\n");
  else if (n == 1 && m == 4)
    printf("YES\n2 4 1 3\n");
  else if (n == 2 && m == 4)
    printf("YES\n1 3 5 2\n8 6 4 7\n");
  else if (n == 3 && m == 3)
    printf("YES\n1 3 4\n5 7 6\n9 2 8\n");
  else if (n == 3 && m == 4)
    printf("YES\n1 3 5 2\n4 6 12 9\n11 8 10 7\n");
  else if (n == 4 && m == 1)
    printf("YES\n2\n4\n1\n3\n");
  else if (n == 4 && m == 2)
    printf("YES\n1 4\n5 8\n2 3\n6 7\n");
  else if (n == 4 && m == 3)
    printf("YES\n1 3 4\n5 7 2\n11 6 8\n9 10 12\n");
  else if (n == 4 && m == 4)
    printf("YES\n1 3 5 2\n8 6 4 7\n15 12 14 16\n10 13 11 9\n");
  else {
    for (i = 1; i <= n; i++)
      for (j = 1; j <= m; j++)
        ord[id(i, j, m)] = tmp[id(i, j, m)] = id(i, j, m);
    if (n > m) {
      swap(n, m);
      for (i = 1; i <= n; i++)
        for (j = 1; j <= m; j++) ord[id(i, j, m)] = tmp[id(j, i, n)];
      flag = 1;
    }
    if (n <= 4 && m <= 4) {
      printf("NO\n");
      return 0;
    }
    if (m % 2 == 1) {
      for (i = 1; i <= n; i++)
        for (j = 0; j < m; j++)
          if (i & 1)
            ans[id(i, j + 1, m)] = (i - 1) * m + j * 2 % m + 1;
          else
            ans[id(i, j + 1, m)] = (i - 1) * m + (j * 2 + 1) % m + 1;
    } else {
      for (i = 1; i <= n; i++)
        for (j = 0; j < m; j++)
          if (i & 1)
            ans[id(i, j + 1, m)] = (i - 1) * m + (j * 2 + (j >= m / 2)) % m + 1;
          else
            ans[id(i, j + 1, m)] =
                (i - 1) * m + (j * 2 + 1 - (j >= m / 2)) % m + 1;
    }
    if (flag) {
      swap(n, m);
      for (i = 1; i <= n * m; i++) tmp[i] = ord[ans[i]];
      for (i = 1; i <= n; i++)
        for (j = 1; j <= m; j++) ans[id(i, j, m)] = tmp[id(j, i, n)];
    }
    printf("YES\n");
    for (i = 1; i <= n; i++)
      for (j = 1; j <= m; j++) printf("%d%c", ans[id(i, j, m)], "\n "[j < m]);
  }
  return 0;
}
