#include <bits/stdc++.h>
using namespace std;
int a, b, c, d, n;
int mas[550][550], x, y, s[30], np = 1;
void next() {
  if (np == 1) {
    y++;
    if (y == a + 1) {
      y--;
      np = 2;
      x++;
      return;
    }
    if (y <= a) return;
    if (y == a + c + 1) {
      y--;
      x--;
      np = 2;
      return;
    }
    if (y <= a + c) return;
  } else {
    y--;
    if (y == 0) {
      x++;
      y++;
      np = 1;
      return;
    }
    if (y == a) {
      if (x > 1) {
        np = 1;
        y++;
        x--;
      } else {
      }
      return;
    }
    return;
  }
}
int main() {
  cin >> a >> b >> c >> d >> n;
  for (int i = 1; i <= n; i++) cin >> s[i];
  int z = 1;
  if (d % 2 == 0) {
    x = d;
    y = a + 1;
    mas[x][y] = 1;
    s[1]--;
    np = 1;
    next();
  } else {
    x = d;
    y = a + c;
    mas[x][y] = 1;
    s[1]--;
    np = 2;
    next();
  }
  while (1 == 1) {
    if (s[z] == 0) z++;
    if (z == n + 1) break;
    mas[x][y] = z;
    s[z]--;
    next();
  }
  cout << "YES" << endl;
  for (int i = 1; i <= max(b, d); i++) {
    for (int j = 1; j <= a + c; j++)
      if (mas[i][j] != 0)
        cout << (char)(mas[i][j] - 1 + 'a');
      else
        cout << ".";
    cout << endl;
  }
  cin >> n;
}
