// Arup Guha
// 2/2/2019
// Solution to 2019 USACO January Bronze Problem: Guess the Animal

import java.io.*;
import java.util.*;

public class guess {
	
	public static void main(String[] args) throws Exception {
		
		// Set up animals.
		Scanner stdin = new Scanner(new File("guess.in"));
		int n = stdin.nextInt();
		animal[] list = new animal[n];
		
		// Read in each animal and set of qualities.
		for (int i=0; i<n; i++) {
			String name = stdin.next();
			list[i] = new animal(name);
			int numQ = stdin.nextInt();
			for (int j=0; j<numQ; j++) 
				list[i].addQuality(stdin.next());
		}
		
		// Find largest common list.
		int common = 0;
		for (int i=0; i<n; i++)
			for (int j=i+1; j<n; j++)
				common = Math.max(common, list[i].intersect(list[j]));
		
		// Ta da!
		PrintWriter out = new PrintWriter(new FileWriter("guess.out"));
		out.println(common+1);
		out.close();
		stdin.close();
	}

}

class animal {
	
	public String type;
	public HashSet<String> qualities;
	
	public animal(String name) {
		type = name;
		qualities = new HashSet<String>();
	}
	
	public void addQuality(String q) {
		qualities.add(q);
	}
	
	// Returns the number of qualities shared between this and other.
	public int intersect(animal other) {
		int res = 0;
		for (String s: other.qualities)
			if (qualities.contains(s))
				res++;
		return res;
	}
}

