#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e2 + 17;
int n, m;
char c[maxn][maxn];
char what(int i, int j) {
  char can = 'A';
  while (i && c[i - 1][j] == can || j && c[i][j - 1] == can ||
         j + 1 < m && c[i][j + 1] == can)
    can++;
  return can;
}
int main() {
  ios::sync_with_stdio(0), cin.tie(0);
  cin >> n >> m;
  for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++)
      if (c[i][j] == 0) {
        char can = what(i, j);
        int len = 1;
        while (i + len < n && j + len < m && !c[i][j + len] &&
               what(i, j + len) == can)
          len++;
        for (int row = i; row < i + len; row++) memset(c[row] + j, can, len);
      }
  for (int i = 0; i < n; i++) cout << c[i] << '\n';
  return 0;
}
