oops. forgot to go for a while. The whole functionality is pretty much done. Just need to clean it up