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