UNPKG

37.2 kBJavaScriptView Raw
1/*! Dust - Asynchronous Templating - v2.6.2
2* http://linkedin.github.io/dustjs/
3* Copyright (c) 2015 Aleksander Williams; Released under the MIT License */
4!function(a,b){"function"==typeof define&&define.amd&&define.amd.dust===!0?define("dust.core",[],b):"object"==typeof exports?module.exports=b():a.dust=b()}(this,function(){function Context(a,b,c,d){this.stack=a,this.global=b,this.blocks=c,this.templateName=d}function getWithResolvedData(a,b,c){return function(d){return a.push(d)._get(b,c)}}function Stack(a,b,c,d){this.tail=b,this.isObject=a&&"object"==typeof a,this.head=a,this.index=c,this.of=d}function Stub(a){this.head=new Chunk(this),this.callback=a,this.out=""}function Stream(){this.head=new Chunk(this)}function Chunk(a,b,c){this.root=a,this.next=b,this.data=[],this.flushable=!1,this.taps=c}function Tap(a,b){this.head=a,this.tail=b}var dust={version:"2.6.2"},NONE="NONE",ERROR="ERROR",WARN="WARN",INFO="INFO",DEBUG="DEBUG",EMPTY_FUNC=function(){};dust.config={whitespace:!1,amd:!1},dust._aliases={write:"w",end:"e",map:"m",render:"r",reference:"f",section:"s",exists:"x",notexists:"nx",block:"b",partial:"p",helper:"h"},function(){var a,b,c={DEBUG:0,INFO:1,WARN:2,ERROR:3,NONE:4};"undefined"!=typeof console&&console.log?(a=console.log,b="function"==typeof a?function(){a.apply(console,arguments)}:function(){a(Array.prototype.slice.apply(arguments).join(" "))}):b=EMPTY_FUNC,dust.log=function(a,d){d=d||INFO,c[d]>=c[dust.debugLevel]&&b("[DUST:"+d+"]",a)},dust.debugLevel=NONE,"undefined"!=typeof process&&process.env&&/\bdust\b/.test(process.env.DEBUG)&&(dust.debugLevel=DEBUG)}(),dust.helpers={},dust.cache={},dust.register=function(a,b){a&&(dust.cache[a]=b)},dust.render=function(a,b,c){var d=new Stub(c).head;try{dust.load(a,d,Context.wrap(b,a)).end()}catch(e){d.setError(e)}},dust.stream=function(a,b){var c=new Stream,d=c.head;return dust.nextTick(function(){try{dust.load(a,c.head,Context.wrap(b,a)).end()}catch(e){d.setError(e)}}),c},dust.renderSource=function(a,b,c){return dust.compileFn(a)(b,c)},dust.compileFn=function(a,b){b=b||null;var c=dust.loadSource(dust.compile(a,b));return function(a,d){var e=d?new Stub(d):new Stream;return dust.nextTick(function(){"function"==typeof c?c(e.head,Context.wrap(a,b)).end():dust.log(new Error("Template `"+b+"` could not be loaded"),ERROR)}),e}},dust.load=function(a,b,c){var d=dust.cache[a];return d?d(b,c):dust.onLoad?b.map(function(b){dust.onLoad(a,function(d,e){return d?b.setError(d):(dust.cache[a]||dust.loadSource(dust.compile(e,a)),void dust.cache[a](b,c).end())})}):b.setError(new Error("Template Not Found: "+a))},dust.loadSource=function(source,path){return eval(source)},dust.isArray=Array.isArray?Array.isArray:function(a){return"[object Array]"===Object.prototype.toString.call(a)},dust.nextTick=function(){return function(a){setTimeout(a,0)}}(),dust.isEmpty=function(a){return 0===a?!1:dust.isArray(a)&&!a.length?!0:!a},dust.isEmptyObject=function(a){var b;if(null===a)return!1;if(void 0===a)return!1;if(a.length>0)return!1;for(b in a)if(Object.prototype.hasOwnProperty.call(a,b))return!1;return!0},dust.isThenable=function(a){return a&&"object"==typeof a&&"function"==typeof a.then},dust.filter=function(a,b,c){var d,e,f;if(c)for(d=0,e=c.length;e>d;d++)f=c[d],"s"===f?b=null:"function"==typeof dust.filters[f]?a=dust.filters[f](a):dust.log("Invalid filter `"+f+"`",WARN);return b&&(a=dust.filters[b](a)),a},dust.filters={h:function(a){return dust.escapeHtml(a)},j:function(a){return dust.escapeJs(a)},u:encodeURI,uc:encodeURIComponent,js:function(a){return dust.escapeJSON(a)},jp:function(a){return JSON?JSON.parse(a):(dust.log("JSON is undefined; could not parse `"+a+"`",WARN),a)}},dust.makeBase=function(a){return new Context(new Stack,a)},Context.wrap=function(a,b){return a instanceof Context?a:new Context(new Stack(a),{},null,b)},Context.prototype.get=function(a,b){return"string"==typeof a&&("."===a[0]&&(b=!0,a=a.substr(1)),a=a.split(".")),this._get(b,a)},Context.prototype._get=function(a,b){var c,d,e,f,g,h=this.stack||{},i=1;if(d=b[0],e=b.length,a&&0===e)f=h,h=h.head;else{if(a)h&&(h=h.head?h.head[d]:void 0);else{for(;h&&(!h.isObject||(f=h.head,c=h.head[d],void 0===c));)h=h.tail;h=void 0!==c?c:this.global?this.global[d]:void 0}for(;h&&e>i;){if(dust.isThenable(h))return h.then(getWithResolvedData(this,a,b.slice(i)));f=h,h=h[b[i]],i++}}return"function"==typeof h?(g=function(){try{return h.apply(f,arguments)}catch(a){throw dust.log(a,ERROR),a}},g.__dustBody=!!h.__dustBody,g):(void 0===h&&dust.log("Cannot find reference `{"+b.join(".")+"}` in template `"+this.getTemplateName()+"`",INFO),h)},Context.prototype.getPath=function(a,b){return this._get(a,b)},Context.prototype.push=function(a,b,c){return new Context(new Stack(a,this.stack,b,c),this.global,this.blocks,this.getTemplateName())},Context.prototype.pop=function(){var a=this.current();return this.stack=this.stack&&this.stack.tail,a},Context.prototype.rebase=function(a){return new Context(new Stack(a),this.global,this.blocks,this.getTemplateName())},Context.prototype.clone=function(){var a=this.rebase();return a.stack=this.stack,a},Context.prototype.current=function(){return this.stack&&this.stack.head},Context.prototype.getBlock=function(a){var b,c,d;if("function"==typeof a&&(a=a(new Chunk,this).data.join("")),b=this.blocks,!b)return dust.log("No blocks for context `"+a+"` in template `"+this.getTemplateName()+"`",DEBUG),!1;for(c=b.length;c--;)if(d=b[c][a])return d;return dust.log("Malformed template `"+this.getTemplateName()+"` was missing one or more blocks."),!1},Context.prototype.shiftBlocks=function(a){var b,c=this.blocks;return a?(b=c?c.concat([a]):[a],new Context(this.stack,this.global,b,this.getTemplateName())):this},Context.prototype.resolve=function(a){var b;return"function"!=typeof a?a:(b=(new Chunk).render(a,this),a.__dustBody?b.data.join(""):b)},Context.prototype.getTemplateName=function(){return this.templateName},Stub.prototype.flush=function(){for(var a=this.head;a;){if(!a.flushable)return a.error?(this.callback(a.error),dust.log("Rendering failed with error `"+a.error+"`",ERROR),void(this.flush=EMPTY_FUNC)):void 0;this.out+=a.data.join(""),a=a.next,this.head=a}this.callback(null,this.out)},Stream.prototype.flush=function(){for(var a=this.head;a;){if(!a.flushable)return a.error?(this.emit("error",a.error),dust.log("Streaming failed with error `"+a.error+"`",ERROR),void(this.flush=EMPTY_FUNC)):void 0;this.emit("data",a.data.join("")),a=a.next,this.head=a}this.emit("end")},Stream.prototype.emit=function(a,b){var c,d,e=this.events||{},f=e[a]||[];if(!f.length)return void dust.log("Stream broadcasting, but no listeners for `"+a+"`",DEBUG);for(f=f.slice(0),c=0,d=f.length;d>c;c++)f[c](b)},Stream.prototype.on=function(a,b){var c=this.events=this.events||{},d=c[a]=c[a]||[];return"function"!=typeof b?dust.log("No callback function provided for `"+a+"` event listener",WARN):d.push(b),this},Stream.prototype.pipe=function(a){return this.on("data",function(b){try{a.write(b,"utf8")}catch(c){dust.log(c,ERROR)}}).on("end",function(){try{a.end()}catch(b){dust.log(b,ERROR)}}).on("error",function(b){a.error(b)})},Chunk.prototype.write=function(a){var b=this.taps;return b&&(a=b.go(a)),this.data.push(a),this},Chunk.prototype.end=function(a){return a&&this.write(a),this.flushable=!0,this.root.flush(),this},Chunk.prototype.map=function(a){var b=new Chunk(this.root,this.next,this.taps),c=new Chunk(this.root,b,this.taps);this.next=c,this.flushable=!0;try{a(c)}catch(d){dust.log(d,ERROR),c.setError(d)}return b},Chunk.prototype.tap=function(a){var b=this.taps;return this.taps=b?b.push(a):new Tap(a),this},Chunk.prototype.untap=function(){return this.taps=this.taps.tail,this},Chunk.prototype.render=function(a,b){return a(this,b)},Chunk.prototype.reference=function(a,b,c,d){return"function"==typeof a&&(a=a.apply(b.current(),[this,b,null,{auto:c,filters:d}]),a instanceof Chunk)?a:dust.isThenable(a)?this.await(a,b):dust.isEmpty(a)?this:this.write(dust.filter(a,c,d))},Chunk.prototype.section=function(a,b,c,d){var e,f,g=c.block,h=c["else"],i=this;if("function"==typeof a&&!a.__dustBody){try{a=a.apply(b.current(),[this,b,c,d])}catch(j){return dust.log(j,ERROR),this.setError(j)}if(a instanceof Chunk)return a}if(dust.isEmptyObject(d)||(b=b.push(d)),dust.isArray(a)){if(g){if(f=a.length,f>0){for(b.stack.head&&(b.stack.head.$len=f),e=0;f>e;e++)b.stack.head&&(b.stack.head.$idx=e),i=g(i,b.push(a[e],e,f));return b.stack.head&&(b.stack.head.$idx=void 0,b.stack.head.$len=void 0),i}if(h)return h(this,b)}}else{if(dust.isThenable(a))return this.await(a,b,c);if(a===!0){if(g)return g(this,b)}else if(a||0===a){if(g)return g(this,b.push(a))}else if(h)return h(this,b)}return dust.log("Section without corresponding key in template `"+b.getTemplateName()+"`",DEBUG),this},Chunk.prototype.exists=function(a,b,c){var d=c.block,e=c["else"];if(dust.isEmpty(a)){if(e)return e(this,b)}else{if(d)return d(this,b);dust.log("No block for exists check in template `"+b.getTemplateName()+"`",DEBUG)}return this},Chunk.prototype.notexists=function(a,b,c){var d=c.block,e=c["else"];if(dust.isEmpty(a)){if(d)return d(this,b);dust.log("No block for not-exists check in template `"+b.getTemplateName()+"`",DEBUG)}else if(e)return e(this,b);return this},Chunk.prototype.block=function(a,b,c){var d=a||c.block;return d?d(this,b):this},Chunk.prototype.partial=function(a,b,c){var d;return dust.isEmptyObject(c)||(b=b.clone(),d=b.pop(),b=b.push(c).push(d)),a.__dustBody?this.capture(a,b,function(a,c){b.templateName=a,dust.load(a,c,b).end()}):(b.templateName=a,dust.load(a,this,b))},Chunk.prototype.helper=function(a,b,c,d){var e,f=this;if(!dust.helpers[a])return dust.log("Helper `"+a+"` does not exist",WARN),f;try{return e=dust.helpers[a](f,b,c,d),dust.isThenable(e)?this.await(e,b,c):e}catch(g){return dust.log("Error in helper `"+a+"`: "+g.message,ERROR),f.setError(g)}},Chunk.prototype.await=function(a,b,c){var d=c&&c.block,e=c&&c.error;return this.map(function(c){a.then(function(a){d?c.render(d,b.push(a)).end():c.end(a)},function(a){e?c.render(e,b.push(a)).end():(dust.log("Unhandled promise rejection in `"+b.getTemplateName()+"`"),c.end())})})},Chunk.prototype.capture=function(a,b,c){return this.map(function(d){var e=new Stub(function(a,b){a?d.setError(a):c(b,d)});a(e.head,b).end()})},Chunk.prototype.setError=function(a){return this.error=a,this.root.flush(),this};for(var f in Chunk.prototype)dust._aliases[f]&&(Chunk.prototype[dust._aliases[f]]=Chunk.prototype[f]);Tap.prototype.push=function(a){return new Tap(a,this)},Tap.prototype.go=function(a){for(var b=this;b;)a=b.head(a),b=b.tail;return a};var HCHARS=/[&<>"']/,AMP=/&/g,LT=/</g,GT=/>/g,QUOT=/\"/g,SQUOT=/\'/g;dust.escapeHtml=function(a){return"string"==typeof a||a&&"function"==typeof a.toString?("string"!=typeof a&&(a=a.toString()),HCHARS.test(a)?a.replace(AMP,"&amp;").replace(LT,"&lt;").replace(GT,"&gt;").replace(QUOT,"&quot;").replace(SQUOT,"&#39;"):a):a};var BS=/\\/g,FS=/\//g,CR=/\r/g,LS=/\u2028/g,PS=/\u2029/g,NL=/\n/g,LF=/\f/g,SQ=/'/g,DQ=/"/g,TB=/\t/g;return dust.escapeJs=function(a){return"string"==typeof a?a.replace(BS,"\\\\").replace(FS,"\\/").replace(DQ,'\\"').replace(SQ,"\\'").replace(CR,"\\r").replace(LS,"\\u2028").replace(PS,"\\u2029").replace(NL,"\\n").replace(LF,"\\f").replace(TB,"\\t"):a},dust.escapeJSON=function(a){return JSON?JSON.stringify(a).replace(LS,"\\u2028").replace(PS,"\\u2029").replace(LT,"\\u003c"):(dust.log("JSON is undefined; could not escape `"+a+"`",WARN),a)},dust}),function(a,b){"function"==typeof define&&define.amd&&define.amd.dust===!0?define("dust.parse",["dust.core"],function(dust){return b(dust).parse}):"object"==typeof exports?module.exports=b(require("./dust")):b(a.dust)}(this,function(dust){var a=function(){function a(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c}function b(a,b,c,d,e,f){this.message=a,this.expected=b,this.found=c,this.offset=d,this.line=e,this.column=f,this.name="SyntaxError"}function c(a){function c(){return f(ud).line}function d(){return f(ud).column}function e(a){throw h(a,null,ud)}function f(b){function c(b,c,d){var e,f;for(e=c;d>e;e++)f=a.charAt(e),"\n"===f?(b.seenCR||b.line++,b.column=1,b.seenCR=!1):"\r"===f||"\u2028"===f||"\u2029"===f?(b.line++,b.column=1,b.seenCR=!0):(b.column++,b.seenCR=!1)}return vd!==b&&(vd>b&&(vd=0,wd={line:1,column:1,seenCR:!1}),c(wd,vd,b),vd=b),wd}function g(a){xd>td||(td>xd&&(xd=td,yd=[]),yd.push(a))}function h(c,d,e){function g(a){var b=1;for(a.sort(function(a,b){return a.description<b.description?-1:a.description>b.description?1:0});b<a.length;)a[b-1]===a[b]?a.splice(b,1):b++}function h(a,b){function c(a){function b(a){return a.charCodeAt(0).toString(16).toUpperCase()}return a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E\x0F]/g,function(a){return"\\x0"+b(a)}).replace(/[\x10-\x1F\x80-\xFF]/g,function(a){return"\\x"+b(a)}).replace(/[\u0180-\u0FFF]/g,function(a){return"\\u0"+b(a)}).replace(/[\u1080-\uFFFF]/g,function(a){return"\\u"+b(a)})}var d,e,f,g=new Array(a.length);for(f=0;f<a.length;f++)g[f]=a[f].description;return d=a.length>1?g.slice(0,-1).join(", ")+" or "+g[a.length-1]:g[0],e=b?'"'+c(b)+'"':"end of input","Expected "+d+" but "+e+" found."}var i=f(e),j=e<a.length?a.charAt(e):null;return null!==d&&g(d),new b(null!==c?c:h(d,j),d,j,e,i.line,i.column)}function i(){var a;return a=j()}function j(){var a,b,c;for(a=td,b=[],c=k();c!==V;)b.push(c),c=k();return b!==V&&(ud=a,b=Y(b)),a=b}function k(){var a;return a=K(),a===V&&(a=L(),a===V&&(a=l(),a===V&&(a=s(),a===V&&(a=u(),a===V&&(a=r(),a===V&&(a=H())))))),a}function l(){var b,c,d,e,f,h,i,k;if(zd++,b=td,c=m(),c!==V){for(d=[],e=S();e!==V;)d.push(e),e=S();d!==V?(e=O(),e!==V?(f=j(),f!==V?(h=q(),h!==V?(i=n(),i===V&&(i=_),i!==V?(ud=td,k=ab(c,f,h,i),k=k?bb:$,k!==V?(ud=b,c=cb(c,f,h,i),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;if(b===V)if(b=td,c=m(),c!==V){for(d=[],e=S();e!==V;)d.push(e),e=S();d!==V?(47===a.charCodeAt(td)?(e=db,td++):(e=V,0===zd&&g(eb)),e!==V?(f=O(),f!==V?(ud=b,c=fb(c),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(Z)),b}function m(){var b,c,d,e,f,h,i;if(b=td,c=N(),c!==V)if(gb.test(a.charAt(td))?(d=a.charAt(td),td++):(d=V,0===zd&&g(hb)),d!==V){for(e=[],f=S();f!==V;)e.push(f),f=S();e!==V?(f=v(),f!==V?(h=o(),h!==V?(i=p(),i!==V?(ud=b,c=ib(d,f,h,i),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;else td=b,b=$;return b}function n(){var b,c,d,e,f,h,i;if(zd++,b=td,c=N(),c!==V)if(47===a.charCodeAt(td)?(d=db,td++):(d=V,0===zd&&g(eb)),d!==V){for(e=[],f=S();f!==V;)e.push(f),f=S();if(e!==V)if(f=v(),f!==V){for(h=[],i=S();i!==V;)h.push(i),i=S();h!==V?(i=O(),i!==V?(ud=b,c=kb(f),b=c):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;else td=b,b=$}else td=b,b=$;else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(jb)),b}function o(){var b,c,d,e;return b=td,c=td,58===a.charCodeAt(td)?(d=lb,td++):(d=V,0===zd&&g(mb)),d!==V?(e=v(),e!==V?(ud=c,d=nb(e),c=d):(td=c,c=$)):(td=c,c=$),c===V&&(c=_),c!==V&&(ud=b,c=ob(c)),b=c}function p(){var b,c,d,e,f,h,i;if(zd++,b=td,c=[],d=td,e=[],f=S(),f!==V)for(;f!==V;)e.push(f),f=S();else e=$;for(e!==V?(f=C(),f!==V?(61===a.charCodeAt(td)?(h=qb,td++):(h=V,0===zd&&g(rb)),h!==V?(i=w(),i===V&&(i=v(),i===V&&(i=F())),i!==V?(ud=d,e=sb(f,i),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$);d!==V;){if(c.push(d),d=td,e=[],f=S(),f!==V)for(;f!==V;)e.push(f),f=S();else e=$;e!==V?(f=C(),f!==V?(61===a.charCodeAt(td)?(h=qb,td++):(h=V,0===zd&&g(rb)),h!==V?(i=w(),i===V&&(i=v(),i===V&&(i=F())),i!==V?(ud=d,e=sb(f,i),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)}return c!==V&&(ud=b,c=tb(c)),b=c,zd--,b===V&&(c=V,0===zd&&g(pb)),b}function q(){var b,c,d,e,f,h,i,k;for(zd++,b=td,c=[],d=td,e=N(),e!==V?(58===a.charCodeAt(td)?(f=lb,td++):(f=V,0===zd&&g(mb)),f!==V?(h=C(),h!==V?(i=O(),i!==V?(k=j(),k!==V?(ud=d,e=sb(h,k),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$);d!==V;)c.push(d),d=td,e=N(),e!==V?(58===a.charCodeAt(td)?(f=lb,td++):(f=V,0===zd&&g(mb)),f!==V?(h=C(),h!==V?(i=O(),i!==V?(k=j(),k!==V?(ud=d,e=sb(h,k),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$);return c!==V&&(ud=b,c=vb(c)),b=c,zd--,b===V&&(c=V,0===zd&&g(ub)),b}function r(){var a,b,c,d,e;return zd++,a=td,b=N(),b!==V?(c=v(),c!==V?(d=t(),d!==V?(e=O(),e!==V?(ud=a,b=xb(c,d),a=b):(td=a,a=$)):(td=a,a=$)):(td=a,a=$)):(td=a,a=$),zd--,a===V&&(b=V,0===zd&&g(wb)),a}function s(){var b,c,d,e,f,h,i,j,k,l;if(zd++,b=td,c=N(),c!==V)if(62===a.charCodeAt(td)?(d=zb,td++):(d=V,0===zd&&g(Ab)),d===V&&(43===a.charCodeAt(td)?(d=Bb,td++):(d=V,0===zd&&g(Cb))),d!==V){for(e=[],f=S();f!==V;)e.push(f),f=S();if(e!==V)if(f=td,h=C(),h!==V&&(ud=f,h=Db(h)),f=h,f===V&&(f=F()),f!==V)if(h=o(),h!==V)if(i=p(),i!==V){for(j=[],k=S();k!==V;)j.push(k),k=S();j!==V?(47===a.charCodeAt(td)?(k=db,td++):(k=V,0===zd&&g(eb)),k!==V?(l=O(),l!==V?(ud=b,c=Eb(d,f,h,i),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;else td=b,b=$;else td=b,b=$;else td=b,b=$}else td=b,b=$;else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(yb)),b}function t(){var b,c,d,e,f;for(zd++,b=td,c=[],d=td,124===a.charCodeAt(td)?(e=Gb,td++):(e=V,0===zd&&g(Hb)),e!==V?(f=C(),f!==V?(ud=d,e=nb(f),d=e):(td=d,d=$)):(td=d,d=$);d!==V;)c.push(d),d=td,124===a.charCodeAt(td)?(e=Gb,td++):(e=V,0===zd&&g(Hb)),e!==V?(f=C(),f!==V?(ud=d,e=nb(f),d=e):(td=d,d=$)):(td=d,d=$);return c!==V&&(ud=b,c=Ib(c)),b=c,zd--,b===V&&(c=V,0===zd&&g(Fb)),b}function u(){var b,c,d,e,f;return zd++,b=td,c=N(),c!==V?(126===a.charCodeAt(td)?(d=Kb,td++):(d=V,0===zd&&g(Lb)),d!==V?(e=C(),e!==V?(f=O(),f!==V?(ud=b,c=Mb(e),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$)):(td=b,b=$),zd--,b===V&&(c=V,0===zd&&g(Jb)),b}function v(){var a,b;return zd++,a=td,b=B(),b!==V&&(ud=a,b=Ob(b)),a=b,a===V&&(a=td,b=C(),b!==V&&(ud=a,b=Pb(b)),a=b),zd--,a===V&&(b=V,0===zd&&g(Nb)),a}function w(){var a,b;return zd++,a=td,b=x(),b===V&&(b=A()),b!==V&&(ud=a,b=Rb(b)),a=b,zd--,a===V&&(b=V,0===zd&&g(Qb)),a}function x(){var b,c,d,e;return zd++,b=td,c=A(),c!==V?(46===a.charCodeAt(td)?(d=Tb,td++):(d=V,0===zd&&g(Ub)),d!==V?(e=y(),e!==V?(ud=b,c=Vb(c,e),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$),zd--,b===V&&(c=V,0===zd&&g(Sb)),b}function y(){var b,c,d;if(zd++,b=td,c=[],Xb.test(a.charAt(td))?(d=a.charAt(td),td++):(d=V,0===zd&&g(Yb)),d!==V)for(;d!==V;)c.push(d),Xb.test(a.charAt(td))?(d=a.charAt(td),td++):(d=V,0===zd&&g(Yb));else c=$;return c!==V&&(ud=b,c=Zb(c)),b=c,zd--,b===V&&(c=V,0===zd&&g(Wb)),b}function z(){var b,c,d;return zd++,b=td,45===a.charCodeAt(td)?(c=_b,td++):(c=V,0===zd&&g(ac)),c!==V?(d=y(),d!==V?(ud=b,c=bc(c,d),b=c):(td=b,b=$)):(td=b,b=$),zd--,b===V&&(c=V,0===zd&&g($b)),b}function A(){var a,b;return zd++,a=z(),a===V&&(a=y()),zd--,a===V&&(b=V,0===zd&&g(cc)),a}function B(){var b,c,d,e;if(zd++,b=td,c=C(),c===V&&(c=_),c!==V){if(d=[],e=E(),e===V&&(e=D()),e!==V)for(;e!==V;)d.push(e),e=E(),e===V&&(e=D());else d=$;d!==V?(ud=b,c=ec(c,d),b=c):(td=b,b=$)}else td=b,b=$;if(b===V)if(b=td,46===a.charCodeAt(td)?(c=Tb,td++):(c=V,0===zd&&g(Ub)),c!==V){for(d=[],e=E(),e===V&&(e=D());e!==V;)d.push(e),e=E(),e===V&&(e=D());d!==V?(ud=b,c=fc(d),b=c):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(dc)),b}function C(){var b,c,d,e;if(zd++,b=td,hc.test(a.charAt(td))?(c=a.charAt(td),td++):(c=V,0===zd&&g(ic)),c!==V){for(d=[],jc.test(a.charAt(td))?(e=a.charAt(td),td++):(e=V,0===zd&&g(kc));e!==V;)d.push(e),jc.test(a.charAt(td))?(e=a.charAt(td),td++):(e=V,0===zd&&g(kc));d!==V?(ud=b,c=lc(c,d),b=c):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(gc)),b}function D(){var b,c,d,e,f,h;if(zd++,b=td,c=td,d=P(),d!==V){if(e=td,f=[],Xb.test(a.charAt(td))?(h=a.charAt(td),td++):(h=V,0===zd&&g(Yb)),h!==V)for(;h!==V;)f.push(h),Xb.test(a.charAt(td))?(h=a.charAt(td),td++):(h=V,0===zd&&g(Yb));else f=$;f!==V&&(ud=e,f=nc(f)),e=f,e===V&&(e=v()),e!==V?(f=Q(),f!==V?(ud=c,d=oc(e),c=d):(td=c,c=$)):(td=c,c=$)}else td=c,c=$;return c!==V?(d=E(),d===V&&(d=_),d!==V?(ud=b,c=pc(c,d),b=c):(td=b,b=$)):(td=b,b=$),zd--,b===V&&(c=V,0===zd&&g(mc)),b}function E(){var b,c,d,e,f;if(zd++,b=td,c=[],d=td,46===a.charCodeAt(td)?(e=Tb,td++):(e=V,0===zd&&g(Ub)),e!==V?(f=C(),f!==V?(ud=d,e=rc(f),d=e):(td=d,d=$)):(td=d,d=$),d!==V)for(;d!==V;)c.push(d),d=td,46===a.charCodeAt(td)?(e=Tb,td++):(e=V,0===zd&&g(Ub)),e!==V?(f=C(),f!==V?(ud=d,e=rc(f),d=e):(td=d,d=$)):(td=d,d=$);else c=$;return c!==V?(d=D(),d===V&&(d=_),d!==V?(ud=b,c=sc(c,d),b=c):(td=b,b=$)):(td=b,b=$),zd--,b===V&&(c=V,0===zd&&g(qc)),b}function F(){var b,c,d,e;if(zd++,b=td,34===a.charCodeAt(td)?(c=uc,td++):(c=V,0===zd&&g(vc)),c!==V?(34===a.charCodeAt(td)?(d=uc,td++):(d=V,0===zd&&g(vc)),d!==V?(ud=b,c=wc(),b=c):(td=b,b=$)):(td=b,b=$),b===V&&(b=td,34===a.charCodeAt(td)?(c=uc,td++):(c=V,0===zd&&g(vc)),c!==V?(d=I(),d!==V?(34===a.charCodeAt(td)?(e=uc,td++):(e=V,0===zd&&g(vc)),e!==V?(ud=b,c=xc(d),b=c):(td=b,b=$)):(td=b,b=$)):(td=b,b=$),b===V))if(b=td,34===a.charCodeAt(td)?(c=uc,td++):(c=V,0===zd&&g(vc)),c!==V){if(d=[],e=G(),e!==V)for(;e!==V;)d.push(e),e=G();else d=$;d!==V?(34===a.charCodeAt(td)?(e=uc,td++):(e=V,0===zd&&g(vc)),e!==V?(ud=b,c=yc(d),b=c):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(tc)),b}function G(){var a,b;return a=u(),a===V&&(a=r(),a===V&&(a=td,b=I(),b!==V&&(ud=a,b=zc(b)),a=b)),a}function H(){var b,c,d,e,f,h,i,j;if(zd++,b=td,c=R(),c!==V){for(d=[],e=S();e!==V;)d.push(e),e=S();d!==V?(ud=b,c=Bc(c,d),b=c):(td=b,b=$)}else td=b,b=$;if(b===V){if(b=td,c=[],d=td,e=td,zd++,f=M(),zd--,f===V?e=bb:(td=e,e=$),e!==V?(f=td,zd++,h=K(),zd--,h===V?f=bb:(td=f,f=$),f!==V?(h=td,zd++,i=L(),zd--,i===V?h=bb:(td=h,h=$),h!==V?(i=td,zd++,j=R(),zd--,j===V?i=bb:(td=i,i=$),i!==V?(a.length>td?(j=a.charAt(td),td++):(j=V,0===zd&&g(Cc)),j!==V?(ud=d,e=Dc(j),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$),d!==V)for(;d!==V;)c.push(d),d=td,e=td,zd++,f=M(),zd--,f===V?e=bb:(td=e,e=$),e!==V?(f=td,zd++,h=K(),zd--,h===V?f=bb:(td=f,f=$),f!==V?(h=td,zd++,i=L(),zd--,i===V?h=bb:(td=h,h=$),h!==V?(i=td,zd++,j=R(),zd--,j===V?i=bb:(td=i,i=$),i!==V?(a.length>td?(j=a.charAt(td),td++):(j=V,0===zd&&g(Cc)),j!==V?(ud=d,e=Dc(j),d=e):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$)):(td=d,d=$);else c=$;c!==V&&(ud=b,c=Ec(c)),b=c}return zd--,b===V&&(c=V,0===zd&&g(Ac)),b}function I(){var b,c,d,e,f;if(zd++,b=td,c=[],d=td,e=td,zd++,f=M(),zd--,f===V?e=bb:(td=e,e=$),e!==V?(f=J(),f===V&&(Gc.test(a.charAt(td))?(f=a.charAt(td),td++):(f=V,0===zd&&g(Hc))),f!==V?(ud=d,e=Dc(f),d=e):(td=d,d=$)):(td=d,d=$),d!==V)for(;d!==V;)c.push(d),d=td,e=td,zd++,f=M(),zd--,f===V?e=bb:(td=e,e=$),e!==V?(f=J(),f===V&&(Gc.test(a.charAt(td))?(f=a.charAt(td),td++):(f=V,0===zd&&g(Hc))),f!==V?(ud=d,e=Dc(f),d=e):(td=d,d=$)):(td=d,d=$);else c=$;return c!==V&&(ud=b,c=Ic(c)),b=c,zd--,b===V&&(c=V,0===zd&&g(Fc)),b}function J(){var b,c;return b=td,a.substr(td,2)===Jc?(c=Jc,td+=2):(c=V,0===zd&&g(Kc)),c!==V&&(ud=b,c=Lc()),b=c}function K(){var b,c,d,e,f,h;if(zd++,b=td,a.substr(td,2)===Nc?(c=Nc,td+=2):(c=V,0===zd&&g(Oc)),c!==V){for(d=[],e=td,f=td,zd++,a.substr(td,2)===Pc?(h=Pc,td+=2):(h=V,0===zd&&g(Qc)),zd--,h===V?f=bb:(td=f,f=$),f!==V?(a.length>td?(h=a.charAt(td),td++):(h=V,0===zd&&g(Cc)),h!==V?(ud=e,f=Rc(h),e=f):(td=e,e=$)):(td=e,e=$);e!==V;)d.push(e),e=td,f=td,zd++,a.substr(td,2)===Pc?(h=Pc,td+=2):(h=V,0===zd&&g(Qc)),zd--,h===V?f=bb:(td=f,f=$),f!==V?(a.length>td?(h=a.charAt(td),td++):(h=V,0===zd&&g(Cc)),h!==V?(ud=e,f=Rc(h),e=f):(td=e,e=$)):(td=e,e=$);d!==V?(a.substr(td,2)===Pc?(e=Pc,td+=2):(e=V,0===zd&&g(Qc)),e!==V?(ud=b,c=Sc(d),b=c):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(Mc)),b}function L(){var b,c,d,e,f,h;if(zd++,b=td,a.substr(td,2)===Uc?(c=Uc,td+=2):(c=V,0===zd&&g(Vc)),c!==V){for(d=[],e=td,f=td,zd++,a.substr(td,2)===Wc?(h=Wc,td+=2):(h=V,0===zd&&g(Xc)),zd--,h===V?f=bb:(td=f,f=$),f!==V?(a.length>td?(h=a.charAt(td),td++):(h=V,0===zd&&g(Cc)),h!==V?(ud=e,f=Dc(h),e=f):(td=e,e=$)):(td=e,e=$);e!==V;)d.push(e),e=td,f=td,zd++,a.substr(td,2)===Wc?(h=Wc,td+=2):(h=V,0===zd&&g(Xc)),zd--,h===V?f=bb:(td=f,f=$),f!==V?(a.length>td?(h=a.charAt(td),td++):(h=V,0===zd&&g(Cc)),h!==V?(ud=e,f=Dc(h),e=f):(td=e,e=$)):(td=e,e=$);d!==V?(a.substr(td,2)===Wc?(e=Wc,td+=2):(e=V,0===zd&&g(Xc)),e!==V?(ud=b,c=Yc(d),b=c):(td=b,b=$)):(td=b,b=$)}else td=b,b=$;return zd--,b===V&&(c=V,0===zd&&g(Tc)),b}function M(){var b,c,d,e,f,h,i,j,k,l;if(b=td,c=N(),c!==V){for(d=[],e=S();e!==V;)d.push(e),e=S();if(d!==V)if(Zc.test(a.charAt(td))?(e=a.charAt(td),td++):(e=V,0===zd&&g($c)),e!==V){for(f=[],h=S();h!==V;)f.push(h),h=S();if(f!==V){if(h=[],i=td,j=td,zd++,k=O(),zd--,k===V?j=bb:(td=j,j=$),j!==V?(k=td,zd++,l=R(),zd--,l===V?k=bb:(td=k,k=$),k!==V?(a.length>td?(l=a.charAt(td),td++):(l=V,0===zd&&g(Cc)),l!==V?(j=[j,k,l],i=j):(td=i,i=$)):(td=i,i=$)):(td=i,i=$),i!==V)for(;i!==V;)h.push(i),i=td,j=td,zd++,k=O(),zd--,k===V?j=bb:(td=j,j=$),j!==V?(k=td,zd++,l=R(),zd--,l===V?k=bb:(td=k,k=$),k!==V?(a.length>td?(l=a.charAt(td),td++):(l=V,0===zd&&g(Cc)),l!==V?(j=[j,k,l],i=j):(td=i,i=$)):(td=i,i=$)):(td=i,i=$);else h=$;if(h!==V){for(i=[],j=S();j!==V;)i.push(j),j=S();i!==V?(j=O(),j!==V?(c=[c,d,e,f,h,i,j],b=c):(td=b,b=$)):(td=b,b=$)}else td=b,b=$}else td=b,b=$}else td=b,b=$;else td=b,b=$}else td=b,b=$;return b===V&&(b=r()),b}function N(){var b;return 123===a.charCodeAt(td)?(b=_c,td++):(b=V,0===zd&&g(ad)),b}function O(){var b;return 125===a.charCodeAt(td)?(b=bd,td++):(b=V,0===zd&&g(cd)),b}function P(){var b;return 91===a.charCodeAt(td)?(b=dd,td++):(b=V,0===zd&&g(ed)),b}function Q(){var b;return 93===a.charCodeAt(td)?(b=fd,td++):(b=V,0===zd&&g(gd)),b}function R(){var b;return 10===a.charCodeAt(td)?(b=hd,td++):(b=V,0===zd&&g(id)),b===V&&(a.substr(td,2)===jd?(b=jd,td+=2):(b=V,0===zd&&g(kd)),b===V&&(13===a.charCodeAt(td)?(b=ld,td++):(b=V,0===zd&&g(md)),b===V&&(8232===a.charCodeAt(td)?(b=nd,td++):(b=V,0===zd&&g(od)),b===V&&(8233===a.charCodeAt(td)?(b=pd,td++):(b=V,0===zd&&g(qd)))))),b}function S(){var b;return rd.test(a.charAt(td))?(b=a.charAt(td),td++):(b=V,0===zd&&g(sd)),b===V&&(b=R()),b}var T,U=arguments.length>1?arguments[1]:{},V={},W={start:i},X=i,Y=function(a){return["body"].concat(a).concat([["line",c()],["col",d()]])},Z={type:"other",description:"section"},$=V,_=null,ab=function(a,b,c,d){return d&&a[1].text===d.text||e("Expected end tag for "+a[1].text+" but it was not found."),!0},bb=void 0,cb=function(a,b,e){return e.push(["param",["literal","block"],b]),a.push(e),a.concat([["line",c()],["col",d()]])},db="/",eb={type:"literal",value:"/",description:'"/"'},fb=function(a){return a.push(["bodies"]),a.concat([["line",c()],["col",d()]])},gb=/^[#?\^<+@%]/,hb={type:"class",value:"[#?\\^<+@%]",description:"[#?\\^<+@%]"},ib=function(a,b,c,d){return[a,b,c,d]},jb={type:"other",description:"end tag"},kb=function(a){return a},lb=":",mb={type:"literal",value:":",description:'":"'},nb=function(a){return a},ob=function(a){return a?["context",a]:["context"]},pb={type:"other",description:"params"},qb="=",rb={type:"literal",value:"=",description:'"="'},sb=function(a,b){return["param",["literal",a],b]},tb=function(a){return["params"].concat(a)},ub={type:"other",description:"bodies"},vb=function(a){return["bodies"].concat(a)},wb={type:"other",description:"reference"},xb=function(a,b){return["reference",a,b].concat([["line",c()],["col",d()]])},yb={type:"other",description:"partial"},zb=">",Ab={type:"literal",value:">",description:'">"'},Bb="+",Cb={type:"literal",value:"+",description:'"+"'},Db=function(a){return["literal",a]},Eb=function(a,b,e,f){var g=">"===a?"partial":a;return[g,b,e,f].concat([["line",c()],["col",d()]])},Fb={type:"other",description:"filters"},Gb="|",Hb={type:"literal",value:"|",description:'"|"'},Ib=function(a){return["filters"].concat(a)},Jb={type:"other",description:"special"},Kb="~",Lb={type:"literal",value:"~",description:'"~"'},Mb=function(a){return["special",a].concat([["line",c()],["col",d()]])},Nb={type:"other",description:"identifier"},Ob=function(a){var b=["path"].concat(a);return b.text=a[1].join(".").replace(/,line,\d+,col,\d+/g,""),b},Pb=function(a){var b=["key",a];return b.text=a,b},Qb={type:"other",description:"number"},Rb=function(a){return["literal",a]},Sb={type:"other",description:"float"},Tb=".",Ub={type:"literal",value:".",description:'"."'},Vb=function(a,b){return parseFloat(a+"."+b)},Wb={type:"other",description:"unsigned_integer"},Xb=/^[0-9]/,Yb={type:"class",value:"[0-9]",description:"[0-9]"},Zb=function(a){return parseInt(a.join(""),10)},$b={type:"other",description:"signed_integer"},_b="-",ac={type:"literal",value:"-",description:'"-"'},bc=function(a,b){return-1*b},cc={type:"other",description:"integer"},dc={type:"other",description:"path"},ec=function(a,b){return b=b[0],a&&b?(b.unshift(a),[!1,b].concat([["line",c()],["col",d()]])):[!0,b].concat([["line",c()],["col",d()]])},fc=function(a){return a.length>0?[!0,a[0]].concat([["line",c()],["col",d()]]):[!0,[]].concat([["line",c()],["col",d()]])},gc={type:"other",description:"key"},hc=/^[a-zA-Z_$]/,ic={type:"class",value:"[a-zA-Z_$]",description:"[a-zA-Z_$]"},jc=/^[0-9a-zA-Z_$\-]/,kc={type:"class",value:"[0-9a-zA-Z_$\\-]",description:"[0-9a-zA-Z_$\\-]"},lc=function(a,b){return a+b.join("")},mc={type:"other",description:"array"},nc=function(a){return a.join("")},oc=function(a){return a},pc=function(a,b){return b?b.unshift(a):b=[a],b},qc={type:"other",description:"array_part"},rc=function(a){return a},sc=function(a,b){return b?a.concat(b):a},tc={type:"other",description:"inline"},uc='"',vc={type:"literal",value:'"',description:'"\\""'},wc=function(){return["literal",""].concat([["line",c()],["col",d()]])},xc=function(a){return["literal",a].concat([["line",c()],["col",d()]])},yc=function(a){return["body"].concat(a).concat([["line",c()],["col",d()]])},zc=function(a){return["buffer",a]},Ac={type:"other",description:"buffer"},Bc=function(a,b){return["format",a,b.join("")].concat([["line",c()],["col",d()]])},Cc={type:"any",description:"any character"},Dc=function(a){return a},Ec=function(a){return["buffer",a.join("")].concat([["line",c()],["col",d()]])},Fc={type:"other",description:"literal"},Gc=/^[^"]/,Hc={type:"class",value:'[^"]',description:'[^"]'},Ic=function(a){return a.join("")},Jc='\\"',Kc={type:"literal",value:'\\"',description:'"\\\\\\""'},Lc=function(){return'"'},Mc={type:"other",description:"raw"},Nc="{`",Oc={type:"literal",value:"{`",description:'"{`"'},Pc="`}",Qc={type:"literal",value:"`}",description:'"`}"'},Rc=function(a){return a},Sc=function(a){return["raw",a.join("")].concat([["line",c()],["col",d()]])},Tc={type:"other",description:"comment"},Uc="{!",Vc={type:"literal",value:"{!",description:'"{!"'},Wc="!}",Xc={type:"literal",value:"!}",description:'"!}"'},Yc=function(a){return["comment",a.join("")].concat([["line",c()],["col",d()]])},Zc=/^[#?\^><+%:@\/~%]/,$c={type:"class",value:"[#?\\^><+%:@\\/~%]",description:"[#?\\^><+%:@\\/~%]"},_c="{",ad={type:"literal",value:"{",description:'"{"'},bd="}",cd={type:"literal",value:"}",description:'"}"'},dd="[",ed={type:"literal",value:"[",description:'"["'},fd="]",gd={type:"literal",value:"]",description:'"]"'},hd="\n",id={type:"literal",value:"\n",description:'"\\n"'},jd="\r\n",kd={type:"literal",value:"\r\n",description:'"\\r\\n"'},ld="\r",md={type:"literal",value:"\r",description:'"\\r"'},nd="\u2028",od={type:"literal",value:"\u2028",description:'"\\u2028"'},pd="\u2029",qd={type:"literal",value:"\u2029",description:'"\\u2029"'},rd=/^[\t\x0B\f \xA0\uFEFF]/,sd={type:"class",value:"[\\t\\x0B\\f \\xA0\\uFEFF]",description:"[\\t\\x0B\\f \\xA0\\uFEFF]"},td=0,ud=0,vd=0,wd={line:1,column:1,seenCR:!1},xd=0,yd=[],zd=0;if("startRule"in U){if(!(U.startRule in W))throw new Error("Can't start parsing from rule \""+U.startRule+'".');X=W[U.startRule]}if(T=X(),T!==V&&td===a.length)return T;throw T!==V&&td<a.length&&g({type:"end",description:"end of input"}),h(null,yd,xd)}return a(b,Error),{SyntaxError:b,parse:c}}();return dust.parse=a.parse,a}),function(a,b){"function"==typeof define&&define.amd&&define.amd.dust===!0?define("dust.compile",["dust.core","dust.parse"],function(dust,a){return b(a,dust).compile}):"object"==typeof exports?module.exports=b(require("./parser").parse,require("./dust")):b(a.dust.parse,a.dust)}(this,function(a,dust){function b(a){var b={};
5return o.filterNode(b,a)}function c(a,b){var c,d,e,f=[b[0]];for(c=1,d=b.length;d>c;c++)e=o.filterNode(a,b[c]),e&&f.push(e);return f}function d(a,b){var c,d,e,f,g=[b[0]];for(d=1,e=b.length;e>d;d++)f=o.filterNode(a,b[d]),f&&("buffer"===f[0]||"format"===f[0]?c?(c[0]="buffer"===f[0]?"buffer":c[0],c[1]+=f.slice(1,-2).join("")):(c=f,g.push(f)):(c=null,g.push(f)));return g}function e(a,b){return["buffer",q[b[1]],b[2],b[3]]}function f(a,b){return b}function g(){}function h(a,b){return dust.config.whitespace?(b.splice(1,2,b.slice(1,-2).join("")),b):null}function i(a,b){var c={name:b,bodies:[],blocks:{},index:0,auto:"h"},d=dust.escapeJs(b),e="function(dust){dust.register("+(b?'"'+d+'"':"null")+","+o.compileNode(c,a)+");"+j(c)+k(c)+"return body_0;}";return dust.config.amd?'define("'+d+'",["dust.core"],'+e+");":"("+e+")(dust);"}function j(a){var b,c=[],d=a.blocks;for(b in d)c.push('"'+b+'":'+d[b]);return c.length?(a.blocks="ctx=ctx.shiftBlocks(blocks);","var blocks={"+c.join(",")+"};"):a.blocks=""}function k(a){var b,c,d=[],e=a.bodies,f=a.blocks;for(b=0,c=e.length;c>b;b++)d[b]="function body_"+b+"(chk,ctx){"+f+"return chk"+e[b]+";}body_"+b+".__dustBody=!0;";return d.join("")}function l(a,b){var c,d,e="";for(c=1,d=b.length;d>c;c++)e+=o.compileNode(a,b[c]);return e}function m(a,b,c){return"."+(dust._aliases[c]||c)+"("+o.compileNode(a,b[1])+","+o.compileNode(a,b[2])+","+o.compileNode(a,b[4])+","+o.compileNode(a,b[3])+")"}function n(a){return a.replace(r,"\\\\").replace(s,'\\"').replace(t,"\\f").replace(u,"\\n").replace(v,"\\r").replace(w,"\\t")}var o={},p=dust.isArray;o.compile=function(c,d){if(!d&&null!==d)throw new Error("Template name parameter cannot be undefined when calling dust.compile");try{var e=b(a(c));return i(e,d)}catch(f){if(!f.line||!f.column)throw f;throw new SyntaxError(f.message+" At line : "+f.line+", column : "+f.column)}},o.filterNode=function(a,b){return o.optimizers[b[0]](a,b)},o.optimizers={body:d,buffer:f,special:e,format:h,reference:c,"#":c,"?":c,"^":c,"<":c,"+":c,"@":c,"%":c,partial:c,context:c,params:c,bodies:c,param:c,filters:f,key:f,path:f,literal:f,raw:f,comment:g,line:g,col:g},o.pragmas={esc:function(a,b,c){var d,e=a.auto;return b||(b="h"),a.auto="s"===b?"":b,d=l(a,c.block),a.auto=e,d}};var q={s:" ",n:"\n",r:"\r",lb:"{",rb:"}"};o.compileNode=function(a,b){return o.nodes[b[0]](a,b)},o.nodes={body:function(a,b){var c=a.index++,d="body_"+c;return a.bodies[c]=l(a,b),d},buffer:function(a,b){return".w("+x(b[1])+")"},format:function(a,b){return".w("+x(b[1])+")"},reference:function(a,b){return".f("+o.compileNode(a,b[1])+",ctx,"+o.compileNode(a,b[2])+")"},"#":function(a,b){return m(a,b,"section")},"?":function(a,b){return m(a,b,"exists")},"^":function(a,b){return m(a,b,"notexists")},"<":function(a,b){for(var c=b[4],d=1,e=c.length;e>d;d++){var f=c[d],g=f[1][1];if("block"===g)return a.blocks[b[1].text]=o.compileNode(a,f[2]),""}return""},"+":function(a,b){return"undefined"==typeof b[1].text&&"undefined"==typeof b[4]?".block(ctx.getBlock("+o.compileNode(a,b[1])+",chk, ctx),"+o.compileNode(a,b[2])+", {},"+o.compileNode(a,b[3])+")":".block(ctx.getBlock("+x(b[1].text)+"),"+o.compileNode(a,b[2])+","+o.compileNode(a,b[4])+","+o.compileNode(a,b[3])+")"},"@":function(a,b){return".h("+x(b[1].text)+","+o.compileNode(a,b[2])+","+o.compileNode(a,b[4])+","+o.compileNode(a,b[3])+")"},"%":function(a,b){var c,d,e,f,g,h,i,j,k,l=b[1][1];if(!o.pragmas[l])return"";for(c=b[4],d={},j=1,k=c.length;k>j;j++)h=c[j],d[h[1][1]]=h[2];for(e=b[3],f={},j=1,k=e.length;k>j;j++)i=e[j],f[i[1][1]]=i[2][1];return g=b[2][1]?b[2][1].text:null,o.pragmas[l](a,g,d,f)},partial:function(a,b){return".p("+o.compileNode(a,b[1])+","+o.compileNode(a,b[2])+","+o.compileNode(a,b[3])+")"},context:function(a,b){return b[1]?"ctx.rebase("+o.compileNode(a,b[1])+")":"ctx"},params:function(a,b){for(var c=[],d=1,e=b.length;e>d;d++)c.push(o.compileNode(a,b[d]));return c.length?"{"+c.join(",")+"}":"{}"},bodies:function(a,b){for(var c=[],d=1,e=b.length;e>d;d++)c.push(o.compileNode(a,b[d]));return"{"+c.join(",")+"}"},param:function(a,b){return o.compileNode(a,b[1])+":"+o.compileNode(a,b[2])},filters:function(a,b){for(var c=[],d=1,e=b.length;e>d;d++){var f=b[d];c.push('"'+f+'"')}return'"'+a.auto+'"'+(c.length?",["+c.join(",")+"]":"")},key:function(a,b){return'ctx.get(["'+b[1]+'"], false)'},path:function(a,b){for(var c=b[1],d=b[2],e=[],f=0,g=d.length;g>f;f++)e.push(p(d[f])?o.compileNode(a,d[f]):'"'+d[f]+'"');return"ctx.getPath("+c+", ["+e.join(",")+"])"},literal:function(a,b){return x(b[1])},raw:function(a,b){return".w("+x(b[1])+")"}};var r=/\\/g,s=/"/g,t=/\f/g,u=/\n/g,v=/\r/g,w=/\t/g,x="undefined"==typeof JSON?function(a){return'"'+n(a)+'"'}:JSON.stringify;return dust.compile=o.compile,dust.filterNode=o.filterNode,dust.optimizers=o.optimizers,dust.pragmas=o.pragmas,dust.compileNode=o.compileNode,dust.nodes=o.nodes,o}),"function"==typeof define&&define.amd&&define.amd.dust===!0&&define(["require","dust.core","dust.compile"],function(require,dust){return dust.onLoad=function(a,b){require([a],function(){b()})},dust});
\No newline at end of file