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