#include<cstdio>

using namespace std;

int pazzle[16][16];
bool check[16][16];

int main(void){
	int n;
	while(scanf("%d", &n) != EOF){
		while(n-- > 0){
			
			//ツ渉可甘コツ可サ
			for(int i = 0; i < 9; i++){
				for(int j = 0; j < 9; j++){
					check[i][j] = false;
				}
			}
			
			//ツパツズツδ仰づ個禿偲ヲ
			for(int i = 0; i < 9; i++){
				for(int j = 0; j < 9; j++){
					scanf("%d", &pazzle[i][j]);
				}
			}
			
			//ツ可。ツ板サツ津ィ
			for(int i = 0; i < 9; i++){
				for(int j= 0; j < 9; j++){
					for(int k = j+1; k < 9; k++){
						if(pazzle[i][j] == pazzle[i][k]){
							check[i][j] = true;
							check[i][k] = true;
						}
					}
				}
			}
			
			//ツ縦ツ板サツ津ィ
			for(int i = 0; i < 9; i++){
				for(int j= 0; j < 9; j++){
					for(int k = j+1; k < 9; k++){
						if(pazzle[j][i] == pazzle[k][i]){
							check[j][i] = true;
							check[k][i] = true;
						}
					}
				}
			}
			
			//3*3ツ板サツ津ィ
			for(int i = 0; i < 9; i++){
				for(int j = 0; j < 9; j++){
					for(int k = j+1; k < 9; k++){
						int ax=3*(i/3)+j/3,ay=3*(i%3)+j%3;
						int bx=3*(i/3)+k/3,by=3*(i%3)+k%3;
//						printf("[%d][%d] | [%d][%d]\n",ax,ay,bx,by);
						if(pazzle[ax][ay] == pazzle[bx][by]){
							check[ax][ay] = true;
							check[bx][by] = true;
						}
					}
				}
			}
							
			
			for(int i = 0; i < 9; i++){
				for(int j = 0; j < 9; j++){
					printf("%c%d", check[i][j]?'*':' ',pazzle[i][j]);
				}puts("");
			}
			if(n>0)puts("");
		}
	}
	
	return 0;
}