Author :   Savitskiy Valeriy P.