..........................................................
..................................................................................
................................................................................................
............................................................................................................
..............................................................................-.-.--.-......................................
..............................................................-.---------------+-+--+-+-+++--------...................................
....................................................-.----------+-+-+++++++++++++++++++++++++++++++++++-------..................................
................................................--------------+++++++++++++++++++++++++*+++++++++++++++++++++++-+--------...............................
..................................................-----+-+-+++++++++++++++*+*++++++++++++******++++++++++++++++--------------------.-.............................
..............................................-.--------+++++++++++++++++++*+*+*****+++++++++****+*++++++++++-+------------------------------.............................
.............................................------------+++++++++++++++++++++++**+****++++++++++++++++++++++++-+-------------------------.---.----.............................
.............................................----++++++++++++++++*+++++++++++++++++++++++++++++++------++++++++-+-+-+-+----------------------------.-.-.-...............................
..............................................----++++++++++++++*+**+*+++++++++++++-+----+++++++-+---------+++-+-+---+-+-++++++-++++++++++-+-------------.-....................................
..............................................---++++++*++++++++++++*+***+++++-+-++++------------------+----------+-++++++++++++++++++++++++++++-------------..-....................................
.................................................--++++***********+*+*+*+******+++-+-+-+-+---------------------------------+-+++++++-+---+-+++++++++++---------...-.-.....-.................................
..................................................---++**********************%*%***+++++++++++++-----------------------------------------------------------------.-------------------.............................
...................................................---+++********%*%%*********%%%%%**************++++++++++++-------------------.-.-------------------------------------------------------..............................
.....................................................--++*********%**%*%%%%%%%%%****%%%%%*%*****%*%*****++++++++++---------------------------------+-+-+++++++++++++---------------------------...............................
......................................................---++*****%%*%%%%%*%%%%%%%%%%%%%%%*%%%%%%%%%%%%%%************++++++-+-+-------------------------+-+-++++++++++++++++++-+-----------------------...............................
.......................................................---++****%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*%**********++++++++-+-----+-++-+----+-----------+-+++++++++++++--------------------------.............................
........................................................---++***%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%**%*%******+++++++-+-+-++-++++++-+-----------++++++++++++++-------------------------...............................
.........................................................---++++***%%%%%%%%%%%%%%%%%%%%@%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%******+++++-------+++++++++----+-++++-++++++++++++++-+----+-------------------...............................
...........................................................-----+++***%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%***++++++--------++++++++++++-+++++----++++++++++++++--+-------------------.................................
............................................................---+++++***%%%%%%%%%%%%%%%%%%%%@%@%%@%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%@%@%%%%%%%%%*****+++++----------+++++++++++++++++-+-+++++++++++++++++++++------------.-..................................
............................................................--++++++*****%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%@%@%@%%%%%%%%%*******++++++---.-.----++++****++++++----+-++++++++++++-+++++-----------.---..................................
.............................................................-++++++******%*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%@%%%%%%%%%%%%%%%%%%%********++++-------++++*******+++++------++++++++++-+-++++++------------...................................
..............................................................--++********%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%@%@%%%%%%%%%%%%%%%%%%%%%%%****+++++------++++*******+++++----+-++++++++++++++++-+--------------....................................
..............................................................--++++********%%%%%%@%%%%%%%*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%@%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*%***+++---------+++++++*+++++++++++++++*++++++++++++----------------...................................
...............................................................--+++*********%%%%%%@%%%%%***%*%*%%%%%%%%%%%%%%%%%%%%%*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%***+++----------++++***+*+++++++++++++*+++++++++++++---------------...................................
................................................................--+++*****%%*%%%%%%%%%%%********%%%%%%%%%%%%%%%%%%%%*%*%***%*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%****++++------++++++*******++++++++++*++++++++++++++---------------...................................
..................................................................--+*+****%%%%%%%%%%%%*************%%%%%%%*************************%*%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%*****++++-++++++*+*+***+*+*+++++++++***++++++++++++---------------....................................
...................................................................-+++*****%*%%%%****************************++++++++++++++++++++*+**********%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%*****+++++++***************++++++++++*+*++++++++++---------------.....................................
....................................................................--++++***%*%*%***+++********++*********++++++++-----.........----++++++*+*+******%%%%%%%%%%%%%%%%%%%%%%%@%@%@%@%%%%%%%%%***+++++++*********+*+**+++++++*+*+*++++++++++++--------------......................................
.....................................................................--+++++*******++++++++*+*++++*********++++++---... .....--------+++++**********%%%%%%%%%%%%%%%%@%@%%%%%%%%%%%%%***++++++*********+*+*++++++++++++*+++++++++++----------------.....................................
......................................................................--++++++******+++-+++++++++++*+*****++++----... ........----++++++*************%%%%%%%%%@%@@@%@%%%%%%%%*****++++*********+*+++++++*+*+++++++++++++++-----------------.....................................
.......................................................................--++*+++*******+++----+++++++++*****+++---.. ....-----++++***************%%%%%%@%%%%%%%%%%%%%%***+++++++******+*++++++++++++++++++++++++-+------------------....................................
.........................................................................--++++++******+++--.----+++++*****++---. ....----+++*************%%%%%%%%%%%%%%%%*%*%***+++++++********++++++++++++++++++++++-+-+------------------.....................................
.........................................................................--+++++++*****+++--...---+++******++-. ..---++++++*++++**+******%%%%%%%%%**********+++++++*******+++++++++++++++++++++------------------------....................................
...........................................................................--+++++++*+***+++-.....-++*****+++-.. ...--++++++++++++++++****%%%%%**********+*++++++++*+***++++++++++++++++++++++-----------------------......................................
............................................................................---+++++++++***+--. ..-++*****++-. ....----+++++++***+******************++++++++++++++++++++++++++++++++++++++-+----------------------.....................................
..............................................................................---+++++++*****+-. ..--+***+++--. ...---++++***********+++++*+*+*+++++++++++++++++++++++++++++++++++++++------------------------.......................................
..............................................................................---+-++++++****+--...--++++++-.. ..---++++********************+++++++++++++-+++++++++++++++*+*+*+++++-------..--------------........................................
................................................................................---+++++++****+--....--+++--.. ..--+++********************+++++++++++++-++++++++++++*****+**+++++-------.---------+-----.........................................
.................................................................................---+++++++*++++--...------.. ..--++++*+*+*****************+*++++++++++++++++++**+*+*+*+*++++++------.-.-------+++---..........................................
..................................................................................----++++*++++++---..----... ..---++++++++****************+++++++++++++++++******++++++*+*++++------.-.--------+----..........................................
....................................................................................--+-++++**+++*+--....-.... ...---++++++++*********+*+*+*+*++++++++++*+*********+*++++++++++--------------+++---............................................
.....................................................................................-----++++++++*+-........ ...---+++++++++******++++++++++++++++++*********++++++++++++++--------------+-++--.............................................
......................................................................................-----+++++++++-....... ..----+++++++++++++*++++++++++++++++++**********+++++++++++++-------------++++---.............................................
.........................................................................................-----+++++++-...... ..------+++++++++++++++++++++++++++++***********+++++++++--------------++++++--...............................................
..........................................................................................-----+---+--...... ....------------++++++++++++++++++++***********+++++++++-------------+++++++--...............................................
...........................................................................................------------..... .......----------+-++++++++++++++++*+*+****+*++++++++++----------+++++++++--................................................
............................................................................................-----------... .....------------------+-++++++++++++++++++++++++-+----------++++++++++-.................................................
.............................................................................................-------...... ............-------------++++++++++++++++++++++------------++++++++++--.................................................
..............................................................................................---.-.-.-.... ..........---------------++++++++++++++++++-------------+++++*++++-...................................................
................................................................................................-.-........ ...................------+++++++++++++----------------+++++++++--...................................................
.......................................................................................................... ..................------+--------------..-----------+++++++-.....................................................
...................................................................................................-..... ............ ....------------------....------------+++++--.....................................................
......................................................................................................... ... . ......--------------.....-------------+++--.......................................................
......................................................................................................... ............------.......------------++++-........................................................
........................................................................................................ . . .................----------+++++-.........................................................
.......................................................................................................... ......... . ..--+++-----+++++-..........................................................
............................................................................................................ ...........--+++-+---+++++-...........................................................
........................................................................................................... .....----+++++++-+++-.............................................................
............................................................................................................ . .....--------+++++++--..............................................................
............................................................................................................. ...---------+++++++--...............................................................
.............................................................................................................. ..----------++++++--................................................................
............................................................................................................ ..----------++++++-.................................................................
.............................................................................................................. ..----------++++--..................................................................
............................................................................................................. .------------++--...................................................................
............................................................................................................. ..-----------++--....................................................................
.............................................................................................................. ..--.----------.....................................................................
............................................................................................................... ......-------.......................................................................
............................................................................................................... .....-.-...........................................................................
............................................................................................................. .. ....-.............................................................................
......................................................................................................... . .................................................................................
....................................................................................................... .. .................................................................................
...................................................................................................... . . . .............................................................................
..................................................................................................... . . . . ..............................................................................
..................................................................................................... . . .................................................................................
..................................................................................................... .. .................... ...... .................................................................................
...................................................................................................... -++- ...----++++++++++--. .........................................................................................
.........................................................................................................--. ..---++++++++++++++--. ..........................................................................................
...................................................................................................... .. ...----+++********++. .........-................................................................................
..................................................................................................... ...---+++++++*++-. ..........................................................................................
...................................................................................................... ...--...-+++-.. .......---.................................................................................
..................................................................................................... ......--... ..-....---.................................................................................
.................................................................................................... . . ... ..-....---.................................................................................
..................................................................................................... .. ...--++-----...------... ..---.----..................................................................................
..................................................................................................... . ... . . .--++*******+++++++++++-----... ..--------...................................................................................
.................................................................................................... ........-----+-+----... ..... ...--+++*++++++++-----.-----....... .-----+---...................................................................................
.................................................................................................... ..---. .....-----+++*****+++++++---.. ....... ....-------.... ..-------....................................................................................
................................................................................................... ..---- .........-------..........--------.... .......... . . ..-------.....................................................................................
.................................................................................................... ........ ......-....... .--++--.......-.... ..------.......................................................................................
................................................................................................... .. ...---.-.---------+++-----....--+++++---.----... . ..-.-...........................................................................................
................................................................................................... ....--++********%%%%%%%%%%*++++++++++---------.. ...... . ..-----.........................................................................................
................................................................................................... .--+++++---+*%%@%%%%%%%%*+++++*++++-------.. ....... . . ...... .........................................................................................
.................................................................................................... ...--.. .-+*%%@@%%%%%**+--+++++*+++------. .......... .......-.----.-.---.... . ......................................................................................
.................................................................................................... .-+*%%%%%%%*+-. .--+++++++++----.. .....-........------------++++++++++---... .....................................................................................
.................................................................................................... .-++****+-. .--+----------.. ......-------+++++---.. .....-----.... .....................................................................................
.................................................................................................... .... .----......... ....------++++++++++--.. ....... .....................................................................................
.................................................................................................... . ....---+++++++**%%%%%%%%***+-. .... . .....................................................................................
.................................................................................................... ..--+++--++*%%@@%%%%%%%%%%*+-.. . ... ......................................................................................
.............................................................................................---+++*+- .--------+**%%@@@%%%%%**+**+++--.... .-.........................................................................................
.......................................................................................---++**%%%%%%%+ ..--+*%%%%%***+-...-+++++--.... .. .......................................................................................
....................................................................................--+**%%%@%@@%%%%%%- ..--++**++-. .----.... ......................................................................................
...............................................................................--++**%%%%@%@%@@@@@@@@%%. ... .......................................................................................
...........................................................................--++**%%@@@@@@@@@@@@@@@@@@@%+. ......................................................................................
........................................................................--+**%%%@@@@@@@@@@@@@@@@@@@@@@@%*- ......................................................................................
.....................................................................--+**%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@%*. ......................................................................................
..................................................................--+**%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*. . ......................................................................................
...............................................................--+**%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+. .---.. ......................................................................................
.............................................................-+**%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. ..--.. ......................................................................................
..........................................................--+*%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*- . . ......................................................................................
........................................................--+*%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+ ......................................................................................
.......................................................-+*%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. ......................................................................................
.....................................................-+*%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+ ......................................................................................
...................................................-+*%%%@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+. ......................................................................................
..................................................-+*%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. ......................................................................................
................................................-+*%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+. .....................................................................................
...............................................-+*%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*- .--.....................................................................................
..............................................-+*%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@%*. .-**+-...................................................................................
.............................................-+*%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@%- -+*%%*+-.................................................................................
............................................-+*%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@%*. -+%%%%%*+-................................................................................
...........................................-+*%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@*- -+%%@%%%%*+-...............................................................................
.........................................-+*%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%@%@%@@@@@@@@@@@@@@@@@@@@%- -*%@@@@%%%%*+-.............................................................................
........................................-+**%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%+ .+*%@@@@@@@@%%*+-............................................................................
........................................-*%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%%%%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@%+. .+%@@@@@@@@@@@%%*+-...........................................................................
.......................................-+*%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+ -*%@@@@@@@@@@@@%%%*+...........................................................................
.....................................--**%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+ ...... .+%%@@@@@@@@@@@@@@%%%*-..........................................................................
.....................................-+*%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%@%%@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%- ..----++***+-. -*%@@@@@@@@@@@@@@@@%%%*+-........................................................................
.....................................-*%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%@%@%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*- ..-++****%**-. -*%@@@@@@@@@@@@@@@@@@%%%*+-.......................................................................
....................................-+*%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*- ..---+++++-. ...... -*%@@@@@@@@@@@@@@@@@@%@@%%%+-.......................................................................
...................................-+*%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*- ... ......... . .-++++--.. .-+*%@@@@@@@@@@@@@@@@@@@@@%%%%%*+......................................................................
..................................-+*%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%@%@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*. ... ......-.---.........-++++-.. .----+*%%@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%+-....................................................................
..................................-+*%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. .--------... .... .+*%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%*-....................................................................
..................................-+*%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%%%%%@%@%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. ..----.-. .*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@%@%@%@%*+....................................................................
.................................-+*%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@@%@%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. .... .+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%+-..................................................................
.................................-+*%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%@%%@@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@%+ .+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@%@%%%%%+-..................................................................
.................................-+*%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@%%@%@%@%@%@%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@%- -*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@%%%%%%*-..................................................................
................................-+*%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@%@@%@%@%@%@%@%@%@%%%%@@@@@@@@@@@@@@@@@@@@@@@@%- .+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@%%%%*+.................................................................
...............................-+%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@%*- ... -*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@%@@@@%%%+-...............................................................
...............................-*%%%%@%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*. .-----.. .+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%@@%%+-...............................................................
..............................+*%%@%%%%@%%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. .-++----... -*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%@%@%%*-..............................................................
.............................-+*%%@@%%%@%@%@%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. .------... .+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@%@@@@@@@@@%@%*+..............................................................
.............................-+*%%%%%@%%%%@%%%%%%%%%%%%%%@@@@@@@@@@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*- ..---.... -*@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@@@@@@@@%@%@%%%+-.............................................................
...........................-+*%%%%%%%%@%%%@%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*- . ...----.. -+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%*-............................................................
.........................-+*%%%%%@%@%%@%%%%@%@%%%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@%*- ... .------.. ... +*@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@%@%@%@%@%*+...........................................................
......................--*%@%%%@@%@%@%@%@@%%@%%%%@%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*- ... ..--+---....... ..---++++--.. -*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@*+-.........................................................
.....................-+*%@@@@%%@%@@%@%@%@%@%@%@%%%%@%@%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+- ..... ..--+++++++---.................-.-----.. .+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@%@@%@%%+-.........................................................
...................-+*%@@@@@@%@@%@@@@@@@@@@@@@@@%@%%%@%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@%+. ...... ..----+++-------.-.-....... .+*@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@@@@@@@@@@@@@@@%@%@@%*-........................................................
.................--+*%@@@@@@%@@@@@@@@@@@@@@@@@%@%@%@%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+. ...... -*@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@%*-........................................................
..............--+++*@@@@@@@@@@@%@@@@@@@@@@@%@%@%@%%@%@%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@*+. ........ -*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+.......................................................
..........--+++++*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+.. ....-.... -+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-.....................................................
.......--++++++**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@%@%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@*+.. ..----.. -+%@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+.....................................................
....--+++++++++*%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@%@%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-.. ...----.... -+%@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-....................................................
---++++++++++**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%@%@%@%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%++-. ...----..... -*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-....................................................
--+++++++++***%@@@@@@@@@@@@@@@%%%%@@@@@@@@@@@@@@@@%@%%@%%%@%@%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@%%+--. ...-----.... .-+%@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-...................................................
--++++++*+**%@@@@@@@@@@@@@@%%%%%%%@@@@@@@@@@@@@@@@@@%%@%@%@%%@%%@%%@%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@%%+-... ...-----.... . . .-*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-..................................................
--+++*+****%%@@@@@@@@@@@@@%%%%*%%%%%@@@@@@@@@@@@@%@%@%@%@%@%%%@%@%%@%%%%%%%%%%%%%%@@@@%@@@@@@@@@@@@%%+-... ...-----.... ......... .-*%@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-.................................................
--+++******%@@@@@@@@@@@%%%%%%%%**%%%%%@@@@@@@@@@@@@@@@@@@%@%@%%@%@%@%%%%%%%%%%%%%%%@%@@@@@@@@@@@@@@%%+-.... ..-------..... . .... . .+*%@@@@@@@@@@@@@@@@@@@%@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-.................................................
-+++*****%@@@@@@@@@@%%%%%%*%*%%%%%%%%@@@@@@@@@@@@@@@@@@@@@%@%@%%@%%%@%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@%+-... ..--------..... ... . .-+%@@@@@@@@@@@@@@@@@@@%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-................................................
-++*****%@@@@@@@@@%%%%*%%*%*%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@%@@%@%@%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@*+... ..---------.... . . ...-*%@@@@@@@@@@@@@@@@@@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-................................................
-+++****%@@@@@@@%%%%%%*%*%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@%%%%%%%%%%%%%%%%%@@@@@@@@@%@@@%*+-. ..---------..... ..-+*%@@@@@@@@@@@@@@@@@@@@%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*--...............................................
+-++***%@@@@@@%%%%%*%*%%*%*%%%*%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%%@%%@%%%%%%%%%%%%%%%@%@@@@@@%@@%*+.. ...----+----... ..-+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+................................................
-++**%@@@@@@%%%*%*%*%**%%*%*%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%@%%%@%%%%%%%%%%%%%%@%@@@@@@@@@@@*+.. ...-----+----... ..-+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-...............................................
--++*%@@@@@%%%*%*%*%*%**%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%@%%%%%%%%%%%%%%%%%%@@@%@@@@%%@%*-.. ..----+++-----.. ..--+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-................................................
--+*%@@@@%%%***%*****%*%*%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%@%%%@%%%%%%%%%%%%%%@@@@@%@@%*-. ....---+++-----... ..--+*%@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*-................................................
-+*%@@%%%*****%**%***%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%%@%%%@%%@%%%%%%%%@%@@@@@%@@@*+. ..----++++----... .-----+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-................................................
+*%@@%%%*********%%%%%%%%%@@@@@@@@@@@@@@@@@@@@%%%@@@@@@@@@@@@@@@@@%@@@@%@%@%@%%@%%%%%%%%%%%%@@@@@@%%+. ...----+++++----.. ..-----++%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+--................................................
+*%@%%%%*******%*%%%%%%%%%@@@@@@@@@@@@@@@@@@%%%%%@@@@@@@@@@@@@@@@@@%@@%@%@%@%@%@%%%%%%%%%%%@@@%@@@%%+. ...----+++++++---... ..-------+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%*+-.................................................
**%%%%%%*******%*%%%%%%%%@@@@@@@@@@@@@@@@@@%**%%@@@@@@@@@@@@@@@@@@@@@%@%@@@%@%%@%@%%%%%%%%%%@%@@@@%%+- ...---+++++++++---.. ..--++----+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*--..................................................
****%*%******%*%%%%%%%%%@@@@@@@@@@@@@@@@@%%**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%%%%%%%%@%%%%%%%@@%@@@%*. ...--++++++++++---.. .--+-+-+--++*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%*+-...................................................
++****%******%%%%%%%%%%@@@@@@@@@@@@@@@@@@%%%%%%@@@@@@@@%%%%%%%%%@@@@@@@@@@@@@@%@%%%%%%%%%%%%%%%%%@@%*-. ...--+++++++++++---... ..-+++-----++*%@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*+.....................................................
++********%*%%%%%%%%%@@@@@@@@@@@@@@@@@@%%%%%%%@@%%%%%***********%@@@@@@@@@@@@%%%%@%%%%%%%%%%%%%%@@%*- ...---+++++++++++----.. ..--+++----+-++%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*+-....................................................
++*******%%%%%%%%%%%@@@@@@@@@@@@@@@@@%%%%****%*******+++++++--++%%@@@@@@@@@@@@@@%@%@%%%%%%%%%@%%%%%*-. ...---+++++++++++++---.... ..--++---+----++*%@@@@@@@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-.....................................................
+*******%%%%%%%%%%%@@@@@@@@@@@@@@@@%%%*****++++++++++++------+*%@@@@@@@@@@@@@@%@%%%%%%%%%%%%%%%%%%*-. .....---+++*****+++++----....... ..--+++++---+-+++*%@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+.....................................................
++***%*%%%%%%%%%%%@@@@@@@@@@@@@@@%%%%%%%%***+++++-+--------+*%%@@@%@%@@@@@@@@@@@@%%%%%%%%%%%%%%@%%*-. .....---++++*+**++++++--------... ...-+++++-----++++*%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-.....................................................
+++**%*%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@%*+++++---+-++++++**%%%%%%%@@@@%@@@@@@@@@@%%%%%%%%@%%%%@%*+. .....----++++++*+*++++++++------....... ...--+++++++-----++**%%@%@@@@@@@@@@@@%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-.....................................................
++**%%%%%%%%%%%%@@@@@@@@@@@@@%@@@@@@@%%**++++----+-++++******%%%%%%%%%%@@@@@@@@@@@@@%%@%@%@%%%%%%%*-. ......----+++++++++++++++++++-------..... ...---+++++++++-----+**%@@@@%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-....................................................
++***%%%%%%%%%%%@@@@@@@@@@@@@@@@@%%*+++-++----+++++++********%%%%%%%%%%%%%%@%@@@@@@@@@%%%%%@%%@@%%%+-. ........----++++++++++*+*+++++++-------........ ...----++++++++--+-++++**%@@@@%@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+....................................................
++**%%%%%%%%@%@@@@@@@@@@%@@@%%*+-----------+++++*+*++*******%%****++*******%%%@@@@@@@%%%%@%@%@@%@%*+- . .. .......----+++++++****++++++++++++-+--------......................---++++++++++++----++**%@@@@@%@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-.................................................
++**%%%%%%%%%%@@@@@@@@@@@@%*+----------++++++*+++++*+**********++++++*******%%%@@@@@@@@@@%%%%%%%@@%*-. . . .......-----++++++++*+*+*++++++++++++++-------------------------++++*+++++++++-++++**%@@@@@@@@%@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-...............................................
+**%%%%%%%%%%@@@@@@@@%%*+-...-------++++++*+++++**********************%%%%%%%%%%@@@@@@@@%@%%%%%@@%*+-. . . . . .....------+++++*+********+*+++++++++++++++++++++++++++++++++*++++++------+++*%%@@@@@@@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%*-............................................
++**%%%%%%%%%%%%%%%%*+----------+-+-++**++++++*******++++************%%%%%%%%%%%%@@@@@@@%%@%%%%%@@%*-. .. . ....------++++++++**************+*+*+****+*+*******+***++++++----+----++*%%%@%@@@@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*+-.........................................
+**%%%%%%%%%%%@%%*+-.-------+--++++++++-++***+++++++++++************%%%%%%%%%%@@@@@@@@@%@%%@%@%%%%%+-. .. . ......----+++++++*****************************++++++---------------++%%@@@@%@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-......................................
++**%%%%%%%%%%*+---------++-++++*+++-++*****++++++++++++++**********%%%%%%%%%%@@@@@@@@@@%%%@%%%%%@%*-. ... ......----+++++++**********************+++--------.------------++*%@@@@@@@@@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%*-...................................
+***%%%%%%%*++-------+----++**++-++*%%**++++++**+++++++++********%%%%@%@%@@@@@@@@@@@@@@@%%@@@%@@%%+-. ... .. .....----+++++++++**********+++++++------.........-..-----++*%%@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*+-................................
+***%%%**++-------+---++**+++++*%%%**+++++++++*++++++++**%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@%%@@@%@%%%*-. ...... . ....------+++++++++++++++-------..................----++*%@@@@@@@%@@@@@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%**-.............................
++*%**+---+----++++++**++++*%%%%*++++++++-+++++++++***%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%@@%%*-. ....... .....------------------....... ....----+*%%@@@@@@@%@%@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%*+..........................
+++++------+++++++***++++**%%%***+++++---+++++++***%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@@%%*+......... . ............. . ....----++*%@@@@@@@@@%%%@%@%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%*+-......................
+---++++++++++*****+++**%%**+***++++-----+++**%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@%%+-........ ...-----+*%@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%*+-...................
--+-++++*++*****++**%%%*+++++++++++--+++**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@%+-......... ..-----++*%@@@@@@@%@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%+-.................
---+++**********%%%%*+++++++++++++++**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@%*-......... ...----++*%@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%*+-............
--+++*****+**%%%*****+++++-+-+++**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*+-....... ...-----+**%@@@@@%@%@@@@%@@@@@@@@@@@@@@@@@@@@@@@%%%%%@@@@@@@@@@@@@@@@@@@%%@%@%@@@@@@@@@@@@@@@@@@@%%%%%%*%*+-..........
+++*******%%%*******+++++-+++**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@%*+-----.... ...-----++*%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%***%%@@@@@@@@@@@@@@@@@%%%@%@%@@@@@@@@@@@@@@@@@@%%%%%%%****-......
++****%%%********+++++++**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-----... .....---+++**%%@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@%%%**********%%@@%%@@@@@@@@@@@@@%%%%@@@@@@@@@@@@@@@@@@@@@%%%%%%*****+-..
+++*%%********+*++++**%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%*+-.---.... .....---+++*%%@@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@%%%***********%%%%%%%%%@@@%%%%%%@@@%%%@%@@@@@@@@@@@@@@@@@@%%%%%*%*******
++*************+***%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*--.---...... ...---+++**%%@@@@%@%@@@@@@@@@@@@@@@@@@@@@@@%%%%***********%%%%%%%%%%%%%%******%%@@@%%@%@@@@@@@@@@@@@@@@@@%%%%%***+++
++++************%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%*-..---....... ...---+++***%%%%@@%%%@@@@@@@@@@@@@@@@@@@@@@@%%%*******+****%%%%%%%%%%%%****+++++**%%@%@%@@@@@@@@@@@@@@@@@@%%%%%**+++
+++**%%%%%%%%%@@@@@@@@@@%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-............. ....--++++****%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@%%%%******+*****%%**%%%%%******+****++++*%@@@@%@@@@@@@@@@@@@@@@@%%%*+++
+++**%%%%%@@@@@@@@@@%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-.............. ...----++++***%%%%@@@@%@@@@@@@@@@@@@@@@@@@@@@@%%%%***********%%***%%%%****+++********++**%%@@@@@@@@@@@@@@@@@@@%%*+++
++**%%%@@@@@@@@%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%@%%+................. ...------+++++***%%%@@@@%@@@@@@@@@@@@@@@@@@@@@@@%%%***********%%*****%%%***++++**********++**%@@@@@@@@@@@@@@@@@%%*++
+***%@@@@@@%%**%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%%@@%*-...... .. . ...........---------+++++****%%%%@@%@@@@@@@@@@@@@@@@@@@@@@@@%%%***********%%%*****%***+++++***%%%%%%%%**++*%@@@@@@@@@@@@@%%**+
+**%%@@@%%*%%%@@@@@@@@@@@@@@@@@@@@@%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+-...... . . . .........---------+++++++***%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@%%%%%*******%%%%%%*****%**++++++**%%%%%%%%%%*****%@@@@@@@@@@%%**+
***%%%%%%%@@@@@@@%%@@@@@@@@@@@%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-........ ...........---------+-++++****%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%******%%%%%%**+**%**+++++***%%%%%%%%%%%%%%%%@@@@@@@@%%%***
*****%%%@@@@@@@%@@@@@@@@@@%%%%%*%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%*-..-..................------++++++*****%%@@@%@%@@@@@@@@@@@@@@@@@@@@@@@%%%%%********%%%%**++*****++++++**%%%%%%%%%%%%%%%@@@@@@@%%****
*+**%%%@%%@@@@@@@@@@%%******%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%+-.-...............-------+++++******%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%********%%%%**+++***++++--++**%%%%%%%%%%@@@@@@@@@%%***
****%%%@@@@@@@@%%**+++***%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+----.........-.--------++++++****%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%**********%%%**++****++-+--+++***%%%%%%%%%@@@@@%%%%**
+***%%@@@@%%*+++++***%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-..--.-...-.---------++++++*****%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%***%%%*%%%%%**+++****++------++***%*%%%%%%@%%%%%%**
****%%*++-++++***%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+-...-.-...--------+++++++****%%%@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%**%%%***%%%%%**+++*%**+-------+++***%%%%%%%%%****
*+++-----+**%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*--......-.-------+++++++***%%%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%****%%%*%%%%%**++****+++-------+++*****%*****+*
------**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%@@%*-......-------+++++++***%%%%@%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%******%%%@%%*******++--------++++++**+++*+
-+**%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%+-.....--------+++++**%%%%@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%**%%%%%%%*******++-+-----++++++++++
****%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+....-.------++++***%%@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%*%*%%%%%%%%****%%%*++++++++-+-----
******%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+----------+++++**%%%@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%**%%%%%%%%%***%%%**++++-------
******%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+----++++++++**%%%@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%*%%%%%%%%%%***++++----
*****%%%%@@@@@@@@@@@@@@@@@@@@@@%*++-+++++*****%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%*****++++
*****%%%%%%@@@@%%%@@@@@@@%%++++++*****%%@@@@%@@@%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%***++++
*****%%%%*%*%%%%@@%%*++++***%%%%@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%*********+++
+****%%%%**+---+++**%%%%%%%%%@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%%****+