add template customizable param