A group of numbers is called good if
The group may contain duplicate values — for example, the size of the group (2, 7, 3, 7) is 4, and the difference between the minimum and maximum number is 7 - 2 = 5.
Given an array of integers a. Split its elements into the minimum number of good groups.
The first line contains integers n, M, k (1 ≤ n, k ≤ 105, 0 ≤ M ≤ 109) — the number of elements in the array, the maximum difference between the numbers in the set, and the maximum size of the set, respectively.
The second line contains n integers a1, a2, ..., an (1 ≤ ai ≤ 109) — the elements of the array.
In a single line, output the minimum possible number of good groups into which the given array can be split.
4 3 3
5 8 13 21
3
10 5 3
1 6 4 15 4 10 8 2 12 5
4
The second test example
The array can be split, for example, into the following groups:
| Name |
|---|


