add hash.cpp