#include <bits/stdc++.h>
using namespace std;
int main(){
ifstream f("oras.in");
ofstream g("oras.out");
int n;
f >> n;
bitset<210> d[210] = {};
if(n == 4){
g << -1;
return 0; }
int n_cur;
if(n%2 == 1){
n_cur = 3;
d[0][1] = 1;
d[1][2] = 1;
d[2][0] = 1; }
else{
n_cur = 6;
d[0][1] = d[1][2] = d[2][0] = 1;
d[3][4] = d[4][5] = d[5][3] = 1;
d[0][3] = d[5][0] = 1;
d[2][4] = d[3][2] = 1;
d[1][5] = d[4][1] = 1;
d[0][4] = d[1][3] = d[2][5] = 1; }
while(n_cur < n){
for(int i = 0; i < n_cur; ++i){
d[i][n_cur] = d[n_cur+1][i] = 1;
d[n_cur][n_cur+1] = 1; }
n_cur += 2; }
for(int i = 0; i < n; ++i){
for(int j = 0; j < n; ++j){
g << d[i][j]; }
g << '\n'; }
return 0; }