import java.util.Scanner;
public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	}
}
 import java.util.Scanner; Scanner java.util public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	}
} Main public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	} main {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	} int i i n n q q tail tail head head hz hz notime=0; notime 0 String hzn; hzn Scanner sc = new Scanner(System.in); sc new Scanner(System.in) n=sc.nextInt() n sc.nextInt() sc.nextInt sc q=sc.nextInt() q sc.nextInt() sc.nextInt sc tail=n tail n head=0 head 0 String name[]=new String[n+1]; name new String[n+1] n+1 n 1 int time[]=new int[n+1]; time new int[n+1] n+1 n 1 for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    } i=0; i=0 i 0 i<n i n i++ i++ i {
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    } {
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    } name[i]=sc.next() name[i] name i sc.next() sc.next sc time[i]=sc.nextInt() time[i] time i sc.nextInt() sc.nextInt sc while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	} true {
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	} if(tail==head)break; tail==head tail head break; if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	} q<=time[head] q time[head] time head {
    	hz=time[head]-q;
    	notime+=q;
    	} hz=time[head]-q hz time[head]-q time[head] time head q notime+=q notime q {
        hz=0;
        notime+=time[head];
    	} hz=0 hz 0 notime+=time[head] notime time[head] time head hzn=name[head] hzn name[head] name head if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	} head+1==n+1 head+1 head 1 n+1 n 1 {
    		head=0;
    	} head=0 head 0 {
    		head++;
    	} head++ head if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	} hz==0 hz 0 {
    		System.out.println(hzn+" "+notime);
    		continue;
    	} System.out.println(hzn+" "+notime) System.out.println System.out System System.out hzn+" "+notime hzn+" "+notime hzn " " notime continue; time[tail]=hz time[tail] time tail hz name[tail]=hzn name[tail] name tail hzn if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	} tail+1 ==n+1 tail+1 tail 1 n+1 n 1 {
    		tail=0;
    	} tail=0 tail 0 {
    		tail++;
    	} tail++ tail String[] args args public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	}
} public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	}
} Main
import java.util.Scanner;
public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i,n,q,tail,head,hz,notime=0;
		String hzn;
	Scanner sc = new Scanner(System.in);
	n=sc.nextInt();
	q=sc.nextInt();
	tail=n;
	//System.out.println(tail);
	head=0;
    String name[]=new String[n+1];
    int time[]=new int[n+1];
    for(i=0;i<n;i++){
    	name[i]=sc.next();
    	time[i]=sc.nextInt();
    }
    while(true){
    	if(tail==head)break;
    	
    	if(q<=time[head]){
    	hz=time[head]-q;
    	notime+=q;
    	}else{
        hz=0;
        notime+=time[head];
    	}
    	hzn=name[head];
    	if(head+1==n+1){
    		head=0;
    	}else{
    		head++;
    	}
    	if(hz==0){
    		System.out.println(hzn+" "+notime);
    		continue;
    	}
    	time[tail]=hz;
    	name[tail]=hzn;
    	if(tail+1 ==n+1){
    		tail=0;
    	}else{
    		tail++;
    	}
    	}
    
	}
}

