#include<stdio.h>
#include<stdlib.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){
    tail=0;
  }else{
    tail++;
  }



}

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

}


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

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

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

    //tail++;
  }

  //printf("ok5\n");


  while(c!=n){
  //  printf("ok4\n");
    if(Q[head].t==0){
      //printf("ok1\n");
      enqueue(Q[head]);
      u = dequeue();


    }
    else if(Q[head].t<=q){
    //  printf("ok2\n");

      elaps+=Q[head].t;
      Q[head].t=0;
      u = dequeue();



      printf("%s %d\n", u.name, elaps);
        c++;

    }
    else{
  //    printf("ok3\n");

      elaps+=q;
      Q[head].t-=q;

      enqueue(Q[head]);

      u = dequeue();


    //  printf("%s %d\n", u.name, u.t);


    }

  }



  return 0;
}

