The game "Draw a forest picture" is quite popular among younger visitors of the amusement park. The number of players in the game is virtually unlimited and nearly everybody becomes a winner. The game is simple. At the beginning, a leader of the game describes briefly a picture of a forest which he or she had seen recently. Then the players are given some paper and crayons and they have to reproduce the image as best as they can. Everybody who hands in at least partial image of virtually any piece of any forest anywhere on Earth depicted in any style wins a small reward in the form of a chocolate or a fruit.
In this problem, you have to implement an imitation of the game. As you are much more experienced than the younger players, your drawing has to meet the specifications exactly. The image you have to reproduce depicts a glade — an open area within a woodland which is somewhat less populated by the trees than the surrounding thick forest. The image has to be printed in the "ascii-art" style.
An .
, ASCII code 46) on the canvas.
Standing trees and tree stumps are depicted by more pixels, their representation on the canvas
follows.
A standing tree has a positive height _|_
, ASCII codes 95, 124, 95). The tree trunk
is represented by |
, ASCII code 124) located immediately
above the center of the tree roots. The branches consist of /
, ASCII code 47), a right branch is represented by a single backslash character
(\
, ASCII code 92). A treetop is represented by a single caret character (^
, ASCII code 94)
located immediately above the topmost character of the tree trunk.
A tree stump consists of three horizontally adjacent pixels represented by characters underscore,
lowercase letter o
, underscore (_o_
, ASCII codes 95, 111, 95).
Note that a standing tree or a tree stump may appear in the image only partially or may not appear in the image at all, depending on its coordinates. See the sample data below for additional illustration of this fact.
Input Specification
There are more test cases. Each case starts with a line containing two integers
It is guaranteed that no parts of two different standing trees and/or tree stumps should be depicted by the same pixel.
Output Specification
For each test case, print the canvas with the image of the glade. The top row of the canvas
should be the first printed row of the image. The bottom row of the canvas should be the
last printed row of the image. The printout should be decorated by a square border made of
asterisk characters (*
, ASCII code 42), the thickness of the border should be one pixel. The
border should frame the canvas tightly, that is, there should be no spaces between the border
and canvas neither horizontally nor vertically. Print one empty line after each case.
Sample Input
3 2
0 5 5
9 1 0
8 10
3 3 2
0 2 1
1 -1 -1
0 -1 2
3 0 6
6 4 7
0 7 4
3 8 -1
5 5 -5
9 2 -10
Sample Output
*****
*/|\*
*/|\*
*_|_*
*****
**********
*|\._|_..*
*|_.^....*
*../|\...*
*../|\._o*
*../|\...*
*_._|_../*
*._o_.^./*
*\.^./|\/*
**********
DMOJ-specific note: In the above sample output, there should be a trailing newline at the end of the sample output that is not rendered.
Comments