Небольшие исправления и рефакторинг