added a bunch of utils