hopefully this gives us more options and isn't broken