import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	}

} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.HashSet; HashSet java.util import java.util.Set; Set java.util public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	}

} Main public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	} main {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	} BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) int N = Integer.parseInt(br.readLine()); N Integer.parseInt(br.readLine()) Integer.parseInt Integer br.readLine() br.readLine br Set<String> s = new HashSet<>(); s new HashSet<>() for(int i=0; i<N; i++) {
			s.add(br.readLine());
		} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			s.add(br.readLine());
		} {
			s.add(br.readLine());
		} s.add(br.readLine()) s.add s br.readLine() br.readLine br System.out.println(s.size()) System.out.println System.out System System.out s.size() s.size s String[] args args public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	}

} public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	}

} Main
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		Set<String> s = new HashSet<>();
		
		for(int i=0; i<N; i++) {
			s.add(br.readLine());
		}
		
		System.out.println(s.size());
	}

}