
import java.util.*;

class Main{

	public static void main(String[] args){
		Scanner sc= new Scanner(System.in);
		int n= sc.nextInt(),  q= sc.nextInt();

		Deque<String> P = new ArrayDeque<String>();
		Deque<Integer> T = new ArrayDeque<Integer>();

		for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		}

		int total=0;
		while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		}
	}	
} import java.util.*; util.* java class Main{

	public static void main(String[] args){
		Scanner sc= new Scanner(System.in);
		int n= sc.nextInt(),  q= sc.nextInt();

		Deque<String> P = new ArrayDeque<String>();
		Deque<Integer> T = new ArrayDeque<Integer>();

		for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		}

		int total=0;
		while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		}
	}	
} Main public static void main(String[] args){
		Scanner sc= new Scanner(System.in);
		int n= sc.nextInt(),  q= sc.nextInt();

		Deque<String> P = new ArrayDeque<String>();
		Deque<Integer> T = new ArrayDeque<Integer>();

		for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		}

		int total=0;
		while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		}
	} main {
		Scanner sc= new Scanner(System.in);
		int n= sc.nextInt(),  q= sc.nextInt();

		Deque<String> P = new ArrayDeque<String>();
		Deque<Integer> T = new ArrayDeque<Integer>();

		for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		}

		int total=0;
		while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		}
	} Scanner sc= new Scanner(System.in); sc new Scanner(System.in) int n= sc.nextInt() n sc.nextInt() sc.nextInt sc q= sc.nextInt(); q sc.nextInt() sc.nextInt sc Deque<String> P = new ArrayDeque<String>(); P new ArrayDeque<String>() Deque<Integer> T = new ArrayDeque<Integer>(); T new ArrayDeque<Integer>() for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		} {
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		} P.add( sc.next() ) P.add P sc.next() sc.next sc T.add( sc.nextInt() ) T.add T sc.nextInt() sc.nextInt sc int total=0; total 0 while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		} !P.isEmpty() P.isEmpty() P.isEmpty P {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		} String p= P.pop(); p P.pop() P.pop P int t= T.pop(); t T.pop() T.pop T if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } q<t q t { T.add(t-q); P.add(p); total+= q; } T.add(t-q) T.add T t-q t q P.add(p) P.add P p total+= q total q { total+= t;  System.out.println(p +" "+ total); } total+= t total t System.out.println(p +" "+ total) System.out.println System.out System System.out p +" "+ total p +" "+ total p " " total String[] args args

import java.util.*;

class Main{

	public static void main(String[] args){
		Scanner sc= new Scanner(System.in);
		int n= sc.nextInt(),  q= sc.nextInt();

		Deque<String> P = new ArrayDeque<String>();
		Deque<Integer> T = new ArrayDeque<Integer>();

		for(int i=0; i<n; i++){
			P.add( sc.next() );  
			T.add( sc.nextInt() );
		}

		int total=0;
		while ( !P.isEmpty() ) {
			String p= P.pop();
			int t= T.pop();

			if(q<t) { T.add(t-q); P.add(p); total+= q; }
			else { total+= t;  System.out.println(p +" "+ total); } 
		}
	}	
}