
....................................................................................................................................................................................
....................................................................................................................................................................................
..........................................``````...`.`.............................................``.``............................................................................
.......................................``````...`.```...................`...........................................................................................................
.....................................`````..````````............................................`..`..```````.........................`.............................................
.............................................````....................`..`.......................`````.````............................`````.........................................
...................................................`.............................................````.````````..........................`````.......................................
......................................................................................................````..````.....................`.``..`````....................................
..............................`....................................`.``.`....................................`.`.......................``````.```...................................
............................``.....```.........................................................................`.......................`````..`````.................................
..........................````....`````...............................................................................................``............................................
........................```````...`````.................................................```````.....................................................................................
.......................``````.....````````.```.`........................................``````````..................................................................................
.......................```````...``````.`````````.``......................................`````````................................................``....`..........................
......................```````.....````````````.````````..........................;;;;;;;;...``````...............................................````....``.........................
.....................``````.......``````````````````````............`.....;;.;;;;+++++++;;;.```````............................................```````...````.......................
.................`````````........`````.````````````````............``......;++++++++++;;;;;.``````.....................................``````````````...````.......................
................`````````.........`````.````````````````............``...;;;++++++++++++++;;;.`........................................```````````````...``````.....................
..............```````````........```````````````````````............``..;+++++++++++++++++;;;.```````.`...........................`````````````````````...`````.....................
..............```````````......```````````````````````..............`...;++++++++++++++++++;;.```````.``.....``.....................``````````````````.....```......................
.................````````.....````````..`````````````...................;;+++++++++++++++++++;..`````.``............................`..`..````````````..............................
..................``````.....```````````````````.........................;+++++++++++++++++++;.`````````.....`..`..................```````````````````..............................
..........`........````......``````````````````.........`.......`.....;;;++++++++++++++++;;++;.`````````.............................`````````````````..............................
.......``````................````````````````...........`.......`...;.;;+++++++++++++;;;;;;;++..`````.......................................```````````.............................
.......```````...............```````````````...........``.......``..;;;++++++++++;;;;......;;+;````........................................`````````````............................
.....``````````.............``````````................```.......``..;;;+++++;;;;;;;;.......;;;;.```........................................``````````````...........`...............
....```````````.............``````````..............`````............;++++;;;;;;............;;;.```.........................................``````````````..........`...............
...`````````````...........```````````..............`````.............+++;;;;;;;;;..........;;;.``..........................................``````````````..........................
...`````````````.........```````````...............``````.............+++;;;;;;;;;;.;.......;;;.``...............................................`````````..........................
...````````````..........`````````.................``````.............+++;;;;;;;;;..;;;.....;;;...........```````................................````````.................```.......
..```````````````........`````````.......``........``````.............+++;;;;;;;;;;..;;....;.;..........````````.`................................```....................``````.....
.``````````````````......````````.......`````......``````.........```.;++;;;;;;;;;;;;;;;;;;;;;...............``..`.................................````````.............``````......
.``````````````````......``````.........``````.....`````.........````.;++;;;;;;;;;;;;;;;;;;;;;.........``.``.``..`...............`...................```.```............`````````...
.````````````````````....````...........`````````...`````........````.;;+;;;;;;;;;;;;;.;;;...;;...````.````````````..............`....................``````...........```````````..
.````````````````````..................```````````..`````........`````.;+;;;;;;;.;;;;;.;;;;;..;........``.````````................``...................````............````````````.
.```````````````````..................```````````....````.........````.;+;;;;;;;;;;;;;;..;.......`````.``.``......................``....................```.`..........````````````.
.``````````````````...................``````````.......`...........```.;;;;;;;;;;;;;;;;.........`````..``.`````````.``............`......................`````......````````````````
.``````````````````...................````````.....................``.;;;;;;;;;;;;;;;;;.........```.....`.`````````........................................```.....`````````````````
.``````````````````...........```.......``````.....`.............````.;;;;;;;;;;;;;;;;;..........`............................................`....................`````````````````
.`````````````````............`````......````.....````...........`````;;;;;;;;;;;;;;;;;;;.........```..``.``````.``........................``.....................``````````````````
.``````````````````......`....`````.......```.....````...........````..;;;;;;;;;;;;;;;;;;.........`.`..``.`````````..`.......................``....................`````````````````
.```````````````````.....``....`````.............`````...........``````.;;;;;;;;;;;;;;;.......................`````................................................`````````````````
.```````````````````....```.....```.............```````...........`````.;;;;;;;;;;;;;;;.............``.`````````.`.........................```.....................`````````````````
.```````````````````....````.....`.............`````````.............```..;;;;;;;;;;;;;;.;;...............`````````..`...............`......```.....................````````````````
.``````````````````.....````............`......````.```...............````.;;;;;;;;;;;;;;;;...............```.``.``................`...................``...........````````````````
.`````````````````......````..........`.`......````````...............````.;;;;;;;;;;;;;..........................................``.``..............```.....`.....`````````````````
.```````````````........````..........`````....````````...............````.;;;;;;;;;;;;;.....`............````````..................`````.............`.....```....`````````````````
.``````````````........``````........```````...````````....................;;;;;;;;;;;;;...................````````...................```..................````....`````````````````
.```````````..........`````````......```````....```````........``..........;;;;;;;;;;;;.......................``..................```````......`...........`````...`````````````````
.``````````...............``````.....````````...```````........```.......;.;;;;;;;;;;;;;.;;.................`````.................```````...````...........`````...`````````````````
.``````````.................``........```````...```````........``.......;+;;;;;;;;;;;;;;;;..................`........................````...````...........`````....````````````````
.````````.............................`````.`....``.```........`.......;+++;;;;;;;;;;;;;;.........................................```````...`````.........``````......``````````````
...`````..............................```.```...```````................++++;;;;;;;;;;;;...;.........``.`..........................```````..``````.`......````````......`````````````
....```.................................`````....``````...............;++++;;;;;;;;;;;;;.;;..........`.``..........................`.```...``````.`.....`````````.........``````````
....``..................................`````....`````..............;;++++++;.;;;;;.;;;;;;;...+;;......``..........................`.```...``````........````..............`````````
.......................``...............``..`......................;;+++++++;..;;;;;......;;..;+++;.....`.......``.................`````...```````.........................`````````
............```.......```...................``....`..`...........;;++++++++++;..;;;;;;;;;;;;...+++++...``..........................`````..```````..........................`````````
............```......````.......`.........````..................;++++++++++++;...;;;;;;;;;;;...++++++;....................................``````............................````````
..........``````...````.```.....``........`.`.................;;++++++++++++++;...;;;;;;;;;;...++++++++.......```..................`.``...```````............................```````
.........```..``...````````.....`...........................;;++++++++++++++++;;..;;;;;;;.+;...+++++++++.......`...................`.``...``````..............`................````.
.........```.```.```.````..................`..............;;+++++++++++++++++++;...;;;;;;;+;...+++++++++.............................``...`````...............```....````.......```.
............``...```.```........``.........`.............;+++++++++++++++++++++;...;;;;;;;+;...+++++++++;..................................````.............```````````````.........
...........```...`````.`........``.....................;;++++++++++++++++++++++;...;;;;;;;;....++++++++++...................................```......``......``.`````````````.......
..........``.```...```..........``...................;;++++++++++++++++++++++++;...;;;;;;;;....++++++++++.............................................`......```````.`````````......
..........``.```...``.`............................;;+++++++++++++++++++++++++++...;;;;;;;.....++++++++++..........................................````.......````````````````......
.........``````..``..``...........................;+++++++++++++++++++++++++++*++..;;;;;;.....;+++++++++;..........................................`````.......```.````````````.....
..........````...``...`..........................;++++++++++++++++++++++++++++**+;.;;+++;.....;+++++++++...........................................`````.......````````````````.....
.......````````..````...`........................++++++++++++++++++++++++++++++**+;;;;;..;;...++++++++++..............................................``......`..```..`````````.....
........```````...```...........................;+++++++++++++++++++++++++++++++*+;;;+++;;++;;++++++++++........................................................`````.````````......
........```...`.................................;++++*++++++++++++++++++++++++++++;..;;;......++++++++++.......................................................``````.````````......
........``````...`..............................;++++**+++++++++++++++++++++++++++++;;;;;;;;;;;+++++++++...............................`.......................````.`.````````......
......``.````...................................++++****++++++*****++++++++++++++++;.;;;;;;;++++++++++++.......................................................``````.`````````.....
......``.```...................................;+++**+**++++*******++++++++++++++++;...........+++++++++...........................................```.........``.```..`````````....
...............................................;+++*****+***********++++++++++++++++;;;.++++++++++++++++...........................................````..........````..`````````....
...............................................+++*******************+++++++++++++++;........;;+++++++++...........................................````...................``````....
..............................................;++********************+++++++++++++++;...;;;;...+++++++++............................................``````................```````...
..............................................++*********************+++++++++++++++;...;;+++++*++++++++...........................................```````................```````...
..............................................+***********************++++++++++++++;..........++++++++;............................................````````...............``````...
............`................................;+***********************++++++++++++++;...++++;;;++++++++;......................................``....`````````.................```...
...........`.................................+++***********************++++++++++++++;;;;;;;;+++*++++++;......................................```...```````````.....................
.............................................++++**********************+++++++++++++++;;.......;+++++++;......................................```...```````````.....................
.........`...................................+;++***********************++++++++++++++;+++++++++*+++++++.......................................``....```````````....................
........`````...............................;;;+************************++++++++++++++;......;;;++++++++.....................................`````...```````````.....`...```........
........`..`................................;;+**************************+++++++++++++;;;;;.....+++++++;.....................................`````....``````````....``.`..```.......
............................................;++***************************++++++++++++;+++++++++*++++++;.....................................`````....``````````....``.``.```.......
...........................................;+*****************************++++++++++++;;........+++++++;.....................................``````...`````````.....``....````......
..........`...............................;+******************************++++++++++++;+++;;;;;;+++++++.......................................`````....```````...........```````....
.........................................;+********************************+++++++++++;+;;++++++**+++++.........................................```....``````........``...```````...
.........................................++*********************************++++++++++;+;......;+*+++++..........................................``....``````.......``....````````..
........................................;+**********************************++++++++++;+++++++++**+++++..................................`......````...``````.......``.....```````..
.......................................;+************************************++++**+++;++;;;;;++**+++++..................................`......````....`````.............````````..
.......................................++******************************************+++;++;;;;..;**+++++..........................................```....`````........``...```````...
......................................;+**************************************++***+++;++++++++***++++;.................................................```...............`````.....
......................................++**************************************++***+++;++;...;;+**++++;.....;...........................................``.................``.`.....
.....................................;+********************************************+++;+++++;;+****+++;....;;;;............................................................````.....
....................................;+*********************************************+++;+*+++++++***+++...;;;;;.................;..;.;......................................```......
....................................;+**********************************************++++*+;;..;+***+++..;;;;;;................;;.;;;;......`.``..............```...........`........
...................................;+***********************************************+++***+++++****+++..;;;;;;................;;;;;;;.........................````..................
...................................++***********************************************+++***+;;;;+***+++.;;;;;;.................;;;;;;;............................`......;;..........
...................................+************************************************++++**++++*****+++.;;;;...................;;;;;;;....`.............................;............
.....;.....;;;;;;;;;;;;;;;;;;.....;++***********************************************++++***+++++***+++;;;;.....................;;;;;;...................................;;..........
.........;.;;;.....;..;;;;;;;;....;++************************************************++***+;;;+*****+++;;...................;..;;;;;....................................;;..........
.........;;;;................;;;..;++************************************************++*****+*+********+;;;;;;;............;;;;;;;;;;....................................;..........
........;;;;;.................;;..;;+************************************************++****+;;+*********+..................;;;;;;;;;;..................;;.............;;;;..........
........;;;;;................;;;.;;;+************************************************++*****+***********+...................;;;;;;;;;.................;;;;;;..........;;;;;.........
........;;;;;................;;;.;;+*************************************************++*****++***********;.................;;;;;;;;;;................;;;;;...............;;.........
........;;;;;................;;;;;+**************************************************++*****+************+.................;;;;;;;;;;;...............;;;;;...............;;.........
........;;;;;................;;;;+***************************************************++******+************+;..............;;;;;;;;;;;;;;............;;;;;;...............;;.........
.......;;;;;;................;;;++***************************************************++******+**************+;............;;;;;;;;;;;;;;;;........;;;;;;;;..............;;;.........
.......;;;;;;...............;;;;+****************************************************++******+***************+;..........;;;;;;;;;;;;;;;;;.......;;;;;;;;;...............;;;........
;......;;;;;;...............;;;+*****************************************************++***********************+;.......;;.;;;;;;;;;;;;;;;;.......;;;;;;;;;;..............;;;;.......
;......;;;;;;...............;;+******************************************************++************************+;...;;;;;;;;;;;;;;;;;;;;;;;......;;;;;;;;;;..............;;;;;......
;;.....;;;;;;...............;;*******************************************************++*************************+;;.;;;;;;;;;;;;;;;;;;;;;;;;...;;;;;;;;;;;;..............;;;;;......
;......;;;;;;.;;..;;;;;;;;;;;+****************+;*************************************++***********************++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..............;;;;;......
;;.....;;;;;;.............;;;****************+;;***************************+++*******++**********************+++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..............;;;;;;.....
;......;;;;;;.............;;+****************+;;***************************+++*******++**********************++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..............;;;;;;.....
;;..;.;;;;;;;;........;.;;;;+***************+;;;*************************************++*********************+++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..;..;......;.;;;;;;.....
;;..;;;;;;;;;;;;;;;;;;;;;;;;****************+;;;*************************************++*********************++++++++;;;++;;;;;;;;;;;;;;;;;;;;;;;;;;.;;;;;;;;.............;;;;;;.....
;;;;;;;;;;;;;;;;;;;;;;;;;;;+****************;;;;*************************************++*********************+++++++++;;;+++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.............;;;;;;.....
;;;;;.;;;;;;;;;;;;;;;;;;;;;+***************+;;;;*************************************++*********************++++++++++++;+++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;...........;;;;;;.....
;;;;;;;;;;;;;;;;;;;;;;;;;;;+**************+;;;;;*************************************++**********************+++++++++++;;+++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.....
;;;;;;;;;;;;;;;;;;;;;;;;;;;***************+;;;;+*************************************++********+*************+;++++++++++;;++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;...;;;;;;;;;.;..
;;;;;;;;;;;;;;;;;;;;;;;;;;+**************+;;;;;+*************************************++********+********;+***;;;;++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;....
;;;;;;;;;;;;;;;;;;;;;;;;;;+**************+;;;;;+************************************+*********++********;;;+;;;;;;;++++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.;
;;;;;;;;;;;;;;;;;;;;;;;;;;**************+;;;;;;+************************************;**+**+**;* ********;;;;;;;;;;;;;++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;+**************+;;;;;;+************************************;*;;*++**+* ********;;;;;;;;;;;;;;+++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..
;;;;;;;;;;;;;;;;;;;;;;;;;+*************+;;;;;;;+************************************;*;**+***** ********;;;;;;;;;;;;;;+++++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;+*************+;;;;;;+*************************************;;`*+`**`** *******+;;;;;;;;;;;;;;+++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;+************+;;;;;;;+*************************************; `*` *; ** *******+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;+*************+;;;;;;;+************************************* *********.`*******+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;+*************;;;;;;;;+**************************************++**********+*****;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;+*************+;;;;;;;++**************************************++**********+*****;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;+*************+;;;;;;;++**************************************++*********++****+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;