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