конкурсная работа на fl.ru, второе место) два варианта с небольшими отличиями)