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