# 1034번. 램프
n,m=map(int,input().split())box=[input()foriinrange(n)]k=int(input())# https://blog.encrypted.gg/290
'''
초기상태가 다른 행 i,j는 절대 동시에 켜져있는 행이 될 수 없다.
k번 눌러 켜져있게 만들 수 있는 행들에 대해서 초기 상태가
가장 많이 동일한 것들의 개수를 반환
''''''
그 행에 있는 0의 개수가 k를 2로 나눈 나머지와 동일한가
그 행에 있는 0의 개수가 k이하인가
'''cnt=[0foriinrange(n)]ifk%2!=0:foriinrange(n):zero=box[i].count('0')ifzero%2andzero<=k:forjinrange(n):ifbox[i]==box[j]:cnt[i]+=1else:foriinrange(n):zero=box[i].count('0')ifnotzero%2andzero<=k:forjinrange(n):ifbox[i]==box[j]:cnt[i]+=1print(max(cnt))