#include <iostream>
using namespace std;
bool s[50][50];
int main() {
int n;
cin >> n;
for(int i=0; i<n; i++)
{
s[0][i]=1;
s[n-1][i]=1;
s[i][n-1]=1;
}
int h=n-2, d=n-2;
int pointx=n-1, pointy=0;
while(1)
{
for(int i=0; i<h; i++)
{
s[pointx-i][pointy]=1;
}
pointx-=h-1;
h-=2;
if(h<=0)
break;
for(int i=0; i<d; i++)
{
s[pointx][pointy+i]=1;
}
pointy+=d-1;
d-=2;
if(d<=0)
break;
for(int i=0; i<h; i++)
{
s[pointx+i][pointy]=1;
}
pointx+=h-1;
h-=2;
if(h<=0)
break;
for(int i=0; i<d; i++)
{
s[pointx][pointy-i]=1;
}
pointy-=d-1;
d-=2;
if(d<=0)
break;
}
s[n/2][n/2]=0;
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
cout << s[i][j];
}
cout << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKYm9vbCBzWzUwXVs1MF07CgppbnQgbWFpbigpIHsKCWludCBuOwoJY2luID4+IG47Cglmb3IoaW50IGk9MDsgaTxuOyBpKyspCgl7CgkJc1swXVtpXT0xOwoJCXNbbi0xXVtpXT0xOwoJCXNbaV1bbi0xXT0xOwoJfQoJaW50IGg9bi0yLCBkPW4tMjsKCWludCBwb2ludHg9bi0xLCBwb2ludHk9MDsgCgl3aGlsZSgxKQoJewoJCWZvcihpbnQgaT0wOyBpPGg7IGkrKykKCQl7CgkJCXNbcG9pbnR4LWldW3BvaW50eV09MTsKCQl9CgkJcG9pbnR4LT1oLTE7CgkJaC09MjsKCQlpZihoPD0wKQoJCQlicmVhazsKCQlmb3IoaW50IGk9MDsgaTxkOyBpKyspCgkJewoJCQlzW3BvaW50eF1bcG9pbnR5K2ldPTE7CgkJfQoJCXBvaW50eSs9ZC0xOwoJCWQtPTI7CgkJaWYoZDw9MCkKCQkJYnJlYWs7CgkJCWZvcihpbnQgaT0wOyBpPGg7IGkrKykKCQl7CgkJCXNbcG9pbnR4K2ldW3BvaW50eV09MTsKCQl9CgkJcG9pbnR4Kz1oLTE7CgkJaC09MjsKCQlpZihoPD0wKQoJCQlicmVhazsKCQlmb3IoaW50IGk9MDsgaTxkOyBpKyspCgkJewoJCQlzW3BvaW50eF1bcG9pbnR5LWldPTE7CgkJfQoJCXBvaW50eS09ZC0xOwoJCWQtPTI7CgkJaWYoZDw9MCkKCQkJYnJlYWs7Cgl9CglzW24vMl1bbi8yXT0wOwoJZm9yKGludCBpPTA7IGk8bjsgaSsrKQoJewoJCWZvcihpbnQgaj0wOyBqPG47IGorKykKCQl7CgkJCWNvdXQgPDwgc1tpXVtqXTsKCQl9CgkJY291dCA8PCBlbmRsOwoJfQoJcmV0dXJuIDA7Cn0=