#include <bits/stdc++.h>
using namespace std;
const int N = 105;
const int M = 1000000007;
int n, m;
char a[N][N];
void paint(int x, int y, int l, char c) {
  for (int i = x; i < x + l; i++) {
    for (int j = y; j < y + l; j++) {
      a[i][j] = c;
    }
  }
}
char nxt(int x, int y, char ccc = 0) {
  char c = 'A';
  while (c == ccc || c == a[x - 1][y] || c == a[x + 1][y] || c == a[x][y - 1] ||
         c == a[x][y + 1]) {
    c++;
  }
  return c;
}
int main() {
  while (~scanf("%d%d", &n, &m)) {
    memset(a, 0, sizeof(a));
    for (int i = 1; i <= n; i++) {
      for (int j = 1; j <= m; j++) {
        if (!a[i][j]) {
          char c = nxt(i, j);
          int l = 1;
          for (; i + l <= n && j + l <= m && !a[i][j + l] && nxt(i, j + l) == c;
               l++)
            ;
          paint(i, j, l, c);
        }
      }
    }
    for (int i = 1; i <= n; i++) {
      puts(a[i] + 1);
    }
  }
}
