#include <bits/stdc++.h>
using namespace std;
bool down[110][110], righ[110][110];
char board[210][210];
void black(int x, int y) {
  down[x][y] = righ[x][y] = true;
  board[2 * x][2 * y] = board[2 * x][2 * y + 1] = board[2 * x + 1][2 * y] =
      board[2 * x + 1][2 * y + 1] = '#';
}
void white(int x, int y) {
  board[2 * x][2 * y] = board[2 * x][2 * y + 1] = board[2 * x + 1][2 * y] =
      board[2 * x + 1][2 * y + 1] = '.';
}
void gray(int x, int y, int rem) {
  bool up = (x == 0 || down[x - 1][y]), left = (y == 0 || righ[x][y - 1]);
  if (y == 0 && rem % 2 == 0) left = false;
  if (up && left) {
    board[2 * x][2 * y] = '#';
    board[2 * x][2 * y + 1] = '/';
    board[2 * x + 1][2 * y] = '/';
    board[2 * x + 1][2 * y + 1] = '.';
  }
  if (up && !left) {
    board[2 * x][2 * y] = '*';
    board[2 * x][2 * y + 1] = '#';
    board[2 * x + 1][2 * y] = '.';
    board[2 * x + 1][2 * y + 1] = '*';
  }
  if (!up && left) {
    board[2 * x][2 * y] = '*';
    board[2 * x][2 * y + 1] = '.';
    board[2 * x + 1][2 * y] = '#';
    board[2 * x + 1][2 * y + 1] = '*';
  }
  if (!up && !left) {
    board[2 * x][2 * y] = '.';
    board[2 * x][2 * y + 1] = '/';
    board[2 * x + 1][2 * y] = '/';
    board[2 * x + 1][2 * y + 1] = '#';
  }
  down[x][y] = !up;
  righ[x][y] = !left;
}
int main(void) {
  int H, W, a, b, c, i, j, k = 0;
  cin >> H >> W >> a >> b >> c;
  for ((i) = 0; (i) < (int)(H); (i)++)
    for ((j) = 0; (j) < (int)(W); (j)++) {
      if (k < a)
        black(i, j);
      else if (k < a + W)
        gray(i, j, a + W - k);
      else if (k < a + W + b)
        white(i, j);
      else
        gray(i, j, 1);
      k++;
    }
  for ((i) = 0; (i) < (int)(2 * H); (i)++) {
    for ((j) = 0; (j) < (int)(2 * W); (j)++)
      if (board[i][j] == '*') board[i][j] = '\\';
    board[i][2 * W] = '\0';
    printf("%s\n", board[i]);
  }
  return 0;
}
