function ajustTooltipOffset(){if($("#menu").length>0&&$("#"+$("#menu").attr("aria-activedescendant")).next().length>0&&$(".ui-tooltip").length>0){var t=$("#"+$("#menu").attr("aria-activedescendant")).next();$(".ui-tooltip").last().offset({left:$("#menu").offset().left+$("#menu").width()+t.width()+9})}}function Fiddle(){function u(t){var i=[t,n.projectType];return n.layoutType&&i.push(n.layoutType),i.push("template"),("#"+i.join("-")).toLowerCase()}function l(){return u("main")}function a(n){return ProjectTypes[n]}function v(n){return LanguageIds[n]}function y(n){return Compilers[n]}var t=this,r=".content",e=".sidebar",o,f,i={},s=!1,n={},h=!1,c={fiddleId:null,language:"CSharp",projectType:"Console",compiler:"NetLatest",layoutType:null,codeBlocks:null,isAutoRun:!0,codeTheme:"main",ownerId:null,ownerName:null,originalCodeBlocks:null,readOnly:!1,runLinter:!0};t.isInUserFiddles=function(n){if(n!=null){h=n;return}return h},t.init=function(i){t.destroy(),$.extend(n,c,i),(t.getProjectType()=="Mvc"||t.getProjectType()=="Nancy")&&$("#widget-builder").hide()},t.getFiddleId=function(){return n.fiddleId},t.setFiddleId=function(t,i){n.fiddleId=t,$("#OriginalFiddleId").val(n.fiddleId),i&&typeof window.history=="object"&&typeof window.history.pushState=="function"&&window.history.pushState(null,null,"/"+(t==null?"":t))},t.hasId=function(){return n.fiddleId&&n.fiddleId.length},t.getOwnerId=function(){return n.ownerId},t.setOwnerName=function(t){n.ownerName=t},t.getOwnerName=function(){return n.ownerName},t.setOwnerId=function(t){n.ownerId=t},t.setLanguage=function(t,i){i=typeof i!="undefined"?i:!1,n.language=t,collaboration.isEnabled()&&i&&$("#Language").val(n.language).change()},t.getLanguage=function(){return n.language},t.setCompiler=function(t,i){i=typeof i!="undefined"?i:!1,n.compiler=t,collaboration.isEnabled()&&i&&$("#Compiler").val(n.compiler).change()},t.getCompiler=function(){return n.compiler},t.setProjectType=function(t,i){i=typeof i!="undefined"?i:!1,n.projectType=t,collaboration.isEnabled()&&i&&$("#ProjectType").val(n.projectType).change(),n.layoutType=projectTypeLayouts[n.projectType].length>0?projectTypeLayouts[n.projectType][0]:null},t.setLayout=function(t,i){i=typeof i!="undefined"?i:!1,n.layoutType=t,collaboration.isEnabled()&&!i&&collaboration.optionsChanged({layoutType:n.layoutType})},t.getLayout=function(){return n.layoutType},t.clearPackages=function(){$("#OriginalNuGetPackageVersionIds").val(""),nugetPackageManager.clear()},t.setCodeBlocks=function(t,i){var r,u,f;n.codeBlocks=t,i&&(window.academyCode?n.originalCodeBlocks={}:$("input[id*=Original]").val(""));for(r in n.codeBlocks)u=n.codeBlocks[r],f=_.escape(u),$("#"+r).val(u),$("#"+r).html(f),i&&(window.academyCode?n.originalCodeBlocks[r]=u:$("#Original"+r).val(u))},t.getCodeBlocks=function(){return n.codeBlocks},t.getOriginalCodeBlocks=function(){return n.originalCodeBlocks},t.isCodeBlocksChanged=function(){var r=!1,i,f,u;t.fetchCode();for(i in n.codeBlocks)if(f=_.unescape(n.codeBlocks[i].replace(/\r?\n|\r/g,"")),u=env.siteMode==siteModes.full?_.unescape($("#Original"+i).val().replace(/\r?\n|\r/g,"")):_.unescape($("#"+i).val().replace(/\r?\n|\r/g,"")),r=f!=u,r)break;return r},t.setAutoRun=function(t,i){i=typeof i!="undefined"?i:!1,n.isAutoRun=t,collaboration.isEnabled()&&!i&&collaboration.optionsChanged({isAutorun:t})},t.getAutorun=function(){return n.isAutoRun},t.render=function(s,h){var v,c,y,a;if(r=h||r,i={},s=="widget")(n.projectType=="Mvc"||n.projectType=="Nancy")&&(n.layoutType="tabs"),tmpl=Handlebars.compile($(u(s)).html()),$(".widget-content").html(tmpl(n)),i=loadEditors("widget",!0);else if(s=="mobile"){(n.projectType=="Mvc"||n.projectType=="Nancy")&&(n.layoutType="tabs"),v=u(s),c=["options","code-editor","run-results"];for(y in c)a=c[y],tmpl=Handlebars.compile($(v+"_"+a).html()),$("#"+a+" [data-role=content]",$(r)).html(tmpl(n));$('div[data-role="page"]').trigger("create"),i=loadEditors("",!0,null,n.runLinter),nugetPackageManager.isLoaded()&&nugetPackageManager.render()}else s=="example"?i=loadEditors("",!0,h):(o=Handlebars.compile($(l()).html()),f=Handlebars.compile($("#sidebar-template").html()),$(r).html(o(n)),$(e).html(f(n)),nugetPackageManager.isLoaded()&&nugetPackageManager.render(),layoutScripts[n.projectType+(n.layoutType?"_"+n.layoutType:"")](),i=loadEditors("",!0,null,n.runLinter));t.reconfigIndentation(),t.refreshActionButtons(),collaboration.reinitialize()},t.getMode=function(){var n="";switch(this.getLanguage()){case"VbNet":n="vb";break;case"CSharp":n="text/x-csharp";break;case"FSharp":n="text/x-fsharp"}return n},t.reconfigIndentation=function(){$.each(i,function(t,i){n.language==LanguagesDict[Languages.FSharp]?(i.options.indentWithTabs=!1,i.options.extraKeys.Tab=function(n){n.replaceSelection(Array(n.getOption("indentUnit")+1).join(" "),"end")}):(i.options.indentWithTabs=!0,i.options.extraKeys.Tab=null)})},t.refresh=function(r){var u,s,o;r&&r!="main"||$(e).html(f(n));for(u in i)s=i[u].getDoc(),s.setValue(n.codeBlocks[u]),window.academyCode?(o=$("#"+u).attr("mode"),i[u].setOption("mode",o?o:CodeRunner.getMode())):i[u].setOption("mode",t.getMode()),i[u].refresh();t.checkSyntax(!0),t.reconfigIndentation(),t.refreshActionButtons(),collaboration.reinitialize()},t.getEditors=function(){return i},t.getProjectType=function(){return n.projectType},t.fetchCode=function(r){var u,e,f;for(u in i)e=i[u].getDoc(),f=e.getValue(),n.codeBlocks[u]!=null&&n.codeBlocks[u].replace(/\r?\n|\r/g,"")!=f.replace(/\r?\n|\r/g,"")&&(r&&t.setFiddleId(null),$("#"+u).empty().append(_.escape(f)),$("#"+u).val(f),n.codeBlocks[u]=f)},t.run=function(){collaboration.isEnabled()&&collaboration.codeExecuting(),Terminal.ConsoleInputs=[],CodeRunner.addToQueue(!0)},t.runUseResultCache=function(){collaboration.isEnabled()&&collaboration.codeExecuting(),Terminal.ConsoleInputs=[],CodeRunner.addToQueueUseResultCache(!0)},t.checkSyntax=function(n){n&&(clearTimeout(Linter._lintTimer),Linter._lintTimer=null);for(var t in i)Linter.getSyntaxErrors("",Linter._updateLintingHandler,null,i[t])},t.saveInSession=function(i){typeof i=="boolean"&&(s=i),$.cookie("OriginalFiddleId",n.fiddleId,{expires:30}),$.cookie("NuGetPackageVersionIds",$("#NuGetPackageVersionIds").val(),{expires:30}),$.cookie("Language",n.language,{expires:30}),$.cookie("ProjectType",n.projectType,{expires:30}),$.cookie("IsAutoRun",n.isAutoRun,{expires:30}),$.cookie("Compiler",n.compiler,{expires:30}),n.layoutType&&$.cookie("LayoutType",n.layoutType,{expires:30}),t.fetchCode();for(var r in n.codeBlocks)s?($.removeCookie(r),localStorage.removeItem(r)):(localStorage.removeItem(r),$.cookie(r,"true",{expires:30}),localStorage.setItem(r,n.codeBlocks[r]));$.cookie("UseLocalStorage","true",{expires:30})},t.restoreCodeBlocks=function(){var r,t,i;if($.cookie&&$.cookie("UseLocalStorage")=="true"&&($.removeCookie("UseLocalStorage"),n.fiddleId&&n.fiddleId.length)){r=n.projectType=="Mvc"||n.projectType=="Nancy"?["Model","View","Controller"]:[n.projectType];for(t in r)i=localStorage.getItem(t),i!=null&&i!=""&&(n.codeBlocks[t]=i,localStorage.removeItem(t))}},t.share=function(){},t.destroy=function(){},t.getWidgetRequest=function(){var n=this.getProjectType(),t=this.getCodeBlocks()[n];return{ProjectTypeId:a(n),CompilerId:y(this.getCompiler()),Fiddle:{FiddleId:this.getFiddleId(),LanguageId:v(this.getLanguage()),CodeBlock:t}}},t.refreshActionButtons=function(){var n=$("#save-button"),t=$("#fork-button");fiddle.getFiddleId()==null?(n.show(),t.hide()):fiddle.isInUserFiddles()||fiddle.getOwnerId()==null?(n.show(),t.show()):(n.hide(),t.show())},t.initMeta=function(n,i){var l=$(".name-container"),s=$(".counters"),f=$(".access-type-container"),h=$("#fiddle-name"),p=$("#access-type"),c=$(".counter.favorite"),r=c.find("i"),a,v,e,u,y,o;fiddle.getFiddleId()==null||fiddle.getOwnerId()==null||fiddle.isInUserFiddles()?(a=h.val(),v=$("<input>").attr("type","text").val(a).attr("placeholder","Enter name here...").blur(function(){h.val($(this).val())}).keydown(function(n){return n.keyCode!=13}),l.empty().append(v),f.find("ul.dropdown-menu > li > a").off("click").click(function(){f.find("button span:first-child").text($(this).text()),p.val($(this).data("value"))}),f.show(),fiddle.getFiddleId()!=null&&fiddle.getOwnerId()!=null&&fiddle.isInUserFiddles()?s.css("right",185):s.hide(),r.off("click"),r.removeClass("glyphicon-star-empty"),r.addClass("glyphicon-star"),r.attr("title","Favorites"),r.css("cursor","default")):(l.empty().append($("<span>").append(h.val().replace("<","&lt;").replace(">","&gt;")+' by <a href="/Authors/'+t.getOwnerId()+"/"+encodeURI(t.getOwnerName().replace(".","_"))+'">'+t.getOwnerName()+"<\/a>")),n?(r.removeClass("glyphicon-star-empty"),r.addClass("glyphicon-star"),r.attr("title","Remove from Favorites")):(r.removeClass("glyphicon-star"),r.addClass("glyphicon-star-empty"),r.attr("title","Add to Favorites")),r.css("cursor","pointer"),r.off("click").click(function(){var r=function(u,f){$.ajax({type:"POST",url:"Account/"+(n?"RemoveFromFavorites":"AddToFavorites"),data:{id:t.getFiddleId()},success:function(e){e.IsSuccess?(c.find("span").text(parseInt(c.find("span").text())+(n?-1:1)),displayNotification(n?"Removed from Favorites":"Added to Favorites","success"),u!=null&&u(e),t.initMeta(!n,i)):e.ErrorCode==401?(displayNotification("This action requires you to log in","warning"),setupLoginModal(function(){r(function(){$("#top-navbar").load(window.location.href+" #top-navbar",function(){fiddle.refreshActionButtons()})},function(){$("#top-navbar").load(window.location.href+" #top-navbar",function(){fiddle.refreshActionButtons(),fiddle.initMeta(!1,fiddle.getOwnerId()==null&&!fiddle.isInUserFiddles())})})})):(e.ErrorCode==600&&fiddle.isInUserFiddles(!0),f!=null&&f(e),displayNotification(e.Message,"danger"))}})};r()}),f.hide(),s.show()),i&&$("#fork-button").hide(),e=t.getProjectType(),u=t.getLanguage(),e==ProjectTypesDict[ProjectTypes.Console]||u==LanguagesDict[Languages.FSharp]?$("#viewil-button").show().addClass("show"):$("#viewil-button").hide().removeClass("show"),$("#convert-button").hide().removeClass("show"),(u==LanguagesDict[Languages.CSharp]||u==LanguagesDict[Languages.VbNet])&&(e==ProjectTypesDict[ProjectTypes.Console]||e==ProjectTypesDict[ProjectTypes.Script])&&(y="Convert To "+(u==LanguagesDict[Languages.CSharp]?"VB.NET":"C#"),$("#convert-button").html('<span class="glyphicon glyphicon-refresh"><\/span> '+y),$("#convert-button").show().addClass("show")),$("#tidyup-extra").show(),$("#tidyup-menu").find("li a.show").length==0&&$("#tidyup-extra").hide(),o=$("#tidyup-button").parent(),o&&o[0]&&o[0].tagName=="LI"&&setDefaultItem($("#tidyup-button")),fiddle.runUseResultCache()},t.isReadOnly=function(){return n.readOnly},t.getLearnData=function(t){var i={};return i.Id=n.fiddleId,i.Language=n.language,i.ProjectType=n.projectType,i.Compiler=n.compiler,i.CodeBlock=_.escape(n.codeBlocks[t]),i}}function isNetCore(n){return n==="NetLatest"||n==="NetCore31"||n==="Net5"||n==="Net6"||n==="Net7"||n==="Net8"||n==="Net9"}function clearNugetPackages(){$("#OriginalNuGetPackageVersionIds").val(""),$("#NuGetPackageVersionIds").val(""),$(".nuget-packages").html(""),nugetPackageManager.render([])}function setMvcCodeBlock(codeBlockName,data){eval('$("#'+codeBlockName+'").empty().append($("<div/>").text(data.mvc'+codeBlockName+").html());"),codeBlockName!="View"&&myMirror[codeBlockName].setOption("mode",CodeRunner.getMode());var doc=myMirror[codeBlockName].getDoc();doc.setValue($("#"+codeBlockName).text()),eval('$("#Original'+codeBlockName+'").empty().append($("<div/>").text(data.mvc'+codeBlockName+").html());")}function updateCodeOnOptionsChange(n,t,i,r){$(".sidebar input").prop("disabled",!0),$(".sidebar select").prop("disabled",!0),$.ajax({url:"/Home/GetExampleCode?languageId="+n+"&projectTypeId="+t+"&compilerId="+i,success:function(u){r(u),updateSideBarItemsVisibility(n,t,i)},complete:function(){$(".sidebar input").prop("disabled",!1),$(".sidebar select").prop("disabled",!1)}})}function updateSideBarItemsVisibility(n,t,i){var r=n==="CSharp"&&t==="Console";r?$("#Compiler option[value='NetCore22']").show():$("#Compiler option[value='NetCore22']").hide(),t===ProjectTypesDict[ProjectTypes.Script]?$("#Language option[value='VbNet']").hide():$("#Language option[value='VbNet']").show(),n===LanguagesDict[Languages.VbNet]?$("#ProjectType option[value='Script']").hide():$("#ProjectType option[value='Script']").show(),isNetCore(i)?($("#ProjectType option[value='Mvc']").hide(),$("#ProjectType option[value='Nancy']").hide()):($("#ProjectType option[value='Mvc']").show(),$("#ProjectType option[value='Nancy']").show())}function tryConfirmUpdateOptions(n){var e=!0,r=$("#NuGetPackageVersionIds").val(),u=$("#OriginalNuGetPackageVersionIds").val(),t=r&&r.length?r.split(";"):null,i=u&&u.length?u.split(";"):null,f=!t&&i&&i.length||!i&&t&&t.length,o;return!f&&t&&t.length&&i&&i.length&&(t.sort(),i.sort(),f=!(t.toString()==i.toString())),(fiddle.isCodeBlocksChanged()||f)&&(o=n!=null?n:"Updating options will reset your code changes to default sample code.\n\n Are you sure you want to continue?",e=confirm(o)),e}function showClipboardAlert(){}function setWebSiteMode(n){$.cookie("WebSiteMode",n,{path:"/",expires:30}),location.reload()}function setIsAutorun(n){$("input[name=IsAutoRun]:not([value="+n+"]):checked").prop("checked",!1),$("input[name=IsAutoRun][value="+n+"]").prop("checked",!0)}function restoreData(n){var r,u,t,i;if(clearNugetPackages(),ProjectTypesDict[n.ProjectType]=="Mvc"||ProjectTypesDict[n.ProjectType]=="Nancy"){r=["Model","View","Controller"];for(u in r)t=r[u],$("#Original"+t).val(n.MvcCodeBlock[t]),$("#"+t).text($("#Original"+t).val()),myMirror[t].setOption("mode",CodeRunner.getMode()),i=myMirror[t].getDoc(),i.setValue($("#"+t).text())}else $("#OriginalCodeBlock").val(n.CodeBlock),$("#CodeBlock").text($("#OriginalCodeBlock").val()),myMirror.CodeBlock.setOption("mode",CodeRunner.getMode()),i=myMirror.CodeBlock.getDoc(),i.setValue($("#CodeBlock").text());$("#OriginalFiddleId").val(n.Id),$("#Language").val(LanguagesDict[n.Language]),$("#ProjectType").val(ProjectTypesDict[n.ProjectType]),$("#Compiler").val(CompilersDict[n.Compiler]),n.Language!=Languages.FSharp&&n.ProjectType!=ProjectTypes.Console?$(".nuget-packages-wrap").hide():$(".nuget-packages-wrap").show()}function toggleProjectType(){$("#Language").val()==LanguagesDict[Languages.FSharp]?($("#ProjectType").val(ProjectTypesDict[ProjectTypes.Script]),$("#ProjectType").hide(),$("#StaticProjectType").show(),$("#StaticProjectType").text(ProjectTypesDict[ProjectTypes.Script]),$("#Compiler").hide()):($("#StaticProjectType").hide(),$("#ProjectType").show()),toggleNugetWrap()}function toggleNugetWrap(){$("#ProjectType").val()==ProjectTypesDict[ProjectTypes.Script]?$(".nuget-packages-wrap").hide():$(".nuget-packages-wrap").show()}function setEmailStatus(n,t){$("#email-status").stop(),$("#email-status").empty().append(n),$("#email-status").css("opacity","1"),t!=null&&$("#email-status").addClass(t?"error":"success"),setTimeout(function(){$("#email-status").animate({opacity:0},500,function(){t!=null&&$("#email-status").removeClass(t?"error":"success")})},3e3)}var Handlebars,nugetPackageManager,projectTypeLayouts,layoutScripts;(function(){var y=this,at=y._,e={},r=Array.prototype,g=Object.prototype,vt=Function.prototype,nt=r.push,i=r.slice,o=r.concat,f=g.toString,yt=g.hasOwnProperty,tt=r.forEach,it=r.map,rt=r.reduce,ut=r.reduceRight,ft=r.filter,et=r.every,ot=r.some,s=r.indexOf,st=r.lastIndexOf,pt=Array.isArray,ht=Object.keys,p=vt.bind,n=function(t){return t instanceof n?t:this instanceof n?void(this._wrapped=t):new n(t)},t,w,b,h,c,k,l,a,u,ct,lt,v;"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=n),exports._=n):y._=n,n.VERSION="1.6.0",t=n.each=n.forEach=function(t,i,r){var u,o;if(null==t)return t;if(tt&&t.forEach===tt)t.forEach(i,r);else if(t.length===+t.length){for(u=0,o=t.length;o>u;u++)if(i.call(r,t[u],u,t)===e)return}else for(var f=n.keys(t),u=0,o=f.length;o>u;u++)if(i.call(r,t[f[u]],f[u],t)===e)return;return t},n.map=n.collect=function(n,i,r){var u=[];return null==n?u:it&&n.map===it?n.map(i,r):(t(n,function(n,t,f){u.push(i.call(r,n,t,f))}),u)},w="Reduce of empty array with no initial value",n.reduce=n.foldl=n.inject=function(i,r,u,f){var e=arguments.length>2;if(null==i&&(i=[]),rt&&i.reduce===rt)return f&&(r=n.bind(r,f)),e?i.reduce(r,u):i.reduce(r);if(t(i,function(n,t,i){e?u=r.call(f,u,n,t,i):(u=n,e=!0)}),!e)throw new TypeError(w);return u},n.reduceRight=n.foldr=function(i,r,u,f){var o=arguments.length>2,e,s;if(null==i&&(i=[]),ut&&i.reduceRight===ut)return f&&(r=n.bind(r,f)),o?i.reduceRight(r,u):i.reduceRight(r);if(e=i.length,e!==+e&&(s=n.keys(i),e=s.length),t(i,function(n,t,h){t=s?s[--e]:--e,o?u=r.call(f,u,i[t],t,h):(u=i[t],o=!0)}),!o)throw new TypeError(w);return u},n.find=n.detect=function(n,t,i){var r;return b(n,function(n,u,f){if(t.call(i,n,u,f))return r=n,!0}),r},n.filter=n.select=function(n,i,r){var u=[];return null==n?u:ft&&n.filter===ft?n.filter(i,r):(t(n,function(n,t,f){i.call(r,n,t,f)&&u.push(n)}),u)},n.reject=function(t,i,r){return n.filter(t,function(n,t,u){return!i.call(r,n,t,u)},r)},n.every=n.all=function(i,r,u){r||(r=n.identity);var f=!0;return null==i?f:et&&i.every===et?i.every(r,u):(t(i,function(n,t,i){if(!(f=f&&r.call(u,n,t,i)))return e}),!!f)},b=n.some=n.any=function(i,r,u){r||(r=n.identity);var f=!1;return null==i?f:ot&&i.some===ot?i.some(r,u):(t(i,function(n,t,i){if(f||(f=r.call(u,n,t,i)))return e}),!!f)},n.contains=n.include=function(n,t){return null==n?!1:s&&n.indexOf===s?n.indexOf(t)!=-1:b(n,function(n){return n===t})},n.invoke=function(t,r){var u=i.call(arguments,2),f=n.isFunction(r);return n.map(t,function(n){return(f?r:n[r]).apply(n,u)})},n.pluck=function(t,i){return n.map(t,n.property(i))},n.where=function(t,i){return n.filter(t,n.matches(i))},n.findWhere=function(t,i){return n.find(t,n.matches(i))},n.max=function(i,r,u){if(!r&&n.isArray(i)&&i[0]===+i[0]&&i.length<65535)return Math.max.apply(Math,i);var f=-1/0,e=-1/0;return t(i,function(n,t,i){var o=r?r.call(u,n,t,i):n;o>e&&(f=n,e=o)}),f},n.min=function(i,r,u){if(!r&&n.isArray(i)&&i[0]===+i[0]&&i.length<65535)return Math.min.apply(Math,i);var f=1/0,e=1/0;return t(i,function(n,t,i){var o=r?r.call(u,n,t,i):n;e>o&&(f=n,e=o)}),f},n.shuffle=function(i){var u,f=0,r=[];return t(i,function(t){u=n.random(f++),r[f-1]=r[u],r[u]=t}),r},n.sample=function(t,i,r){return null==i||r?(t.length!==+t.length&&(t=n.values(t)),t[n.random(t.length-1)]):n.shuffle(t).slice(0,Math.max(0,i))},h=function(t){return null==t?n.identity:n.isFunction(t)?t:n.property(t)},n.sortBy=function(t,i,r){return i=h(i),n.pluck(n.map(t,function(n,t,u){return{value:n,index:t,criteria:i.call(r,n,t,u)}}).sort(function(n,t){var i=n.criteria,r=t.criteria;if(i!==r){if(i>r||i===void 0)return 1;if(r>i||r===void 0)return-1}return n.index-t.index}),"value")},c=function(n){return function(i,r,u){var f={};return r=h(r),t(i,function(t,e){var o=r.call(u,t,e,i);n(f,o,t)}),f}},n.groupBy=c(function(t,i,r){n.has(t,i)?t[i].push(r):t[i]=[r]}),n.indexBy=c(function(n,t,i){n[t]=i}),n.countBy=c(function(t,i){n.has(t,i)?t[i]++:t[i]=1}),n.sortedIndex=function(n,t,i,r){var f;i=h(i);for(var o=i.call(r,t),u=0,e=n.length;e>u;)f=u+e>>>1,i.call(r,n[f])<o?u=f+1:e=f;return u},n.toArray=function(t){return t?n.isArray(t)?i.call(t):t.length===+t.length?n.map(t,n.identity):n.values(t):[]},n.size=function(t){return null==t?0:t.length===+t.length?t.length:n.keys(t).length},n.first=n.head=n.take=function(n,t,r){if(null!=n)return null==t||r?n[0]:0>t?[]:i.call(n,0,t)},n.initial=function(n,t,r){return i.call(n,0,n.length-(null==t||r?1:t))},n.last=function(n,t,r){if(null!=n)return null==t||r?n[n.length-1]:i.call(n,Math.max(n.length-t,0))},n.rest=n.tail=n.drop=function(n,t,r){return i.call(n,null==t||r?1:t)},n.compact=function(t){return n.filter(t,n.identity)},k=function(i,r,u){return r&&n.every(i,n.isArray)?o.apply(u,i):(t(i,function(t){n.isArray(t)||n.isArguments(t)?r?nt.apply(u,t):k(t,r,u):u.push(t)}),u)},n.flatten=function(n,t){return k(n,t,[])},n.without=function(t){return n.difference(t,i.call(arguments,1))},n.partition=function(n,i){var r=[],u=[];return t(n,function(n){(i(n)?r:u).push(n)}),[r,u]},n.uniq=n.unique=function(i,r,u,f){n.isFunction(r)&&(f=u,u=r,r=!1);var s=u?n.map(i,u,f):i,o=[],e=[];return t(s,function(t,u){(r?u&&e[e.length-1]===t:n.contains(e,t))||(e.push(t),o.push(i[u]))}),o},n.union=function(){return n.uniq(n.flatten(arguments,!0))},n.intersection=function(t){var r=i.call(arguments,1);return n.filter(n.uniq(t),function(t){return n.every(r,function(i){return n.contains(i,t)})})},n.difference=function(t){var u=o.apply(r,i.call(arguments,1));return n.filter(t,function(t){return!n.contains(u,t)})},n.zip=function(){for(var i=n.max(n.pluck(arguments,"length").concat(0)),r=new Array(i),t=0;i>t;t++)r[t]=n.pluck(arguments,""+t);return r},n.object=function(n,t){if(null==n)return{};for(var r={},i=0,u=n.length;u>i;i++)t?r[n[i]]=t[i]:r[n[i][0]]=n[i][1];return r},n.indexOf=function(t,i,r){if(null==t)return-1;var u=0,f=t.length;if(r){if("number"!=typeof r)return u=n.sortedIndex(t,i),t[u]===i?u:-1;u=0>r?Math.max(0,f+r):r}if(s&&t.indexOf===s)return t.indexOf(i,r);for(;f>u;u++)if(t[u]===i)return u;return-1},n.lastIndexOf=function(n,t,i){var u,r;if(null==n)return-1;if(u=null!=i,st&&n.lastIndexOf===st)return u?n.lastIndexOf(t,i):n.lastIndexOf(t);for(r=u?i:n.length;r--;)if(n[r]===t)return r;return-1},n.range=function(n,t,i){arguments.length<=1&&(t=n||0,n=0),i=arguments[2]||1;for(var r=Math.max(Math.ceil((t-n)/i),0),u=0,f=new Array(r);r>u;)f[u++]=n,n+=i;return f},l=function(){},n.bind=function(t,r){var u,f;if(p&&t.bind===p)return p.apply(t,i.call(arguments,1));if(!n.isFunction(t))throw new TypeError;return u=i.call(arguments,2),f=function(){var e,n;return this instanceof f?(l.prototype=t.prototype,e=new l,l.prototype=null,n=t.apply(e,u.concat(i.call(arguments))),Object(n)===n?n:e):t.apply(r,u.concat(i.call(arguments)))}},n.partial=function(t){var r=i.call(arguments,1);return function(){for(var f=0,i=r.slice(),u=0,e=i.length;e>u;u++)i[u]===n&&(i[u]=arguments[f++]);for(;f<arguments.length;)i.push(arguments[f++]);return t.apply(this,i)}},n.bindAll=function(r){var u=i.call(arguments,1);if(0===u.length)throw new Error("bindAll must be passed function names");return t(u,function(t){r[t]=n.bind(r[t],r)}),r},n.memoize=function(t,i){var r={};return i||(i=n.identity),function(){var u=i.apply(this,arguments);return n.has(r,u)?r[u]:r[u]=t.apply(this,arguments)}},n.delay=function(n,t){var r=i.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},n.defer=function(t){return n.delay.apply(n,[t,1].concat(i.call(arguments,1)))},n.throttle=function(t,i,r){var u,f,s,e=null,o=0,h;return r||(r={}),h=function(){o=r.leading===!1?0:n.now(),e=null,s=t.apply(u,f),u=f=null},function(){var c=n.now(),l;return o||r.leading!==!1||(o=c),l=i-(c-o),u=this,f=arguments,0>=l?(clearTimeout(e),e=null,o=c,s=t.apply(u,f),u=f=null):e||r.trailing===!1||(e=setTimeout(h,l)),s}},n.debounce=function(t,i,r){var u,f,e,s,o,h=function(){var c=n.now()-s;i>c?u=setTimeout(h,i-c):(u=null,r||(o=t.apply(e,f),e=f=null))};return function(){e=this,f=arguments,s=n.now();var c=r&&!u;return u||(u=setTimeout(h,i)),c&&(o=t.apply(e,f),e=f=null),o}},n.once=function(n){var t,i=!1;return function(){return i?t:(i=!0,t=n.apply(this,arguments),n=null,t)}},n.wrap=function(t,i){return n.partial(i,t)},n.compose=function(){var n=arguments;return function(){for(var t=arguments,i=n.length-1;i>=0;i--)t=[n[i].apply(this,t)];return t[0]}},n.after=function(n,t){return function(){if(--n<1)return t.apply(this,arguments)}},n.keys=function(t){var i,r;if(!n.isObject(t))return[];if(ht)return ht(t);i=[];for(r in t)n.has(t,r)&&i.push(r);return i},n.values=function(t){for(var r=n.keys(t),u=r.length,f=new Array(u),i=0;u>i;i++)f[i]=t[r[i]];return f},n.pairs=function(t){for(var r=n.keys(t),u=r.length,f=new Array(u),i=0;u>i;i++)f[i]=[r[i],t[r[i]]];return f},n.invert=function(t){for(var u={},r=n.keys(t),i=0,f=r.length;f>i;i++)u[t[r[i]]]=r[i];return u},n.functions=n.methods=function(t){var r=[],i;for(i in t)n.isFunction(t[i])&&r.push(i);return r.sort()},n.extend=function(n){return t(i.call(arguments,1),function(t){if(t)for(var i in t)n[i]=t[i]}),n},n.pick=function(n){var u={},f=o.apply(r,i.call(arguments,1));return t(f,function(t){t in n&&(u[t]=n[t])}),u},n.omit=function(t){var f={},e=o.apply(r,i.call(arguments,1)),u;for(u in t)n.contains(e,u)||(f[u]=t[u]);return f},n.defaults=function(n){return t(i.call(arguments,1),function(t){if(t)for(var i in t)n[i]===void 0&&(n[i]=t[i])}),n},n.clone=function(t){return n.isObject(t)?n.isArray(t)?t.slice():n.extend({},t):t},n.tap=function(n,t){return t(n),n},a=function(t,i,r,u){var l,v,h,c,e,o,s;if(t===i)return 0!==t||1/t==1/i;if(null==t||null==i)return t===i;if(t instanceof n&&(t=t._wrapped),i instanceof n&&(i=i._wrapped),l=f.call(t),l!=f.call(i))return!1;switch(l){case"[object String]":return t==String(i);case"[object Number]":return t!=+t?i!=+i:0==t?1/t==1/i:t==+i;case"[object Date]":case"[object Boolean]":return+t==+i;case"[object RegExp]":return t.source==i.source&&t.global==i.global&&t.multiline==i.multiline&&t.ignoreCase==i.ignoreCase}if("object"!=typeof t||"object"!=typeof i)return!1;for(v=r.length;v--;)if(r[v]==t)return u[v]==i;if(h=t.constructor,c=i.constructor,h!==c&&!(n.isFunction(h)&&h instanceof h&&n.isFunction(c)&&c instanceof c)&&"constructor"in t&&"constructor"in i)return!1;if(r.push(t),u.push(i),e=0,o=!0,"[object Array]"==l){if(e=t.length,o=e==i.length)for(;e--&&(o=a(t[e],i[e],r,u)););}else{for(s in t)if(n.has(t,s)&&(e++,!(o=n.has(i,s)&&a(t[s],i[s],r,u))))break;if(o){for(s in i)if(n.has(i,s)&&!e--)break;o=!e}}return r.pop(),u.pop(),o},n.isEqual=function(n,t){return a(n,t,[],[])},n.isEmpty=function(t){if(null==t)return!0;if(n.isArray(t)||n.isString(t))return 0===t.length;for(var i in t)if(n.has(t,i))return!1;return!0},n.isElement=function(n){return!(!n||1!==n.nodeType)},n.isArray=pt||function(n){return"[object Array]"==f.call(n)},n.isObject=function(n){return n===Object(n)},t(["Arguments","Function","String","Number","Date","RegExp"],function(t){n["is"+t]=function(n){return f.call(n)=="[object "+t+"]"}}),n.isArguments(arguments)||(n.isArguments=function(t){return!(!t||!n.has(t,"callee"))}),"function"!=typeof/./&&(n.isFunction=function(n){return"function"==typeof n}),n.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},n.isNaN=function(t){return n.isNumber(t)&&t!=+t},n.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==f.call(n)},n.isNull=function(n){return null===n},n.isUndefined=function(n){return n===void 0},n.has=function(n,t){return yt.call(n,t)},n.noConflict=function(){return y._=at,this},n.identity=function(n){return n},n.constant=function(n){return function(){return n}},n.property=function(n){return function(t){return t[n]}},n.matches=function(n){return function(t){if(t===n)return!0;for(var i in n)if(n[i]!==t[i])return!1;return!0}},n.times=function(n,t,i){for(var u=Array(Math.max(0,n)),r=0;n>r;r++)u[r]=t.call(i,r);return u},n.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},n.now=Date.now||function(){return+new Date},u={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}},u.unescape=n.invert(u.escape),ct={escape:new RegExp("["+n.keys(u.escape).join("")+"]","g"),unescape:new RegExp("("+n.keys(u.unescape).join("|")+")","g")},n.each(["escape","unescape"],function(t){n[t]=function(n){return null==n?"":(""+n).replace(ct[t],function(n){return u[t][n]})}}),n.result=function(t,i){if(null==t)return void 0;var r=t[i];return n.isFunction(r)?r.call(t):r},n.mixin=function(i){t(n.functions(i),function(t){var r=n[t]=i[t];n.prototype[t]=function(){var t=[this._wrapped];return nt.apply(t,arguments),v.call(this,r.apply(n,t))}})},lt=0,n.uniqueId=function(n){var t=++lt+"";return n?n+t:t},n.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var d=/(.)^/,wt={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},bt=/\\|'|\r|\n|\t|\u2028|\u2029/g;n.template=function(t,i,r){var f,e;r=n.defaults({},r,n.templateSettings);var s=new RegExp([(r.escape||d).source,(r.interpolate||d).source,(r.evaluate||d).source].join("|")+"|$","g"),o=0,u="__p+='";t.replace(s,function(n,i,r,f,e){return u+=t.slice(o,e).replace(bt,function(n){return"\\"+wt[n]}),i&&(u+="'+\n((__t=("+i+"))==null?'':_.escape(__t))+\n'"),r&&(u+="'+\n((__t=("+r+"))==null?'':__t)+\n'"),f&&(u+="';\n"+f+"\n__p+='"),o=e+n.length,n}),u+="';\n",r.variable||(u="with(obj||{}){\n"+u+"}\n"),u="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+u+"return __p;\n";try{f=new Function(r.variable||"obj","_",u)}catch(h){throw h.source=u,h;}return i?f(i,n):(e=function(t){return f.call(this,t,n)},e.source="function("+(r.variable||"obj")+"){\n"+u+"}",e)},n.chain=function(t){return n(t).chain()},v=function(t){return this._chain?n(t).chain():t},n.mixin(n),t(["pop","push","reverse","shift","sort","splice","unshift"],function(t){var i=r[t];n.prototype[t]=function(){var n=this._wrapped;return i.apply(n,arguments),"shift"!=t&&"splice"!=t||0!==n.length||delete n[0],v.call(this,n)}}),t(["concat","join","slice"],function(t){var i=r[t];n.prototype[t]=function(){return v.call(this,i.apply(this._wrapped,arguments))}}),n.extend(n.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}}),"function"==typeof define&&define.amd&&define("underscore",[],function(){return n})}).call(this),Handlebars=function(){var r=function(){"use strict";function t(n){this.string=n}var n;return t.prototype.toString=function(){return""+this.string},n=t}(),t=function(n){"use strict";function h(n){return e[n]||"&amp;"}function c(n,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i])}function l(n){return n instanceof f?n.toString():!n&&n!==0?"":(n=""+n,!s.test(n))?n:n.replace(o,h)}function a(n){return n||n===0?u(n)&&n.length===0?!0:!1:!0}var t={},f=n,e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},o=/[&<>"'`]/g,s=/[&<>"'`]/,i,r,u;return t.extend=c,i=Object.prototype.toString,t.toString=i,r=function(n){return typeof n=="function"},r(/x/)&&(r=function(n){return typeof n=="function"&&i.call(n)==="[object Function]"}),t.isFunction=r,u=Array.isArray||function(n){return n&&typeof n=="object"?i.call(n)==="[object Array]":!1},t.isArray=u,t.escapeExpression=l,t.isEmpty=a,t}(r),n=function(){"use strict";function i(t,i){var u,f,r;for(i&&i.firstLine&&(u=i.firstLine,t+=" - "+u+":"+i.firstColumn),f=Error.prototype.constructor.call(this,t),r=0;r<n.length;r++)this[n[r]]=f[n[r]];u&&(this.lineNumber=u,this.column=i.firstColumn)}var t,n=["description","fileName","lineNumber","message","name","number","stack"];return i.prototype=new Error,t=i}(),i=function(n,t){"use strict";function e(n,t){this.helpers=n||{},this.partials=t||{},w(this)}function w(n){n.registerHelper("helperMissing",function(n){if(arguments.length===2)return undefined;throw new s("Missing helper: '"+n+"'");}),n.registerHelper("blockHelperMissing",function(t,i){var r=i.inverse||function(){},u=i.fn;return f(t)&&(t=t.call(this)),t===!0?u(this):t===!1||t==null?r(this):l(t)?t.length>0?n.helpers.each(t,i):r(this):u(t)}),n.registerHelper("each",function(n,t){var s=t.fn,c=t.inverse,r=0,u="",i,h,e;if(f(n)&&(n=n.call(this)),t.data&&(i=o(t.data)),n&&typeof n=="object")if(l(n))for(h=n.length;r<h;r++)i&&(i.index=r,i.first=r===0,i.last=r===n.length-1),u=u+s(n[r],{data:i});else for(e in n)n.hasOwnProperty(e)&&(i&&(i.key=e,i.index=r,i.first=r===0),u=u+s(n[e],{data:i}),r++);return r===0&&(u=c(this)),u}),n.registerHelper("if",function(n,t){return f(n)&&(n=n.call(this)),(t.hash.includeZero||n)&&!r.isEmpty(n)?t.fn(this):t.inverse(this)}),n.registerHelper("unless",function(t,i){return n.helpers["if"].call(this,t,{fn:i.inverse,inverse:i.fn,hash:i.hash})}),n.registerHelper("with",function(n,t){return f(n)&&(n=n.call(this)),r.isEmpty(n)?void 0:t.fn(n)}),n.registerHelper("log",function(t,i){var r=i.data&&i.data.level!=null?parseInt(i.data.level,10):1;n.log(r,t)})}function y(n,t){u.log(n,t)}var i={},r=n,s=t,p="1.3.0",h,c,u,o;i.VERSION=p,h=4,i.COMPILER_REVISION=h,c={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:">= 1.0.0"},i.REVISION_CHANGES=c;var l=r.isArray,f=r.isFunction,a=r.toString,v="[object Object]";return i.HandlebarsEnvironment=e,e.prototype={constructor:e,logger:u,log:y,registerHelper:function(n,t,i){if(a.call(n)===v){if(i||t)throw new s("Arg not supported with multiple helpers");r.extend(this.helpers,n)}else i&&(t.not=i),this.helpers[n]=t},registerPartial:function(n,t){a.call(n)===v?r.extend(this.partials,n):this.partials[n]=t}},u={methodMap:{0:"debug",1:"info",2:"warn",3:"error"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,log:function(n,t){if(u.level<=n){var i=u.methodMap[n];typeof console!="undefined"&&console[i]&&console[i].call(console,t)}}},i.logger=u,i.log=y,o=function(n){var t={};return r.extend(t,n),t},i.createFrame=o,i}(t,n),f=function(n,t,i){"use strict";function h(n){var t=n&&n[0]||1,i=s,r,f;if(t!==i)if(t<i){r=o[i],f=o[t];throw new u("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+r+") or downgrade your runtime to an older version ("+f+").");}else throw new u("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+n[1]+").");}function c(n,t){if(!t)throw new u("No environment passed to template");var r=function(n,i,r,f,e,o){var s=t.VM.invokePartial.apply(this,arguments),h;if(s!=null)return s;if(t.compile)return h={helpers:f,partials:e,data:o},e[i]=t.compile(n,{data:o!==undefined},t),e[i](r,h);throw new u("The partial "+i+" could not be compiled when running in runtime-only mode");},i={escapeExpression:f.escapeExpression,invokePartial:r,programs:[],program:function(n,t,i){var r=this.programs[n];return i?r=e(n,t,i):r||(r=this.programs[n]=e(n,t)),r},merge:function(n,t){var i=n||t;return n&&t&&n!==t&&(i={},f.extend(i,t),f.extend(i,n)),i},programWithDepth:t.VM.programWithDepth,noop:t.VM.noop,compilerInfo:null};return function(r,u){var f,e,o,s;return u=u||{},f=u.partial?u:t,u.partial||(e=u.helpers,o=u.partials),s=n.call(i,f,r,e,o,u.data),u.partial||t.VM.checkRevision(i.compilerInfo),s}}function l(n,t,i){var u=Array.prototype.slice.call(arguments,3),r=function(n,r){return r=r||{},t.apply(this,[n,r.data||i].concat(u))};return r.program=n,r.depth=u.length,r}function e(n,t,i){var r=function(n,r){return r=r||{},t(n,r.data||i)};return r.program=n,r.depth=0,r}function a(n,t,i,r,f,e){var o={partial:!0,helpers:r,partials:f,data:e};if(n===undefined)throw new u("The partial "+t+" could not be found");else if(n instanceof Function)return n(i,o)}function v(){return""}var r={},f=n,u=t,s=i.COMPILER_REVISION,o=i.REVISION_CHANGES;return r.checkRevision=h,r.template=c,r.programWithDepth=l,r.program=e,r.invokePartial=a,r.noop=v,r}(t,n,i),e=function(n,t,i,r,u){"use strict";var f,e=n,l=t,a=i,o=r,s=u,h=function(){var n=new e.HandlebarsEnvironment;return o.extend(n,e),n.SafeString=l,n.Exception=a,n.Utils=o,n.VM=s,n.template=function(t){return s.template(t,n)},n},c=h();return c.create=h,f=c}(i,r,n,t,f),u=function(n){"use strict";function t(n){n=n||{},this.firstLine=n.first_line,this.firstColumn=n.first_column,this.lastColumn=n.last_column,this.lastLine=n.last_line}var r,u=n,i={ProgramNode:function(n,r,u,f){var o,e;arguments.length===3?(f=u,u=null):arguments.length===2&&(f=r,r=null),t.call(this,f),this.type="program",this.statements=n,this.strip={},u?(e=u[0],e?(o={first_line:e.firstLine,last_line:e.lastLine,last_column:e.lastColumn,first_column:e.firstColumn},this.inverse=new i.ProgramNode(u,r,o)):this.inverse=new i.ProgramNode(u,r),this.strip.right=r.left):r&&(this.strip.left=r.right)},MustacheNode:function(n,r,u,f,e){if(t.call(this,e),this.type="mustache",this.strip=f,u!=null&&u.charAt){var o=u.charAt(3)||u.charAt(2);this.escaped=o!=="{"&&o!=="&"}else this.escaped=!!u;this.sexpr=n instanceof i.SexprNode?n:new i.SexprNode(n,r),this.sexpr.isRoot=!0,this.id=this.sexpr.id,this.params=this.sexpr.params,this.hash=this.sexpr.hash,this.eligibleHelper=this.sexpr.eligibleHelper,this.isHelper=this.sexpr.isHelper},SexprNode:function(n,i,r){t.call(this,r),this.type="sexpr",this.hash=i;var u=this.id=n[0],f=this.params=n.slice(1),e=this.eligibleHelper=u.isSimple;this.isHelper=e&&(f.length||i)},PartialNode:function(n,i,r,u){t.call(this,u),this.type="partial",this.partialName=n,this.context=i,this.strip=r},BlockNode:function(n,i,r,f,e){if(t.call(this,e),n.sexpr.id.original!==f.path.original)throw new u(n.sexpr.id.original+" doesn't match "+f.path.original,this);this.type="block",this.mustache=n,this.program=i,this.inverse=r,this.strip={left:n.strip.left,right:f.strip.right},(i||r).strip.left=n.strip.right,(r||i).strip.right=f.strip.left,r&&!i&&(this.isInverse=!0)},ContentNode:function(n,i){t.call(this,i),this.type="content",this.string=n},HashNode:function(n,i){t.call(this,i),this.type="hash",this.pairs=n},IdNode:function(n,i){var f,h,r;t.call(this,i),this.type="ID";var o="",e=[],s=0;for(f=0,h=n.length;f<h;f++)if(r=n[f].part,o+=(n[f].separator||"")+r,r===".."||r==="."||r==="this")if(e.length>0)throw new u("Invalid path: "+o,this);else r===".."?s++:this.isScoped=!0;else e.push(r);this.original=o,this.parts=e,this.string=e.join("."),this.depth=s,this.isSimple=n.length===1&&!this.isScoped&&s===0,this.stringModeValue=this.string},PartialNameNode:function(n,i){t.call(this,i),this.type="PARTIAL_NAME",this.name=n.original},DataNode:function(n,i){t.call(this,i),this.type="DATA",this.id=n},StringNode:function(n,i){t.call(this,i),this.type="STRING",this.original=this.string=this.stringModeValue=n},IntegerNode:function(n,i){t.call(this,i),this.type="INTEGER",this.original=this.integer=n,this.stringModeValue=Number(n)},BooleanNode:function(n,i){t.call(this,i),this.type="BOOLEAN",this.bool=n,this.stringModeValue=n==="true"},CommentNode:function(n,i){t.call(this,i),this.type="comment",this.comment=n}};return r=i}(n),o=function(){"use strict";var n,t=function(){function n(n,t){return{left:n.charAt(2)==="~",right:t.charAt(0)==="~"||t.charAt(1)==="~"}}function i(){this.yy={}}var t={trace:function(){},yy:{},symbols_:{error:2,root:3,statements:4,EOF:5,program:6,simpleInverse:7,statement:8,openInverse:9,closeBlock:10,openBlock:11,mustache:12,partial:13,CONTENT:14,COMMENT:15,OPEN_BLOCK:16,sexpr:17,CLOSE:18,OPEN_INVERSE:19,OPEN_ENDBLOCK:20,path:21,OPEN:22,OPEN_UNESCAPED:23,CLOSE_UNESCAPED:24,OPEN_PARTIAL:25,partialName:26,partial_option0:27,sexpr_repetition0:28,sexpr_option0:29,dataName:30,param:31,STRING:32,INTEGER:33,BOOLEAN:34,OPEN_SEXPR:35,CLOSE_SEXPR:36,hash:37,hash_repetition_plus0:38,hashSegment:39,ID:40,EQUALS:41,DATA:42,pathSegments:43,SEP:44,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"CLOSE_UNESCAPED",25:"OPEN_PARTIAL",32:"STRING",33:"INTEGER",34:"BOOLEAN",35:"OPEN_SEXPR",36:"CLOSE_SEXPR",40:"ID",41:"EQUALS",42:"DATA",44:"SEP"},productions_:[0,[3,2],[3,1],[6,2],[6,3],[6,2],[6,1],[6,1],[6,0],[4,1],[4,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,4],[7,2],[17,3],[17,1],[31,1],[31,1],[31,1],[31,1],[31,1],[31,3],[37,1],[39,3],[26,1],[26,1],[26,1],[30,2],[21,1],[43,3],[43,1],[27,0],[27,1],[28,0],[28,2],[29,0],[29,1],[38,1],[38,2]],performAction:function(t,i,r,u,f,e){var s=e.length-1;switch(f){case 1:return new u.ProgramNode(e[s-1],this._$);case 2:return new u.ProgramNode([],this._$);case 3:this.$=new u.ProgramNode([],e[s-1],e[s],this._$);break;case 4:this.$=new u.ProgramNode(e[s-2],e[s-1],e[s],this._$);break;case 5:this.$=new u.ProgramNode(e[s-1],e[s],[],this._$);break;case 6:this.$=new u.ProgramNode(e[s],this._$);break;case 7:this.$=new u.ProgramNode([],this._$);break;case 8:this.$=new u.ProgramNode([],this._$);break;case 9:this.$=[e[s]];break;case 10:e[s-1].push(e[s]),this.$=e[s-1];break;case 11:this.$=new u.BlockNode(e[s-2],e[s-1].inverse,e[s-1],e[s],this._$);break;case 12:this.$=new u.BlockNode(e[s-2],e[s-1],e[s-1].inverse,e[s],this._$);break;case 13:this.$=e[s];break;case 14:this.$=e[s];break;case 15:this.$=new u.ContentNode(e[s],this._$);break;case 16:this.$=new u.CommentNode(e[s],this._$);break;case 17:this.$=new u.MustacheNode(e[s-1],null,e[s-2],n(e[s-2],e[s]),this._$);break;case 18:this.$=new u.MustacheNode(e[s-1],null,e[s-2],n(e[s-2],e[s]),this._$);break;case 19:this.$={path:e[s-1],strip:n(e[s-2],e[s])};break;case 20:this.$=new u.MustacheNode(e[s-1],null,e[s-2],n(e[s-2],e[s]),this._$);break;case 21:this.$=new u.MustacheNode(e[s-1],null,e[s-2],n(e[s-2],e[s]),this._$);break;case 22:this.$=new u.PartialNode(e[s-2],e[s-1],n(e[s-3],e[s]),this._$);break;case 23:this.$=n(e[s-1],e[s]);break;case 24:this.$=new u.SexprNode([e[s-2]].concat(e[s-1]),e[s],this._$);break;case 25:this.$=new u.SexprNode([e[s]],null,this._$);break;case 26:this.$=e[s];break;case 27:this.$=new u.StringNode(e[s],this._$);break;case 28:this.$=new u.IntegerNode(e[s],this._$);break;case 29:this.$=new u.BooleanNode(e[s],this._$);break;case 30:this.$=e[s];break;case 31:e[s-1].isHelper=!0,this.$=e[s-1];break;case 32:this.$=new u.HashNode(e[s],this._$);break;case 33:this.$=[e[s-2],e[s]];break;case 34:this.$=new u.PartialNameNode(e[s],this._$);break;case 35:this.$=new u.PartialNameNode(new u.StringNode(e[s],this._$),this._$);break;case 36:this.$=new u.PartialNameNode(new u.IntegerNode(e[s],this._$));break;case 37:this.$=new u.DataNode(e[s],this._$);break;case 38:this.$=new u.IdNode(e[s],this._$);break;case 39:e[s-2].push({part:e[s],separator:e[s-1]}),this.$=e[s-2];break;case 40:this.$=[{part:e[s]}];break;case 43:this.$=[];break;case 44:e[s-1].push(e[s]);break;case 47:this.$=[e[s]];break;case 48:e[s-1].push(e[s])}},table:[{3:1,4:2,5:[1,3],8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],22:[1,13],23:[1,14],25:[1,15]},{1:[3]},{5:[1,16],8:17,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],22:[1,13],23:[1,14],25:[1,15]},{1:[2,2]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],25:[2,9]},{4:20,6:18,7:19,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,21],20:[2,8],22:[1,13],23:[1,14],25:[1,15]},{4:20,6:22,7:19,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,21],20:[2,8],22:[1,13],23:[1,14],25:[1,15]},{5:[2,13],14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],25:[2,13]},{5:[2,14],14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],25:[2,14]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],25:[2,15]},{5:[2,16],14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],25:[2,16]},{17:23,21:24,30:25,40:[1,28],42:[1,27],43:26},{17:29,21:24,30:25,40:[1,28],42:[1,27],43:26},{17:30,21:24,30:25,40:[1,28],42:[1,27],43:26},{17:31,21:24,30:25,40:[1,28],42:[1,27],43:26},{21:33,26:32,32:[1,34],33:[1,35],40:[1,28],43:26},{1:[2,1]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],25:[2,10]},{10:36,20:[1,37]},{4:38,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,7],22:[1,13],23:[1,14],25:[1,15]},{7:39,8:17,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,21],20:[2,6],22:[1,13],23:[1,14],25:[1,15]},{17:23,18:[1,40],21:24,30:25,40:[1,28],42:[1,27],43:26},{10:41,20:[1,37]},{18:[1,42]},{18:[2,43],24:[2,43],28:43,32:[2,43],33:[2,43],34:[2,43],35:[2,43],36:[2,43],40:[2,43],42:[2,43]},{18:[2,25],24:[2,25],36:[2,25]},{18:[2,38],24:[2,38],32:[2,38],33:[2,38],34:[2,38],35:[2,38],36:[2,38],40:[2,38],42:[2,38],44:[1,44]},{21:45,40:[1,28],43:26},{18:[2,40],24:[2,40],32:[2,40],33:[2,40],34:[2,40],35:[2,40],36:[2,40],40:[2,40],42:[2,40],44:[2,40]},{18:[1,46]},{18:[1,47]},{24:[1,48]},{18:[2,41],21:50,27:49,40:[1,28],43:26},{18:[2,34],40:[2,34]},{18:[2,35],40:[2,35]},{18:[2,36],40:[2,36]},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],25:[2,11]},{21:51,40:[1,28],43:26},{8:17,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,3],22:[1,13],23:[1,14],25:[1,15]},{4:52,8:4,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,5],22:[1,13],23:[1,14],25:[1,15]},{14:[2,23],15:[2,23],16:[2,23],19:[2,23],20:[2,23],22:[2,23],23:[2,23],25:[2,23]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],25:[2,12]},{14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],25:[2,18]},{18:[2,45],21:56,24:[2,45],29:53,30:60,31:54,32:[1,57],33:[1,58],34:[1,59],35:[1,61],36:[2,45],37:55,38:62,39:63,40:[1,64],42:[1,27],43:26},{40:[1,65]},{18:[2,37],24:[2,37],32:[2,37],33:[2,37],34:[2,37],35:[2,37],36:[2,37],40:[2,37],42:[2,37]},{14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],25:[2,17]},{5:[2,20],14:[2,20],15:[2,20],16:[2,20],19:[2,20],20:[2,20],22:[2,20],23:[2,20],25:[2,20]},{5:[2,21],14:[2,21],15:[2,21],16:[2,21],19:[2,21],20:[2,21],22:[2,21],23:[2,21],25:[2,21]},{18:[1,66]},{18:[2,42]},{18:[1,67]},{8:17,9:5,11:6,12:7,13:8,14:[1,9],15:[1,10],16:[1,12],19:[1,11],20:[2,4],22:[1,13],23:[1,14],25:[1,15]},{18:[2,24],24:[2,24],36:[2,24]},{18:[2,44],24:[2,44],32:[2,44],33:[2,44],34:[2,44],35:[2,44],36:[2,44],40:[2,44],42:[2,44]},{18:[2,46],24:[2,46],36:[2,46]},{18:[2,26],24:[2,26],32:[2,26],33:[2,26],34:[2,26],35:[2,26],36:[2,26],40:[2,26],42:[2,26]},{18:[2,27],24:[2,27],32:[2,27],33:[2,27],34:[2,27],35:[2,27],36:[2,27],40:[2,27],42:[2,27]},{18:[2,28],24:[2,28],32:[2,28],33:[2,28],34:[2,28],35:[2,28],36:[2,28],40:[2,28],42:[2,28]},{18:[2,29],24:[2,29],32:[2,29],33:[2,29],34:[2,29],35:[2,29],36:[2,29],40:[2,29],42:[2,29]},{18:[2,30],24:[2,30],32:[2,30],33:[2,30],34:[2,30],35:[2,30],36:[2,30],40:[2,30],42:[2,30]},{17:68,21:24,30:25,40:[1,28],42:[1,27],43:26},{18:[2,32],24:[2,32],36:[2,32],39:69,40:[1,70]},{18:[2,47],24:[2,47],36:[2,47],40:[2,47]},{18:[2,40],24:[2,40],32:[2,40],33:[2,40],34:[2,40],35:[2,40],36:[2,40],40:[2,40],41:[1,71],42:[2,40],44:[2,40]},{18:[2,39],24:[2,39],32:[2,39],33:[2,39],34:[2,39],35:[2,39],36:[2,39],40:[2,39],42:[2,39],44:[2,39]},{5:[2,22],14:[2,22],15:[2,22],16:[2,22],19:[2,22],20:[2,22],22:[2,22],23:[2,22],25:[2,22]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],25:[2,19]},{36:[1,72]},{18:[2,48],24:[2,48],36:[2,48],40:[2,48]},{41:[1,71]},{21:56,30:60,31:73,32:[1,57],33:[1,58],34:[1,59],35:[1,61],40:[1,28],42:[1,27],43:26},{18:[2,31],24:[2,31],32:[2,31],33:[2,31],34:[2,31],35:[2,31],36:[2,31],40:[2,31],42:[2,31]},{18:[2,33],24:[2,33],36:[2,33],40:[2,33]}],defaultActions:{3:[2,2],16:[2,1],50:[2,42]},parseError:function(n){throw new Error(n);},parse:function(n){function it(){var n;return n=k.lexer.lex()||1,typeof n!="number"&&(n=k.symbols_[n]||n),n}var k=this,r=[0],f=[null],t=[],h=this.table,d="",c=0,g=0,p=0,rt=2,ut=1,l,nt,i,w,o,u,ft,b,s,a,e,tt,v,y;for(this.lexer.setInput(n),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc=="undefined"&&(this.lexer.yylloc={}),l=this.lexer.yylloc,t.push(l),nt=this.lexer.options&&this.lexer.options.ranges,typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError),s={};;){if(o=r[r.length-1],this.defaultActions[o]?u=this.defaultActions[o]:((i===null||typeof i=="undefined")&&(i=it()),u=h[o]&&h[o][i]),(typeof u=="undefined"||!u.length||!u[0])&&(y="",!p)){v=[];for(a in h[o])this.terminals_[a]&&a>2&&v.push("'"+this.terminals_[a]+"'");y=this.lexer.showPosition?"Parse error on line "+(c+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+v.join(", ")+", got '"+(this.terminals_[i]||i)+"'":"Parse error on line "+(c+1)+": Unexpected "+(i==1?"end of input":"'"+(this.terminals_[i]||i)+"'"),this.parseError(y,{text:this.lexer.match,token:this.terminals_[i]||i,line:this.lexer.yylineno,loc:l,expected:v})}if(u[0]instanceof Array&&u.length>1)throw new Error("Parse Error: multiple actions possible at state: "+o+", token: "+i);switch(u[0]){case 1:r.push(i),f.push(this.lexer.yytext),t.push(this.lexer.yylloc),r.push(u[1]),i=null,w?(i=w,w=null):(g=this.lexer.yyleng,d=this.lexer.yytext,c=this.lexer.yylineno,l=this.lexer.yylloc,p>0&&p--);break;case 2:if(e=this.productions_[u[1]][1],s.$=f[f.length-e],s._$={first_line:t[t.length-(e||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(e||1)].first_column,last_column:t[t.length-1].last_column},nt&&(s._$.range=[t[t.length-(e||1)].range[0],t[t.length-1].range[1]]),b=this.performAction.call(s,d,g,c,this.yy,u[1],f,t),typeof b!="undefined")return b;e&&(r=r.slice(0,-2*e),f=f.slice(0,-1*e),t=t.slice(0,-1*e)),r.push(this.productions_[u[1]][0]),f.push(s.$),t.push(s._$),tt=h[r[r.length-2]][r[r.length-1]],r.push(tt);break;case 3:return!0}}return!0}},r=function(){var n={EOF:1,parseError:function(n,t){if(this.yy.parser)this.yy.parser.parseError(n,t);else throw new Error(n);},setInput:function(n){return this._input=n,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var n=this._input[0],t;return this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n,t=n.match(/(?:\r\n?|\n).*/g),t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var i=n.length,t=n.split(/(?:\r\n?|\n)/g),r,u;return this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i-1),this.offset-=i,r=this.match.split(/(?:\r\n?|\n)/g),this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),t.length-1&&(this.yylineno-=t.length-1),u=this.yylloc.range,this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:t?(t.length===r.length?this.yylloc.first_column:0)+r[r.length-t.length].length-t[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-i]),this},more:function(){return this._more=!0,this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),t=new Array(n.length+1).join("-");return n+this.upcomingInput()+"\n"+t+"^"},next:function(){var f,n,r,e,o,t,u,i;if(this.done)return this.EOF;for(this._input||(this.done=!0),this._more||(this.yytext="",this.match=""),u=this._currentRules(),i=0;i<u.length;i++)if(r=this._input.match(this.rules[u[i]]),r&&(!n||r[0].length>n[0].length)&&(n=r,e=i,!this.options.flex))break;return n?(t=n[0].match(/(?:\r\n?|\n).*/g),t&&(this.yylineno+=t.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:t?t[t.length-1].length-t[t.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+n[0].length},this.yytext+=n[0],this.match+=n[0],this.matches=n,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(n[0].length),this.matched+=n[0],f=this.performAction.call(this,this.yy,this,u[e],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)?f:void 0:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var n=this.next();return typeof n!="undefined"?n:this.lex()},begin:function(n){this.conditionStack.push(n)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(n){this.begin(n)}};return n.options={},n.performAction=function(n,t,i,r){function u(n,i){return t.yytext=t.yytext.substr(n,t.yyleng-i)}var f=r;switch(i){case 0:if(t.yytext.slice(-2)==="\\\\"?(u(0,1),this.begin("mu")):t.yytext.slice(-1)==="\\"?(u(0,1),this.begin("emu")):this.begin("mu"),t.yytext)return 14;break;case 1:return 14;case 2:return this.popState(),14;case 3:return u(0,4),this.popState(),15;case 4:return 35;case 5:return 36;case 6:return 25;case 7:return 16;case 8:return 20;case 9:return 19;case 10:return 19;case 11:return 23;case 12:return 22;case 13:this.popState(),this.begin("com");break;case 14:return u(3,5),this.popState(),15;case 15:return 22;case 16:return 41;case 17:return 40;case 18:return 40;case 19:return 44;case 21:return this.popState(),24;case 22:return this.popState(),18;case 23:return t.yytext=u(1,2).replace(/\\"/g,'"'),32;case 24:return t.yytext=u(1,2).replace(/\\'/g,"'"),32;case 25:return 42;case 26:return 34;case 27:return 34;case 28:return 33;case 29:return 40;case 30:return t.yytext=u(1,2),40;case 31:return"INVALID";case 32:return 5}},n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{(~)?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:-?[0-9]+(?=([~}\s)])))/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)]))))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[3],inclusive:!1},INITIAL:{rules:[0,1,32],inclusive:!0}},n}();return t.lexer=r,i.prototype=t,t.Parser=i,new i}();return n=t}(),s=function(n,t){"use strict";function f(n){return n.constructor===u.ProgramNode?n:(r.yy=u,r.parse(n))}var i={},r=n,u=t;return i.parser=r,i.parse=f,i}(o,u),h=function(n){"use strict";function r(){}function u(n,t,r){if(n==null||typeof n!="string"&&n.constructor!==r.AST.ProgramNode)throw new i("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+n);t=t||{},"data"in t||(t.data=!0);var u=r.parse(n),f=(new r.Compiler).compile(u,t);return(new r.JavaScriptCompiler).compile(f,t)}function f(n,t,r){function f(){var i=r.parse(n),u=(new r.Compiler).compile(i,t),f=(new r.JavaScriptCompiler).compile(u,t,undefined,!0);return r.template(f)}if(n==null||typeof n!="string"&&n.constructor!==r.AST.ProgramNode)throw new i("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+n);t=t||{},"data"in t||(t.data=!0);var u;return function(n,t){return u||(u=f()),u.call(this,n,t)}}var t={},i=n;return t.Compiler=r,r.prototype={compiler:r,disassemble:function(){for(var e=this.opcodes,n,u=[],f,t,r,i=0,o=e.length;i<o;i++)if(n=e[i],n.opcode==="DECLARE")u.push("DECLARE "+n.name+"="+n.value);else{for(f=[],r=0;r<n.args.length;r++)t=n.args[r],typeof t=="string"&&(t='"'+t.replace("\n","\\n")+'"'),f.push(t);u.push(n.opcode+" "+f.join(" "))}return u.join("\n")},equals:function(n){var i=this.opcodes.length,t,r,f,u;if(n.opcodes.length!==i)return!1;for(t=0;t<i;t++){if(r=this.opcodes[t],f=n.opcodes[t],r.opcode!==f.opcode||r.args.length!==f.args.length)return!1;for(u=0;u<r.args.length;u++)if(r.args[u]!==f.args[u])return!1}if(i=this.children.length,n.children.length!==i)return!1;for(t=0;t<i;t++)if(!this.children[t].equals(n.children[t]))return!1;return!0},guid:0,compile:function(n,t){var i,r;if(this.opcodes=[],this.children=[],this.depths={list:[]},this.options=t,i=this.options.knownHelpers,this.options.knownHelpers={helperMissing:!0,blockHelperMissing:!0,each:!0,"if":!0,unless:!0,"with":!0,log:!0},i)for(r in i)this.options.knownHelpers[r]=i[r];return this.accept(n)},accept:function(n){var t=n.strip||{},i;return t.left&&this.opcode("strip"),i=this[n.type](n),t.right&&this.opcode("strip"),i},program:function(n){for(var r=n.statements,t=0,i=r.length;t<i;t++)this.accept(r[t]);return this.isSimple=i===1,this.depths.list=this.depths.list.sort(function(n,t){return n-t}),this},compileProgram:function(n){var t=(new this.compiler).compile(n,this.options),u=this.guid++,r,i,f;for(this.usePartial=this.usePartial||t.usePartial,this.children[u]=t,i=0,f=t.depths.list.length;i<f;i++)if(r=t.depths.list[i],r<2)continue;else this.addDepth(r-1);return u},block:function(n){var f=n.mustache,t=n.program,i=n.inverse,r,u;t&&(t=this.compileProgram(t)),i&&(i=this.compileProgram(i)),r=f.sexpr,u=this.classifySexpr(r),u==="helper"?this.helperSexpr(r,t,i):u==="simple"?(this.simpleSexpr(r),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("blockValue")):(this.ambiguousSexpr(r,t,i),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue")),this.opcode("append")},hash:function(n){var u=n.pairs,r,t,i,f;for(this.opcode("pushHash"),i=0,f=u.length;i<f;i++)r=u[i],t=r[1],this.options.stringParams?(t.depth&&this.addDepth(t.depth),this.opcode("getContext",t.depth||0),this.opcode("pushStringParam",t.stringModeValue,t.type),t.type==="sexpr"&&this.sexpr(t)):this.accept(t),this.opcode("assignToHash",r[0]);this.opcode("popHash")},partial:function(n){var t=n.partialName;this.usePartial=!0,n.context?this.ID(n.context):this.opcode("push","depth0"),this.opcode("invokePartial",t.name),this.opcode("append")},content:function(n){this.opcode("appendContent",n.string)},mustache:function(n){this.sexpr(n.sexpr),n.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ambiguousSexpr:function(n,t,i){var r=n.id,u=r.parts[0],f=t!=null||i!=null;this.opcode("getContext",r.depth),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("invokeAmbiguous",u,f)},simpleSexpr:function(n){var t=n.id;t.type==="DATA"?this.DATA(t):t.parts.length?this.ID(t):(this.addDepth(t.depth),this.opcode("getContext",t.depth),this.opcode("pushContext")),this.opcode("resolvePossibleLambda")},helperSexpr:function(n,t,r){var f=this.setupFullMustacheParams(n,t,r),u=n.id.parts[0];if(this.options.knownHelpers[u])this.opcode("invokeKnownHelper",f.length,u);else if(this.options.knownHelpersOnly)throw new i("You specified knownHelpersOnly, but used the unknown helper "+u,n);else this.opcode("invokeHelper",f.length,u,n.isRoot)},sexpr:function(n){var t=this.classifySexpr(n);t==="simple"?this.simpleSexpr(n):t==="helper"?this.helperSexpr(n):this.ambiguousSexpr(n)},ID:function(n){var i,t,r;for(this.addDepth(n.depth),this.opcode("getContext",n.depth),i=n.parts[0],i?this.opcode("lookupOnContext",n.parts[0]):this.opcode("pushContext"),t=1,r=n.parts.length;t<r;t++)this.opcode("lookup",n.parts[t])},DATA:function(n){var r,t,u;if(this.options.data=!0,n.id.isScoped||n.id.depth)throw new i("Scoped data references are not supported: "+n.original,n);for(this.opcode("lookupData"),r=n.id.parts,t=0,u=r.length;t<u;t++)this.opcode("lookup",r[t])},STRING:function(n){this.opcode("pushString",n.string)},INTEGER:function(n){this.opcode("pushLiteral",n.integer)},BOOLEAN:function(n){this.opcode("pushLiteral",n.bool)},comment:function(){},opcode:function(n){this.opcodes.push({opcode:n,args:[].slice.call(arguments,1)})},declare:function(n,t){this.opcodes.push({opcode:"DECLARE",name:n,value:t})},addDepth:function(n){n!==0&&(this.depths[n]||(this.depths[n]=!0,this.depths.list.push(n)))},classifySexpr:function(n){var t=n.isHelper,i=n.eligibleHelper,r=this.options,u;return i&&!t&&(u=n.id.parts[0],r.knownHelpers[u]?t=!0:r.knownHelpersOnly&&(i=!1)),t?"helper":i?"ambiguous":"simple"},pushParams:function(n){for(var i=n.length,t;i--;)t=n[i],this.options.stringParams?(t.depth&&this.addDepth(t.depth),this.opcode("getContext",t.depth||0),this.opcode("pushStringParam",t.stringModeValue,t.type),t.type==="sexpr"&&this.sexpr(t)):this[t.type](t)},setupFullMustacheParams:function(n,t,i){var r=n.params;return this.pushParams(r),this.opcode("pushProgram",t),this.opcode("pushProgram",i),n.hash?this.hash(n.hash):this.opcode("emptyHash"),r}},t.precompile=u,t.compile=f,t}(n),c=function(n,t){"use strict";function r(n){this.value=n}function i(){}var e,l=n.COMPILER_REVISION,a=n.REVISION_CHANGES,o=n.log,s=t,f,h,u,c;for(i.prototype={nameLookup:function(n,t){var u,r;return n.indexOf("depth")===0&&(u=!0),r=/^[0-9]+$/.test(t)?n+"["+t+"]":i.isValidJavaScriptVariableName(t)?n+"."+t:n+"['"+t+"']",u?"("+n+" && "+r+")":r},compilerInfo:function(){var n=l,t=a[n];return"this.compilerInfo = ["+n+",'"+t+"'];\n"},appendToBuffer:function(n){return this.environment.isSimple?"return "+n+";":{appendToBuffer:!0,content:n,toString:function(){return"buffer += "+n+";"}}},initializeBuffer:function(){return this.quotedString("")},namespace:"Handlebars",compile:function(n,t,i,r){var f,u,e;for(this.environment=n,this.options=t||{},o("debug",this.environment.disassemble()+"\n\n"),this.name=this.environment.name,this.isChild=!!i,this.context=i||{programs:[],environments:[],aliases:{}},this.preamble(),this.stackSlot=0,this.stackVars=[],this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.compileChildren(n,t),f=n.opcodes,this.i=0,e=f.length;this.i<e;this.i++)u=f[this.i],u.opcode==="DECLARE"?this[u.name]=u.value:this[u.opcode].apply(this,u.args),u.opcode!==this.stripNext&&(this.stripNext=!1);if(this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new s("Compile completed with content left on stack");return this.createFunctionContext(r)},preamble:function(){var t=[],i,n;this.isChild?t.push(""):(i=this.namespace,n="helpers = this.merge(helpers, "+i+".helpers);",this.environment.usePartial&&(n=n+" partials = this.merge(partials, "+i+".partials);"),this.options.data&&(n=n+" data = data || {};"),t.push(n)),this.environment.isSimple?t.push(""):t.push(", buffer = "+this.initializeBuffer()),this.lastContext=0,this.source=t},createFunctionContext:function(n){var e=this.stackVars.concat(this.registers.list),r,t,u,s,i,f;if(e.length>0&&(this.source[1]=this.source[1]+", "+e.join(", ")),!this.isChild)for(r in this.context.aliases)this.context.aliases.hasOwnProperty(r)&&(this.source[1]=this.source[1]+", "+r+"="+this.context.aliases[r]);for(this.source[1]&&(this.source[1]="var "+this.source[1].substring(2)+";"),this.isChild||(this.source[1]+="\n"+this.context.programs.join("\n")+"\n"),this.environment.isSimple||this.pushSource("return buffer;"),t=this.isChild?["depth0","data"]:["Handlebars","depth0","helpers","partials","data"],u=0,s=this.environment.depths.list.length;u<s;u++)t.push("depth"+this.environment.depths.list[u]);return i=this.mergeSource(),this.isChild||(i=this.compilerInfo()+i),n?(t.push(i),Function.apply(this,t)):(f="function "+(this.name||"")+"("+t.join(",")+") {\n  "+i+"}",o("debug",f+"\n\n"),f)},mergeSource:function(){for(var r="",n,t,i=0,u=this.source.length;i<u;i++)t=this.source[i],t.appendToBuffer?n=n?n+"\n    + "+t.content:t.content:(n&&(r+="buffer += "+n+";\n  ",n=undefined),r+=t+"\n  ");return r},blockValue:function(){this.context.aliases.blockHelperMissing="helpers.blockHelperMissing";var n=["depth0"];this.setupParams(0,n),this.replaceStack(function(t){return n.splice(1,0,t),"blockHelperMissing.call("+n.join(", ")+")"})},ambiguousBlockValue:function(){var n,t;this.context.aliases.blockHelperMissing="helpers.blockHelperMissing",n=["depth0"],this.setupParams(0,n),t=this.topStack(),n.splice(1,0,t),this.pushSource("if (!"+this.lastHelper+") { "+t+" = blockHelperMissing.call("+n.join(", ")+"); }")},appendContent:function(n){this.pendingContent&&(n=this.pendingContent+n),this.stripNext&&(n=n.replace(/^\s+/,"")),this.pendingContent=n},strip:function(){this.pendingContent&&(this.pendingContent=this.pendingContent.replace(/\s+$/,"")),this.stripNext="strip"},append:function(){this.flushInline();var n=this.popStack();this.pushSource("if("+n+" || "+n+" === 0) { "+this.appendToBuffer(n)+" }"),this.environment.isSimple&&this.pushSource("else { "+this.appendToBuffer("''")+" }")},appendEscaped:function(){this.context.aliases.escapeExpression="this.escapeExpression",this.pushSource(this.appendToBuffer("escapeExpression("+this.popStack()+")"))},getContext:function(n){this.lastContext!==n&&(this.lastContext=n)},lookupOnContext:function(n){this.push(this.nameLookup("depth"+this.lastContext,n,"context"))},pushContext:function(){this.pushStackLiteral("depth"+this.lastContext)},resolvePossibleLambda:function(){this.context.aliases.functionType='"function"',this.replaceStack(function(n){return"typeof "+n+" === functionType ? "+n+".apply(depth0) : "+n})},lookup:function(n){this.replaceStack(function(t){return t+" == null || "+t+" === false ? "+t+" : "+this.nameLookup(t,n,"context")})},lookupData:function(){this.pushStackLiteral("data")},pushStringParam:function(n,t){this.pushStackLiteral("depth"+this.lastContext),this.pushString(t),t!=="sexpr"&&(typeof n=="string"?this.pushString(n):this.pushStackLiteral(n))},emptyHash:function(){this.pushStackLiteral("{}"),this.options.stringParams&&(this.push("{}"),this.push("{}"))},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:[],types:[],contexts:[]}},popHash:function(){var n=this.hash;this.hash=this.hashes.pop(),this.options.stringParams&&(this.push("{"+n.contexts.join(",")+"}"),this.push("{"+n.types.join(",")+"}")),this.push("{\n    "+n.values.join(",\n    ")+"\n  }")},pushString:function(n){this.pushStackLiteral(this.quotedString(n))},push:function(n){return this.inlineStack.push(n),n},pushLiteral:function(n){this.pushStackLiteral(n)},pushProgram:function(n){n!=null?this.pushStackLiteral(this.programExpression(n)):this.pushStackLiteral(null)},invokeHelper:function(n,t,i){this.context.aliases.helperMissing="helpers.helperMissing",this.useRegister("helper");var r=this.lastHelper=this.setupHelper(n,t,!0),f=this.nameLookup("depth"+this.lastContext,t,"context"),u="helper = "+r.name+" || "+f;r.paramsInit&&(u+=","+r.paramsInit),this.push("("+u+",helper ? helper.call("+r.callParams+") : helperMissing.call("+r.helperMissingParams+"))"),i||this.flushInline()},invokeKnownHelper:function(n,t){var i=this.setupHelper(n,t);this.push(i.name+".call("+i.callParams+")")},invokeAmbiguous:function(n,t){this.context.aliases.functionType='"function"',this.useRegister("helper"),this.emptyHash();var i=this.setupHelper(0,n,t),u=this.lastHelper=this.nameLookup("helpers",n,"helper"),f=this.nameLookup("depth"+this.lastContext,n,"context"),r=this.nextStack();i.paramsInit&&this.pushSource(i.paramsInit),this.pushSource("if (helper = "+u+") { "+r+" = helper.call("+i.callParams+"); }"),this.pushSource("else { helper = "+f+"; "+r+" = typeof helper === functionType ? helper.call("+i.callParams+") : helper; }")},invokePartial:function(n){var t=[this.nameLookup("partials",n,"partial"),"'"+n+"'",this.popStack(),"helpers","partials"];this.options.data&&t.push("data"),this.context.aliases.self="this",this.push("self.invokePartial("+t.join(", ")+")")},assignToHash:function(n){var u=this.popStack(),i,r,t;this.options.stringParams&&(r=this.popStack(),i=this.popStack()),t=this.hash,i&&t.contexts.push("'"+n+"': "+i),r&&t.types.push("'"+n+"': "+r),t.values.push("'"+n+"': ("+u+")")},compiler:i,compileChildren:function(n,t){for(var f=n.children,r,e,i,u=0,o=f.length;u<o;u++)r=f[u],e=new this.compiler,i=this.matchExistingProgram(r),i==null?(this.context.programs.push(""),i=this.context.programs.length,r.index=i,r.name="program"+i,this.context.programs[i]=e.compile(r,t,this.context),this.context.environments[i]=r):(r.index=i,r.name="program"+i)},matchExistingProgram:function(n){for(var i,t=0,r=this.context.environments.length;t<r;t++)if(i=this.context.environments[t],i&&i.equals(n))return t},programExpression:function(n){var t,e;if(this.context.aliases.self="this",n==null)return"self.noop";var i=this.environment.children[n],r=i.depths.list,u,f=[i.index,i.name,"data"];for(t=0,e=r.length;t<e;t++)u=r[t],u===1?f.push("depth0"):f.push("depth"+(u-1));return(r.length===0?"self.program(":"self.programWithDepth(")+f.join(", ")+")"},register:function(n,t){this.useRegister(n),this.pushSource(n+" = "+t+";")},useRegister:function(n){this.registers[n]||(this.registers[n]=!0,this.registers.list.push(n))},pushStackLiteral:function(n){return this.push(new r(n))},pushSource:function(n){this.pendingContent&&(this.source.push(this.appendToBuffer(this.quotedString(this.pendingContent))),this.pendingContent=undefined),n&&this.source.push(n)},pushStack:function(n){this.flushInline();var t=this.incrStack();return n&&this.pushSource(t+" = "+n+";"),this.compileStack.push(t),t},replaceStack:function(n){var u="",o=this.isInline(),t,f,s,i,h,e;return o?(i=this.popStack(!0),i instanceof r?(t=i.value,s=!0):(f=!this.stackSlot,h=f?this.incrStack():this.topStackName(),u="("+this.push(h)+" = "+i+"),",t=this.topStack())):t=this.topStack(),e=n.call(this,t),o?(s||this.popStack(),f&&this.stackSlot--,this.push("("+u+e+")")):(/^stack/.test(t)||(t=this.nextStack()),this.pushSource(t+" = ("+u+e+");")),t},nextStack:function(){return this.pushStack()},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var i=this.inlineStack,n,u,t;if(i.length)for(this.inlineStack=[],n=0,u=i.length;n<u;n++)t=i[n],t instanceof r?this.compileStack.push(t):this.pushStack(t)},isInline:function(){return this.inlineStack.length},popStack:function(n){var i=this.isInline(),t=(i?this.inlineStack:this.compileStack).pop();if(!n&&t instanceof r)return t.value;if(!i){if(!this.stackSlot)throw new s("Invalid stack pop");this.stackSlot--}return t},topStack:function(n){var i=this.isInline()?this.inlineStack:this.compileStack,t=i[i.length-1];return!n&&t instanceof r?t.value:t},quotedString:function(n){return'"'+n.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},setupHelper:function(n,t,i){var r=[],u=this.setupParams(n,r,i),f=this.nameLookup("helpers",t,"helper");return{params:r,paramsInit:u,name:f,callParams:["depth0"].concat(r).join(", "),helperMissingParams:i&&["depth0",this.quotedString(t)].concat(r).join(", ")}},setupOptions:function(n,t){var i=[],e=[],o=[],s,r,u,f;for(i.push("hash:"+this.popStack()),this.options.stringParams&&(i.push("hashTypes:"+this.popStack()),i.push("hashContexts:"+this.popStack())),r=this.popStack(),u=this.popStack(),(u||r)&&(u||(this.context.aliases.self="this",u="self.noop"),r||(this.context.aliases.self="this",r="self.noop"),i.push("inverse:"+r),i.push("fn:"+u)),f=0;f<n;f++)s=this.popStack(),t.push(s),this.options.stringParams&&(o.push(this.popStack()),e.push(this.popStack()));return this.options.stringParams&&(i.push("contexts:["+e.join(",")+"]"),i.push("types:["+o.join(",")+"]")),this.options.data&&i.push("data:data"),i},setupParams:function(n,t,i){var r="{"+this.setupOptions(n,t).join(",")+"}";return i?(this.useRegister("options"),t.push("options"),"options="+r):(t.push(r),"")}},f="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield".split(" "),h=i.RESERVED_WORDS={},u=0,c=f.length;u<c;u++)h[f[u]]=!0;return i.isValidJavaScriptVariableName=function(n){return!i.RESERVED_WORDS[n]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(n)?!0:!1},e=i}(i,n);return function(n,t,i,r,u){"use strict";var e,f=n,s=t,h=i.parser,c=i.parse,l=r.Compiler,a=r.compile,v=r.precompile,y=u,p=f.create,o=function(){var n=p();return n.compile=function(t,i){return a(t,i,n)},n.precompile=function(t,i){return v(t,i,n)},n.AST=s,n.Compiler=l,n.JavaScriptCompiler=y,n.Parser=h,n.parse=c,n};return f=o(),f.create=o,e=f}(e,u,s,h,c)}(),Tooltip=null,nugetPackageManager=function(n){var i,s,a,l=[],f={},v=null,e,r=!1,u="desktop",t,h,c,o;return n.init=function(i,f){var e,s,l,o;if(t=i,r=!1,f=$.extend({},f),u=f&&f.mode?f.mode:"desktop",h=f.onPackageSaved||!1,c=f.onClear||!1,u=="desktop"){$("body").click(function(){n.setAutoComplete(null)});$("body").on("click","#menu",function(){return!1});$("body").on("keyup",".nuget-panel .new-package",function(){n.setAutoComplete($(this).val())});if(typeof f.ignoreClick!="boolean"||!f.ignoreClick)$("body").on("click",".nuget-panel .new-package",function(){return n.setAutoComplete($(this).val()),!1});$("body").on("click",".nuget-panel .add-package",function(){$(".nuget-panel").addClass("hide-link").removeClass("hide-input"),$(".nuget-panel .new-package").val("")});$("body").on("click",".delete-package",function(){var t=$(this).closest("li").attr("version-id");n.removePackage(t),collaboration.nugetPackagesChanged(t,"remove")});$("body").on("click",".version",function(){n.addPackage($(this).attr("package-id"),$(this).attr("version-name"))})}if(t&&t.length>0){for(e=[],s=[],l=0;l<t.length;l++)o=t[l],o.IsOnDisk||(s.push(o.Id),e.push('<div class="package-loading"><b>'+o.Label+'<\/b><div class="progress progress-striped" version-id="'+o.Id+'"><div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%"><span class="sr-only1">0%<\/span><\/div><\/div><\/div>'));if(e.length>0){e.length==1?$("#preload-dialog .modal-title").text("Loading package and dependencies"):$("#preload-dialog .modal-title").text("Loading packages and dependencies"),$("#preload-dialog .modal-body").html(e.join("<br/>"));var y=new Date,a=!1,p=e.length;$.ajax({url:"/NuGetPackage/DownloadMissingPackages",data:JSON.stringify({versionIds:s}),type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",error:function(){a=!0,$("#preload-dialog .package-loading").append('<p class="error">Operation failed. Please try again or report this to support.<\/p>')}});function v(){var t=null;$.ajax({url:"/NuGetPackage/GetDownloadStatuses",data:JSON.stringify({versionIds:s}),type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",success:function(t){var f=0,e,i,u;for(e in t.downloadInfo)if(i=t.downloadInfo[e],u=$("#preload-dialog .progress[version-id="+i.versionId+"]"),$(".progress-bar",u).css("width",i.downloadingPercentage+"%"),$(".sr-only1",u).text(i.downloadingPercentage+"%"),i.completed&&(f++,f>=p)){setTimeout(function(){$("#preload-dialog").modal("hide")},1e3),n.render(),r=!0;return}var o=new Date,s=y-o,h=Math.round(s%864e5%36e5/6e4);h<2&&!a&&setTimeout(v,500),a&&setTimeout(function(){$("#preload-dialog").modal("hide")},3e3)},error:function(){setTimeout(function(){$("#preload-dialog").modal("hide")},3e3)},complete:function(){}})}setTimeout(function(){v()},1e3),$("#preload-dialog").modal("show")}else r=!0,n.render()}else u=="mobile"&&$("#nuget .nuget-packages").append("<b>None<\/b>"),r=!0},n.isLoaded=function(n){return typeof n=="boolean"&&(r=n),r},n.render=function(){var r,i,n;if(u=="desktop"){for(i in t)n=t[i],r=$(".nuget-panel .nuget-packages").append('<li version-id="'+n.Id+"\" title=\"<span class='package-tooltip-title'>"+_.escape(n.Label)+"<\/span><br/>"+_.escape(n.PackageDescription)+'"><div style="display: inline-block;"><div class="package-name" package-id="'+n.PackageNuGetId+'">'+_.escape(n.Label)+'<\/div>&nbsp;<a href="javascript:void(0);" class="delete-package"><i class="ui-icon ui-icon-closethick"><\/i><\/a><\/div><\/li>'),$.fn.tooltip=$.ui.tooltip,$(r).tooltip({content:function(){return $(this).prop("title")},position:{my:"left top",at:"right top"}});$(".nuget-panel .nuget-packages .package").length<3?$(".nuget-panel .nuget-packages .package").length<=0?$(".nuget-panel").addClass("hide-link").removeClass("hide-input"):$(".nuget-panel").addClass("hide-input").removeClass("hide-link"):$(".nuget-panel").addClass("hide-input").addClass("hide-link")}else if(u=="widget")for(i in t)n=t[i],r=$("#nuget .nuget-packages").append('<li version-id="'+n.Id+"\" title=\"<span class='package-tooltip-title'>"+n.Label+"<\/span><br/>"+n.PackageDescription+'"><div style="display: inline-block;"><div class="package-name" package-id="'+n.PackageNuGetId+'">'+n.Label+"<\/div><\/div><\/li>"),$.fn.tooltip=$.ui.tooltip,$(r).tooltip({content:function(){return $(this).prop("title")},position:{my:"right top",at:"right top"}});else if(u=="mobile"){for(i in t)n=t[i],$("#nuget .nuget-packages").append('<div class="mobile-package"><span class="name">'+n.Label+'<\/span><p class="description">'+n.PackageDescription+"<\/p><\/div>");t.length<=0&&$("#nuget .nuget-packages").append("<b>None<\/b>")}},n.removePackage=function(n){var t=$(".delete-package").closest('li[version-id="'+n+'"]');$("#NuGetPackageVersionIds").val(function(t,i){var r=i.split(";"),u=r.indexOf(n);return u>-1&&r.splice(u,1),r.join(";")}),t.remove(),fiddle.checkSyntax(),$(".nuget-panel .nuget-packages .package").length<=0?($(".nuget-panel").addClass("hide-link").removeClass("hide-input"),$(".nuget-panel .new-package").val("").focus()):$(".nuget-panel").addClass("hide-input").removeClass("hide-link")},n.savePackage=function(t){$(".nuget-panel .new-package").val(""),n.setAutoComplete(null);var i=$(".nuget-panel .nuget-packages").append('<li version-id="'+t.Id+"\" title=\"<span class='package-tooltip-title'>"+t.Label+"<\/span><br/>"+t.PackageDescription+'"><div style="display: inline-block;"><div class="package-name" package-id="'+t.PackageNuGetId+'">'+t.Label+'<\/div>&nbsp;<a href="#" class="delete-package"><i class="ui-icon ui-icon-closethick"><\/i><\/a><\/div><\/li>');$.fn.tooltip=$.ui.tooltip,$(i).tooltip({content:function(){return $(this).prop("title")},position:{my:"left top",at:"right top"}}),$("#NuGetPackageVersionIds").val(function(n,i){return i+(i?";":"")+t.Id}),fiddle.checkSyntax(),$(".nuget-panel .nuget-packages .package").length<3?$(".nuget-panel").addClass("hide-input").removeClass("hide-link"):$(".nuget-panel").addClass("hide-input").addClass("hide-link"),typeof h=="function"&&h(t)},n.addPackage=function(t,r){var u=$.grep(f[t].versions,function(n){return n.Name==r}),e,o,h;if(!u||u.length!=1)throw new Error("Incorrect version name");if(i&&i.PackageId&&i.PackageId==t)throw new Error("Package is already loading");if(e=u[0],o=!1,e.IsOnDisk)$.ajax({url:"/NuGetPackage/GetPackageVersionInfo?packageId="+t+"&versionName="+e.Name,type:"GET",dataType:"json",success:function(t){t.status=="ok"&&(n.savePackage(t.versionInfo),collaboration.nugetPackagesChanged(t.versionInfo,"add"))}});else{if(u=$.grep(l,function(n){return n.PackageId==t}),!u||u.length!=1)throw new Error("Incorrect package ID");i=u[0],s=e.Name,$("#preload-dialog .modal-title").text("Loading package and dependencies"),$("#preload-dialog .modal-body").html('<div class="package-loading"><b>'+i.Label+" "+e.Label+'<\/b><div class="progress progress-striped"><div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%"><span class="sr-only1">0%<\/span><\/div><\/div><\/div>'),$("#preload-dialog").modal("show"),h=new Date,$.ajax({url:"/NuGetPackage/DownloadPackage",data:{packageId:i.PackageId,versionName:s},type:"POST",dataType:"json",error:function(){o=!0,$("#preload-dialog .package-loading").append('<p class="error">Operation failed. Please try again or report this to support.<\/p>')}});function c(){var t=null;$.ajax({url:"/NuGetPackage/GetDownloadStatus?packageId="+i.PackageId+"&versionName="+s,type:"GET",dataType:"json",success:function(t){var r=$("#preload-dialog .progress");if($(".progress-bar",r).css("width",t.downloadingPercentage+"%"),$(".sr-only1",r).text(t.downloadingPercentage+"%"),t.completed)setTimeout(function(){n.savePackage(t.version),collaboration.nugetPackagesChanged(t.version,"add"),delete f[i.PackageId],i=null,$("#preload-dialog").modal("hide")},1e3);else{var u=new Date,e=h-u,s=Math.round(e%864e5%36e5/6e4);s<2&&!o&&setTimeout(function(){c()},500),o&&(i=null,setTimeout(function(){$("#preload-dialog").modal("hide")},3e3))}},error:function(){setTimeout(function(){$("#preload-dialog").modal("hide")},3e3)},complete:function(){}})}setTimeout(function(){c()},1e3)}},n.clear=function(n){$("#NuGetPackageVersionIds").val(""),$(".nuget-panel").addClass("hide-link").removeClass("hide-input"),$(".nuget-panel .new-package").val("").focus(),t=[],n&&fiddle.checkSyntax(),typeof c=="function"&&c()},n.setAutoComplete=function(n){var t,i;n&&n!=""?(t=new Date,e=t,o&&(window.clearTimeout(o),o=null),i=function(){$(".nuget-search-spinner").show(),$.ajax({url:"/NuGetPackage/GetAutoCompleteItems",type:"GET",dataType:"json",data:{keyword:n},success:function(n){var o,i,s,r,h,u;if(t==e){o=[],$(".nuget-panel .nuget-packages .package-name").each(function(){o.push($(this).attr("package-id"))}),i=$.grep(n,function(n){return $.grep(o,function(t){return t==n.PackageId}).length<=0});for(s in i)i[s].value=i[s].Label;l=i,$("#menu").remove(),r=[],$.each(i,function(n){r.push('<li title="'+_.escape(i[n].Description)+'"><a href="#" package-id="'+i[n].PackageId+'">'+i[n].Label+'<\/a><ul><li><div style="width: 150px;text-align: center;font-size: 12px;">Versions loading...<img width="130px" src="/content/images/ajax-loader.gif" /><\/div><\/li><\/ul><\/li>')}),r.length<=0&&r.push('<li style="text-align: center;font-size: x-small;padding: 0 20px;">No items found.<\/li>'),$("body").append('<ul id="menu">'+r.join("")+"<\/ul>"),$("#menu").menu(),h=$(".new-package").offset(),h.top+=$(".new-package").height()+5,$("#menu").offset(h),$.fn.tooltip=$.ui.tooltip,$("#menu > li").tooltip({content:function(){return $(this).prop("title")},position:{my:"left top",at:"right top"},show:{delay:30}}),u=null,$("#menu > li > a").mouseenter(function(){var t=$(this),n=$(t).attr("package-id"),i;$.fn.tooltip=$.ui.tooltip,$("#menu > .ui-menu-item").not(t).tooltip("close"),i=$(t).next("ul"),f[n]?(i.html(f[n].html).css("overflow-y","auto").css("overflow-x","hidden"),setTimeout(ajustTooltipOffset,100)):(clearTimeout(u),u=setTimeout(function(){$("ul",t).html('<li><div style="text-align: center;">Versions loading...<img src="/content/images/ajax-loader.gif" /><\/div><\/li>'),setTimeout(ajustTooltipOffset,50),setTimeout(function(){$.ajax({url:"/NuGetPackage/GetpackageVersions?packageId="+n,type:"GET",dataType:"json",success:function(t){var u="",e,r,o;for(e in t)r=t[e],o=r.Label,u+='<li class="ui-menu-item" role="presentation"><a href="javascript:void(0);" package-id="'+n+'" version-name="'+r.Name+'" class="ui-corner-all version">'+o+(r.IsOnDisk?'<i class="glyphicon glyphicon-ok-sign" title="On disk"><\/i>':"")+"<\/a><\/li>";f[n]={versions:t,html:u},i.html(u).css("overflow-y","auto").css("overflow-x","hidden"),setTimeout(ajustTooltipOffset,100)}})},3e3)},100))}),$("#menu > li > a").mouseleave(function(){clearTimeout(u)})}},complete:function(){e==t&&$(".nuget-search-spinner").hide()}})},o=window.setTimeout(i,500)):(e=new Date,$("#menu").remove(),$(".nuget-search-spinner").hide())},n}({}),projectTypeLayouts={Console:[],Script:[],Mvc:["sections","tabs"],Nancy:["sections","tabs"]},layoutScripts={Console:function(){$(".layout-container").splitter({type:"h",minTop:200,minBottom:140,sizeBottom:200,anchorToWindow:!0,accessKey:"T"}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:300,accessKey:"R"})},Script:function(){$(".layout-container").splitter({type:"h",minTop:200,minBottom:140,sizeBottom:200,anchorToWindow:!0,accessKey:"T"}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:300,accessKey:"R"})},Mvc_sections:function(){$(".layout-container").splitter({type:"h",minTop:300,minBottom:140,sizeBottom:140,anchorToWindow:!0}),$(".code-container").splitter({type:"h",minTop:150,minBottom:250}),$(".top-code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".bottom-code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:300})},Mvc_tabs:function(){$(".layout-container").splitter({type:"h",minTop:400,minBottom:140,sizeBottom:140,anchorToWindow:!0}),$(".code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:200})},Nancy_sections:function(){$(".layout-container").splitter({type:"h",minTop:400,minBottom:140,sizeBottom:140,anchorToWindow:!0}),$(".code-container").splitter({type:"h",minTop:200,minBottom:200}),$(".top-code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".bottom-code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:300})},Nancy_tabs:function(){$(".layout-container").splitter({type:"h",minTop:400,minBottom:140,sizeBottom:140,anchorToWindow:!0}),$(".code-container").splitter({type:"v",minLeft:100,minRight:100}),$(".output-container").splitter({type:"v",sizeRight:200,minLeft:100,minRight:100,maxRight:300})}};var fiddle=new Fiddle,siteModes={full:1,mobile:2,widget:3,academy:4},env={siteMode:siteModes.full,auth:!1},Languages={CSharp:1,VbNet:2,FSharp:3},LanguagesDict={1:"CSharp",2:"VbNet",3:"FSharp"},ProjectTypes={Console:1,Script:2,Mvc:3,Nancy:4},ProjectTypesDict={1:"Console",2:"Script",3:"Mvc",4:"Nancy"},AccessTypes={OnlyWithLink:0,Public:1},AccessTypesDict={0:"OnlyWithLink",1:"Public"},AccessTypeNames={0:"Only With Link",1:"Public"},Compilers={Net45:1,Roslyn:2,NetLatest:3,NetCore31:4,Net5:5,Net6:6,Net7:7,Net8:8,Net8:9},CompilersDict={1:"Net45",2:"Roslyn",3:"NetLatest",4:"NetCore31",5:"Net5",6:"Net6",7:"Net7",8:"Net8",9:"Net9"};$(document).ready(function(){function i(){$(".CodeMirror-gutters").each(function(){var n=$(this).closest(".CodeMirror-scroll"),t=$(".CodeMirror-sizer",n);$(this).css({height:Math.max(n.height(),t.height())})}),setTimeout(i,200)}$("#timezone").val((new Date).getTimezoneOffset()/-60);var t=!1,n=new ZeroClipboard($(".copy-clipboard"),{});n.on("noFlash",showClipboardAlert);n.on("wrongFlash",showClipboardAlert);n.on("mousedown",function(){t=!0});n.on("complete",function(){var i=this;$(i).attr("data-clipboard-target")=="ShareLink"&&$(".clipboard-status").show().animate({opacity:1},50,function(){$(this).delay(600).animate({opacity:0},1e3,function(){$(this).hide()})}),$(i).attr("data-clipboard-target")=="EmbedLink"&&$(".clipboard-status-widget").show().animate({opacity:1},50,function(){$(this).delay(600).animate({opacity:0},1e3,function(){$(this).hide()})})});$("body").on("click",function(){t||$(".sub-dialog").each(function(){$(this).hasClass("show")&&$(this).removeClass("show")}),t=!1});$(".sub-dialog").click(function(n){n.stopPropagation()});$("body").on("click","#Share",function(n){var i,t,r;if(!$("#share-dialog").hasClass("show")){if(n.stopPropagation(),i=fiddle.getFiddleId(),t=CodeRunner.getFormData(!0),t.OriginalFiddleId=i,$.extend(t,{AccessType:$("#access-type").val(),Name:$("#fiddle-name").val()}),env.auth&&(fiddle.isInUserFiddles()||fiddle.isCodeBlocksChanged())&&t.Name==""){displayNotification("Please enter fiddle name","danger");return}$("#share-dialog").addClass("loading"),$("#share-dialog").addClass("show"),r=JSON.stringify(t),$.ajax({url:"/Home/SaveAndGetShareUrl",data:r,type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",success:function(n){if(n.message){$("#share-dialog").removeClass("show"),alert(n.message);return}$("#ShareLink").val(n.url);var t=fiddle.getProjectType()=="Mvc"||fiddle.getProjectType()=="Nancy"?655:475,i='<iframe width="100%" height="'+t+'" src="__url__" frameborder="0"><\/iframe>';$("#EmbedLink").val(i.replace("__url__",n.widgetUrl)),fiddle.setCodeBlocks(fiddle.getCodeBlocks()),fiddle.setFiddleId(n.id),$("#OriginalFiddleId").val(n.id),$(".advanced-widgetbuilder").attr("href","/WidgetBuilder/"+n.id),$("#OriginalNuGetPackageVersionIds").val(n.versionIds),collaboration.shared(n.id,n.versionIds)},complete:function(){$("#share-dialog").removeClass("loading"),$("#CodeForm").validate().resetForm()}})}});$("body").on("click","#run-button",function(){fiddle.run()});$("input[name=IsAutoRun]").click(function(){fiddle.setAutoRun($("#IsAutoRun:checked").val())}),$("#stats").hide(),typeof CodeRunner!="undefined"&&CodeRunner.toggleStatsLoader(),i(),toggleProjectType(),$("body").css("visibility","visible");$("body").on("dblclick",".output",function(){function e(n,t,i){var r=u[n].getDoc();r.setCursor(i?{line:t,ch:i}:{line:t}),u[n].focus()}var h=this,u=fiddle.getEditors(),f=document.getSelection().focusNode.data,o=/\(line\s+\d+,\s+col\s+\d+\)/g,s=/line\s+\d+/g,i=o.exec(f),r,n,t;if(i&&i.length>0){if(r=i[0].match(/\d+/g),n="",fiddle.getProjectType()=="Mvc"||fiddle.getProjectType()=="Nancy"){for(t in u)if(f.substring(0,t.length)==t){n=t;break}}else n=fiddle.getProjectType();e(n,r[0]-1,r[1]-1);return}if(i=s.exec(f),i&&i.length>0){if(r=i[0].match(/\d+/g),n="",fiddle.getProjectType()=="Mvc"||fiddle.getProjectType()=="Nancy"){for(t in u)if(f.substring(0,t.length)==t){n=t;break}}else n=fiddle.getProjectType();e(n,r[0]-1);return}})}),$(window).unload(function(){collaboration.isEnabled()&&TogetherJS(),fiddle.saveInSession(!1)}),$(window).bind("beforeunload",function(){collaboration.isEnabled()&&TogetherJS(),fiddle.saveInSession(!1)})