Moved cleanup system to protected_call