perfect hashing added