#include <bits/stdc++.h>
using namespace std;
const int maxn = 1006;
string str[maxn], use[maxn];
int ans[256 + 3][256 + 4];
int kind[27];
int check(const string &s) {
  memset(kind, 0, sizeof(kind));
  for (int i = 0; i < s.size(); i++) {
    kind[s[i] - 'a']++;
  }
  int ret = 0;
  for (int i = 0; i < 26; i++)
    if (kind[i]) ret++;
  return ret;
}
bool ok(const string &s, char ch1, char ch2) {
  for (int i = 0; i < s.size(); i++) {
    if (s[i] != ch1 && s[i] != ch2) return false;
  }
  return true;
}
int main() {
  int n, i, j;
  cin >> n;
  for (i = 0; i < n; i++) cin >> str[i];
  int cnt = 0;
  for (i = 0; i < n; i++) {
    if (check(str[i]) <= 2) use[cnt++] = str[i];
  }
  for (char ch1 = 'a'; ch1 <= 'z'; ch1++) {
    for (char ch2 = 'a'; ch2 <= 'z'; ch2++) {
      for (int i = 0; i < cnt; i++) {
        if (ok(use[i], ch1, ch2)) {
          ans[ch1 - 'a'][ch2 - 'a'] += use[i].size();
        }
      }
    }
  }
  int ret = 0;
  for (i = 0; i < 26; i++) {
    for (j = 0; j < 26; j++) {
      ret = max(ret, ans[i][j]);
    }
  }
  cout << ret << endl;
  return 0;
}
