#include <bits/stdc++.h>
using namespace std;
int pd[1000001];
int main() {
  int n, m;
  while (cin >> n >> m) {
    memset(pd, 0, sizeof(pd));
    for (int i = 1; i <= 1000; i++) pd[i * i] = 1;
    int a, b, c, d;
    for (a = 1; a <= 100; a++)
      for (b = 1; b <= 100; b++)
        for (c = 1; c <= 100; c++)
          for (d = 1; d <= 100; d++) {
            int s1 = (m - 1) * a * a + b * b;
            int s2 = (n - 1) * a * a + c * c;
            int s3 = (n - 1) * b * b + d * d;
            int s4 = (m - 1) * c * c + d * d;
            if (pd[s1] && pd[s2] && pd[s3] && pd[s4]) goto next;
          }
  next:
    for (int i = 1; i < n; i++) {
      for (int j = 1; j < m; j++) {
        cout << a << " ";
      }
      cout << b << endl;
    }
    for (int i = 1; i < m; i++) {
      cout << c << " ";
    }
    cout << d << endl;
  }
  return 0;
}
