cleanup and modify