#include<stdio.h>
#include<string.h>
#define LEN 100005

typedef struct pp{
char name[100];
int t;
} P;

P Q[LEN];
int head,tail,n;

void enqueue(P x){
Q[tail]=x;
tail=(tail+1)%LEN;
}

P dequeue(){
P x=Q[head];
head=(head+1)%LEN;
return x;
}

int min(int s,int t){return s<t?s:t;}

int main(){
int elaps=0,a,b,i;
P c;
scanf("%d %d",&n,&b);
for(i=1;i<=n;i++){
scanf("%s",Q[i].name);
scanf("%d",&Q[i].t);
}
head = 1; tail=n+1;
while(head != tail){
c=dequeue();
a=min(b,c.t);
c.t-=a;
elaps+=a;
if(c.t>0)enqueue(c);
else{
printf("%s %d\n",c.name,elaps);
}
}
return 0;
}
