empty strings are legit in templates