hash function changed
minor changes