added static
added template