#include <stdio.h>
#include <string.h>
int main(){
  int n,i,j,count,wh;
  char data[1024],c1[5]={' ','.',',','!','?'};
  char c2[3]={'c','a','b'};
  char c3[3]={'f','d','e'};
  char c4[3]={'i','g','h'};
  char c5[3]={'l','j','k'};
  char c6[3]={'o','m','n'};
  char c7[4]={'s','p','q','r'};
  char c8[3]={'v','t','u'};
  char c9[4]={'z','w','x','y'};
  
  scanf("%d",&n);
  for(i=0;i<n;i++){
    count=0;
    scanf("%s",data);
    
    
    for(j=0;j<strlen(data);j++){
      wh=0;
      count=0;
      while(1){
	if(data[j]=='1'){
	  count++;
	  wh=1;
	}
	if(data[j]=='2'){
	  count++;
	  wh=2;
	}
	if(data[j]=='3'){
	  count++;
	  wh=3;
	}
	if(data[j]=='4'){
	  count++;
	  wh=4;
	}
	if(data[j]=='5'){
	  count++;
	  wh=5;
	}
	if(data[j]=='6'){
	  count++;
	  wh=6;
	}
	if(data[j]=='7'){
	  count++;
	  wh=7;
	}
	if(data[j]=='8'){
	  count++;
	  wh=8;
	}
	if(data[j]=='9'){
	  count++;
	  wh=9;
	}
	if(data[j]=='0'){
	  if(wh==0){

	  }
	  if(wh==1){
	    printf("%c",c1[count%5]);
	  }
	  if(wh==2){
	    printf("%c",c2[count%3]);
	  }
	  if(wh==3){
	    printf("%c",c3[count%3]);
	  }
	  if(wh==4){
	    printf("%c",c4[count%3]);
	  }
	  if(wh==5){
	    printf("%c",c5[count%3]);
	  }
	  if(wh==6){
	    printf("%c",c6[count%3]);
	  }
	  if(wh==7){
	    printf("%c",c7[count%4]);
	  }
	  if(wh==8){
	    printf("%c",c8[count%3]);
	  }
	  if(wh==9){
	    printf("%c",c9[count%4]);
	  }
	  break;
	}
	j++;
      }
    }

    printf("\n");
  }
  return 0;
}