more work on hash.c