/*
TASK:trains
LANG:C++
*/
#include <stdio.h>

int main(){
    char gara[10][50];
    int N,M,P,C,F;
    int i,j;
    
    //priemame, 4e cialata gara e prazna
    for (i=0;i<11;i++) 
        for (j=0;j<51;j++) {
            gara[i][j]='#';
        }
    
    scanf("%d %d\n",&N,&M);
    
    //4etem razpologenieto na vagonite
    for (i=0;i<N;i++) {
        scanf("%d %d %d\n",P,C,F);
        if (P==0) {gara[i][C]='#';}
        else {
             gara[i][P]='('; gara[i][P+1]='H';
             gara[i][P+2]=' ';gara[i][P+3]='H';
             gara[i][P+4]=']';
             
             for(j=0;j<C;j+=5) {
                               gara[i][P+5+j%4]='[';
                               gara[i][P+6+j%4]='X';
                               gara[i][P+7+j%4]='X';
                               gara[i][P+8+j%4]='X';
                               gara[i][P+9+j%4]=']';
                               }
             
             for(j=0;j<F;j++) {
                              gara[i][P+10+j%4]='(';
                              gara[i][P+11+j%4]='O';
                              gara[i][P+12+j%4]=' ';
                              gara[i][P+13+j%4]='O';
                              gara[i][P+14+j%4]=')';
                              }
        }
    }
    for (i=0;i<N;i++) {
        for (j=0;j<M;j++) {printf("%c",gara[i][j]);}
    }   
}
