#include <bits/stdc++.h>
using namespace std;

int main(){
    int N,M;
    int count = 0;
    int score = 0;
    cin >> N;
    vector<string> s(N);
    for(int i=0;i<N;i++){
        cin >> s.at(i);
    }
    cin >> M;
    vector<string> t(M);
    for(int i=0;i<M;i++){
        cin >> t.at(i);
    }
    for(int i=0;i<N;i++){
        count = 0;
        for(int j=0;j<N;j++){
            if(s.at(i) == s.at(j)) count++;
        }
        for(int j=0;j<M;j++){
            if(s.at(i) == t.at(j)) count--;
        }
        score = max(score,count);
    }
    cout << score << endl;


}
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
  int N;
  long x;
  cin >> N >> x;
  
  vector<long> a(N);
  for (int i=0; i<N; i++) {
    cin >> a.at(i);
  }
  
  sort(a.begin(), a.end());
  
  int cnt=0;
  for (int i=0; i<N; i++) {
    cnt++;
    x -= a.at(i);
    if (x<=0) {
      break;
    }
  }
  if (x!=0) cnt--;
  
  cout << cnt << endl;
  return 0;
}