
var TrimPath;(function(){if(TrimPath==null){TrimPath=new Object();}
if(TrimPath.evalEx==null){TrimPath.evalEx=function(_1){return eval(_1);};}
var _2;if(Array.prototype.pop==null){Array.prototype.pop=function(){if(this.length===0){return _2;}
return this[--this.length];};}
if(Array.prototype.push==null){Array.prototype.push=function(){for(var i=0;i<arguments.length;++i){this[this.length]=arguments[i];}
return this.length;};}
TrimPath.parseTemplate=function(_4,_5,_6){if(_6==null){_6=TrimPath.parseTemplate_etc;}
var _7=_8(_4,_5,_6);var _9=TrimPath.evalEx(_7,_5,1);if(_9!=null){return new _6.Template(_5,_4,_7,_9,_6);}
return null;};try{String.prototype.process=function(_a,_b){var _c=TrimPath.parseTemplate(this,null);if(_c!=null){return _c.process(_a,_b);}
return this;};}
catch(e){}
TrimPath.parseTemplate_etc={};TrimPath.parseTemplate_etc.statementTag="forelse|for|if|elseif|else|var|macro";TrimPath.parseTemplate_etc.statementDef={"if":{delta:1,prefix:"if (",suffix:") {",paramMin:1},"else":{delta:0,prefix:"} else {"},"elseif":{delta:0,prefix:"} else if (",suffix:") {",paramDefault:"true"},"/if":{delta:-1,prefix:"}"},"for":{delta:1,paramMin:3,prefixFunc:function(_d,_e,_f,etc){if(_d[2]!="in"){throw new etc.ParseError(_f,_e.line,"bad for loop statement: "+_d.join(" "));}
var _11=_d[1];var _12="__LIST__"+_11;return["var ",_12," = ",_d[3],";","var __LENGTH_STACK__;","if (typeof(__LENGTH_STACK__) == 'undefined' || !__LENGTH_STACK__.length) __LENGTH_STACK__ = new Array();","__LENGTH_STACK__[__LENGTH_STACK__.length] = 0;","if ((",_12,") != null) { ","var ",_11,"_ct = 0;","for (var ",_11,"_index in ",_12,") { ",_11,"_ct++;","if (typeof(",_12,"[",_11,"_index]) == 'function') {continue;}","__LENGTH_STACK__[__LENGTH_STACK__.length - 1]++;","var ",_11," = ",_12,"[",_11,"_index];"].join("");}},"forelse":{delta:0,prefix:"} } if (__LENGTH_STACK__[__LENGTH_STACK__.length - 1] == 0) { if (",suffix:") {",paramDefault:"true"},"/for":{delta:-1,prefix:"} }; delete __LENGTH_STACK__[__LENGTH_STACK__.length - 1];"},"var":{delta:0,prefix:"var ",suffix:";"},"macro":{delta:1,prefixFunc:function(_13,_14,_15,etc){var _17=_13[1].split("(")[0];return["var ",_17," = function",_13.slice(1).join(" ").substring(_17.length),"{ var _OUT_arr = []; var _OUT = { write: function(m) { if (m) _OUT_arr.push(m); } }; "].join("");}},"/macro":{delta:-1,prefix:" return _OUT_arr.join(''); };"}};TrimPath.parseTemplate_etc.modifierDef={"eat":function(v){return"";},"escape":function(s){return String(s).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");},"capitalize":function(s){return String(s).toUpperCase();},"default":function(s,d){return s!=null?s:d;}};TrimPath.parseTemplate_etc.modifierDef.h=TrimPath.parseTemplate_etc.modifierDef.escape;TrimPath.parseTemplate_etc.Template=function(_1d,_1e,_1f,_20,etc){this.process=function(_22,_23){if(_22==null){_22={};}
if(_22._MODIFIERS==null){_22._MODIFIERS={};}
if(_22.defined==null){_22.defined=function(str){return(_22[str]!=undefined);};}
for(var k in etc.modifierDef){if(_22._MODIFIERS[k]==null){_22._MODIFIERS[k]=etc.modifierDef[k];}}
if(_23==null){_23={};}
var _26=[];var _27={write:function(m){_26.push(m);}};try{_20(_27,_22,_23);}
catch(e){if(_23.throwExceptions==true){throw e;}
var _29=new String(_26.join("")+"[ERROR: "+e.toString()+(e.message?"; "+e.message:"")+"]");_29["exception"]=e;return _29;}
return _26.join("");};this.name=_1d;this.source=_1e;this.sourceFunc=_1f;this.toString=function(){return"TrimPath.Template ["+_1d+"]";};};TrimPath.parseTemplate_etc.ParseError=function(_2a,_2b,_2c){this.name=_2a;this.line=_2b;this.message=_2c;};TrimPath.parseTemplate_etc.ParseError.prototype.toString=function(){return("TrimPath template ParseError in "+this.name+": line "+this.line+", "+this.message);};var _8=function(_2d,_2e,etc){_2d=_30(_2d);var _31=["var TrimPath_Template_TEMP = function(_OUT, _CONTEXT, _FLAGS) { with (_CONTEXT) {"];var _32={stack:[],line:1};var _33=-1;while(_33+1<_2d.length){var _34=_33;_34=_2d.indexOf("{",_34+1);while(_34>=0){var _35=_2d.indexOf("}",_34+1);var _36=_2d.substring(_34,_35);var _37=_36.match(/^\{(cdata|minify|eval)/);if(_37){var _38=_37[1];var _39=_34+_38.length+1;var _3a=_2d.indexOf("}",_39);if(_3a>=0){var _3b;if(_3a-_39<=0){_3b="{/"+_38+"}";}else{_3b=_2d.substring(_39+1,_3a);}
var _3c=_2d.indexOf(_3b,_3a+1);if(_3c>=0){_3d(_2d.substring(_33+1,_34),_31);var _3e=_2d.substring(_3a+1,_3c);if(_38=="cdata"){_3f(_3e,_31);}else{if(_38=="minify"){_3f(_40(_3e),_31);}else{if(_38=="eval"){if(_3e!=null&&_3e.length>0){_31.push("_OUT.write( (function() { "+_3e+" })() );");}}}}
_34=_33=_3c+_3b.length-1;}}}else{if(_2d.charAt(_34-1)!="$"&&_2d.charAt(_34-1)!="\\"){var _41=(_2d.charAt(_34+1)=="/"?2:1);if(_2d.substring(_34+_41,_34+10+_41).search(TrimPath.parseTemplate_etc.statementTag)==0){break;}}}
_34=_2d.indexOf("{",_34+1);}
if(_34<0){break;}
var _35=_2d.indexOf("}",_34+1);if(_35<0){break;}
_3d(_2d.substring(_33+1,_34),_31);_42(_2d.substring(_34,_35+1),_32,_31,_2e,etc);_33=_35;}
_3d(_2d.substring(_33+1),_31);if(_32.stack.length!=0){throw new etc.ParseError(_2e,_32.line,"unclosed, unmatched statement(s): "+_32.stack.join(","));}
_31.push("}}; TrimPath_Template_TEMP");return _31.join("");};var _42=function(_43,_44,_45,_46,etc){var _48=_43.slice(1,-1).split(" ");var _49=etc.statementDef[_48[0]];if(_49==null){_3d(_43,_45);return;}
if(_49.delta<0){if(_44.stack.length<=0){throw new etc.ParseError(_46,_44.line,"close tag does not match any previous statement: "+_43);}
_44.stack.pop();}
if(_49.delta>0){_44.stack.push(_43);}
if(_49.paramMin!=null&&_49.paramMin>=_48.length){throw new etc.ParseError(_46,_44.line,"statement needs more parameters: "+_43);}
if(_49.prefixFunc!=null){_45.push(_49.prefixFunc(_48,_44,_46,etc));}else{_45.push(_49.prefix);}
if(_49.suffix!=null){if(_48.length<=1){if(_49.paramDefault!=null){_45.push(_49.paramDefault);}}else{for(var i=1;i<_48.length;i++){if(i>1){_45.push(" ");}
_45.push(_48[i]);}}
_45.push(_49.suffix);}};var _3d=function(_4b,_4c){if(_4b.length<=0){return;}
var _4d=0;var _4e=_4b.length-1;while(_4d<_4b.length&&(_4b.charAt(_4d)=="\n")){_4d++;}
while(_4e>=0&&(_4b.charAt(_4e)==" "||_4b.charAt(_4e)=="\t")){_4e--;}
if(_4e<_4d){_4e=_4d;}
if(_4d>0){_4c.push("if (_FLAGS.keepWhitespace == true) _OUT.write(\"");var s=_4b.substring(0,_4d).replace("\n","\\n");if(s.charAt(s.length-1)=="\n"){s=s.substring(0,s.length-1);}
_4c.push(s);_4c.push("\");");}
var _50=_4b.substring(_4d,_4e+1).split("\n");for(var i=0;i<_50.length;i++){_52(_50[i],_4c);if(i<_50.length-1){_4c.push("_OUT.write(\"\\n\");\n");}}
if(_4e+1<_4b.length){_4c.push("if (_FLAGS.keepWhitespace == true) _OUT.write(\"");var s=_4b.substring(_4e+1).replace("\n","\\n");if(s.charAt(s.length-1)=="\n"){s=s.substring(0,s.length-1);}
_4c.push(s);_4c.push("\");");}};var _52=function(_53,_54){var _55="}";var _56=-1;while(_56+_55.length<_53.length){var _57="${",_58="}";var _59=_53.indexOf(_57,_56+_55.length);if(_59<0){break;}
if(_53.charAt(_59+2)=="%"){_57="${%";_58="%}";}
var _5a=_53.indexOf(_58,_59+_57.length);if(_5a<0){break;}
_3f(_53.substring(_56+_55.length,_59),_54);var _5b=_53.substring(_59+_57.length,_5a).replace(/\|\|/g,"#@@#").split("|");for(var k in _5b){if(_5b[k].replace){_5b[k]=_5b[k].replace(/#@@#/g,"||");}}
_54.push("_OUT.write(");_5d(_5b,_5b.length-1,_54);_54.push(");");_56=_5a;_55=_58;}
_3f(_53.substring(_56+_55.length),_54);};var _3f=function(_5e,_5f){if(_5e==null||_5e.length<=0){return;}
_5e=_5e.replace(/\\/g,"\\\\");_5e=_5e.replace(/\n/g,"\\n");_5e=_5e.replace(/"/g,"\\\"");_5f.push("_OUT.write(\"");_5f.push(_5e);_5f.push("\");");};var _5d=function(_60,_61,_62){var _63=_60[_61];if(_61<=0){_62.push(_63);return;}
var _64=_63.split(":");_62.push("_MODIFIERS[\"");_62.push(_64[0]);_62.push("\"](");_5d(_60,_61-1,_62);if(_64.length>1){_62.push(",");_62.push(_64[1]);}
_62.push(")");};var _30=function(_65){_65=_65.replace(/\t/g,"    ");_65=_65.replace(/\r\n/g,"\n");_65=_65.replace(/\r/g,"\n");_65=_65.replace(/^(\s*\S*(\s+\S+)*)\s*$/,"$1");return _65;};var _40=function(_66){_66=_66.replace(/^\s+/g,"");_66=_66.replace(/\s+$/g,"");_66=_66.replace(/\s+/g," ");_66=_66.replace(/^(\s*\S*(\s+\S+)*)\s*$/,"$1");return _66;};TrimPath.parseDOMTemplate=function(_67,_68,_69){if(_68==null){_68=document;}
var _6a=_68.getElementById(_67);var _6b=_6a.value;if(_6b==null){_6b=_6a.innerHTML;}
_6b=_6b.replace(/&lt;/g,"<").replace(/&gt;/g,">");return TrimPath.parseTemplate(_6b,_67,_69);};TrimPath.processDOMTemplate=function(_6c,_6d,_6e,_6f,_70){return TrimPath.parseDOMTemplate(_6c,_6f,_70).process(_6d,_6e);};})();
