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

// structure
typedef struct pp {
  char name[100];
  int t;
  int rest; //残り
} P;

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

// main is here
int main() {
  int elaps = 0, c;
  int tmp, total = 0;
  int i, q;
  int count = 0;
  P u;
  //   (構造体)P型の変数u

  scanf("%d %d", &n, &q);
  // プロセスの数とクォンタムの入力

  for (i = 1; i <= n; i++) {
    scanf("%s", Q[i].name);
    scanf("%d", &Q[i].rest);
  }
  // プロセスの名前と時間の入力
  // これにより構造体にデータが格納される

  while (count != n) {
    // here is switch part.
    tmp = Q[1].rest;
    for (i = 2; i <= n; i++) {
      // Q[i - 1].name = Q[i].name;
      strcpy(Q[i - 1].name, Q[i].name);
      Q[i - 1].rest = Q[i].rest;
    }
    Q[n].rest = tmp;

    if (Q[1].rest <= 100)
      total += Q[1].rest;
    else
      total += q;

    if (Q[1].rest == 0) {
      Q[1].t = total;
      count++;
    }
  }

  for (i = 1; i <= n; i++) {
    printf("%s ", Q[i].name);
    printf("%d\n", Q[i].t);
  }
  //   print in here

  return 0;
}
