@author aniwey
                                        |                  |                                        
                                        |                  |                                        
                          -             |                  |                                       ^
                                        |                  |                                        
        ^                               |                  |                                        
                                        |                  |               ^                        
                                        |                  |      -                      -          
            -                           |                  |                                        
                        ^               |                  |                                        
                                        |                  |                                        
                                        |                  |                        -               
                                -       |                  |                                      ^ 
    -                                   |                  |          ^                             
                                        |                  |                                        
                                        |                  |                                        
             ^                          |                  |          -                             
                                        |                  |                     ^             -    
                              ^         |                  |                                        
                                        |                  |                                        
                                        |                  |                                        
             -                          |                  |                                ^       
                                        |                  |      -                                 
                        ^               |                  |                                        
                                       /                   |              ^                         
                                      /                    |                             -          
  ^                                  /                      \
                          -       __/                        \
                                 /                            \
                                /                              \      -
      -                        /                                |
                              /                                 |                ^
                ^            /                                  |
                            /                                   |                           -
                           /                                    |
                          /                                     |
                         /                                      |               -
                 -      /                                       |
        ^              /                                        |     ^
                      /                                         |
                      |                                         |                          ^
    -                 |                                         |
                      |                                         |
                ^     |                     ____________________|             -
                      |                     \                     
             -        |                      \          ^          
                      |                       \___                  
                   ^  |                           \______          -           ^
                      |                                  \___________                         -
    ^                 |                                              \
                      |                                               \____
                      |                                                    \________         ^
                      |                                                             \
    -            -    |                                                              \______
                      |                                                                     \
          ^           |                                                             _____    \   -
                      |                                                            /     |    |
                      |                                                           /     /     |
                      |                                                       ___/     /      \
                      |                                                      /        /        \
    -                 |______________________                               /         |         \
                                            /                           ___/    ^     |          \
                            ______     ____/                           /              |           |
                     ^     /      \___/                               /         -     |   ________|
                          /                                 ___      /                |   \_______|
                 -       |                                 /   \____/             ^   |           |
                         |                            ____/             ^             |           |
                         |                           /                                |           |
     ^                    \_______                  /     ^      -                    |           |
                                 /             ____/                              -   |           |
                                /             /                          ^            |____   ____|
                            ___/             /     -         _____________________        /   \
                  ^     -  /                 \_____        _/                     \______/     |
     -                    /          __            \     _/                                    |
        ^                /          /  \            \ -  \                                     |
                 _______/          /    \            \    \____________________________________/ 
                /                 / -    \_______     \                                         ^
     __________/                 /               |     |      ^                -
 -  /                           /     ^        - |     |       ____________
   |                            \                |     |    __/            \___________    ^
   |                             \    -      ^   |     |___/                           \       -
   |                              \              |                                      \
  /                                \             |                                       \     ^
 |                                  \            |   ______________________               \
 |                                   |        -  |   \                     \___________    \
 |                                   |  ^        |    \   -    ^                       |    \
 |                                   |           |     \___               ^        -   |     |
 |                                   \           \         \     -             _______/      |
 |                                    \     -     \         |      ___________/              |
 |                                     \_____      \        |    _/                          |
 |                                           \      \_     /    /                            |   -
 |                                            \  -    |   |    |                             |
 |                                             |      |   |    |                             |
 |                                             |    ^ |   |     \________                    |
 |                                             |      |   |              \____               |
 |                                             |      |   |      ^            \____          | -
 \_________                      _____________/       |   |   -                    \_________/
           \            __   ___/                  -  |   |              -                         ^
            \__________/  | |                         |   |                            ^
     ^                    | |         -               |    \
               -        ^ | |                   ^     |     \__________     ^               -
                          | |-                        |                \__________
     -                    | |                         |__                         \_________
              ^         __| |______                      \_______                           \    ^
                     __/           \          -                  \___                       /
                    /               \____                            \____                 |
            -      /                     \               ^                \____________    |
                  /                      /                                             |   |
     ^           |            __________/                  -         ^          -      |   |   -
                 |           /                  ^                                      |   |
                 |          /         -                              __________________/   |
                  \________/                              __________/                      |
    -         ^                         _________________/                      _______    |  ^
                           -   ________/                                       /       |   |
         _____________________/                                               /    -   |   |
   ^    /                                                                    /         |   |
       /                                                                    /          |   |
      /                                                                    /    -   ^  |   |     -
  -  |                                                                    /            |   |
     |                                                                  _/             |   |
     |                                                                 /             - |   |       ^
 ^  /                                                                 /                |   |
   /                                                                 /   -             |   |
  |                                                                _/                  |   |
  |                                                              _/                    |   |
  |                                                           __/      ^               |   |   ^
- |                                                      ____/                     ^   |   |
  |                                                _____/                -             |   |
  |                                       ________/                                   /    |
  |                         _____________/                                           /     |  -
   \_______________________/                                                    ____/      |
                                     ^                -                  ______/          /
 -                            -                                         /                /
       ^                                                      ^        /              __/
                      ^                                               /        ______/
                -                             -                       |_______/           -

