/*
4
aaca
bbca
acbb
acaa
5
b.cca
bc..b
ac..b
abbaa
6
aa.bba
b.cc.a
bc.aa.
.ca..b
a.a..b
abb.aa
7
aa..bba
b.cc..a
bc.aa..
.ca.cc.
..ac..b
a..c..b
abb..aa
*/
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<int> VI;
typedef pair<int,int> pii;
namespace IO{
    template<typename T>inline void read(T &x){
        x=0;ll f=1;char ch=getchar();
        while(!isdigit(ch)){if(ch=='-')f=-f;ch=getchar();}
        while(isdigit(ch)){x=x*10+ch-48;ch=getchar();}
        x=x*f;
    }
}
using namespace IO;
int n;
int ans[2000][2000];

int  main()
{
    read(n);
    if(n==2) {cout<<"-1";return 0;}
    if(n==3){

        cout<<"a.."<<endl;
        cout<<"a.."<<endl;
        cout<<".aa"<<endl;
        return 0;
    };
    int m,mod;
    m=n/4-1;
    mod=n%4+4;
    int x1=0,x2=0,x3=0,x4=0;
    for(int j=1;j<=n-mod;j++){
    if(j%4==1){
        for(int i=1;i<=x1;i++)
        cout<<"....";
        cout<<"aaca";
        for(int i=4*x1+4+1;i<=n;i++)
        cout<<".";
        cout<<endl;
        x1++;
    }

    if(j%4==2){
    for(int i=1;i<=x2;i++)
        cout<<"....";
        cout<<"bbca";
        for(int i=4*x2+4+1;i<=n;i++)
        cout<<".";
        cout<<endl;
        x2++;
    }
    if(j%4==3){
    for(int i=1;i<=x3;i++)
        cout<<"....";
        cout<<"acbb";
        for(int i=4*x3+4+1;i<=n;i++)
        cout<<".";
        cout<<endl;
        x3++;
    }
    if(j%4==0){
    for(int i=1;i<=x4;i++)
        cout<<"....";
        cout<<"acaa";
        for(int i=4*x4+4+1;i<=n;i++)
        cout<<".";
        cout<<endl;
        x4++;
    }
    }
    if(mod==4)
    {
            for(int i=1;i<=n-4;i++)
            cout<<".";
            cout<<"aaca"<<endl;
            for(int i=1;i<=n-4;i++)
            cout<<".";
            cout<<"bbca"<<endl;
            for(int i=1;i<=n-4;i++)
            cout<<".";
            cout<<"acbb"<<endl;
            for(int i=1;i<=n-4;i++)
            cout<<".";
            cout<<"acaa"<<endl;
    }
    if(mod==5)
    {
/*
b.cca
bc..b
ac..b
abbaa
*/
            for(int i=1;i<=n-5;i++)
            cout<<".";
            cout<<"aabba"<<endl;
            for(int i=1;i<=n-5;i++)
            cout<<".";
            cout<<"bcc.a"<<endl;
            for(int i=1;i<=n-5;i++)
            cout<<".";
            cout<<"b..cb"<<endl;
            for(int i=1;i<=n-5;i++)
            cout<<".";
            cout<<"a..cb"<<endl;  
            for(int i=1;i<=n-5;i++)
            cout<<".";
            cout<<"abbaa"<<endl;  
    }
    if(mod==6)
    {
/*
aa.bba
b.cc.a
bc.aa.
.ca..b
a.a..b
abb.aa
*/
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<"aa.bba"<<endl;
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<"b.cc.a"<<endl;
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<"bc.aa."<<endl;
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<".ca..b"<<endl;  
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<"a.a..b"<<endl;  
            for(int i=1;i<=n-6;i++)
            cout<<".";
            cout<<"abb.aa"<<endl;
    }

    if(mod==7)
    {
/*
aa..bba
b.cc..a
bc.aa..
.ca.cc.
..ac..b
a..c..b
abb..aa
*/
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"aa..bba"<<endl;
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"b.cc..a"<<endl;
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"bc.aa.."<<endl;
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<".ca.cc."<<endl;  
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"..ac..b"<<endl;  
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"a..c..b"<<endl;
            for(int i=1;i<=n-7;i++)
            cout<<".";
            cout<<"abb..aa";
    }
}

Measured memory_bytes: 1280