template constant functionality