add hpset.cpp