make slakov more general