Don't merge this please. Going to make a new pull request for this.