Working 100%, just need to clean it up a little