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
// problem: https://codeforces.com/problemset/problem/11/A

import java.util.Scanner;

public class IncrSeq{
    public static void main(String[] args){
        Scanner sObj = new Scanner(System.in);
        int nos = sObj.nextInt();
        int[] arr = new int[nos];
        int d = sObj.nextInt();
        for(int i=0; i<nos; i++){
            arr[i] = sObj.nextInt();
        }
        int total = 0;
        for(int z=0; z<nos-1; z++){
            if(arr[z+1] <= arr[z]){
                total += (arr[z] - arr[z+1])/d + 1;
                //System.out.println((((arr[z] - arr[z+1])/d + 1)) + " for " + arr[z] + " and " + arr[z+1]);
                arr[z+1] += ((arr[z] - arr[z+1])/d + 1) * d;
            }
        }
        System.out.println(total);
    }
}