doing some weird dependency stuff, for some reason, it seems to work