some more improvements, we're hashing all keys now...