finish new hash
refactoring