#include<fstream.h>
#include<string.h>
int long n,i,j,vect[22][2],nr,d,k,nr_c,c[2],max;
char pl[22],cantaret[200][22],s[22][220];
int main()
{ifstream f("festival.in");
//f>>n;
//f.getline(s,100);
n=20;
strcpy(s[1],"syd barrett,roger waters,nick mason,richard,wright,a");
strcpy(s[2],"yd barrett,roger aters,nick ason,ichard wright,b");
strcpy(s[3],"sd barrett,rger waters,nck mason,rchard wight,c");
strcpy(s[4],"ian gllan,richie blamore,ian pace,jn lor,rogr glver");
strcpy(s[5],"ian giln,ritie blamore,ianaice,jnlor,ogerover");
strcpy(s[6],"robert fripp,john wetton,bill ford,dan,can");
strcpy(s[7],"robe fripp,johnetton,bi ford,an,an");
strcpy(s[7],"ab,bc,cs,ds,sa");
strcpy(s[8],"ac,ad,as,af,ag");
strcpy(s[9],"sd,sf,sg,sh,sj");
strcpy(s[10],"qw,qe,qr,qt,qi");
strcpy(s[11],"qy,qz,qx,qc,qu");
strcpy(s[12],"uy,uz,ux,uc,uu");
strcpy(s[13],"iy,iz,ix,ic,iu");
strcpy(s[14],"oy,oz,ox,oc,ou");
strcpy(s[15],"py,pz,px,pc,pu");
strcpy(s[16],"fy,fz,fx,fc,fu");
strcpy(s[17],"hy,hz,hx,hc,hu");
strcpy(s[18],"ly,lz,lx,lc,lu");
strcpy(s[19],"vy,vz,vx,vc,ouv");
strcpy(s[20],"by,bz,bx,bc,bu");
for(i=1;i<=n;i++)
{//f.getline(s,1000);
/**/
for(j=0;j<strlen(s[i]);j++)
{for(k=0;k+j<strlen(s[i])&&s[i][k+j]!=',';k++)
pl[k]=s[i][k+j];
j=k+j;
pl[k]=NULL;
for(k=1,d=0;k<=nr_c;k++)
if(!strcmp(pl,cantaret[k]))
{d=1;break;}
if(d==0)
{strcpy(cantaret[++nr_c],pl);
if(nr_c>50)
vect[i][1]+=(1<<nr_c);
else
vect[i][0]+=(1<<nr_c);
}
else
{if(k>50)
vect[i][1]+=(1<<k);
else
vect[i][0]+=(1<<k);
}
}
}
for(i=1;i<(1<<n);i++)
{c[0]=c[1]=0;
for(j=0,nr=0;j<n;j++)
if(i&(1<<j))
{
if(!(c[0]&vect[j+1][0]))
c[0]|=vect[j+1][0];
else break;
if(!(c[1]&vect[j+1][1]))
c[1]|=vect[j+1][1];
else break;
nr++;
}
if(nr>max&&j==n)
max=nr;
}
ofstream g("festival.out");
g<<max;
g.close();
return 0;
}