Author: ihor.stepakov@virtuozzo.com