B. Bureaucracy
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

There is a queue of $$$N$$$ people numbered from $$$1$$$ to $$$N$$$ waiting to submit their requests at a government office. Initially the queue is formed in ascending order of their number. Each person has a request that requires $$$R_i$$$ units of time for the office to process. The government office can process a maximum of $$$M$$$ units of time per person in one turn. If a person's request requires more time than $$$M$$$, they must go to the back of the queue and wait for their turn again. A person leaves the queue once their entire request has been processed.

Your task is to determine the order in which the people leave the queue after their requests are fully processed.

Input

The first line on the input gives you two space separated integers: $$$N$$$, $$$M$$$.

The next line contains $$$N$$$ space separated integers $$$R_i$$$.

Output

One line, a space separated list of integers that denote the order in which the people leave the queue.

Example
Input
5 6
9 10 4 7 2
Output
3 5 1 2 4 
Note

Limits

* $$$1 \leq N \leq 10^6 $$$

* $$$1 \leq R_i \leq 10^9$$$

* $$$1 \leq M \leq 10^9$$$