#include<bits/stdc++.h>
using namespace std;
int k,n,m,p,x,y;
char a[800][1600];
bool f[800][1600];
void dfs(int x,int y,int a,int b,int k,int xx,int yy)
{
if(x==n)
{
a[x][y]='o';
return;
}
if(k==1)
{
a[x][y]='o';
int X=xx+1,Y=(yy-1)*2+1;
if(!f[X][Y])
{
dfs(x+1,y-1,a+1,b,2,X,Y);
}
X=xx+1,Y=yy*2;
if(!f[X][Y])
{
dfs(x+1,y+1,a+1,b,3,X,Y);
}
}
else if(k==2)
{
a[x][y]='/';
if(a*2==b)
{
dfs(x+1,y-1,1,a,1,xx,yy);
}
else
{
dfs(x+1,y-1,a+1,b,2,xx,yy);
}
}
else if(k==3)
{
a[x][y]=92;
if(a*2==b)
{
dfs(x+1,y+1,1,a,1,xx,yy);
}
else
{
dfs(x+1,y+1,a+1,b,3,xx,yy);
}
}
}
void make(int k)
{
n=3;
for(int i=3;i<=k;i++)
{
n*=2;
}
m=6*(1<<(k-2))-1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
a[i][j]=' ';
}
}
dfs(1,m/2+1,1,n,1,1,1);
}
int main()
{
cin>>k>>p;
while(p--)
{
cin>>x>>y;
f[x][y]=1;
}
if(k==1)
{
n=m=1;
a[1][1]='o';
}
else
{
make(k);
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cout<<a[i][j];
}
cout<<endl;
}
}