Wow I have no idea how it didn't include all this in the last commit