add class_tpl.cpp/h