hashing functions
updates