from __future__ import annotations import sys sys.setrecursionlimit(2*10**7) #↓codon=============================== import string Alp_low=list(string.ascii_lowercase) Alp_up=list(string.ascii_uppercase) Digit="0123456789" dij=[[0,1],[1,0],[0,-1],[-1,0]] def nin(): return list(map(int,input().split())) def deq(x): return [i-1 for i in x] mod=998244353 _factorial=[1] def factorial(n): while len(_factorial)<=n: _factorial.append((_factorial[-1]*len(_factorial))%mod) return _factorial[n] _inv_factorial=[1] def inv_factorial(n): while len(_inv_factorial)<=n: _inv_factorial.append((_inv_factorial[-1]*pow(len(_inv_factorial),mod-2,mod))%mod) return _inv_factorial[n] def binom(n,r): if r>=mod: raise ValueError("r is too big") if n<0: return 0 if r>n: return 0 if r<0: return 0 ans=((factorial(n)*inv_factorial(r))%mod*inv_factorial(n-r))%mod return ans def main(): n,k=nin() sr,sc=deq(nin()) tr,tc=deq(nin()) if abs(sr-tr)*2+abs(sc-tc)*2k: print(-1) return ans=[["." for _ in range(n)] for _ in range(n)] x=k-(abs(sr-tr)+abs(sc-tc)) if x%2==1: print(-1) return for i in range(n): for j in range(n): if min(sr,tr)<=i<=max(sr,tr) and min(sc,tc)<=j<=max(sc,tc) and abs(sr-i)+abs(sc-j)>x: ans[i][j]="." else: ans[i][j]=".#"[(abs(sr-i)+abs(sc-j)-x)%2] for i in ans: print("".join(i)) if __name__=="__main__": main()