#include <bits/stdc++.h>
using namespace std;
long long a, b, c, d, n, x, y, r, num[105];
char mp[55][105];
signed main() {
  ios::sync_with_stdio(false);
  cin >> a >> b >> c >> d >> n;
  for (long long i = 1; i <= n; ++i) cin >> num[i];
  for (long long i = 1; i <= max(b, d); ++i)
    for (long long j = 1; j <= a + c; ++j) mp[i][j] = '.';
  puts("YES");
  if (b % 2)
    x = b, y = 0;
  else
    x = b, y = a + 1;
  r = a * b;
  for (long long i = 1; i <= n; ++i) {
    long long cnt = min(r, num[i]);
    num[i] -= cnt, r -= cnt;
    for (long long j = 0; j < cnt; ++j) {
      if (x % 2)
        ++y;
      else
        --y;
      if (y > a) --x, y = a;
      if (y < 1) --x, y = 1;
      mp[x][y] = i + 'a' - 1;
    }
    if (!r) break;
  }
  x = 1;
  y = a;
  r = c * d;
  for (long long i = 1; i <= n; ++i) {
    long long cnt = min(r, num[i]);
    num[i] -= cnt, r -= cnt;
    for (long long j = 0; j < cnt; ++j) {
      if (x % 2)
        ++y;
      else
        --y;
      if (y > a + c) ++x, y = a + c;
      if (y <= a) ++x, y = a + 1;
      mp[x][y] = i + 'a' - 1;
    }
    if (!r) break;
  }
  for (long long i = 1; i <= max(b, d); ++i) {
    for (long long j = 1; j <= a + c; ++j) {
      printf("%c", mp[i][j]);
    }
    puts("");
  }
  return 0;
}
