`                                                                                                                            
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
`..```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.```
```..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.```
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@#:::::;:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#':::,:::;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@++:#;@@@@@@@+:;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;@'@@@#@@@#+';@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@:@@@;@;:@::#:@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#::@:@::@:@::@'@;;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@::#;:@:@@@@@@@;@:'+;;@@@@@@@@@@@@@@@@@@@@@@@@@@#:@@@:@@@@@@@@@:'@+@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@;@@@';@@@@@##@@@@'@##'@@@@@@@@@@@@@@@@@@@@@@@@@;:#::@@@@+';;+@@@@@:@+;+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@#:##:;@@@;::::::;:#@@:;@;@@@@@@@@@@@@@@@@@@@@@@@#'@@@@@':'@@@@#;::#@@@;@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@:@@@@::+@@@@@@@#::@@@@@:@@@@@@@@@@@@@@@@@@@@@@:@::@@:+@@@@@@@@@@::@@:+';@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@:#@':@@@::'#@#'@@':@@::@#@@@@@@@@@@@@@@@@@@@@:@@@@@:@@@'::::'@@@@+:@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@:@@@@;;@#:@@@@@@@@@:@+:@+'#;@@@@@@@@@@@@@@@@@@@@;@:@@:@@@:#@@@;::@@@@#:@+:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@;+:@@:@;:@@@@+::+@@+:@;#@@@@'@@@@@@@@@@@@@@@@@@:#@#@:+@@:@@#@@@::+@@@@;'@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@':@@@:@':@@@@@:@@@@@@;@@:@#:#:@@@@@@@@@@@@@@@@@@;@:@@:@@::'@+:@@;::@@@@@:@@:@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@:@'@@;@::@@#@@:'@@@@+#@@;#@#@;@@@@@@@@@@@@@@@@@@:@:@:#@::::@;:#@:::#@@@@:@+:@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@:#:@+@':+@:+@@#+:'@@@#@@@:@#@#@@@@@@@@@@@@@@@@@:@@@@:@@::;#@#:@@:@@@@@:@+#@@#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@;@@@:@:''::@@@@@@@:@@@;@@:@::@#@@@@@@@@@@@@@@@@:@:@@:@+:@@+@@@':@@@@@+:@@+@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@;@::@:@::::@@@'::@@@'@@:@@:@@@+'@@@@@@@@@@@@@@@#:@@@;'@:'@+;+@@@@@@@@+:'@@+@'@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@+###@:@:::;@@;::;#@@:@#:@@'#@:@:@@@@@@@@@@@@@@@:@:#@:@@;@@@@@@@@@@@'::;@@##@+@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@:@#@'@:::@@@:::@@@#::::''@;@:@:@@@@@@@@@@@@@@@:@:#@:@@'@@@@@@@@@@::;:@@@+@+:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@:@:@#@;::@@@:::;'::@@@@@;@:@@@+@@@@@@@@@@@@@@@:@@@#:@@@:@#::+@@@@@:;:'@@:@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@:#@@@+@::+@@':::#:#@@+@@@@:@::@;@@@@@@@@@@@@@##;:@;+@@::@@@@@@@@+:@::@@@:@:#;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@#'#;@:@;::@@@;:@;:@@:::@@@;@@@@;@@@@@@@@@@@@@#:@#@:@@@:'@@@@@@@;;@:+:@@@+@'@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@#+;:@:@@::;@@@#@;:@@;:@@@##'@:@;@@@@@@@@@@@@@:@:@@:@@#:'@@@@@@::@;@::@@'@####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@:@@@;@@@:#@@@@@#:@@'+@@#:@:@:#;@@@@@@@@@@@@@:@:@#:@@:+::::;@+:@#'@:;@@:@::@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@:@:##@@@@::@@@@@:@@:@#@@;@:@@@@+@@@@@@@@@@@@:#@@:+@@:@@@@@@@:#@:@@:;@@;@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@:@'@@+@@@@;:@@@@+@@+@@@::@:@':@:@@@@@@@@@@@'@::@:@@@@@@@@@#':@+'::':@#@':@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@@@:@#@@@@:@@@@@@@:@@::@+#@@@:@@@@@@@@@@@''@@@:@@@@@:@@@#+;@:::::#@:@#;@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@#+;:@:@:@@:@@@@@@@@@@:@;:@@:@:#'@@@@@@@@@@@:@:@#;@@@#:+@@:#:#@:'@@:@@:@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@@@'@;@@@':@@@@@@#@@'@:#@:@:+'#@@@@@@@@@@:@:@:#@@#::@@;:@:#@::@@:@@'@:+:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@:#@@#@@@@@;:@@@@#:@@+#:@:@@@@'@@@@@@@@@#;@@@:@@@::@@#;:@:'@':+@;@'@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@:#@+@@@':@@@#:#@@@::#@:@'@#:@:@@@@@@@@@:@;;@:@@+::@@:@@@::@@@@@@@:@:'#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@#:@@@:@@@@@@@@#@@@@@@@:::'@'@+@:@@@@@@@@@:@+@+'@@::#@##@'#:::@@#:@@:@;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@;+:@:@@@@@;@@@@@+@@@@@#::@:@#@+@@@@@@@@#'@#@:@@@::@@:;:;::'::::;@#+@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@;@'@'@@@+@@@'@@@:::+@@@@:@:@::@#@@@@@@@+@::@:@@@::@@::@@@':@@@@@@:@;:@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@;#@@@@@@@@#@:@@@:::;#@@@@@;@@@'+@@@@@@@:+@@@:@@+::@@::;@@@:@@@@@@:#@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@:@::@'@@@:@@@@@@+@@@@@@@@@##@:@:@@@@@@@;#:@++@@:::@@#::;@@::@@@@@;@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@'+@@@:@@@:@@@@@@@@@@@@@@@@@:@:@:@@@@@@@;#:@:@@@:@::@@#;@@'::@@@@'@@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@;@;@:@@+:@;#@@@#:::::::+@@:@@@;@@@@@@:#@@@:@@#:@::#@@@@#::#@@@@:@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@:@:@'@@#::#@@#::+@@@@@:::@:@':@;@@@@@:@:@@:@@:;@@:::##::;@@@@@@:@:+;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@;#@@@@@@;'@@+::@@@@@@@@;:@'@@'@'@@@@@:@'@'#@@:'@@@::::::+@@@@@#+@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@;@::@'@@:@@@::@@@:::;@@@:;@'@@@:@@@@'#@@@:@@@::@@@@::::::,@@@@:@;+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@'@'+@:@@#@@;::@@::::::@@@:@:@::#@@@@:@::@:@@@::@@@@:'@@@;:#@@@:@:;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@:@#@:@@@@@;::@@@@@:::#@@:@:@@@:@@@@:+@@@:@@@::@@@+'@@@@@:;@@@:@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@:@:@'@'@@@@::@@@@@::::@@:@:@@;@:@@#'#'@;#@+#+:@@@;@@::#@::@@'#;:@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@:@@@@@+@@@@'::'@#:::::@@:+##@:@:@@#+':@:@@:@@::@@+@'::#@::@@:@@#@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@;@;;@'@+@@@@@@@@@@@:::@@::@:@@@:@@:#@@@:@@:@@@+@@@@:::@@:'@@:@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@'@''@:@:@@@@@@@@@@;:::@@::@:@::@#@:@:@@;@@:@'@@@@@#::@@:;@@#;@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@:@#@:@:@@@@'::::'@:::@@:#@:@###@@:@:@;@@;#@:'@@@@@::@#::@@:@@@++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@:@:@'@;@@;:#@@@@;:@::@::@@'@@@@::@+@@:@@:@@:@'@#@@:@@:@@@@:@:+''@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@:@@@@#@@:;@@@@@@@#:::@::;;@'@:#::@:#@:@@:@@:@@@:@@:@:#@@@@:@'@;@'+@:;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@'@::@;@::@@#::'@@@':':::::@:@@@::@@@#'@#+@@:'@:'@@#@:@@@@'+@'@@:@@:@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@'#''@:@:@@@:::::@@@:#::::@@:@@;@+':@:@@:@@@::@#@+@@:+@@@@:@@;@@:@#:@::@':@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@:@@@:@:@@@#+:::@@@:::+:'@@:@':@'#;@:@@;@@#::@@':@@:@@@@@:@@@@@@@@@@#+@;@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@:@;@+@;@@@@@:::+@@:;:@:+@@##@@@@@@@:@@@@@#::@@::@@:@@@@#:@@@':::::'@@@:@#:#@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@:@#@@##;@@@+:::#@@:+:@:#@@@;@:'@:@#+@@+:'@::@@:;@@:@@@@:#@;::#@@@#;::@@@:@:@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@#'#+@;@:::::#::@@@::@@:@@@@:@'@@#@:@@::;::':@@;';@:@@@@;@:;@@#';;+@@@:@@:@:#@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@+#;:@:@@@@@@:::@@#+:@@:@@@@:@@@#@@:@;'@@@:::@@;':@:@@@@:;#@;::+@#;::#@:@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@:@@@:@+@@@@:::@@:'@@@:'@@@;@@::@@:@:@@@@:::@@:::@:@:@+:+@::'@@@@@@@:'@:@::@#@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@:@:#'@';@@@::+@#@:@@@;:@@@@+@@@@+##:@@::::'@@:::@:##@::@:::@@@@@@@@@:@:#@@#;@@@#@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@:@:@@#@:@@@::@@;+@@@@@:@@@@;@@@@:@#:@@::::@@#:@:#::@@:@#::@@@@;:;@@@#:#:@:@;:::@':::@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@+;@@@;@:@@@::@:@:@@@@@#:@'@:@@@@:@@:@@@:+@@@::@:;;:@@:@::@@@@@#:;:@@@:@:@:@'@@@;@@@@::'@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@'':@:@:@@@:@+@@@@@'@@@;;:@:@@@@;#@;:@@@@@@;':@::#+@:'@;#;:;@@:@@+@@#:@:@@@@::@:#+:@#@;+@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@+@:@:+@#:#@@@@@@::@@@::++#@@+@;@@;:@@@@:+::@#:;@@:@'::::@@@:#@@@@::@:@#:@#@@@@@@@::@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:#@@+@;:@+#@@@@@@'::+@@@::@;@@:@:@@@#::::@#::@@::@@:@:::+@@@@@:@@@#:@@:@@#@@'::::+@@@:;@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:;@+@:@;@@+@@@@@:::@@@::@:@@:@:@@@@@@@@@:::@@::@+:@::+@@@@@@@##+@@@@:@@@;:;@@@#::'@;+#:@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@;#@@@:@:@@@:;@@@@@::::@@::@:@@'#:@@@@@@@@@;::@@::@:##::@@#:::@@:@@@#@''@@::@@;:;#@@:;@@+@:@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@:@:@:@@::@@@@;@@;::@#::@;@'@:@@@@'::':::::@@:+@:@::@@@::::@@:@@'@@:@@:;@:@@@@;:#@:'@:+;@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@;#:@:@:@::#@@@@:+@@@@@::@@#+:@:@@@;:#@@@:::'@@:@@:@::@@:::@@@@:@@:@@:@#:@:@@@@@@@:+@:@@@#:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@@@+@@@::@@@@@::::;::;'@@@::@@@@@::@@@@'::@@@:@;;@::@@::;@@@@+@@'@#;@:@:+@@@@@@@@:@;#@:#:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@:;@+@:::@@@@@;::::::@@@@@:+@@@@#:+@@:;:::@@::@:@@:;@@:::@@@:@@+@@:@#:@:@@@:::@@@@+@:@'@:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@;@+#@:@::'@#@#:::::::'@@@@@:@@@@@':+@@::::@@@:'@:@@;'@@::::;:::::@@:@:@@'@@@@@:+@@@;@:@+@:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:@#@:@;:@@@;::+@@@@::::@@@+@@@@@#::@@:::@@@::@+:@@:'@@::@:;@@#:;#@:@:@+@;@@@#:@@@@:@:@:+;@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:#:@:@@:@@;::@@@@@@@:::'@@@@@:@@@::@@@@@@@;:;@:+@@:@@@:@::@@@@@:@;#+;@:@@'';::@@@@:@:@@@:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:@@@+@@:@#::@@@:::@@@:::@@@@@:@@@#::@@@@@:::@@:@@@:@@@@#:@@@:@@#@:@:@@#@@#:@@@@@'@'@;@:@:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@;#'+@+@:#::#@@::::@@@:@@@@@@@:@@@@@;:::::::@@@:@@@++@@@:'@#::;@@@:@:@;@@@#@@@@@+:#@#+@:@:@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@;@;:@:@::::@@#::#@@@::@@#+@@@:;@@@@@@'::'@@@@;;@@@@;@@@:@@:::'@@'+#;@:@@;@@+;@@@::@:@@@''@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@:@@@:@#:::@@:::@@@':#::::::@::@@:@@@@@@@@@@@:@@@#@:@@@:@+@:@@@@:@:@@+@@@@#:::@@::@:@:+;#@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@:@:@:@@:::@@:;:::::;::@@@#:::::@:;#@@@@@@@@@:@@@:@@@@@;@:@;@@@@:@:@'::#@@@'::@@'+@;@+@:@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@:#:@+@@:::@@#:@@@@;::@@@@@#::':@@'@:;#@@@;@+:@@@#@@@@@+@:@;''@+'#;+'@':;@@@::@@+@;@'#+#@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@+:@@@'@:::@@@:##@@::@@':;@@:::+:@:@@@@:@@;@:+@@#@:@@@@@@:@@@:@:@:@@@@@@:'@'::@@;@:@::#@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@+@::@:@:::@@@+#;#@::@@::@@@:::@;:@:@@:@@@@@:@@@:@+@@@@@@:@+:+@:@:@@@'@@::::::@@;@:@@@:@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@#;@@@:@+:::@@@:::@:;@+:#@@::#:;@::@:@+@#@@@:@@@:+@:@@@@@:@::@#:@:@@::;@+:'::@@@@++':@'@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@:@'@:@@:::+@@@::@:;@+:::::;@;:@@::@::#::@;;@@@@@@@@@@;@'@:;@:@;@@@+::@#:@::@@;@:@@'@+@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@:@:#+@@@'::@@@@:+::@@:::::@:@::@@+:::::#@:@@#:;;'@'@@:@@@:@@:@:@@@@::@+:@:@@@:@:@@##@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@:#@@@'@@@@;:@@@@@@:@@:#@@:@:@;::@@@#'#@@@:@@@@@@@@@@@##@@:@@:@:@'@'@:@;;@;@@;+@:@;:@+@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@:#:'@:@:#@@@@@@@@;:#@@:@@::::@:::@@@@@@@+:@@#+@;@@@@@@:@':@;++####@@#@:#@@@@:@;:@@@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@+:#'@';@:::'@@@@@@@::@@;;@::::;#::::;+':@:+@++@#@@@:@@@:#::@:@:@:+@@:@@:@@@@:#@::@::@#@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@:@:@@:@#@@@@@@@@@@@@::@@:+::@::;;@#::::'@:@@:@@@@@@::@@@:#+@:@:@::@#@@'#@@@,@@@::@#+#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@#:@:@''@@@@#;;+@@@@@@@::#@:+:+@::::@@@@@@@:@;;@@@@@#::@@@:;@+;@'#:@@+@@:@@@:@@@++:@@@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:@@#@:@@@;:::::::;@@@@@+::@;':@#:@::@+::@;;@:::;@@@;:::@@+:@:@:@:'@'@@#@@@#@@+@:@:@:;#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:#:@''@@;:;@@@#::::;@@@@@+::::@@+:@@;@@#@:#@:'@@@@@@@@@@@@;@:@:@:@;@@@@@@@@@:@@:@:@@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@@@@:@@@:#@@@@@@@+:::#@;:::::@@@@#:@@@@@@:@##@@@@@@@@@@@@@@#:@:@@'@@@@@@@@:#@@#:@:@:;#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@#+':@''@@@:@@@@@@+'@@'::;@@;::::+@@@@:;@@@#:@@@@#::::::@@@@@@:##'@+@#@@@@#+;@@@@;#@:@;#+@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@#'@;@:@#@@:@@@@:#@@:+@@:::@@@@;::@@+@@':#@:'@@@#::;@@@::+@@@@:@'@@+:@@@@+'@@@:@@:@@:@@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@++@'#@'@#+@@@:#@':@@:::@@@@#:@@@#::':@:@@@@::#@@@@@;:#@@@:@:@:'@@@@@@@@@:@@@:@@:@:;+@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@;+:@'@:+'@@@@@::#@;:@+:@@:::@@@@:@@''+;:+@:@@@@:;@@+;@@@::@@;'@:@@@@@@@@@@+@@@@;'@@:@@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@'@;@:@:'@@@@@;::@':+':@@:::#@@@@#@#:::@;:@@@+:@@#:::@@':@@:@@:@@@@#:;@@@@@+@@:@@@:@;@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@#@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@@@@@@@@@@@@@:@@:@@@:::'@@#@@@@;:@#@:@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@;':@;+'++'+++++'++++''++';;';;;';';';;;;;:+++##############';@@:#@@@;:@@@:@;@@:@@#@:@@@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@;;;';;;;;;;;;;;;;;;';';;+++'++++++++++++''+'++'++'''+++:::@+:@@@@@@@@@@@@:'@@#@:@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@;@@@+'@@@++@@++++++++++@+++++++'+++++'@@@#+'+++#@@@@+'+@@#:;:+@@@@@@@@@@::@@:#@:@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@;@@::@@@@@:+@::;'+##@@@;:::;#@@::::::::#@@@'::::@@@+#:+::#@:':;@@@@@@@#:;@@+:@@:@@@'@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@;@@:@@@@@@+:@@@@@@':'@:::#@@@#:;:;##':::'@@+;@@@@@+@:#:@@;@@:@:::'#+;::@@@@@@@@:@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:#:@'@#:@@::@@;:@#::::;+@@:'@@@@@::+@@@@@@@@:+@@;@@@'@@#:#@@@@:@:@@@+:::'@@@@#:;@@@:@+@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@+@+@''@@:::+:':::::@@@@;#@@@@@::#@@@@@@@@@@@@@:@@@:@@#@@+:@@'#'#@@@@@@@@@#';:::@@:@@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@+@'@''@@:::::':::#@@+@@@@@@@@@::@@+::+'::#@@@@:@@@:#@@@;::@@#;@;@@@@@@@::@:;@::@@:@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:#:@+@@:@@@::::;:@@@@'@@@@@@@@@+:#@@::::@@:::'@@@@@@@@@@@@#+@@;:@:@@:'@'@@@@:'@#;@@;@@@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@+@@:'@@@@@@@@@@@'@:@@@@++::::#@'::@+:@@@+'@@@@@@@@@@@'@@@@::@:@@::;@@+:@;:@@@@@;@#@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+@@@:'@@@@@@@@;#;+@@@@@@@@+::;@@:+@@:@@+;:;+:#@@@@@@@':''::#@:@@+@@@@#@#@:+@@#@;@:@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+@@'@;:;@@@+::#:@@@#:::'@@@;::@@@@@@:;:::;'':::+@@@@@@;::::@@:@@@:::#@:;@':@:+#'@@@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@+@::::::;:::':;@@@#@;:::'@@@:':@@@@:;::#@@@@@@#::@'@@@@@::@@@:@@+::::@@#:@:@'##+@:@'@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:#:#'@:::::'@::::@@@@@@@@@;:@@@@::::::::+:@@@::::+@@':#:@@@@:@@@#:@@#:;+:@@@@@@;@##+#:@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@#@+@:'@@@@:::@@@:::::#@@@@@@@@:;@:::;@;:@@::::##::@#:::@@@@@@@;#@@@'@@:@@@'@@;@@'+@@'@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+@@@@#;::@':::;#@#+:::@@@@#::@@@'::@':@@:@@::@@@':#::;@@@@@@:@@@@@@+:@@@'@#@@@+##:@;@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+@@@;::::::+@@@@@@@@@+::::::#@@;@@@@@:#@@@@:::::::;::::###@;+@@'@:@;:@@++'+@@@'#@+@'@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@+@:::'';::'@@@@@#@@@@'::::::@@;::@@@@::@@@@::@+:::;:@#::#@+;@@@@#:@:#@@@@#:#@@'@@@@+@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+@::'+@@@@##'+@@@@:@@@@@@@@@@'++++'@@@+''+++++++@@@@@@@@@:#@@@:@;@':@@@@@@@:@@;@':@:@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@;@+#@@@@@@@@@@@@@@@@@::@@;::::::::::::::::::;;;;;;;;;;;;::+@@@@:'@@@:@@@;'@@@@@@:@@@##@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@+#':@@@#;::::;+@@@@@@':@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::@@@:@@@::::#@@@@:@###@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+#:@@+::;#@@#+;:::@#:#@#@@;;;#@@@@@@@@';;;+@@@;;;#@@#::'@@@#:@@+@@@@::::::@@@@:@;:@#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@'#@@@:;@@##+'::'@@:;@@::@#:+@@@@@+@@@@@@@#@@@@@@::@@@@#:::+@@@@@@':@+:@@::@@@@:@@@:@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@+#@@::@#@+::;@@@;:@@@::@@:@@#@':@+:@:;:+@':;:@#@@@'+@:#@@':::'@@+';;@@@@::@@@@:@;;@#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@'#@@;:+::@#@@@':#@@@@+:@+@@;@;:;:;@:@@@@'@@@@;+#@@@@#@'::@@@#;::::;++@@:::@@#@:@';@#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@@@'#@@@::::@@@#:+@@@@#@@@@@@::::::+@@+@:;@:@;:@:@@#@@:@@@@::::'@@@@@@@#::::@@@:@:@@@;@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:@++@@@@+#@@@::@@;;+@;+@@@@;+@@@''#:+@@@+@'@@@@@':@@@@::'@@@@;:::::::::::#@@@::@:@::@#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@+@#+@;@@@@@::@@@;:@:@;:@:@@@@@@@@@;@@@@@:;@#:@@@@@:@@@@::@#@@@@@@@@@@@@@@@@#:#@@:@@##@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@;@'#@'@;:#@':+@@@@+#@'@;:'::@;::@:##@@:#@:@:@:'+@;:@@#+:@@::@@:#@@@@@@@@@@@@@@@@@@:@@@'@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@:@:;@:@@@#:;@@@@@@@@@@@::::::::@:@@@@@;@;:@@;'@:+';@@@@@+@@@;+@''@@:;+#@@@@#';::+@:@::@#@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@#:@@@:@@::@@@;::@@@;++:::@@;::#@:@:@@@@@':;@@@#:@@@@@@:@:@@@@@+#@+@@@#::::::::::@;#@@@'@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@:@+::@@@@:::::#::;:::::::::@@:@;@+:::+#:+@@:'':::+@+@;@@::;+@@@@@@@+:::#+:::+@:@;;@+@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@:@'@@'@@@@+@@+;:::;:'#:::#::;@@:@@@@@@@@@@;;''@@@@@@@@@'@@@@@@@@@@;:::::::::@@@+#@;;@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@+:@:@'@@@@@@@@@@:::'#:'@@@'::@'#@:#######@:::@@@@@@@@:@'#+:::::::::;#@':::@@@@@:@+@@:@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:@:@@:@@@@@'@@@':::'@#::+@::@#@@@:@+@@@':::::#@@@@#'@@@;@#;::::;@@@;:::;@@@@@:@@:@:@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@:#@#@@@@@@@:@@@@::@::@@@;::;+@:@#+#'@#@@@@:@@@@'@:@;@#+@#@@@@@@@@+::::+@'::@##@@@@;@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@:@::@;@@+:;@@@@@:@@::#@@@@@+@@@@';@:@'##@;@'@#@:@:#@@@@@:::'@@@::;::'::::'@:@::@'@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@+'@@@@'@::;#@@@+@@@@;::#@@@@:@@@@::#'+++@:##@;+#::@@@@:@+;@@@;:';::::::::@;@@#@'@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@''':@#@#::::@@@:@@@@#::::::@:@@@@@'@#:;@@@:;'@'@@@@@:@''@@@:;+:;@@@@@@#@@'@:@:+@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@:@#@@:@'#+::@@@:::;@@@;;+;#:@::@+:+@:@:#:#:@#:@#;;@;#'@@#:@:;@@@@@@@@@@:@@:@:@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@+:@:@@#@@@@;@@@@@:@#@@@@@'#:@@:@:#:+:;@;@::@:';@:@@''@@:'@:@@@@@@@@@@@;@@@@:@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@:@:@@+@#@@@@@@@@@@#@@@@@+:@:@@@:@++#@;@:@';'@:@@@:@@@;@@:@@@@@+::::@@;@::@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@#:@+;@:@::@@@@@@:@@@@:@@@@@:@@@:+@@;#''''+@@#:@@@;@@@@@:@@@@:::;::;@:@@@@;@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@'#;:@@#@::@@@@@:+@+@'#@@@@'@:@#:@:@::@:;@:@:'@:@:@:@@:@@@::::::::@'@@:@:@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@:@@'@;@@@@@#@@:;@@@@:@@@@:@'+@;'#:;@@'::@;;@++@:@#@;@@::::::#::#@:@@@@:@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@:@:@@;@@;#@@@+;@@@@:@@@@#'@@#@#@@@#:@@@#@@@@@;@:@#@;:::::;@@:'@:@;:@;@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@##;##@@@@@@@:@@@@@@'+:@:+@@#:@@@''@:'+@'@@+:::+@@@@@@:@+#@@@#@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@::@:@:@;@@@@@@@#:@@@:@@@@#@@'@@@@@@@'@@#;::#@++@@@@@@@'@@#@:@:+';@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@'#@@@@'@;@@@@#:::::@;@@::'@@:@@';:::;+@@:@::#@@+;::::::::@@@:@@;@;#@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@#+;:@'@::@@;#:'::;;@@@@:'+:@+@@@@@@@+::;:::;@@+:::@@#@@@@##@#@@::#@::::::::::::+@++@:@;'@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@;#+:'@':@@:;@@##:;@@@@@@:@'@@;+@#:'@@@@@@@@@@@@@@##@@@@:::::::::#@:::::::::::::'@:@@:@:@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@;;++@@;'#:'#@#@@'@@@@@@@:;@:@@#:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@+@@;@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@;@@::@+;@;;:'#@@#@@@@@@@@:@:@@@@@##################################+#############@:'+@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@#;:@@@#@'@+@@@#'@@@@@@@@@+:@@:;@:@@+#@;@@+@'@@;@##@'@@'@+#@'@@'@'#@;@@+@'@@'@#+@'@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@:#++;@@#@:@+#@@:@@@@@@@@@@@;+@@@:#@::@:@;:@:'@:@::@:##:@::@:@+:@::@:@;:@:'#:@::@:#:'@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@:@@@@@@@@@#::'#'#@@@@@@;::;@#;@@#@#@@+@@@@#@@+@@@@+@@#@@@@+@@@@#@@+@@@@+@@+@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;##:;':+::+:;':+::+:';:+::':'::#:;':+::+:';:#::+:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
`````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@````
```.`,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,````
`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..```
```.`.``````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````
`.````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
`.````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````