#include<bits/stdc++.h>
using namespace std;
#define int long long
char f[10005][5005];
int k[1025];
int wr[10005];
signed main(){
int m,n;
cin>>m>>n;
int ds=pow(2,m-1);
int d=1;
int dqj=1;
while(ds!=0){
f[1][dqj]='o';
f[1][dqj+4]='o';
dqj+=6;
ds-=2;
wr[1]=dqj;
}
while(n--){
int c,w;
cin>>c>>w;
if(c>m || w>pow(2,c-1))continue;
int l,r;
int bs=pow(2,(m-c));
r=bs*w;
l=r-bs+1;
for(int i=l;i<=r;i++){
k[i]=1;
}
}
int js=0;
for(int i=1;i<=dqj;i++){
if(f[1][i]=='o'){
js++;
if(k[js]==1)f[1][i]=' ';
}
}
int mm=m-1;
int dq=1;
int cj=5;
while(mm--){
for(int i=1;i<=wr[d];i++){
if(f[d][i]=='o'){
if(i%(cj+1)<=((cj+1)/2)){
f[d+1][i+1]='\\';
}else{
f[d+1][i-1]='/';
}
}
}
cj=cj*2+1;
d++;
wr[d]=wr[d-1]-1;
for(int i=1;i<dq;i++){
for(int j=1;j<=wr[d];j++){
if(f[d][j]=='\\'){
f[d+1][j+1]='\\';
}else if(f[d][j]=='/'){
f[d+1][j-1]='/';
}
}
d++;
wr[d]=wr[d-1]-1;
}
for(int i=1;i<=wr[d];i++){
if(f[d][i]=='/'){
f[d+1][i-1]='o';
}else if(f[d][i]=='\\'){
f[d+1][i+1]='o';
}
}
d++;
wr[d]=wr[d-1]-1;
if(dq==1)dq=2;
else {
dq=dq*2+1;
}
}
for(int i=d;i>=1;i--){
for(int j=1;j<=wr[1];j++){
if(f[i][j]=='\\'){
cout<<'/';
}else if(f[i][j]=='/'){
cout<<'\\';
}else if(f[i][j]=='o'){
cout<<'o';
}else{
cout<<' ';
}
}
cout<<endl;
}
}