played with hash functions