brackets should be valid no matter prefix is empty or not; add defines for template.