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