3
rjnflsbpxqivrcdjptj
vpojopbwbwbswdu
rydkiwnugwddcgcrng
 1
z
 30
b
u
p
n
f
m
t
i
j
k
p
h
a
c
w
z
z
p
t
d
o
w
u
q
l
y
i
o
a
u
 5
splt
ohqykk
xqpz
knojbur
pmfm
 2
hk
obsp
 5
zzxpfk
abcdefghijklmnopqrst
uvwxz
srgkjaskldfkln
vgnsdfdgfh
 2
rxscdzkkezud
wjehahqgouqvjienq
 5
ojdfhi
abcdefghijklmnopqrst
uvwxyz
ddfhdfhlasjt
qqq
 1
epkotfpkkrhhmuipmtdk
 10
kpmwcdoysw
gtpr
kuzoxmiixxbl
crgqtuo
jhbplhpklrgwnaugdf
zuxdaat
aycv
qwghrkqwkobrgevsjrk
tdxgc
lxyzgcmbzulcst
 5
dfijdfhi
abcdefghijklmnopqrst
uvwxy
kopsdfgiopjipw
jty
 2
xlaxwpjabtpwddc
txwdjmohrrszorrnomc
 1
a
 30
waiphwcqrrinr
o
qiqehzmgsjdoqd
kjexeesevrlowxhghq
judikhzkj
z
xo
lsdzypkfqro
sshgcxsky
gecntpcmoojfwp
svmytmcfhc
jrsrvsvbaiumlmkptn
s
wpcsovfjlyspviflk
ktvyzvddgllht
szahigtmklglrcocbo
znligfxkgxzkcfeu
liryvzmqwhr
xgrxkgiehxztv
etrjxdczppafly
jrdgajschhwsci
doxnxbjwptnimjmsuijx
zciwkbvrhgsjhrr
ehh
bzlnmd
xpbtbpftimnn
khbknqbvdkdd
mldj
skrvnyz
avptgpjmenfzfxwckmt
 30
e
x
itaubd
xcn
v
x
i
ci
aqs
zbi
q
cvdu
a
jos
qy
fjf
nayke
ge
s
q
qwad
gvz
o
ubn
nzoc
h
wnjwjrf
t
bq
bw
 1
b

a
 a
 e
 a
 a
 y
 b
 aa
 a
 ab
 z
 e
 b
 aa
 l
 a

#include <bits/stdc++.h>
using namespace std;
const int maxn = 30 + 5;
const int maxl = 20 + 5;
template <class T>
inline T Sqr(const T& x) {
  return x * x;
}
template <class T>
inline T Abs(const T& x) {
  return x > 0 ? x : -x;
}
template <class T>
inline T Min(const T& a, const T& b) {
  return a < b ? a : b;
}
template <class T>
inline T Max(const T& a, const T& b) {
  return a > b ? a : b;
}
template <class T>
inline void Swap(T& a, T& b) {
  T _;
  _ = a;
  a = b;
  b = _;
}
template <class T>
inline T Ksm(const T& a, const T& b, const T& m) {
  T _ = 1;
  for (; b; b >>= 1, a = a * a % m) (b & 1) ? _ = _ * a % m : 0;
  return _ % m;
}
char ss[maxl];
int n, a[maxn][maxl];
int tot[maxl], p, ck;
int getint() {
  char ch = getchar();
  int result = 0, res = 1;
  for (; '0' > ch || ch > '9'; ch = getchar()) ch == '-' ? res = -1 : 0;
  for (; '0' <= ch && ch <= '9';
       result = result * 10 + ch - '0', ch = getchar())
    ;
  return result * res;
}
void check(int stp) {
  bool b;
  for (int i = 1; i <= a[stp][0] - p + 1; ++i) {
    b = 1;
    for (int j = 0; j < p; ++j)
      if (a[stp][i + p - 1 - j] != tot[j + 1]) b = 0;
    if (b == 1) return ck = 0, (void)0;
  }
}
void print() {
  for (; p;) printf("%c", char(tot[p--] + 96));
}
int main() {
  n = getint();
  scanf("\n");
  for (int i = 1; i <= n; ++i) {
    scanf("%s\n", ss);
    a[i][0] = strlen(ss);
    for (int j = 1; j <= a[i][0]; ++j) a[i][j] = ss[j - 1] - 'a' + 1;
  }
  tot[1] = 1;
  p = 1;
  for (;;) {
    ck = 1;
    for (int ii = 1; (ck) && (ii <= n); ++ii) check(ii);
    if (ck == 1) return print(), 0;
    ++tot[1];
    for (int i = 1; i <= p + 1; ++i)
      if (tot[i] > 26) tot[i] = 1, ++tot[i + 1];
    if (tot[p + 1] != 0) ++p;
  }
  return 0;
}
