//2020 4.17 Queue 
#include <stdio.h>
#define MAX 1000000

typedef struct {
  char p[10];
  int t;
}A;

int main()
{
  A B[MAX],C[MAX];
  int i,j=0;
  int a,b;
  int temp,cnt,sum=0;
  
  scanf("%d%d",&a,&b);
  for(i=0;i<a;i++)
  {
    scanf("%s%d",B[i].p,&B[i].t);
  }
 
  i=0;
  cnt=a;
  while(cnt!=0)
  {
    temp=B[i].t-b;
    if(temp>0) {B[i].t=temp; B[i+cnt]=B[i]; sum+=b; i++;}
    else if(temp<=0) {B[i].t=B[i].t+sum; C[j]=B[i]; sum=B[i].t; i++; j++; cnt--; }
  }
  
  for(i=0;i<a;i++)
  {
    printf("%s %d\n",C[i].p,C[i].t);
  }
  
  return 0;
}
