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