added template for easy composing