';::::::::::::::l {;;;フ ./,i i::::::::::::::;!ll;;;;;;;;;;;;;;;;;;;;;;、 i |.| ノ;;;;;;;;;;;;;;;;;;;;;
ヽ::::::::::::ヽ ,/:r'´ ノ::::::::::::;ノll;;""'''`"':;;;;;;`、 l. U ヾ;-;;;-;_;_;;;;;;;;;;;;;;;;;;;
\::::::::::`':::::':::::::::`ー':´::::::::::::< ,/´~ヽ;;;;;、 l ヽ;;;///\;;;;;;;;;;;;
ヽ;::::::::::::::::::::::::::::::::::::::::::: 'ー`、 / `';;;;;、 .li ,,,,,;;;, ヽ;/// '\;;;;;;;
`'-::、::::::::::::::::;:::- ''l´ ,| i `';;;;、 ' _________ y,,;;;;;;;;;;;;;;lll ///""" ヽ;;;
;;;;;;;;;;;l  ̄ l ヽヾ i l `';;;;、 , , , /:::::::::::::;;;;;;;;;;;;;'、-::-、----<- 、 /'l;;;
;;;;;;;;;;;;l ,,il .l .l `';;;;;、l l .ll:::::/;;;;;;""''::::::::'i::::::::/ ̄ ̄'/---''/ /-l;;;
;;;;;;;;;;;;;ヽ .l_l l l,,,,,,_____ 。`"l__l_l;;;-":::'::::::::::::::::::::::::l;;;;;:/ / ./ ///;;;;
;;;;;;;;;;;;;;;;ヽ l .l ~~''----" 三l:::l::::゚:::::::::::::::::::::::::ノ:::::/ / /// ///;;;;;;;
;;;;;;;;;;;;;;;;;;;;ヽ ヽ`, l ,,::::"""""""'''' ' ' i , il::::`::~:: ̄::~::"::-":::/ / /// ///;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;ヽ 'ヽ; l ノ, `-'':::::_:::_::::::::::::_::::/____ / / ///;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ヽ .l < ( ,,,  ̄ ///"""--/ ///;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>- 、l ,, -ヽ,,,__ '''_,,,,,,..、 ///,,;;,,,,,,, / //;;;;;;;;;;;;;;;;
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz