A sequence a0, a1, ..., at - 1 is called increasing if ai - 1 < ai for each i: 0 < i < t.

You are given a sequence b0, b1, ..., bn - 1 and a positive integer d. In each move you may choose one element of the given sequence and add d to it. What is the least number of moves required to make the given sequence increasing?

Input

The first line of the input contains two integer numbers n and d (2 ≤ n ≤ 2000, 1 ≤ d ≤ 106). The second line contains space separated sequence b0, b1, ..., bn - 1 (1 ≤ bi ≤ 106).

Output

Output the minimal number of moves needed to make the sequence increasing.

Examples

Input

4 2
1 3 3 2


Output

3
import java.util.*;

public class IncreasingSequence {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);

        String[] parts = s.nextLine().split(" ");
        int n = Integer.parseInt(parts[0]);
        int d = Integer.parseInt(parts[1]);
        int[] b = new int[n];
        String[] arr = s.nextLine().split(" ");
        for (int i = 0; i < n; i++) {
            b[i] = Integer.parseInt(arr[i]);
        }

        System.out.println(new IncreasingSequence().minMovesToIncreasing(b, d));
    }

    private int minMovesToIncreasing(int[] b, int d) {
        int last = 0;
        int moves = 0;
        for (int e : b) {
            if (e <= last) {
                int increment = (int) Math.ceil(((double) last - e + 1) / d);
                moves += increment;
                last = e + increment * d;
            } else {
                last = e;
            }
        }
        return moves;
    }
}