add cleanup routine