#!/bin/python

def printToArray(self, x, y, c):
    if x < 0 or y < 0 or x >= len(self) - 2 or y >= len(self) - 2:
        return

    self[x+1][y+1] = c


def printTree(l, x, y, array):
    if l == 0:
        printToArray(array, x- 1, y, '_')
        printToArray(array, x, y, 'o')
        printToArray(array, x + 1, y, '_')
        return

    printToArray(array, x - 1, y, '_')
    printToArray(array, x, y, '|')
    printToArray(array, x + 1, y, '_')

    for i in range(l):
        printToArray(array, x-1, y+1+i, '/')
        printToArray(array, x,   y+1+i, '|')
        printToArray(array, x+1, y+1+i, '\\')
        
    printToArray(array, x, y+l+1, '^')



def solve():
    n, t= (map(int, input().split()))

    res = 0

    array = [['.' for _ in range(n+2)] for _ in range(n+2)]

    for i in range(n+2):
        array[0][i] = '*'
        array[i][0] = '*'
        array[i][n+1] = '*'
        array[n+1][i] = '*'

    for _ in range(t):
        l, x, y  = map(int, input().split())

        printTree(l, x, y, array)

    for i in range(n+1, -1, -1):
        for j in range(n+2):
            print(array[j][i], end='')
        print()

def main():
    try:
        while True:
            solve()
    except:
        pass

main()
