?????????????????????????????????????????????????????????????
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>..............................
....................................>>>>>>>>>>>>>>>>>~~~~~~~~~~~~~~~~~~~!!!!!!!!!
!!!!!!!!!!!@@@@@@@@@@@@@@@@@@@##############$$$$$$$$$$$$$$$$$$$%%
%%%%%%%%%%%^^^^^^^^^^^^^^^^^&&&&&&&&*****************
(((((((((((((((()))))))))))))))))________________+++++++++++++++|||||||||||||||||| |