::::::::::......::::::::.... ..:::====--==-:..........::::::::::::::........:::::::::::::........................::::::::::.. ..::::::-===++=:::::::::::::-===+=-::::..:::::..:-===+*-::---:.:::::::::-+*==+**+++++=----... .+#*+*%#*#+=--------:::::-+=-**==========-----++=*##=--==-+*= -------:::::.::::::::::::... ..::-==-::...::::::::::::.:::::..............:::::::.................................::::::::::...........::-::::-===++-::::..::::.::-===+=-::::..::::::::-+==+*+::-==-::::::::::-=+==+*+=---=-::-:.. :**+*#%%##+=--------:::::=+=-**==========-----++=*##=--==-+*= -------::::::::::::::::::::. .::-=-::........:::::.....................:::::::::..... ......::::::..::----::...::::::::::::::::::::::--::::-===++-:::::::::::::====++=--::::::::::::=+==+**-:-==:::::::::::-=+==+*+=----::::... ..++++#%%%%#+=-------::::::-+=-**==-----===-----+++*##=--==-+*= --------::::::::::::..::-=-:.. ..:-=-:::.:.....:::.... .............. ...::-=+++++=*++****=::::::::::::::::::::::--::::-===+=-:::::::::::::-===++=--::::::::::::-===+**+-=+=::::::::::::=+==+*+=--:-:::.. ..=+++*%%%%%#+=-------::::::-+=-**---------------+++*##=--==-+*= -----------:::::::......:-=-:.. ..-=-----==-:..::... ..=+****#*%%%*########:::::::::::::::::::----::--===++-:::::::::::::-===++==--:::::::::::-===+***+++=::::::::::::=+==+*+-:::-::... .:*++*#%%%%%#+-------:::::::-+=-*+-:::::::::::---+++*##=--====*= ------------::::... ...... .:==--::---:..... .-#***#####%%%%%%%######+===-----------------::::-===++=--:::::::::::-===+++==-:::::::::::-+==+*****+=::::::::::::=+==+*+-::::::.. ..++++*#%%%%%#+=-------::::::-+=-*+--::::::::::---+++*##=--===+*= -----------:::.... .. .:==-::::::... :########%%%%#%%##%#####+#%#-----------------::::-===++==--::::::::.:-===++===-::.::::::::-+==+**+*++-::::::::::::=+==++=-:::::... .-*++*##%%%%%#+--------::::::-+=-**=-----::::::---*++*#*=-====+*= ::::::::::::... .:==-:........ ..-+%#####%%%#%%%##%%###%####%-:::::::::::::::--::::-===+++==-::::::::.:-===++==--:....::::::-+==+**+++=-::::::::::::=+==++=:....... .:*++*###%%%%%#+=-------::::::-+=-**+===------::--=*++*#*==+++=+*= ............. .:==-:...... .###+####%%%##%%%%%%%%%%%%%%%%*:..............:::::::-===+++=--:::::::..:-===+==--::.....:::::-+==+**+=+=-::::::::::::=+==++=:::.... .++++#%##%%%%%#+========------=*=-**+++===-----====*++*#*======+*= ----:.... ... .:==-:...... .#%%%#%%#%%%%%%%%%%%%%#*%%%%%: .+. . .... ..::::::-===========-:::..::-===+==--::.....:.:::-===+*++===-:::.:::::::-=+==+*=-:::... -*++*#%##%%%%%#+++****+=-:::::=+=-**======---------*++*#*=====-=*= %%%#- .:==-:...... .=#%%%@%%%%%###%%%%+#-%%#%%#%-.. .:::..:-==-=====+***+=:..::-===++=--::::::::::::=+==+*++===-::::::::::::=+==+*=--:.... ..**++#%%##%%*#=-=-========+%#=:=+=+***+===----------*++*#*=--==-+*= %%%%-.... .:==-::....... .%+%@%%%##%%%%%#%%%@%%##%%...:. .::::::--=-=+**#+*+***=:::-====*+==-::::::::::::-+==**+====-:.:::::::..:==-=++===-:... .+*++**%%#*#==++++*+:=+++======%#****##%%%*+--------=*=+*#*=--==-+*= %%%%=... ..-==--:::.::-+*+=-... ...###%%##%%%%%%%==*%#*+=*=:..#::. .:-:::--*#*#%%#%%###**=-:::====++=--::...::::..:-===+*=====-=+***###*-::====++**####+:..... .-+++***%##+++*****#@%@#**++==+==%##%%%%%%%%#*-------=*++*#*=--==-+*= ====-... ..-===------==*####*+*=:. :.#%%%##*+*****+===+===**#+++=+-.. ..:::=++#%%%#%%%%%%%%%##*::-====++=-:::...::::..:-===**=---+*+=++*******+=+==*#%###%####*#*-. ..++++#**#%=+***##%#@%%%%#=#**+++++%##=++++*####=------*=+*#*=--===+*= *#*+=... .::-==---:--=++*###%%#####+.. ......... :=%%%%#*++++*####+++###%%######%%#*. ......:::##%%%%%%%%%%%%%%%%%*=:-====+==::::..::::::::-===+*+:-==+*###########*++##*##########%%##*.++=+-=:%#+****#*%%%%%%%%*%#+#******%#*#+++**%%%#-----=*=+*#*=--===++= #+-#@%#%#- . .::====-::....:=*%%%%%%%%%%%##*.. .++****#****+. .%%%%%#%*+*+***##*#%*+++******+++++##.:::::-*+%%%%%%%%%%##*==*%%%%**-====++-::::..:::::..:-===*++-++*#####%%%%%%%###*+#%%%%#**####%%%#%*===+#%%+#+***##%#%%%%%%%###%###*****%#**#***#%%#------*=+*#*=--===+*= +=#***++=====+.. ..............:=====-:... ..:+%%%%%%%%%%%%%%%#+. . .+#####+.*.#=+:-*.. .*%%@@%*%#+*#*%%#%%*********%%*******%*====-##%%%*----------:::-%%%##====++-::::..:::::..:-===*+==+*###=---=*%%%%%%%*####+-----------=%%+:=#%%%+#*######%%#%%%%#%%%%####*##*@%%%%#*#%%%#=-:--=*=+*#*=--===+*= #*%+##***++++++#......::=***+=-::=====-:. .:+%%%%%%%%%%%%%%%%%#:::=*##=-#*##.###.#**.+-.. .-==++*#%%%**:#%%****####*+***+#*****%+++==%%%%+------:::::::::-##%*====++=-:::..:::::..:-===*===*:+*+-#==+=*=%%%%%+####=---====------###%%%#+###@%#%%%%%%%%%%%%%%%@%####*#%#@%#####%%%=-:--=*=+*#*=--===+*= #%%%%*%%*:*++++**----=*****##%%#*-====-:. .:+%%%%%%%%%%#*+*=-:-==*###%#:+.#########*.#####.. .-==+*%*#%+#*#%%****###*%#%%%%%#%***##%##*+*%%#--:---=-==*#%**::##*--===++=::::..::::...:-===+==*#:*#%%%%#*#=-=====***##=------::::::-=#%%%#*%%@%@%%%%####%%%%%%%%%@@@@@@@%%%%%%####%%#+----=*=+*#*=--===**= ####+*%%%#******#%#=+*##########+======:.. .:+%%%%%%%%%%##***+=-=-*##%%%:%####***+++*#*#%%%##..=*%@%%%%##%%%+*#*#####%%#%%%%%*%@####*+%%+=#%#-++=*##*-=##*-+=:+#:-====++--:-:::::::::::=+==+==%%@%##*++=-----=--=###*==---====+=----=*******:%@%%*--:###***##%#*#-#@@@%@@%%**##**#%##+----=*=+*#+-=====+*- %%%%##%#####%%###***%###%%%%%%%#+=-====:.. .:+%%%%%%%%%%%##***+++=*#%#%#%#******%%%%%%%*#%%%##%%%%%%%%%%%%@%*%#####%%%%##%%%%#%%######%#=-=#*:-**%#*=::=+*+:::-:+-====++--:-:::::::::::====++%%%%%%+=+..::::::::++****#***+#%#=+%%#+-#####%%%%%%@+=++%%%#%%###%%%*+**%%@@%%%***###%*+=----=*=+*#+====--++= %%%%%%####%%%%%%##%%###%%%%%%%%#+======:.. .:*%%%%%%%%%%%%###***+==#####***#%%%%%%%%%%%#%%%%%%##%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%%%#+-:+-=:::-=---:-:::-::::#:-====+==-:::::::::::::====*=%@@%%%*=.:::-----**#:#-=+#*.+:.##::***#++%@@@@%+%%%%*-=-=*=*==#+*++==+%%%%%%%%%***###*++=----=*=+*#+====--**= *##%%%%%%%%%@##%%%*%%%%%%%%%%%%#+======:... .:+%##%%%%%%%%####*+=++*%%+=+**####%%###%%%*=%%%%%%#%%#%%%%%%#%%%#@@%@%#%%%@@@%%%%@%%%%@@%%%#-::*:-------*@*%*-:----=.%#**+++=:-::::::::::::====*==@%*%%+:::::----%#-..##=####+*+*-#:=-=--++@@@@@:%%%%#--=++=--:+=+++=-=%%@%%%%%#########+=----=*=+*#+====--+*= ####*######%%%@@%%%%%#%%%%%%%%%#*======:.. .:+#%%%#%%%#%%%%%%%###%*.++=++*###%%%#**##*--#%%%%###%%%##%%%%%%%#%%%%##*#%##%%%%%%@%+%%%#%%%##=----==----++=-:::--:-*%%%%%%%#**=-::::::::::====**-=%*#*+-::-====*%##.###+@@@@@%**####-=--+*@@@@@%%%%%%---=+-=++=++==--+%+@%%%%####%%##*#*=----=*=+*#+====--**= %%%+*%%%####%%@%@@@%%%%%%%%%%%##*+=====:... .:*%%%%####%%###%%%%%@%%#===+==++*****+++==--*%@@@%%%%#%%%%#%%%%-%%%%%%#%##%%%*=*%%%*%#%%%%%%%%%%*=-==--=*###*+=:::=%%@%%%%%%%%%%%%#+=::::::====++==%#*#=:=+*##--+%#**#%%%%%%%%%%@@%#---==+@@@@@#%%%%@*--====+*+=====--%%@%%%@%%%%#####+#%+----=*=+*#+====--**= ##*==#%##*#*%%%*%@%%%#**#%%%#***++=====:... ..:*%#%%%#%%%%###%%%%%%**=*=+=+++++++*+++=+=--%%%%%%%%%%%%%%###%%:%%%@%%#++*##=-=-=#*+=%@%%%%%%%%%%+=---===+++=-----+%%%%%%%%%%%%%%%%%%+::::-====*+#%@%##+:++*#=:=%#=%%%%%######%%%%@@%+==+*@%%@@@%%@@@#%==++=+=+++*+==@%%#%%%%%%%#####+==#%=---=*=+*#+====--**= ++===++**+++%%%#%%%%%*#######***++=====:.. .:=*#%#%%%%%%%%%%%%%%%#+-==*+++++++++****=====@%%%%%%%%@%%%%%%##+%%@@@%+%*===+**#*+--=*%%#%#%%%%%%%%#-+====+==----=:+#%@@%%%%%%%@%@%%%%#-:::-=+==#%%@@%@%--:-----+@%%#######*########%*=+++@@@@@@@%%%#@%**++=++***+=+*%%%%@%@%:+####%*====#%%%%#**=+*#+====--**= *+-*++#**+**%++*%%%***#%##%#%%%#*+=====:.....-=###%%%%%%%%%%####*%*++*-=+++++++**+*#####=+%%%%%%%%%%%%%%%%%%#%%@@@%++%+-==++*+==-=%@##%%%%%%%%%%%:-=++++*****=-:=#%%%%%%%@@%%%@@@@@%+:::-====%#%%@%%%=-==-=**=@++=+++*###*******=#-=++@@@@@@@@%%%%%@+%%%%#**%%%%%#=-%+*-.#:--+*+--=-==+%%%%%%%%###+====-=**= +#%#%#*#***%%#=#%%%+*##%%#%%%%#**+=====:.....-=#%%%%%%%%%%%%%##**##%#:*#=+********###*+=+*%#=:*%%%%%%%%%%%%##%@%##+%*#%++==++%%#%##%%%%%%%%@%%%%%---+=+*##*+---:-#%%%%%%@@@@@@@@@@@%#=::-+*#####%%%%%+----=.=*++=-=+*%*%%#*+%#%%+-=#+%@@@@%@@@@@@%%@=+*%%%%%%%%%%@@++++#-.::=%%%%*--=+%%%%%%%%%%%%%##*=-=**= %%%%%%###*#%*@@%%+--*#%%#######**+=====:.....-+#%%%%%%%%%%%%%###**+*%-=%=+*******++++===-:.*+*%%%%%%%%%%%%%%%%#%%%=++%%%%%%##%%%%#%#*%%%#%%%%%%%-+--===++++=---:::**++-%@@%@%@@@@@@@%*+*##%%%%%%%%%%%%=.==-=%=**+-=++++**++==+=::--:::@@%%%@@@@%%@@##=++#*###%%%#**++=-%%##*##%%#+*=+%%%%@%%%%%%%%%%%%%-=**= ###%%%%#**%**%=...:+**######%*#**======:.....-+#%%%%%%%%%%%%%%###*=%#:-=#****#####*####+=-::..%@%%%%%%%***%@%%%%#**=***%#%%@@%%%%%%%.=%%%%%%%:-++:---===+++=---::...*-=-:@%@@@@@%##*####%%%%%%%%%%%%%%#:.-=%%=-+=====++++++=:-=---+==-:%%%##%@@@@@@%%+++++*####****+=--%%%%#%%%%==-#%%%%%%%%%%%%%%%%%%%%***= *#%%#####%@@%%@%######%#+*#*#**+=+=====:... .::+%%%%%%%%%%%%%%%##*+::-=+=****#######%*=+-:-:********##%%%***##%%+*#%%*#**%@%%@%%%%%%%##%%%+----#=---=====+==----:::.#-=---:#%%#**#######%#*##%%%%%+=*%%:::-#-=++===+++++*++++-=-==+-==%@@@@%#%%@@@%%%%*+****#**+*++===%%%%%%**+%*-#%%@@@@@@%%%%%%%%%%%%%@%*= %%%###%@%%%##%@%##+**+***+=**##+++=====-... ...:::%%%%%%%%%%%%%%#%%#%=++******+*%#*+**===-:*##*********:.:++%##%###@@%%%#*###%%%%%%%%#%+:--==-=@+=-====++++==----:*#===--------%#%#########%%%%%%@%%%%%:::-==+#%+=++==+****#++#*%*#*%@%#%%%#%%%%%%%-#%%#**+***++++=+%%%%%%%*##***%@@@%%%%%%%%%%%%%%%%@@%%%#= %#%%%%%%%##*=+*+**=-===+++##%%%#*+=====-:.. ......:===*#@@@@%**#####%%#++*****##%+*#**++=-####...=*#####:....%%%@%%@%%%@@@@@@@#@%%-------======+%%#%*+=+***+=-+**#%=====--===----:+#######%%%%%%%%%@%%-.::-=*#%%+++==+******#*#%%%%#*%%%%%%%%%%%%%#-@@%@@@%#**++++#%%%##%%%#####%#*#%%%**+*%******%%%%%%%%%+ %@@%%%%%%%+*%*=+++*****####%%%%**+=====-:......::%%%%%:+%@@%%#+#%*#%%%%%+****##%###*+==+*#%##.-..::=####.:::..:%@@@%@@@@@%%%%%#*-----=-========+=%###%%%%%%#%%%*##======----=-=----::####%%%%%%%%%#.....:-=+++%%#*+++**#**#=##%%@%%%#*%%%%%%%@@%%%%@@@@%@@@%%%%%%%%%%%%*@%%###%%##%##***%++#*+**+*+%@@%%%#*# %@@@@@@%**+#**%%%##############*++=====-::..:--%%%%%%%=:#%@%%%#*#*##%%%#%#+#*#*#*=#==+++##%%##-.::.+##%=.-:::...@@@%%%%%##%##%:-------=-=====+=+==%#############*=======--------====--=%%%%%%%#**. ...---==+**%%#*******.#%##%%%%%%%#*#%%%@%%%%%%%@@@@@@%%%%%%%%%@@%%%..##%#%%%%%####*##*%*##%#%+#%@%@@%#** %@@@@@@*#**##%%%%%#############*++=====-::...-+#*%%%%#+:=%%%%###***+++%%%%%%%%%%%%%##%#####%##-...:*##%-.-=-:::..%%%%%%*#*%##-==++*+*###%*+=+======############*====++-==--==-=-====+---%%***#*...:****%%#===+**%##**##==##%%%@@@@%%%%###%%%@@@@@%%%%%%%%%%%%@%%%%%@+#@%%@%%%#####%########*#+%+*%%@@@@%@%%% %%%%%%*#*#*##%%%%%%#########%%%*++==+===-:.::-+%*+%%%+.-=%%%%%#*#*++++++%@%%%%%%%%#%%%@%%%@@@%%%%%####%-::-=-:::..:%%%#%%**#-==+=+++=+++=++=========###########=====+=+*##%#=---=====+==--###****###%#%%%%%%++=**%##*#.#%%@%%%%%%%%%%%%%#*%%%%%%%%%%%%%%%%%#%%%%%#%%%%@@@%%%%%%%%%@@%%####%%##%%%%%@@@@@@%%% %%%%%*#*#####%@%%%%%#######%#%#*++==+====----+*%%%%%%+.:*##%%%#****+++++++%%%%%%%%%%%%%##%%###########%-::+++-:::::.%%%%#%#-=+++=++++==+=+==========*########%======+===+++++*+======+==-=-*######%#%#%%%%%%@#+++-###%%%@%%%%%%%%%%%%%%%%#+%%%%%%**#*%*##%##*%%#%#%%#%%%%%%.:+#%%%%%%@%%%%%%#*.%%%@@@@%@@%%% %%@%%####:=*#%%%%%%%%#######%##*++=========++*#%%%%%##.=###%%%##*********++*::--%*%::--::::::::::#####%:+==:==:::::-.%#%@%-=+++++++*+================########===========+++=++===**+=*===-=.*%@@#%%%%%%%%%%@%%#****#%%%%%%%%%%%#@@%%%%%%%%#+%%%%%%%%%%%%%%#%%%%%#*%%#####%=++%.+.%%%%%%%%%%%%%+=@@@@@%@%@%%% @++**=-#*-*++%%%%%%%%%%%%######*++=========++*#%%%%%%#.-#**#%%#*+***********#-::%#%-::-::++***++-%#%%%%:*-=:==:-:::--.%%%+==+*+++++*++================#####%=====--======+++++====*+=+======##%%%#%%@%%%%%%%##*##*%%%%%%%%%%%%%%%%%%#%%%@%##*#%#%%#######*%###**##%%%%###%.-:+..%%.+%%%%%%%%%%#:@@@@%%@%%%%@ %%###-%=:%-+=%%%%%%%%%%%%%%####*++=========++*#%%%%%##::%#*###::+...:..#****%#%%%#%::%#%%##%%##%-%%%%%%-=:=---=+=--=--.@%===+*+++++**++**###+=========+##%%=#########*+++==+=====**+++==+++=##%%%%%%%%%%%%%#****##*##%%%%%%%%%%%%%%%%%%%%@%%#**#@%@@@@%%%%%%%%%%#*%%%%%#%##-::-:.#=-%%%@%%%%%%#+=@@@@@@%%%@% +###+*+*##%-*%%%%%%%%%%%%%%%###*++=========++*#%%%%###=-%####=.-+:.==.:.**#*%%%%%%%=-%%%########%%%%%%%-*=+:=-=+*==+---.=+++++++*++**++******##+=======#%%###*******++++=+++====**++*++++*+==%%%%%%%%%%%%%%*+==*##%%%%%%%%%%%%%@@%%%%%%%%%%%###%%%%%%%%%%%%%##%%%#%%%%%%%%#%*:%:..+%%@%%%%%%%%###*@@@@@%@@@% #**##%*::=#%%%%%%%%%%%%%%%%%%##*+==========++*#%%%%###**%###***#.+*#-.-.*##*%%#%%%%*=%%##%%%%%#%-%%%%#%%*#+*+++#**===++-=**++*++**++**++***+*****#======%%+**++++++++++++++===+=**+++++**+===#%%%%%%%%%%%%#*+%@@@%%%%%%%%@%%%@@@@%%%%%@#%%%%%%#*#@%%%%%%%%%%%%%%%#%%%%%%%#%%%%%%%%%%@%@%%%%%%%%%#*@@@@@@@@%% %##**#*%%%%%%%%%%%%%%%%%%%%%%%#*+==========++*#%##%%%##%####***::=-:=..*####%%#%%%%*-%%*#%#%%#%#@%%%%%%%:-#+#+#*###**++==+*****++*++***+++*+++*****##==+%%#++++++++++++++++===++**++++**++====%%%%%%%%%%%@*#%%%%%%%@%@%%%%%%@@@@%%%%%%@*%%@%%%##*+%%%%%%%%%%%%%#%#%%%%%%%##%%%%%%%%%@@%%%%%%%%%#%#@@@@@@@@%% #*#***#%%%%%%%%%%%%%%%%%%%%%%%#*+==========++*#%%#%*@%%%%%%#****+*+.*.=**###%%#-#%%#:%%%%#%*####=%%%%%%%%--#*+*####***=+=+*****++**++***+++*+++*****##*+@%%++=++++++++++===+=++**++*+***+===+=#%%%%%%@@@%%*%#@%%####%###%%@@@@@@@%%%%@@#%%%%%%%%#*=%@%%%%%%%%%%%%#%%%%%%%#%%%%%%%%%%@@%%%%%%%%%%%%%@@@@@@%%@ +#****#%%%%%%%%%%%%@%%%%%%%%%%%*+==========++*#%%%%#+=%%%%%#*#*#*********###%%%#%%%%%%%%%%#%%%##%%%%%%%%%%#=##+#######*+=+*****#+**++****+++++++*****###++%+++++=+++++++==+==++**+++***++===+==%%@%%%%@@@%%%%###%%#%%#%%#####%-%%##%%%%%##%#%%%%##%%@%%+%%%%%%%###%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%#%#@@@@@@%@% ##****#%%%%%%%%%%%%%@%%%%%%%%%%*+===========+*#%%%%#%%%%%%##############*###@%%#%%%%%%%%%@@@@@@%%%%%%%%%%%%@%%#%%####*#+==******++**++****++++++******#**+**+++++++++++=+=++*++**++***+++===+++*%%#%%%@@%%%###%%###%%#####%%%=%####%###%%%%%%%%#%%*%%%%*+#+#%@%%###%#%%%%%%%%@%@%%%@@%%%%%%%%%%%%##@@@@@@@%% #**####%%%%%%%%%%%%%@@%%%%%%%%%*+==========++*#%%#%%%%%%%%############%%####@%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%####*++=+******+*#++****++++++*******+**+%+++++++++===++++*++*++***+++++==+++*%%%%%%%%%%%#%%%%%##%%%%%%%%%+%%%%%%#%#%%%%%%%%%%%%%#%%%%%+#%%%%%####=%%%%%%%@@@%%@@@@%%%%%%%%%%%%###@@@@%%%% #**##*#%%%%%%%%%%%%%%%%%%%%%%%#*++=========++*#%%%%%%%%%%#%############%%##%@#%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%####++==******++**++****+++++++*********+==+===++==+++****+**++#*++++=+====+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%#%%#%#%%%%%%%%%%%%%%%%%%%%#%%%%%%%###*%%#%%%@%%%%%%@@@@%%%%%%%%%%%%%#%@@@%%@@ ###*###%%%%%%%%%%%%%%%%%%%%%%%#*+==========+**#%%%%%%%%%#%%############%%#%@%#%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%#*+++=+***+**+*#+++****++++++**********====+++=+++++***++**+*+++++++====++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%%%%%%%%%%%%%%%%%%%%%%%#%%%*#%%%%%#%#%#%%@%@@*#%%%@@@@@%%%%%%%%%%%%##%@@@%%%% #####%%%%%%%%%%%%%%%%%%%%%%%%%#*+==========++*%%%#%%%%%#%%#############%%#%@%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%#%#%*+++=*****#++**++*****++++++*****+***+======++=++****++*++##*++++++==++*%@@%%%%#%%%%%%%%%%%%%%%%%%%@%%@@@%%%%%%%%%%%%@%%%%%%%%%%%%#%*%%%%%%*##%%%%%@@%%%%%##%@@@@%%%%%%%%%#%%#%@%%%%% ####%%%%%%%%%%%%%%%%@%%%%%%%%%%*+==========++*#%%#%%%%##%###############%%@@#%%%%#%%%%%%%%%%%%%%%%%%%%#####%%@%%%%%%%%%*++++=**###*+*#+++********++=+******#*+======+++****++**+*####%***++#*+*+++%%%%#%%%%%%%%%%%%%%%%%%%%%%==#%%%%%%@@@@%%@@%%%%%%%%%%%%%%#@%%%%%**#%%@@@@%%%%%%%%%@@@@%%%@%@@@%%%%#@%%%%% ###%%%%%%%%%%%%%%%%%@%%%%%%%%%#*+==========++*%%%%%%%%#%################%%@%#%%%%#%%%%%%%%%%%%%%%%%@%%%%%%%#%@@%%%%%%%%*+++++*####%****+++*******#++=++*****#======+++****+++*++**##*+++*#**++*%%@%%%%%%%%%%%%%%%%%%%%@%@@%===-+%%%%%@@@@@@@@@%%%%%%%%%%###%%%%#%*#%%+*@@@@%%%%%%%%%%@@@@@@%@@@@%%%%@@#@@@@% ###%%%%%%%%%%%%%%%%@@%%%%%%%%%#*+==========++*%%%%%%%%##%%##############%%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%@%%%%##+++++++**###***++++*****+*#+++++****#====+++*+****++*++*++***+++***+++**%@%%%%%@%%%%%%%%%%%%@+=-======-=%%%%%@@@@@@@@@@%%%%%#%%%%#%%%%*%%%%%%%#-@@@%%%%%%%%%%@@@@@@@@@%@@@@@@@%*%%%% ###%%%%%%%%%%%%%%%%@%%%%%%%%%%#*+==========++#%%%%%%%#%#########%#%######%%%#%%%%%%%%%%%%%%%%%%%%%@%%@%%%%%%%@@@%%%#%#%#+++++++=**##***#**++*****+##+*+++****=+++*********++*++%#++***++*****#%#%%%%%%%@%@%%#*+======------=====%%%%%%%%@%%@@@%@%%%%%#%%%%%%%%%%%%%%%%@@@@@%%%%%%%%%%%@@@@@@@@@%%%%%%%%+*%%% #*#%%%%%%%%%%%%%%%%@@%%%%%%%%%#*+==========++*%%%%%%%#%############%%###%@%%#%%%%%#%%%%%%%%%%%%%%@@%%@@%%%%%%@@@@@@#%###+++++++++=%%####****************+++******+**+****++******++*+*++*****@%+@@%%%%%@%%@%#++=========-===-===%%%%%%%%@%@%%@%@%%%%%%%%%%%#%%%%%%%%%%%@@@@%%%%%%%%%%@@@@@@@%%%%%%%%%%%*+%%% #*%%%%%%%%%%%%%%%%@@@%%%%%%%%%#*+==========+**#%%%%%%%%%###########%%##%%@%%%%%%%%%%%%%%%%%%%%%%%@@%%%%@@@%%%@@@%%##%%##++++++++++++##%%%**********+#+************************%@++++**++***+*%%@%#%%%%%@%%%%#+========-==-===-==#%%%%%%%@@%%%@@%*%#%%%#%%%%%#%%%%%%%%%%@@@%%%%%%%%%%%@@@@@%%%%%%%@%####++#%% #*%%%%%%%%%%%%%%%%@@@@%%%%%%%%#*+==========+*#%%%%%%%%%%%#######%###%%%%@%%%%%%%%%%#%%%%%%%%%%%%%%@%%%%%%@%%%%%%#%%%#%%%++++++++++******%#*****+***++#******#****+**#******#*#*++**+++*****@*#%%%*%%%%%@%%%%#++================+%%%%%%%%%%%%%%*#*##%#%%%%%%%%%%%#%%@%%%@@@%%%%%%%%%%@@@@%%@@%%%%%#%%@%*++%%% #*##%%%%%%%%%%%%%@@@@@%%%%%%%%#*+==========+*#%%%%%%%%%%%########%##%%%%@%#%#%%%%%%#%%%%%%%%%%%%%%@%%%@%%@%%%%@%#%%#%%#%++++++++*****+***%#*********+*#****##****+**#****#*#%+====*******#%@@%%%@@%%%%@@%%%%#*==========-====-==+%%%@%%%%%%%##*##*##%##%%@@@%%%%%#%%**%@@@%%%%%%%%%@@@@%%%%%%%%%%%#%%%++*%%@ +===--=#%%%%%%%%%@@@@%%%%%%%%%#*+==========+*#%%%%%%%%%%%########%##%%%@@%###%%%%%%%%%%%%%%%%%%%%%@%%@@@@%%%%@@@@@%%%#%@++++++++++++***++*%#*****+***+*#***##******#*****#@++====++*#####@@@@%%@@@%%%%@%%%%%#+===+=====-=-======*%%%%%%%%%@**##*##%*##%@@@@@@%%%%%#@%#%@@@@@@@%%%%@@@%%%%%%%%%%%%%%%%%+++%@% ++++=::::%%%%%%%%@@@%%%%%%%%%%#*+==========+*#%%%%%%%%%%%########%%#%%%@%%%%#%%%%%%%%%%%%%%%%%%%%%%@@@@@@%%%@%%%%%@@%%@@*++++++********+++%@%*******+*+*#**##******#***#%#+=====+++*%##@@@@@@%@@@@%%%%@%%%%%*++=====------=====+#%%%%%%%%##*####%*##%@@@@@@@@@%%%@%%%%%##%@@@@%%@@%%%%%%%#%%%%%%%%%#%%+++**% ####*+-:--#%%%%%%%@%%%%%%%%%%%*+===========+*#%%%%%%%%%%%#########%##%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%@%%%%%%%%%@@@@@@#++*+**++***#*+==++*%%%%********#*######*##**%%%+======+++*#@@@@@@@@@@%%%@%%%%@%%%%%*++=====-----=-=-=#*%%%%%%%%-###*#####%@@@@@@@@@@@@@@%%%%@%%*@@@@@@@@%%%%%%%%%%%#%%%%%%%+++***** #%%%%#*++*#%%%%%%%%%%%%%%%%%#*+===========++*#%%%%##**############%###%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@@@%++++++%%##*++++====+@%%%%%%%%###%%#*##%%%%%%@@======++***%@@@@@@@@@@%%%%@%%%%@%%%%#*=-====+==---=-=..-%%%%%%%%%#####%*##%@@@%@@@@@@@@@@@@@%%%%%%%@%%@%%%%####%%%%%%%#%%%%#*%%%#*++* %%%%%###*##%%%%%%%%%%%%%%%%*++============++*###***+++===+#########%###%%%%%%%%%%%%%#@%%%%%%%%%%%%%%%%@@%%%%%%%%%%@@@@@@@+%%%%%%%%##**++++===+@@%%%%%%%%%.%%@@@@@@@@@======++***=:-==:.-@@@@%%%%%@%%%%@@%%##*****+=+===----%%%@@%%%%%%%%%%%####%%@@%%%%%%@%%@@@@@@@%%%%%%%%*+@@%%#######%%%%%%%%%%@%%@%@#++* %%%%%%%####%%%%%%%%@%%%%%%#*++=+==========++*******++==--:-=#######%##%%%%%%%%%%%%%%%############%%%%%%%%%##%%%%%@@@@@@@@@@%%%%@@@@%#***++++===+@@%%%%%%%=%%%%%%%%%=--===++**##**==---:%@@%%%%%%%@%%%%@@%%##**++++*+#%*+==-%%%@@#*%%%%%%%%@@%#%@@@@@@@@@@@@%@@@@%@@@%%%%#%%%*+%%%#%###%%%%%%%%%%%@@@@%@%%++* %%%%%%%%###%%%%%%%%%%%%%%%#*+++++=========++******##**+--:--=######%%##%%#%########%%***#*##*###*###########%%%%%@@@@@@@@@@@@@@@@@%#####***+++===+@@%%%%%#%%%%%%%----===+**##%%**+..::%%%%%%%%%%@@%%%@@@%%***#+=++==+*++*==%%%@%*%#%%%%%%%%%%%%%%%%%%%%%@@*%%%@@@@@@@%%%%#%%%@%%%%#%%%%%%%@%%%%%%@@@*%%@#+## %%%%%%#*++*%%#%%%##%%%%%%%#**+*++========+++**#*##%%%##*=--==*######%#%%%%%%%%###*##%#*#****#****##########%%%@%@@@@@@@@@@@@@@@@@@@****##****+*%#+=-*%%**#@+@@*=+%-===++*#%%%%%*+*===-%%%%%%%%@%%%%%%@@@%%###*+++#%%%@=%%=-%%@@*%+%%%%%%%%%%%%%%@%%@%%@%#*%%%%@@%%%@%%%%%%%%%#**%%##%%%%%%%%%%%@@@@%*#@*+*## %%%%%%#*=--::::--==*#%%%%%##***++=========+**#####%%%%%##*++*#######%#%@@@@@@@@@%%#*##**+#**#*##***#*####***%%%%%%%%@@@%@%@@@@@@@@********#**%%*++=---====---====++%*-=*%%%%%%%***=-=%%%%%%%%%%%@@%%%@@@%%%##===#%%%%%%%%==@%@@%+%%@@@@@%%%%%%@@%%%@%%@%%%%%%%@@%%%%%%%%%%%%%%#*=%%##%%%@@@%%%@@@@%++*###%*= %%%%##*++=-::.........:::--+*#*++========++**####%%%%%%%#****########%%%%%%%%%%@@%%%%#*****#****#*#####**#*+@@@@@@@%%%%%%%%%%%%@@@**++**++*#%%%*-=+***#*+------=++*#%%****++*+++**==-%%%%%%%%@%@@%%%%@@%%**#+==-#%%=*@%%#%+@@@%%%%%%%%@@@@@@@@@@%%%@%@@%%#%%%%@%@@@@%%%@@%%%%%#*+-@@%%%%%%%@@@@@@@@#%@@%#%*= %%%#*+=--:::..............:-=#*++========++**#%%%%%%%%%%##***########%%%%%%%%%%%%%%%##=======**+*****#*#***++%%%%%%%%%%%%%%%%%%%%*++++*+++*##*%***##***#-----===++**%%**+++++++++*=+%%%%%%%%%%%%@%%%%@@%%****=++#%#%%%%@%@+@@%%%%%%%%%%@%%%%%%@@%#%@@@@%@@@%%%@@@@@@@%%%@@%%%%%##+=#@@@%@@%@@@@@@@@@@@@#=++= %%%#*+=-:::.......... . ...:+#*++=========+**#%%%%%%%%%%##***#########%%%%%%%%%%%##**+====-----=+***+*+**+***+%%%%%%%%######%%%%%++++++++++#*+*%%*****+---=====+++*##%+++++++++++:--%%%%%%%%%@%%@@%%%@@%%#***++++##%%%%%%%%==%%@%%%%%%%%%%%%%%%@#%%%%%%%@%%%%%%%%%@@@@%%%%%@%%%%%##*+@%%%%%@@@@@@@@@@@%*==== %%%%#*++==--:::....... . ..:=#**+========++**#%%%%%%%%%##*+==+##%#####%%%%%%%%###**+++====------=#@@@@@@@@@@@%%%%###****++++++#%@++++++++++**++###**==+***====+==++##%*++++++++++::#%%%%%%%%%%%%%@%%@@@%%####**++#%#%%%@#%%%%%@@@%%%%%%%%%%%%%#*@@#@@%%@@@%%%%%%%%%@%@%@%%%@@%%%%%##+*%%%%%@@@@@@@%%%*#+==== %%%%%#*++=====----:::::...::+#**+=======+++*##%%%%%%%%%#*+=-::::-+####%%%%%%%##***++++++==--::---=#@@@@%%%%%%%%##****+++=======+=+++++++++++++++##+***%+++**====+*####+++++++++++::%%%%%%%%%%%%%%%%%@@@%%+++====+*##%%%@@%%%%%%%%%%%%%%%%%%%%%##:@:%@%%%@%%%%%%%%%%%%%%%%%@@@@%%%%#%#*+@%%%@@@@@@@@%*+====== %%%%%%##*++====-----------=+*#**+=======+++*#%%%%%%%%%##*+=::......:-=*%%%#%%#***++++****++=----==*%%%%%%%%%%%##****++++==--------=++++++++++++++*%#+=+**%+**#++=+#%##++++++++*++::%%%@%@@%%%%%%%%%%@@@%**+======+#%%%%@@%%%%%%%##%%%%%%%%%%%%%%+@+#%%%%%%%%%%%%%%%%%%%%%%%@%@@%@%%%%#*-%%%@@@@@@@%+++++==+= %%%%%%%%###**++====-------=+*#**+=======+++*#%%%%%%%%%##**+=-:.........::-+#%#**************+====+*%%%%%%%%%%##****++****+=--------++++++++++++++*%%*##%=+*%#*###*#%**+++++++++***#@@%%%@%%%%%%%%%%%@@@%*****+++**#%%%%@%%%%%%%###@%%%@%%@%%%%#%++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##**%%%@@@@@@@*+++++==== %%%%%%%%#%#######**+++=====+*#*++======+++**#%%%%%%%%###**+==--:..... .....::-+****########******#%%%%%%%%%##*******#####*=-==----=++++++++++++++*%%*+*#%###%###*###*+++++++++*+#%%%%%%%%%%%%%%%%%%@@@@%%%@%%%%%%%%%%%@@%%%%%%###@%%%%%%%%%%#%%%-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*@@@@@@@@@@@%+++++++=== %%%%%%%###%%%%%%%%%#####****##*++==+=+++++**#%%%%%%%%##**+===---::..... ....:-+*###########****#%%%%%%%%%##*****####%%##*+++====++++++++++++++++*####%%%##########*+++++++++*+#%%%%%@%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%@%%@%%%%##%%%%%%%%@%%%%%#@@@%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%=@@@@@@@@@@#++++++==== %%%%%%%###%%%%%%%%%%%%%%%#####*++==+++++++**#%%%%%%%%##**+===--:::::...... ....:=*#%%%%%%%####**##%%%%%%%%####****##%%%%%%##**+++++++++++++++++++**#############*#***+++++++++++*#######%%%%%%%%%%%%@@%%#########%%%%%@@%%%%%#%#@%%%%%%%%%@@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%#=@@@@@@@@%#++++++==== %%%%%%%###%%%%%%%%%%%%%%%%####*++==+++++++**#%%%%%%%%%##**++==--:::.............:=##%%%%%%%%%##*###%%%%%%%%########%%%%%%%%###*++++=+++++++++++++++********#########*++++++++++++***********#%%%%%%%%@@%%%#####%%%#%%%@@@%%%%%%%#%%%%%%##%@@@@@@%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@#@@@@@@@@%##++++++==== %%%%%%###%%%%%%%%%%#%%%%%%####*++==+++++++*##%%%%%%%%%##***+++==--::..........::-+##%%%%%%%%##*++++*%%%%%%%%#######%%%%%%%%%###*+++++++++++=++++++++++++*++#######*#*++++++++++=+**++++++++++**%%%%%%@@%%%%%##***##%%%@@%%%%%%%%%%%%%%###%%%%%%@@@@%%%%%%%%%%%%%%%%%%#%%==%%%%%%%%@@@@@@@@@@@@@###++++++==== %%%%%%####%%%%%%%#**#%%%%%####**+++++++++**##%%%%%%%%%%###***+++==--:::.......::-+##%%%%%%%%#*+=--:::-=*%%%%#######%%%%%%%%%##*++++==+++++++++=++++++++++++*######***++++++++++++*++++=======++*#%%%%@@%##%##*#****#%%%%%%%%%%#@%%%%%#%#%%%%%%@%@@@@@@@%%%%%%%%%%%%%#%%%%%%%%%%%%%@@@@@@@@@@@@%###++++++==== %%%%%%####%%%%####***%%%%%#####***********##%%%%%%%%%%%%###*****+++==--:::...:::-+##%%%%%%%##*+--::....::=+*########%%%%%%%##*++=--:-=+++++++++*+++++++=+++*#####*#**++++++++++++*++++========++**%%%@@%%%###******%%@@%%%%@%%%%%%%%%%@%%%###%#%%%@@@@@%%%%%%%%%%%%#%%%%%%%%%%%%%%@@@@@@@@@@@@#*##++++++==== %%%%%%%###########***#%%%%####***+********##%%%%%%%%%%%%%#######***++===--::::--=*#%%%%%%###**+=::......::-==++*####%%%%%%##**+=--:::..:::--=+++*******++++*%###**#**+++++++++++*****++=======+++*#%%@@#######*****+****#%%#%%%%%%%%%#######******##%%@@@%%%%%%%%%%#%%%%%%%%%%%%%%%@@@@@@@@@@%*###++++++==== %%%%%%####***#####*+###%%%####**+++++++****#%%%%%%%%%%%%###########***++===---==+*#%%%%%##*++==--::...:::---===+*###%%%%####**+=-:::..........:::--=+***+++*####*##**+++++*++****#####**=====+++**#%%@@%%####***+*+++*+*#%%##%%%%%###*******+++++++++*#%@@%%%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@%+*##+++++++=== %%%%%%##%%*########*###%%%####*++=++++++++*##%%%%%%%%%%%#######%%###%##*+++===++*##%%%%##*++=--::-------=======++##%%%%####***+=-:::....... .........::----+####*#***+++++*****###%%%###*++++++***#%%@@%%###*****+++**+**#%##%%%###****+++++++=========+*%@@@@%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@#**##*****+++++ %%%%%%##%%###%#%%%%#*###%%####*++=++++++++*##%%%%%%%%%%%####%%%%%%%#%%%%##**+++**##%%%%##*++=--:---=+*###*++++++*##%%%%###**++===-::...... .........::--==+++***+++***####%%%%%%##*******###%@%@%##******++++*******##%###****++++++======-----===+*%%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@%#%%%%%%%%#*+== %%%%%%%#%%%###%#%%#%*###%%####*++=++++++++*##%%%%%%%%%%#****#%%%%%%%%%%%##**#######%%%%%##*+=----==+######*******#%%%%%###*++==---:::....... .......::::---==+**####%%%%%%%%##******###%%%@%#######*#*##########%####****++++++=====-------===+*%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@%#%%%##%%#***+* %%%%%%##%%%#%#%#%%%####+#%####*++=++++++++*##%%%%%%%%%%#****#%%%%%%%%%%%##****#####%%%%%%##*++===+*##%%%%###****##%%%%%###*++==--::::........ .........:::--+*###%%%%%%%%####***###%%@%@%###***++*#*+===++*#######****++++++++===-------===+*%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@#*#%%%%%%%*++++ %%%%%%##%%%####%#%%#%##%%%####*++=++++++++*##%%%%%%%%%%##***#%%%%%%%%%%%%#*+**#####%%%%%%%%#***+***#%%%%%%########%%%%%%##**++=---::::............ ....::-=+*#%%%%%%%%%%####**####%%%%%##***###****++++**######******+++**#**+=-----====++*%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@%#+*#%#####+++++ %%%%%%##%%%*#%%%%%%%%%#%%%####*++=++++++++*##%%%%%%%%%%#***##%%%%%%%%%%%%#*+**#####%%%%%%%%%##***###%%%%%%########%%%%%%%###**+==---::::................. ...::-=*#%%%%%%%%%%###******#%%#@%#####*++++++++++++**#####*******#######*+=======++*#%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@%#+*#%**###**+++ %%%%%%##%%%%#%%%%%%%%%#%%%####*++=++++++++*##%%%%%%%%%%#***##%%%%%%%%%%%%##########%%%%%%%%%%#######%%%%%#########%%%%%%%%%##**+++==---:::::............... ....:-=+#%%%%%%%%%%##***++++=+*#*#####*****++++++++++*#######***#####%%%###*++++++**##%%%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@%#+##%***##**+++