#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void QueSort(char (*A)[11],int *,int,int);
int main(){
  int  n,q;
  char A[50000][11];
  int  B[50000];
  int  i;
  scanf("%d%d",&n,&q);
  for(i=0;i<n;i++){
    scanf("%s%d",&A[i],&B[i]);
  }
  QueSort(A,B,n,q);
  return 0;
}
void QueSort(char (*A)[11],int *B,int n,int q){
  char C[n][11],c[11];
  int  D[n],d;
  int  s=0,i;
  
  while(n!=0){
    strcpy(c,A[0]);
    d=B[0];
    for(i=0;i<n-1;i++){
      strcpy(A[i],A[i+1]);
      B[i]=B[i+1];
    }
    
    if(d <= q){
      s+=d;
      n--;
      printf("%s %d\n",c,s);
    }
    if(d > q){
      s+=q;
      strcpy(A[n-1],c);
      B[n-1]=d-q;
    }
  }
}

