Given is a number sequence A of length N.

Find the number of integers i \left(1 \leq i \leq N\right) with the following property:

* For every integer j \left(1 \leq j \leq N\right) such that i \neq j , A_j does not divide A_i.

Constraints

* All values in input are integers.
* 1 \leq N \leq 2 \times 10^5
* 1 \leq A_i \leq 10^6

Input

Input is given from Standard Input in the following format:


N
A_1 A_2 \cdots A_N


Output

Print the answer.

Examples

Input

5
24 11 8 3 16


Output

3


Input

4
5 5 5 5


Output

0


Input

10
33 18 45 28 8 19 89 86 2 4


Output

5
import java.io.*;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Main{

	public static final int SIZE = 1000001;

	public static void main(String [] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

		int n = Integer.parseInt(br.readLine());
		StringTokenizer st = new StringTokenizer(br.readLine());
		int [] a = new int[n];

		for(int i=0;i<n;i++){
			a[i] = Integer.parseInt(st.nextToken());
		}

		Arrays.sort(a);
			
		ArrayList<Pair> ans = new ArrayList<Pair>();
		boolean [] isPrime = new boolean[SIZE];
		for(int i=0;i<n;i++){
			boolean check = true;
			int sqrtn = (int)Math.sqrt(a[i]);		
			for(int j=1;j<=sqrtn && check;j++){
				if(a[i] % j == 0){
					if(isPrime[j]) check = false;
					if(isPrime[a[i] / j]){
						check = false;
						if(!ans.isEmpty() && ans.get(ans.size() - 1).getLeft() == a[i]){
							ans.get(ans.size() - 1).setRight(false); 
						}
					}
				}
			}
			if(check){
				ans.add(new Pair(a[i], true));
			}
			isPrime[a[i]] = true;
		}

		int val = 0;
		for(int i=0;i<ans.size();i++){
			if(ans.get(i).getRight()) val++;
		}
		bw.write(val+"");
		bw.flush();
		bw.close();
		br.close();
	}
}

class Pair{
	int left;
	boolean right;

	public Pair(int left, boolean right){
		this.left = left;
		this.right = right;
	}

	public void setRight(boolean right){
		this.right = right;
	}

	public int getLeft(){
		return this.left;
	}
	
	public boolean getRight(){
		return this.right;
	}
}