HashEngine added, refactoring