More changes than I thought. Will have to update this more often