split HashKey
Hash/HashKey  refactoring
fix compare logic