****+****** *+******* ******* ****** ****** ******** *+**************** ******** ****
*************+****** *+*********** *********+
**********
*************+****** *******+**** ** ****** ***** *** *********** **************** ***** *************+*********+ *********
********+ ***** ***********+*********** *********+
*********** ******* ****** ****** ******** *+**************** ******** *****