Use template to distinguish between function variants.