consider velocity for templates.