refactoring all the hashname interactions yet, in broken state