Template type deducing working