#include<iostream>
using namespace std;
char t[100][100];
int n,a,x,y,d,ny,nx,flg,cnt;
int dx[4]={0,1,0,-1};
int dy[4]={-1,0,1,0};
int main(){
  cin>>n;
  while(n--){
    cin>>a;

    for(int i=0;i<100;i++)
      for(int j=0;j<100;j++)
	t[i][j]=' ';
    
    t[a-1][0]='#';
    x=0;y=a-1;
    cnt=100;
    flg=1;
    while(flg){

      flg=0;

      for(d=0;d<4;d++){
	if(cnt<=1)break;
	cnt=0;
	while(1){


	    ny=y+(dy[d]*2);
	    nx=x+(dx[d]*2);
	    
	    if(ny>=0&&ny<a&&nx>=0&&nx<a){
	      if(t[ny][nx]=='#'){

		break;
	      }
	    }
	  

	  ny=y+dy[d];
	  nx=x+dx[d];
	  if(ny>=0&&ny<a&&nx>=0&&nx<a){
	    if(t[ny][nx]=='#')break;
	  }
	  
	  
	 
	  x+=dx[d];
	  y+=dy[d];
	  
	  if(x<0||y<0||x>=a||y>=a){
	    x-=dx[d];y-=dy[d];
	    break;
	  }
	   t[y][x]='#';
	   flg=1;cnt++;
	  
	  
	}//for d
      }
    }//while
    

    for(int i=0;i<a;i++){
      for(int j=0;j<a;j++){
	cout<<t[i][j];
      }
      cout<<endl;
    }
    if(n>1)cout<<endl;
  }
  return 0;
}