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