Исходник поприличнее
http://webfile.ru/4737878