More cleanup logic and goto points