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