Четко по требованию не знаю как решить. Но зато, вроде как, работает =)