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