import java.util.Scanner;
import java.util.LinkedList;

public class Main {
	
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		LinkedList<String> processes = new LinkedList<>();
		int numProcesses = scanner.nextInt();
		int quantum = scanner.nextInt();
		int timestamp = 0;
		String result = "";
		//get all processes from scanner
		scanner.nextLine();
		for (int i = 0; i < numProcesses; i++) {
			processes.add(scanner.nextLine());
		}
		scanner.close();
		
		while (!processes.isEmpty()) {
			//parse process
			String[] process = processes.remove().split(" ");
			String name = process[0];
			int timeLeft = Integer.parseInt(process[1]);
			
			//decrement time left and add back to queue if necessary
			if (timeLeft-quantum > 0) {
				processes.add(name + " " + (timeLeft-quantum));
				timestamp += quantum;
			}
			else {
				timestamp += timeLeft;
				System.out.println(name + " " + (timestamp));
			}
		}
	}
}

/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz