****** *** ******* ********* ** ************ ** ******* * ***** ********* ** ****** ******* ****** ********** **** ** ******* ***************
*** ****** ** *********** ** ****** * ***** ************** ******* ** *** ***** ***** ** *** * ********* *** ******** ** *********** ** ********* ** ****** ** ***** *** ** **** ********** ** *********** ** ********* *** ****** **** ** ********* ** *********
*** *********** *********** * ** **** ** ***** ******** ********** ***** ****** ** ********* *** ** ******** ******* ** ** ********