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