Итоги голосования для комментария:
Rigval
Вот тут проблема, я с этого варианта начинал и не раз к нему возвращался - он ведет себя странно на практике, к сожалению.