#include <bits/stdc++.h>
using namespace std;
int main() {
  int F[100];
  int P[100][11];
  int N;
  int bit, tmp, dw32;
  int ans, sum;
  cin >> N;
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < 10; j++) {
      cin >> tmp;
      F[i] |= (tmp << j);
    }
  }
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < 11; j++) {
      cin >> P[i][j];
    }
  }
  ans = 0;
  for (int i = 0; i < (1 << 10); i++) {
    sum = 0;
    for (int j = 0; j < N; j++) {
      dw32 = (i & F[j]);
      dw32 = ((dw32 & 0xAAAAAAAA) >> 1) + (dw32 & 0x55555555);
      dw32 = ((dw32 & 0xCCCCCCCC) >> 2) + (dw32 & 0x33333333);
      dw32 = ((dw32 & 0xF0F0F0F0) >> 4) + (dw32 & 0x0F0F0F0F);
      dw32 = ((dw32 & 0xFF00FF00) >> 8) + (dw32 & 0x00FF00FF);
      dw32 = ((dw32 & 0xFFFF0000) >> 16) + (dw32 & 0x0000FFFF);
      sum += P[j][dw32];
    }
    ans = max(ans, sum);
  }
  cout << ans << endl;
  return 0;
}
