#D5356. Queue

    ID: 4454 Type: Default 1000ms 134MiB

Queue

Queue

Notes

Template in C

Constraints

  • 1 ≤ n ≤ 100000
  • 1 ≤ q ≤ 1000
  • 1 ≤ timei ≤ 50000
  • 1 ≤ length of namei ≤ 10
  • 1 ≤ Sum of timei ≤ 1000000

Input

n q name1 time1 name2 time2 ... namen timen

In the first line the number of processes n and the quantum q are given separated by a single space.

In the following n lines, names and times for the n processes are given. namei and timei are separated by a single space.

Output

For each process, prints its name and the time the process finished in order.

Example

Input

5 100 p1 150 p2 80 p3 200 p4 350 p5 20

Output

p2 180 p5 400 p1 450 p3 550 p4 800

inputFormat

Input

n q name1 time1 name2 time2 ... namen timen

In the first line the number of processes n and the quantum q are given separated by a single space.

In the following n lines, names and times for the n processes are given. namei and timei are separated by a single space.

outputFormat

Output

For each process, prints its name and the time the process finished in order.

Example

Input

5 100 p1 150 p2 80 p3 200 p4 350 p5 20

Output

p2 180 p5 400 p1 450 p3 550 p4 800

样例

5 100
p1 150
p2 80
p3 200
p4 350
p5 20
p2 180

p5 400 p1 450 p3 550 p4 800

</p>