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