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