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