`**`````**``****````````**``********``**`````**```**`````````**`````**`````**`````**```**`````````**`````**`````*********```**`````````**`````**`````**`````**```**```**````**`````**`````**`````**```**```**````**`````**`````**`````**``****```******``````**````
Code