#include <bits/stdc++.h>
int n, m;
int A[102], B[102];
void cr(int n, int *A) {
  if (n == 1) {
    A[1] = 1;
    return;
  }
  if (n == 2) {
    A[1] = 3;
    A[2] = 4;
    return;
  }
  int x = n - 1, i;
  for (i = 1; i <= n; i++) A[i] = 1;
  if (x & 1)
    A[n] = (x - 1) >> 1;
  else if (!(x & 3))
    A[n] = (x >> 2) - 1;
  else {
    A[n - 1] = 2;
    A[n] = (n + 1) >> 1;
  }
}
int main() {
  int i, j;
  scanf("%d %d", &n, &m);
  cr(n, A);
  cr(m, B);
  for (i = 1; i <= n; i++) {
    for (j = 1; j <= m; j++) printf("%d ", A[i] * B[j]);
    printf("\n");
  }
  return 0;
}
