Author: Scherbakov A. Vahros Igor.