text: /**
   * Eco Compiler v1.1.0-rc-3
   * http://github.com/sstephenson/eco
   *
   * Copyright (c) 2011 Sam Stephenson
   * Released under the MIT License
   */
  this.eco=function(e){return function t(n){var r,i={id:n,exports:{}};if(r=e[n])return r(i,t,i.exports),i.exports;throw"Cannot find module '"+n+"'"}}({eco:function(e,t,n){(function(){var n,r,i,s,o;o=t("./compiler"),n=o.compile,i=o.precompile,s=t("./preprocessor").preprocess,e.exports=r=function(e){var t,i;return r.cache?(i=(t=r.cache)[e])!=null?i:t[e]=n(e):n(e)},r.cache={},r.preprocess=s,r.precompile=i,r.compile=n,r.render=function(e,t){return r(e)(t)},t.extensions&&(t.extensions[".eco"]=function(e,n){var r;return r=t("fs").readFileSync(n,"utf-8"),e._compile("module.exports = "+i(r),n)})}).call(this)},"./compiler":function(e,t,n){(function(){var e,r,i,s;e=t("coffee-script"),s=t("./preprocessor").preprocess,r=t("./util").indent,n.precompile=i=function(t){var n;return n=e.compile(s(t),{noWrap:!0}),"eco(\n  function(__out, __capture, __sanitize, __safe, __objSafe, __escape){\n"+r(n,4)+"\n  }\n)"},n.compile=function(e){return(new Function("return "+i(e)))()}}).call(this)},"./preprocessor":function(e,t,n){(function(){var n,r,i;r=t("./scanner"),i=t("./util"),e.exports=n=function(){function e(e){this.scanner=new r(e),this.output="",this.level=0,this.options={},this.captures=[]}return e.preprocess=function(t){var n;return n=new e(t),n.preprocess()},e.prototype.preprocess=function(){var e=this;while(!this.scanner.done)this.scanner.scan(function(t){return e[t[0]].apply(e,t.slice(1))});return this.output},e.prototype.record=function(e){return this.output+=i.repeat("  ",this.level),this.output+=e+"\n"},e.prototype.printString=function(e){if(e.length)return this.record("__out.push "+i.inspectString(e))},e.prototype.beginCode=function(e){return this.options=e},e.prototype.recordCode=function(e){if(e!=="end")return this.options.print?this.options.safe?this.record("__out.push "+e):this.record("__out.push __sanitize "+e):this.record(e)},e.prototype.indent=function(e){this.level++;if(e)return this.record("__capture "+e),this.captures.unshift(this.level),this.indent()},e.prototype.dedent=function(){this.level--,this.level<0&&this.fail("unexpected dedent");if(this.captures[0]===this.level)return this.captures.shift(),this.dedent()},e.prototype.fail=function(e){throw"Parse error on line "+this.scanner.lineNo+": "+e},e}()}).call(this)},"./scanner":function(e,t,n){(function(){var n,r,i;r=t("strscan").StringScanner,i=t("./util").trim,e.exports=n=function(){function e(e){this.source=e.replace(/\r\n?/g,"\n"),this.scanner=new r(this.source),this.mode="data",this.buffer="",this.lineNo=1,this.done=!1}return e.modePatterns={data:/(.*?)(<%%|<%\s*(\#)|<%(([=-])?)|\n|$)/,code:/(.*?)((((:|(->|=>))\s*))?%>|\n|$)/,comment:/(.*?)(%>|\n|$)/},e.dedentablePattern=/^(end|when|else|catch|finally)(?:\W|$)/,e.scan=function(t){var n,r;r=[],n=new e(t);while(!n.done)n.scan(function(e){return r.push(e)});return r},e.prototype.scan=function(e){if(this.done)return e();if(this.scanner.hasTerminated()){this.done=!0;switch(this.mode){case"data":return e(["printString",this.flush()]);case"code":return e(["fail","unexpected end of template"])}}else{this.advance();switch(this.mode){case"data":return this.scanData(e);case"code":return this.scanCode(e);case"comment":return this.scanComment(e)}}},e.prototype.advance=function(){return this.scanner.scanUntil(e.modePatterns[this.mode]),this.buffer+=this.scanner.getCapture(0),this.tail=this.scanner.getCapture(1),this.comment=this.scanner.getCapture(2),this.directive=this.scanner.getCapture(4),this.arrow=this.scanner.getCapture(5)},e.prototype.scanData=function(e){if(this.tail==="<%%")return this.buffer+="<%",this.scan(e);if(this.tail==="\n")return this.buffer+=this.tail,this.lineNo++,this.scan(e);if(this.tail)return e(["printString",this.flush()]),this.comment?this.mode="comment":(this.mode="code",e(["beginCode",{print:this.directive!=null,safe:this.directive==="-"}]))},e.prototype.scanCode=function(e){var t;if(this.tail==="\n")return e(["fail","unexpected newline in code block"]);if(this.tail){this.mode="data",t=i(this.flush()),this.arrow&&(t+=" "+this.arrow),this.isDedentable(t)&&e(["dedent"]),e(["recordCode",t]);if(this.directive)return e(["indent",this.arrow])}},e.prototype.scanComment=function(e){if(this.tail==="\n")return e(["fail","unexpected newline in code block"]);if(this.tail)return this.mode="data",this.buffer=""},e.prototype.flush=function(){var e;return e=this.buffer,this.buffer="",e},e.prototype.isDedentable=function(t){return t.match(e.dedentablePattern)},e}()}).call(this)},"./util":function(e,t,n){(function(){var e,t;n.repeat=e=function(e,t){return Array(t+1).join(e)},n.indent=function(t,n){var r,i,s;return s=e(" ",n),i=function(){var e,n,i,o;i=t.split("\n"),o=[];for(e=0,n=i.length;e<n;e++)r=i[e],o.push(s+r);return o}(),i.join("\n")},n.trim=function(e){return e.replace(/^\s+/,"").replace(/\s+$/,"")},t={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","  ":"\\t"},n.inspectString=function(e){var n;return n=e.replace(/[\x00-\x1f\\]/g,function(e){var n;return e in t?t[e]:(n=e.charCodeAt(0).toString(16),n.length===1&&(n="0"+n),"\\u00"+n)}),"'"+n.replace(/'/g,"\\'")+"'"}}).call(this)},strscan:function(e,t,n){(function(){var e;(typeof n!="undefined"&&n!==null?n:this).StringScanner=function(){return e=function(e){return this.source=e.toString(),this.reset(),this},e.prototype.scan=function(e){var t;return(t=e.exec(this.getRemainder()))&&t.index===0?this.setState(t,{head:this.head+t[0].length,last:this.head}):this.setState([])},e.prototype.scanUntil=function(e){var t;return(t=e.exec(this.getRemainder()))?(this.setState(t,{head:this.head+t.index+t[0].length,last:this.head}),this.source.slice(this.last,this.head)):this.setState([])},e.prototype.scanChar=function(){return this.scan(/[\s\S]/)},e.prototype.skip=function(e){if(this.scan(e))return this.match.length},e.prototype.skipUntil=function(e){if(this.scanUntil(e))return this.head-this.last},e.prototype.check=function(e){var t;return(t=e.exec(this.getRemainder()))&&t.index===0?this.setState(t):this.setState([])},e.prototype.checkUntil=function(e){var t;return(t=e.exec(this.getRemainder()))?(this.setState(t),this.source.slice(this.head,this.head+t.index+t[0].length)):this.setState([])},e.prototype.peek=function(e){return this.source.substr(this.head,typeof e!="undefined"&&e!==null?e:1)},e.prototype.getSource=function(){return this.source},e.prototype.getRemainder=function(){return this.source.slice(this.head)},e.prototype.getPosition=function(){return this.head},e.prototype.hasTerminated=function(){return this.head===this.source.length},e.prototype.getPreMatch=function(){if(this.match)return this.source.slice(0,this.head-this.match.length)},e.prototype.getMatch=function(){return this.match},e.prototype.getPostMatch=function(){if(this.match)return this.source.slice(this.head)},e.prototype.getCapture=function(e){return this.captures[e]},e.prototype.reset=function(){return this.setState([],{head:0,last:0})},e.prototype.terminate=function(){return this.setState([],{head:this.source.length,last:this.head})},e.prototype.concat=function(e){return this.source+=e},e.prototype.unscan=function(){if(this.match)return this.setState([],{head:this.last,last:0});throw"nothing to unscan"},e.prototype.setState=function(e,t){var n,r;return this.head=typeof (n=typeof t=="undefined"||t===null?undefined:t.head)!="undefined"&&n!==null?n:this.head,this.last=typeof (r=typeof t=="undefined"||t===null?undefined:t.last)!="undefined"&&r!==null?r:this.last,this.captures=e.slice(1),this.match=e[0]},e}()})()},"coffee-script":function(e,t,n){if(typeof CoffeeScript=="undefined"||CoffeeScript==null)throw"Cannot require '"+e.id+"': CoffeeScript not found";e.exports=CoffeeScript}})("eco")