no finished yet
TODO:
1. hash_map implement
2. test
modified the hash_map implement