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

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

P Q[LEN+1];
int head=0,tail=0,n;

void enqueue(P x){
	Q[tail]=x;
	if(tail+1==n){
		head=0;
	}else{
		head++;
	}
}

P dequeue(){
	P x;
	x=Q[head];
	if(head+1==n){
		head=0;
	}else{
		head++;
	}
	return x;
}

int main(){
	int elaps=0,c;
	int i,q;
	P u;

	int total=0;

	scanf("%d %d",&n,&q);

	for(i=1;i<=n;i++){
		scanf("%s",Q[i].name);
		scanf("%d",&Q[i].t);		
	}

	do{
		u=dequeue();
		if(u.t>q){
			total=total+q;
			u.t=u.t-q;
			enqueue(u);
		}else{
			total=total+u.t;
			printf("%s %d",u.name,total);
		}
	}while(tail!=head);

  	return 0;
}