support different tpl names
safety