Вот, было сделано давно, но так и не опубликовано. Как-то оно мне слишком топорным кажется...