added template concatenation