Author :   Starenkiy V.P.