#include<stdio.h>
int row,a,x,y,q,w;
int main(){
while(scanf("%d %d",&row,&a)!=EOF)
{
char out[row+2][row+2];
int sx[a],sy[a];
int b=a-1;
for(int i=0;i<row+2;i++)
{
for(int j=0;j<row+2;j++)
{
out[i][j]=' ';
}
}
for(int i=0;i<row+2;i++)
{
out[0][i]='-';
out[row+1][i]='-';
}
for(int i=1;i<row+1;i++)
{
out[i][0]='|';
out[i][row+1]='|';
}
while(a--)
{
scanf("%d%d",&sx[a],&sy[a]);
}
for(b;b>0;b--)
{
if(sx[b]==sx[b-1])
{
if(sy[b]>sy[b-1])
{
q=sy[b],w=sy[b-1];
for(w;q>=w;w++)
{
out[sx[b]][w]='*';
}
}
else
{
q=sy[b],w=sy[b-1];
for(q;q<=w;q++)
{
out[sx[b]][q]='*';
}
}
}
else if(sy[b]==sy[b-1])
{
if(sx[b]>sx[b-1])
{
q=sx[b],w=sx[b-1];
for(w;q>=w;w++)
{
out[w][sy[b]]='*';
}
}
else if(sx[b]<sx[b-1])
{
q=sx[b],w=sx[b-1];
for(q;q<=w;q++)
{
out[q][sy[b]]='*';
}
}
}
else
{
printf("%d%d%d",b,sy[b],sy[b-1]);
}
}
for(int i=0;i<row+2;i++)
{
for(int j=0;j<row+2;j++)
{
printf("%c",out[i][j]);
}
printf("\n");
}
}
}