:://////////////////////////////+/+++++++++++++++++/++////:::::::::::::::::::////::::::::::::::::::::://////////////////////////////++/+++++++++++++++++++++//:::::--:::::--::::::////::::::::::::::::::://////////////////////////////++///+++++++++++++++++++++///::::::::::::::::::::///::::::::::::::::::::/::////////////////////////////////+++++++++++++++++ooo++o+/::::::::::::::::::://::::::::::::::::::::::::/:///////////////////////////++++++++++ossoyhyyhdmhhydhyhhs/////////::::::::::::::::::::::::::::::::::::///////////////////////////++ooyddyhmmyhmdyhmmyyoyyyydsyhhs++++o+o+/::::::::::::::::::::::::::::::::////////////////////////++o+sdyhmdsyhysysysohddmmd+:+ssydhyhyyhhohyody+//::::::::::::::::::::::::::::////////////////////+o+ydhyo+sysdsho-/oyhosNNhhhy:-+shyyyhddshmdhhddhdds//::::::::::::::::::::::::::://::///////////++oyddyyydo/:-/ohssy--ydyhhddsysssydddddhyydhdmmhhh+/ymhh+/::::::::::::::::::::::::::::::::://////+yhhyyhhyho:/so+::://:-/syss:/shh++shhdhhhyoosdddho+so+hhyhhy+:::::::::::::::::::::::::::::::////+shhdddhysyoy///yhs:....../hs//-.:oyy+oyhhdhdhyyhdddho+odddddddshs/::::::::::::::::::::::::::::/+oyhhhddhhddy//oosdds++/-.``-:+dy+so+syssosshyydddddhyddmdhhdh+hydhshho:::::::::::::::::::::::::://oohddhhhhyhmdhyddhyydy/os/.---/yhdyy/:+y/-+s//:+ydhyooshhddhdhs+hshdhdds+/:::::::::::::::::::::::osyysdddhs+ohhdyymmoshhdo/so:/o+o:ohddho:://oshsoshdddhooyhyy+/shysshdd:ydyyo::::::::::::::::::::+ssssydddmmhhyhdhdyhmhyymmmds/-+hyos+//:o+so:/oyoyhyohdhhhyhhhhyoshso+shhhodm+ss::::::::::::::::::/+yddhdddmdddhydmdddmdhoyddmms:/+ydooho+-/y++oohysshdyhmmhhhshsooshyssyydhdyodmyys/::::::::::::::::odmhddmddmdyhdddyydyyNNsohsssyo/+yyoosy/ooooyhshsossdmmmmNMNNmm++ssos+:+sosmhodhhhy//::::::::::::/+shdmdddmdddddhmmddddymmmmhs:s+soyhh+ososo+///+ossyyyyhdddddmmdshyssoys/-//sydshddhhy+/:::::::::://+ydddhhmddmNmmdhyhhhhdhdyooohyyhhso+/:::--------:/::::://+osshddhhdyss+shsssyoyhmmhsdyo/:::::::///osyhddddmNmdmmddds+dddddddyyyyhhys+/---.........---:-------:::/+oydddddhhhyysyhsoymhydhho/:::::///oyydhdddmmmmddddddddmdddddmmmmmddmNs::---..........--:---.....----:/sddddddhhyyohmhdmhshos//::::://+ydddddddmmdmddddddddmmmmmmmNNNNNNMMNh/:-------------::---........--:+hdddddddhhyddhddddmso///:::://+hmddmmmmmdmmmmmmmdhddmmmmmmmdmmmmmmmNmhyo+///:::---:o/:------------/+sddddddhhhdddhsdyyds////:::://sddmdmmmmmNNNNNmdyoooosshdddyysssssssyydhhhhhhhhhhhhddhsoo/::----::/oohmddddddhhdhddmNdhhs///::::://oyddddhmmmmNmmmmhssoosooohds+/+////////+/::::::::/o++oosyhdmmddhhddmmmmmmdddddhyhhddydmmh////:::::://+oydddmddmdydmhddddmmmhssysyso//+///////::------:/::-:::::/yyhdNMMMNNNmmdddddddddhmmdhy+/:///:::/::::/+ssdmddmddmmhhddhmdmmmhdmmmdyhhhsydyhs++++/::::+/:------:://+smMMNNNmmmdddddddmddddh+//:::::::/:::::://oyshmmdmmdNmdddNmdmmmydmdssdmdmddddhdyosoo+:oo/:/::::/:/:/oyNNNmmmmmmmdyydymmmdds//////:::/o::::::::///+sydNmdhmdmmmmdNmdhsssddmNNmddmmdyhhydhy/:/+s:/-..-:+//++hhhhssohyddhshmmmmdy+/////::::/y::::::::::://+sddddddhNhyhydmmmdddyhNNyhdddsohhyhydy-:+o:-..//hhsshshdddhysosyoossssshyo+/:://::::+m::::::::::::::://hddhhdhshdyymmddmdhmdyyyhdddyydosmsoyy+:-:/syyyhddddddysosoy+.../soos++:/:/://::/sN:::::::::::::::::/++yyhhhshoohhyymmddhmd+yhNNyhdhdhhssy:-/oo+//:+ddddddyooooo+...`.+ydyso+:::::::/dN::::::::::::::::::::/++ydshdddy+/+hddhhdhyshhddsysyyyss+/os+oys+ohdddddhyooooy/+y+ssdsshys//::::/omN:::::::::::::::::::::://osyhddhhysy/:yhdmmhssymdysos---/oo-`-+:-:+shdddddyoohdyyoodymy/hho+/::::/hNN::::::::::::::::::::::::///syyhddhhhyddhddo+ydmdhsss:-:oyys+o/..`.-yhhddhooohysssossdmhyo+o/:://omNN::::::::::::::::::::::::::://+oyyyhmmdyshddhhdmmsohhhysyhhoody:-.::/ydsdhyos+-..:+ohshdyyss///:/hNNN::::::::::::::::::::::::::://///++oyhhhdmhddsomNddhsdNdhhhdhdNdyss-:yyodddsh+-..../dsymdhyo/://+mNNN:::::::::::::::::::::::::::////////+++shhhhmdhddddh++dmdhhdssdhysosoohyyhdhyhsss+/odyhhhhy//://yNNNM::::::::::::::::::::::::::///:////+++o+++osyyhdmdhmdyhdds+/+yh//-/ysooyhho+odyohdssmy+ohy+:///+dNNNM:::::::::::::::::::::::::///////+o+++ys+//+++osyyydddmdhdyydddo//sho/+hdy::+s::yyooddoyo/::://yNNNNM:::::::::::::o+/::::::::///////oo+++oys+////+++++++ooyyyhdhhdmhdmhddydmhhhyhhsyhhyhhs+/:::///+dNNNNM::::::::/o/:/yo+:::::::://////oo++oyyso+//////+++++++++++oooooosssyyyyyyyhyyyssooo+/:::::////yNNNNNM:::::::/+yo//ho/::::::/://///+s+//+oo+///+//oo++/+++++++++++++++++++++++++++////:::://:::///omNNNNNM:::/:/:/syo/oyo/:::::::://///yo+///////ooos+oyys+osooyo+oos+++o++++++++////////::::::::////+hNNNNNMM////////ys+/sso/:/:////+////+ho+////s+sso+hysssooyoosysysssoyso+yoos+/o/////:::+o/:::::////smNNNNNMM:///////ho+/hs+//+//o/+y+///+ho////syshsosys+ysoohsohsoyyso+ysossoysosso+oo+///ys+/:://///+dNNNNNMMM///////oyo//ho+o+y+ss+sso////yyo+o+hsoosoo++//o+/+osso//+++//++/+/+o+oooooso//o++/////////yNNNNNNMMM///////sso+oyoosss+yo+yo+//:/+sysooyo+//////:://+++o+/::::::::::::::::////////o+/:://////omNNNNNMMMM///////yysoyyoyyso+yooyo/:::::///+o++/::::::::://+///::::::::::::::::::::::::://::://///+dNNNMMMMMMM///::/osssoysoyyso/sssso/::::///++//::::::::::::::::::::::::::::::::::::::::::::::://///yNNNNNNNNMMM///://yo+/sds+oys+///yo+/:::/oo+///:::::::::::::::::::::::::::::::::::::::::::::::::://omNNNNNNNNMMM/////oo+//+so///////+o+/::::://::::::::::::::::::::::::::::::::::::::::::::::::::::::/+dNNNNNNNNNNNN:://oo+/::////:::/oo+//::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::/:./-++:oyosooo+sNN::/oo+/:::::::::::/+//::::::::::::::::::::::::::::::::::::::::--:::::::::::::-/./:/:///o-/:/://+++NN+yso+/:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::://////+mNNNNNNNNNNNNNN