Update от автора. Уже не (пред)видит некоторое дерьмо. Старая версия - http://wh.reactor.cc/post/1515552