function process(template, context) {
						return template.replace(/<%[=\-](.+?)%>/g, function (str, match) {
							match = utils.trim(match);
							var fn = parseFunctionCall(match);
							if (fn) {
								var fnArgs = fn.args.map(function (arg) {
									return evalArg(arg, context);
								});
								return context[fn.name].apply(context, fnArgs);
							}

							return evalArg(match, context);
						});
					}
Shared empty constructor function to aid in prototype-chain creation.