;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;; , -ー 、,;'⌒ ;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;; /, , Y´`) ;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;; ,, -,ィイ///ノノ,ィリ' ;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;; , -'" /////ノ!i| ;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;; _,/,, -''"//// )i!、 ;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;; /" /////////ヽ、=イ |ヾ\ ;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;; /"////////il | | | i! ゙ヾヽ、 ;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;; ' '/ト{ ! !! !i、!l-ヽヽ | | ' ,ノ /ノ ;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;; (~ト( ゙ ゙ ゙ ゙ ゙ ゙ ゙ `⌒ヽ入,__ ;;;;;;;;;;;;;;;;
;;;;;;;;;;;; /`ノ/`ー-、(`ハ, -‐´))_イ〉ノ‐^` ;;;;;;;;;;;;;;;;
;;.;.;.;.;.;;...`='-' /`ノ/-一'´`ー' ..;.;.;.;.;.;.;.;.;
;;.;.;.;.;.;.;.;;.;...... `='-' ......;.;.;.;.;.;.;.;.;.;.;.;.;