Changed template structure of Kernel