Author: V.I.Teplitskiy V.M.Dvorak