reoragnized explicit template instantiation