import java.util.Scanner;


public class Lode {
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		
		int iterace=sc.nextInt();
		
		int[] weight=new int[iterace];
		int max_index,index;
		int[] index_value;
		
		for(int i=0;i<iterace;i++){
			weight[i]=sc.nextInt();
			index=max_index=Lode.mocninaTri(weight[i]);
			//System.out.println(max_index);
			index_value=new int[max_index+1];
			
			while(weight[i]>0){
				index_value[index]++;
				weight[i]-=(int)Math.pow(3, index);
				index=Lode.mocninaTri(weight[i]);
			}
			
			for(int j=max_index;j>=0;j--){
				System.out.print(index_value[j]);
				if(j>0) System.out.print(" ");
			}
			System.out.println();
		}
	}
	
	public static int mocninaTri(int max){
		int n=0;
		int x=1;
		
		while(true){
			x*=3;
			if(x<=max) n++;
			else break;
		}
		
		return n;
	}
}
