#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int v[52][52];
char s[2001][2001];
int n,m,x,y;
void wri(int a,int b)
{
s[a][b]='+';
s[a+1][b]='-';
s[a+2][b]='-';
s[a+3][b]='-';
s[a+4][b]='+';
s[a][b-1]='|';
s[a+1][b-1]=' ';
s[a+2][b-1]=' ';
s[a+3][b-1]=' ';
s[a+4][b-1]='|';
s[a+5][b-1]='/';
s[a][b-2]='|';
s[a+1][b-2]=' ';
s[a+2][b-2]=' ';
s[a+3][b-2]=' ';
s[a+4][b-2]='|';
s[a+5][b-2]=' ';
s[a+6][b-2]='+';
s[a][b-3]='+';
s[a+1][b-3]='-';
s[a+2][b-3]='-';
s[a+3][b-3]='-';
s[a+4][b-3]='+';
s[a+5][b-3]=' ';
s[a+6][b-3]='|';
s[a+1][b-4]='/';
s[a+2][b-4]=' ';
s[a+3][b-4]=' ';
s[a+4][b-4]=' ';
s[a+5][b-4]='/';
s[a+6][b-4]='|';
s[a+2][b-5]='+';
s[a+3][b-5]='-';
s[a+4][b-5]='-';
s[a+5][b-5]='-';
s[a+6][b-5]='+';
};
int main()
{
cin>>m>>n;
for (int i=1;i<=2000;i++)
for (int j=1;j<=2000;j++)
s[i][j]='.';
for (int i=1;i<=m;i++)
for (int j=1;j<=n;j++)
cin>>v[i][j];
for (int i=1;i<=m;i++)
for (int j=1;j<=n;j++)
{
x=1+2*(m-i)+4*j-4;
y=2000-2*(m-i);
for (int k=1;k<=v[i][j];k++)
{
wri(x,y-3*(k-1));
};
};
bool z;
z=false;
for (int i=1;i<=2000;i++)
{
for (int j=1;j<=2000;j++)
if (s[j][i]!='.')
{
z=true;
y=i;
break;
};
if (z==true) break;
};
z=false;
for (int j=2000;j>=1;j--)
{
for (int i=2000;i>=1;i--)
if (s[j][i]!='.')
{
z=true;
x=j;
break;
};
if (z==true) break;
};
for (int i=y;i<=2000;i++)
{
for (int j=1;j<=x;j++)
cout<<s[j][i];
cout<<endl;
};
return 0;
};