main-функция