add #program once in hpp
 .
 .
 add hardware
 add reset method in data