#include int main(){ int m,n,s = -1,x,y; char forest[100][100]; while (scanf("%d %d", &m, &n) > 0) { if (s != -1) printf("\n"); for (int i = 0; i < 100; ++i) for (int j = 0; j < 100; ++j) forest[i][j] = '.'; for (int k = 0; k < n; ++k){ scanf("%d %d %d", &s, &x, &y); if (s == 0){ for (int i = x - 1; i <= x+1; ++i) if ((i >= 0) && (i < m) && (y >= 0) && (y < m)){ if (i == x) forest[y][i] = 'o'; else forest[y][i] = '_'; } } else { for (int i = x - 1; i <= x+1; ++i) for (int j = y; j <= y+s+1; ++j) if ((i >= 0) && (i < m) && (j >= 0) && (j < m)){ if (i == x){ if (j == y+s+1) forest[j][i] = '^'; else forest[j][i] = '|'; } else if (j == y) forest[j][i] = '_'; else if ((i < x) && (j != y+s+1)) forest[j][i] = '/'; else if (j != y+s+1) forest[j][i] = '\\'; } } } for (int i = 0; i <= m+1; ++i) printf("*"); printf("\n"); for (int i = m-1; i >= 0; --i){ printf("*"); for (int j = 0; j < m; ++j) printf("%c", forest[i][j]); printf("*\n"); } for (int i = 0; i <= m+1; ++i) printf("*"); printf("\n"); } return 0; }