refactor dumpers to require join