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