#include <bits/stdc++.h>
using namespace std;
int ID[2][2] = {2, 3, 1, 4};
int col[7][4] = {0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0,
                 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0};
int n, m, a, b, c;
int ans[400][400];
int x, y, tot;
void suc(int &x, int &y) {
  if (y == m)
    x++, y = 1;
  else
    y++;
}
void pre(int &x, int &y) {
  if (y == 1)
    x--, y = m;
  else
    y--;
}
int main() {
  cin >> n >> m >> a >> b >> c;
  for (x = 1, y = 1, tot = 1; tot <= a; tot++) ans[x][y] = 1, suc(x, y);
  for (x = n, y = m, tot = 1; tot <= n * m - a - m; tot++)
    ans[x][y] = 2, pre(x, y);
  if (a % m == 0) {
    for (int j = 1; j <= m; j++) ans[a / m + 1][j] = (j & 1) ? 3 : 6;
  } else {
    for (int j = a % m + 1, cur = 1; j <= m; j++, cur++)
      ans[a / m + 1][j] = (cur & 1) ? 6 : 3;
    for (int j = m - (n * m - a - m) % m, cur = 1; j; j--, cur++)
      ans[a / m + 2][j] = (cur & 1) ? 6 : 3;
  }
  for (x = 1, y = 1, tot = 1; tot <= a + m + b; tot++) suc(x, y);
  for (tot = 1; tot <= n * m - a - m - b; tot++) {
    int up = col[ans[x - 1][y]][3];
    int left = (x == 1) ? 0 : col[ans[x][y - 1]][2];
    ans[x][y] = ID[up][left] + 2;
    suc(x, y);
  }
  for (int i = 1; i <= n; i++) {
    string L1 = "", L2 = "";
    for (int j = 1; j <= m; j++) switch (ans[i][j]) {
        case 1:
          L1 += "##", L2 += "##";
          break;
        case 2:
          L1 += "..", L2 += "..";
          break;
        case 3:
          L1 += "\\#", L2 += ".\\";
          break;
        case 4:
          L1 += "./", L2 += "/#";
          break;
        case 5:
          L1 += "\\.", L2 += "#\\";
          break;
        case 6:
          L1 += "#/", L2 += "/.";
          break;
      }
    cout << L1 << endl << L2 << endl;
  }
  return 0;
}
