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