programming is like welding - if you want to undo you're going to have to undo a couple of parts