Buggy python submission (verdict: Runtime Error):
N=int(input())
ans=[["." for i in range(N)] for j in range(N)]
if N==2 or N==7:
    print(-1)
    exit()
elif N%3==0:
    if N%3==0:
        for i in range(N//3):
            ans[3*i][3*i]="a"
            ans[3*i][3*i+1]="a"
            ans[3*i+1][3*i+2]="a"
            ans[3*i+2][3*i+2]="a"

else:
    r=5-N%5
    if r==5:
        r=0
    for i in range(0,r):
        ans[4*i][4*i]="a"
        ans[4*i][4*i+1]="a"
        ans[4*i][4*i+2]="c"
        ans[4*i][4*i+3]="d"
        ans[4*i+1][4*i]="b"
        ans[4*i+1][4*i+1]="b"
        ans[4*i+1][4*i+2]="c"
        ans[4*i+1][4*i+3]="d"
        ans[4*i+2][4*i]="c"
        ans[4*i+2][4*i+1]="d"
        ans[4*i+2][4*i+2]="a"
        ans[4*i+2][4*i+3]="a"
        ans[4*i+3][4*i]="c"
        ans[4*i+3][4*i+1]="d"
        ans[4*i+3][4*i+2]="b"
        ans[4*i+3][4*i+3]="b"
    for i in range((N-4*r)//5):
        ans[5*i+4*r][5*i+4*r:5*i+4*r+5]=["a","a","b","b","c"]
        ans[5*i+4*r+1][5*i+4*r:5*i+4*r+5]=["b","d","d",".","c"]
        ans[5*i+4*r+2][5*i+4*r:5*i+4*r+5]=["b",".",".","e","b"]
        ans[5*i+4*r+3][5*i+4*r:5*i+4*r+5]=["c",".",".","e","b"]
        ans[5*i+4*r+4][5*i+4*r:5*i+4*r+5]=["c","b","b","a","a"]

for i in range(N):
    print("".join(ans[i]))


Fixed submission:
N=int(input())
ans=[["." for i in range(N)] for j in range(N)]
if N==2:
    print(-1)
    exit()
elif N%3==0:
    if N%3==0:
        for i in range(N//3):
            ans[3*i][3*i]="a"
            ans[3*i][3*i+1]="a"
            ans[3*i+1][3*i+2]="a"
            ans[3*i+2][3*i+2]="a"
elif N==11:
    i=0;r=0
    ans[5*i+4*r][5*i+4*r:5*i+4*r+5]=["a","a","b","b","c"]
    ans[5*i+4*r+1][5*i+4*r:5*i+4*r+5]=["b","d","d",".","c"]
    ans[5*i+4*r+2][5*i+4*r:5*i+4*r+5]=["b",".",".","e","b"]
    ans[5*i+4*r+3][5*i+4*r:5*i+4*r+5]=["c",".",".","e","b"]
    ans[5*i+4*r+4][5*i+4*r:5*i+4*r+5]=["c","b","b","a","a"]
    ans[5][5:]=["a","a",".","b","b","a"]
    ans[6][5:]=[".",".","a","c",".","a"]
    ans[7][5:]=[".",".","a","c","b","b"]
    ans[8][5:]=["a","b","b","a","a","."]
    ans[9][5:]=["a",".","a",".",".","a"]
    ans[10][5:]=["c","c","a",".",".","a"]
elif N==7:
    ans[0]=[".",".",".","a",".","d","e"]
    ans[1]=[".",".",".","a",".","d","e"]
    ans[2]=[".",".","b","b","c","a","a"]
    ans[3]=["b","b","e",".","c",".","."]
    ans[4]=[".",".","e","d","d","e","e"]
    ans[5]=["b","b","f",".","c",".","."]
    ans[6]=["a","a","f",".","c",".","."]
else:
    r=5-N%5
    if r==5:
        r=0
    for i in range(0,r):
        ans[4*i][4*i]="a"
        ans[4*i][4*i+1]="a"
        ans[4*i][4*i+2]="c"
        ans[4*i][4*i+3]="d"
        ans[4*i+1][4*i]="b"
        ans[4*i+1][4*i+1]="b"
        ans[4*i+1][4*i+2]="c"
        ans[4*i+1][4*i+3]="d"
        ans[4*i+2][4*i]="c"
        ans[4*i+2][4*i+1]="d"
        ans[4*i+2][4*i+2]="a"
        ans[4*i+2][4*i+3]="a"
        ans[4*i+3][4*i]="c"
        ans[4*i+3][4*i+1]="d"
        ans[4*i+3][4*i+2]="b"
        ans[4*i+3][4*i+3]="b"
    for i in range((N-4*r)//5):
        ans[5*i+4*r][5*i+4*r:5*i+4*r+5]=["a","a","b","b","c"]
        ans[5*i+4*r+1][5*i+4*r:5*i+4*r+5]=["b","d","d",".","c"]
        ans[5*i+4*r+2][5*i+4*r:5*i+4*r+5]=["b",".",".","e","b"]
        ans[5*i+4*r+3][5*i+4*r:5*i+4*r+5]=["c",".",".","e","b"]
        ans[5*i+4*r+4][5*i+4*r:5*i+4*r+5]=["c","b","b","a","a"]

for i in range(N):
    print("".join(ans[i]))