added template argument