#include <bits/stdc++.h>
using namespace std;
int main() {
  int a, b, c, d;
  char m[51][51];
  cin >> a >> b >> c >> d;
  a--;
  b--;
  c--;
  d--;
  for (int i = 0; i < 25; i++) {
    for (int j = 0; j < 25; j++) {
      m[i][j] = 'A';
    }
  }
  for (int i = 25; i < 50; i++) {
    for (int j = 0; j < 25; j++) {
      m[i][j] = 'B';
    }
  }
  for (int i = 0; i < 25; i++) {
    for (int j = 25; j < 50; j++) {
      m[i][j] = 'C';
    }
  }
  for (int i = 25; i < 50; i++) {
    for (int j = 25; j < 50; j++) {
      m[i][j] = 'D';
    }
  }
  for (int j = 0; j < 25; j += 2) {
    for (int i = 0; i < 25; i += 2) {
      if (d) {
        m[i][j] = 'D';
        d--;
      }
    }
  }
  for (int j = 0; j < 25; j += 2) {
    for (int i = 25; i < 50; i += 2) {
      if (c) {
        m[i][j] = 'C';
        c--;
      }
    }
  }
  for (int j = 25; j < 50; j += 2) {
    for (int i = 25; i < 50; i += 2) {
      if (a) {
        m[i][j] = 'A';
        a--;
      }
    }
  }
  for (int j = 25; j < 50; j += 2) {
    for (int i = 0; i < 25; i += 2) {
      if (b) {
        m[i][j] = 'B';
        b--;
      }
    }
  }
  cout << "50 50\n";
  for (int i = 0; i < 50; i++) {
    for (int j = 0; j < 50; j++) {
      cout << m[i][j];
    }
    cout << endl;
  }
  return 0;
}
