naming, templating, usage