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