Igor Pavlov - 2017-06-01

That code is complicated.
Probably later I'll try to look it.