hashing complete