added template and statics