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.util.*;
import java.io.*;
import java.math.BigDecimal;
import java.nio.file.Files;
import java.nio.charset.StandardCharsets;
//给出两个数a,b 求出[a,b]中各位数字之和能整除原数的数的个数。
public class Main {

    int mod ;
    //
    void solve(int v, int[] arr) {
        Arrays.sort(arr);
        int max = 0;
        int n = arr.length;
        max = arr[n-1];
        Set<Integer> set = new HashSet<>();

        boolean[] dup = new boolean[max+1];
        int[] cnt = new int[max+1];
        for(int i=0;i<n;i++){
            cnt[arr[i]]++;
        }
        for(int i=0;i<n;i++){
            if(!dup[arr[i]]){
                for(int j=2;j*arr[i]<=max;j++){
                    dup[j*arr[i]] = true;
                }
            }
        }
        int res = 0;
        for(int i=0;i<n;i++){
            if(!dup[arr[i]]&&cnt[arr[i]]==1){
                res++;
            }
        }

        System.out.println(res);
    }


    public static void main(String[] args)  throws IOException {
        // Use the Scanner class

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String[]  s = br.readLine().split(" ");
        Main test = new Main();

        int n = Integer.parseInt(s[0]);

        int[] arr = new int[n];
        s = br.readLine().split(" ");
        for(int i=0;i<n;i++) {
           arr[i] = Integer.parseInt(s[i]);

        }

        test.solve(n, arr);
        //int tot = Integer.parseInt(br.readLine());


//        int i =1;
//        System.out.println();
//        while(tot>0){
//
//            String s = br.readLine();
//            String[] sr = s.split(" ");
//            List<Long> ls = new ArrayList<>();
//            for(String ss:sr){
//                ls.add(Long.parseLong(ss));
//            }
//            Main tt = new Main();
//            tt.sol(ls);
//            // String Buffer to store answer
//            StringBuffer sb = new StringBuffer();
////            Solution obj = new Solution();
////
////            System.out.println("Case #"+i+": "+obj.sol());
//            tot--;
//            i++;
//        }
    }

}
