#include <bits/stdc++.h>
void fill(int *aa, int n) {
  int i;
  if (n == 1) {
    aa[0] = 1;
    return;
  }
  if (n == 2) {
    aa[0] = 3, aa[1] = 4;
    return;
  }
  if (n % 2 == 0) {
    for (i = 0; i < n - 1; i++) aa[i] = 1;
    aa[n - 1] = n / 2 - 1;
  }
  if (n % 2 == 1) {
    aa[0] = 2;
    for (i = 1; i < n - 1; i++) aa[i] = 1;
    aa[n - 1] = (n + 1) / 2;
  }
}
int main() {
  static int aa[100], bb[100];
  int n, m, i, j;
  scanf("%d%d", &n, &m);
  fill(aa, n);
  fill(bb, m);
  for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) printf("%d ", aa[i] * bb[j]);
    printf("\n");
  }
  return 0;
}
