added explicit template instantiation