miscellaneous refactors