shutdown implemented