correct cleanup behavior