templates split between base and extensions