update singleton template, add using namespace declaration