n,K=map(int,input().split()) s=[input() for i in range(2*n)] c=[list(map(int,input().split())) for i in range(2*n)] g=0 for i in range(2*n): for j in range(2*n): g+=s[i][j]=="#" p=[] for i in range(2*n): p+=c[i] p.sort() a=sum((p[::-1])[:g]) if g%2==0: p=[] for i in range(2*n): for j in range(n): p+=[c[i][j]+c[i][~j]] p.sort() a=max(a,sum((p[::-1])[:g//2])+k) print(a)