#include<stdio.h>
#include<queue>
using namespace std;
typedef struct hh{
    char name[15];
    int t;
}p;
p q[100005];
int h,t,n;
void en(p x){
    q[t]=x;
    t=(t+1)%100005;
}
p de(){
    p x=q[h];
    h=(h+1)%100005;
    return x;
}
int min(int a,int b){
    return a<b?a:b;
}
int main(){
    int elaps=0,c;
    int i,Q;
    p u;
    scanf("%d%d",&n,&Q);
    for(i=1;i<=n;i++){
        scanf("%s",q[i].name);
        scanf("%d",&q[i].t);
    }
    h=1;
    t=n+1;
    while(h!=t){
        u=de();
        c=min(Q,u.t);
        u.t-=c;
        elaps+=c;
        if(u.t>0)
            en(u);
        else{
            printf("%s %d\n",u.name,elaps);
        }
    }
    return 0;
}