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.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        final var scanner = new Scanner(System.in);
        final var n = scanner.nextLine();
        final var A = Arrays.stream(scanner.nextLine().split(" ")).map(Integer::parseInt).collect(Collectors.toList());
        final var A_set = new HashSet(A);

        final var counter = new HashMap<Integer, Integer>();
        for (var a : A) {
            counter.merge(a, 1, Integer::sum);
        }

        var count = 0;
        for (var a : A) {
            if (counter.get(a) > 1) {
                count += 1;
                continue;
            }

            var i = 1;
            while (i * i <= a) {
                if (a % i == 0) {
                    if (A_set.contains(i) && i != a) {
                        count += 1;
                        break;
                    }
                    if (i != (a / i)) {
                        if (A_set.contains(a / i) && (a / i) != a) {
                            count += 1;
                            break;
                        }
                    }
                }
                i += 1;
            }
        }
        System.out.println(A.size() - count);
    }
}
