Hawkeye is getting ready to battle Thanos' army . He knows it is going to be the hardest battle of his life so he wants to leave nothing unprepared . As you all know , his primary weapon is 'Bow and Arrow' . He needs to estimate the number of refill of arrows that he will need to perform during battle.
Hawkeye knows that this battle can last for N hours . It takes him K hours to empty the quiver ,after which he perform the refill . Refilling the quiver doesn't take any time and in one refill he fills his quiver completely. Apart from this, Hawkeye will definitely refill the arrows at every checkpoints. There are M such checkpoints c1 < c2 < .... < cM. Assume that his quiver is filled completely at the start of the battle i.e. at 0th hour his quiver is filled. Your task is to find how many total refills will he need during the battle.
Input :
First line of the input contain number of test cases t .
For each test case ,
line 1 will contain two space separated integers N and K.
line 2 will contain M as first integer and then M space separated integers denoting the checkpoints (sorted) .
Output :
Print a single integer denoting answer to the problem.
Constraints :
1<=t<=100
1<=N<=10^6
1<=K<=10^6
0<=M<=N
1<=c[i]<=N
In 1st test case he will refill at 2 , 3 and 5 . First refill will be at 2 because k=2. At 3 he will have to refill again because it is a checkpoint. After 3 he will refill at 5 because it takes him k=2 hours to empty the quiver.
In 2nd test case he will refill at 2, 4, 6, 7, 8 and 10 .
In 3rd test case he will refill at 3 and 5.