from math import ceil N,K = map(int,input().split()) cnt = 0 M = max(-(-N//K),ceil(N**0.5)) A = [["."] * M for _ in range(M)] for i in range(M): for j in range(i,i+min(K,M)): if cnt < N: A[i][j % M] = "#" cnt += 1 print(len(A)) for a in A: print("".join(a))