full setup script