noticed that these two functions don't actually use `self` at all - should they be defined at the module level?