#include<iostream>
#include<cstdio>
#include<map>
using namespace std;
char _[9][9];
char cmap[9][9];

void rect_search(int x,int y){
  map<char,int> used;
  for(int i=y;i<y+3;i++){
    for(int j=x;j<x+3;j++){
      used[cmap[i][j]]++;
    }
  }

  map<char,int>::iterator it = used.begin();
  while(it != used.end() ){
    if((*it).second > 1){
      for(int i=y;i<y+3;i++){
	for(int j=x;j<x+3;j++){
	  if(cmap[i][j] == (*it).first){
	    _[i][j] = '*';
	  } 
	}
      }    
    }
    it++;
  }
}

void corss_search(int x,int y){
  map<char,int> used;
  for(int i=0;i<9;i++){
    used[cmap[i][x]]++;
  }
  map<char,int>::iterator it = used.begin();
  while(it != used.end()){
    if((*it).second > 1){
      for(int i=0;i<9;i++){
	if(cmap[i][x] == (*it).first)_[i][x] = '*';
      }
    }
    it++;
  }
  used.clear();
  for(int i=0;i<9;i++){
    used[cmap[y][i]]++;
  }
  it = used.begin();
  while(it != used.end()){
    if((*it).second > 1){
      for(int i=0;i<9;i++){
	if(cmap[y][i] == (*it).first)_[y][i] = '*';
      }
    }
    it++;
  }

}


int main(){
  int n;

  scanf("%d",&n);
  while(n-- > 0){
    for(int i=0;i<9;i++){
      for(int j=0;j<9;j++){
	_[i][j] = ' ';
      }
    }
    for(int i=0;i<9;i++){
      cin >> cmap[i][0] >> cmap[i][1] >> cmap[i][2] >> cmap[i][3] >> cmap[i][4] >> cmap[i][5] >> cmap[i][6] >> cmap[i][7] >> cmap[i][8];
    }
   
    for(int i=0;i<9;i++){
      for(int j=0;j<9;j++){
	corss_search(j,i);
      }
    }

    for(int i=0;i<9;i+=3){
      for(int j=0;j<9;j+=3)rect_search(j,i);
    }


    for(int i=0;i<9;i++){
      for(int j=0;j<9;j++){
	printf("%c%c",_[i][j],cmap[i][j]);
      }
      printf("\n");
    }
    if(n-1 >= 0)printf("\n");


  }
  return 0;
}