fixes a lot of work