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