the setup operation