function uiUploader(n){"use strict";function r(n){for(var i=0;i<n.length;i++)t.files.push(n[i])}function u(){return t.files}function i(n){t.options=n;for(var i=0;i<t.files.length&&t.activeUploads!=t.options.concurrency;i++)t.files[i].active||s(t.files[i],t.options.url)}function f(n){t.files.splice(t.files.indexOf(n),1)}function e(){t.files.splice(0,t.files.length)}function o(n){var t=+Math.floor(Math.log(n)/Math.log(1024));return(n/Math.pow(1024,t)).toFixed(t?1:0)+" "+["n/a","bytes","KiB","MiB","GiB","TB","PB","EiB","ZiB","YiB"][isNaN(n)?0:t+1]}function s(n,r){var u,f,e,s="";if(t.activeUploads+=1,n.active=!0,u=new window.XMLHttpRequest,f=new window.FormData,u.open("POST",r),u.upload.onloadstart=function(){},u.upload.onprogress=function(i){i.lengthComputable&&(n.loaded=i.loaded,n.humanSize=o(i.loaded),t.options.onProgress(n))},u.onload=function(){t.activeUploads-=1;i(t.options);t.options.onCompleted(n,u.responseText)},u.onerror=function(){},s)for(e in s)s.hasOwnProperty(e)&&f.append(e,s[e]);return f.append("file",n,n.name),u.send(f),u}var t=this;return t.files=[],t.options={},t.activeUploads=0,n.info("uiUploader loaded"),{addFiles:r,getFiles:u,files:t.files,startUpload:i,removeFile:f,removeAll:e}}function ngShowdown(){function t(){var t=new showdown.Converter(n);this.makeHtml=function(n){return t.makeHtml(n)};this.stripHtml=function(n){return String(n).replace(/<[^>]+>/gm,"")};this.getOption=function(n){return t.getOption(n)};this.getOptions=function(){return t.getOptions()};this.setOption=function(n,i){return t.setOption(n,i),this}}var n={extensions:[],sanitize:!1};this.setOption=function(t,i){return n[t]=i,this};this.getOption=function(t){return n.hasOwnProperty(t)?n[t]:undefined};this.loadExtension=function(t){return n.extensions.push(t),this};this.$get=function(){return new t}}function sdModelToHtmlDirective(n,t,i){return{restrict:"A",link:getLinkFn(n,t,i),scope:{model:"=sdModelToHtml"},template:'<div ng-bind-html="trustedHtml"><\/div>'}}function markdownToHtmlDirective(n,t,i){return{restrict:"A",link:getLinkFn(n,t,i),scope:{model:"=markdownToHtml"},template:'<div ng-bind-html="trustedHtml"><\/div>'}}function getLinkFn(n,t,i){return function(r){r.$watch("model",function(u){var f;typeof u=="string"?(f=n.makeHtml(u),r.trustedHtml=n.getOption("sanitize")?t(f):i.trustAsHtml(f)):r.trustedHtml=typeof u})}}function stripHtmlFilter(n){return function(t){return n.stripHtml(t)}}var requirejs,require,define,app,ngTableController,mfb,mod;(function(){function n(){this.Diff_Timeout=1;this.Diff_EditCost=4;this.Match_Threshold=.5;this.Match_Distance=1e3;this.Patch_DeleteThreshold=.5;this.Patch_Margin=4;this.Match_MaxBits=32}n.prototype.diff_main=function(n,t,i,r){var e,u,f;if("undefined"==typeof r&&(r=0>=this.Diff_Timeout?Number.MAX_VALUE:(new Date).getTime()+1e3*this.Diff_Timeout),null==n||null==t)throw Error("Null input. (diff_main)");return n==t?n?[[0,n]]:[]:("undefined"==typeof i&&(i=!0),e=i,u=this.diff_commonPrefix(n,t),i=n.substring(0,u),n=n.substring(u),t=t.substring(u),u=this.diff_commonSuffix(n,t),f=n.substring(n.length-u),n=n.substring(0,n.length-u),t=t.substring(0,t.length-u),n=this.diff_compute_(n,t,e,r),i&&n.unshift([0,i]),f&&n.push([0,f]),this.diff_cleanupMerge(n),n)};n.prototype.diff_compute_=function(n,t,i,r){if(!n)return[[1,t]];if(!t)return[[-1,n]];var u=n.length>t.length?n:t,f=n.length>t.length?t:n,e=u.indexOf(f);return-1!=e?(i=[[1,u.substring(0,e)],[0,f],[1,u.substring(e+f.length)]],n.length>t.length&&(i[0][0]=i[2][0]=-1),i):1==f.length?[[-1,n],[1,t]]:(u=this.diff_halfMatch_(n,t))?(f=u[0],n=u[1],e=u[2],t=u[3],u=u[4],f=this.diff_main(f,e,i,r),i=this.diff_main(n,t,i,r),f.concat([[0,u]],i)):i&&100<n.length&&100<t.length?this.diff_lineMode_(n,t,r):this.diff_bisect_(n,t,r)};n.prototype.diff_lineMode_=function(n,t,i){var r=this.diff_linesToChars_(n,t);n=r.chars1;t=r.chars2;r=r.lineArray;n=this.diff_main(n,t,!1,i);this.diff_charsToLines_(n,r);this.diff_cleanupSemantic(n);n.push([0,""]);for(var u=r=t=0,f="",e="";t<n.length;){switch(n[t][0]){case 1:u++;e+=n[t][1];break;case-1:r++;f+=n[t][1];break;case 0:if(1<=r&&1<=u){for(n.splice(t-r-u,r+u),t=t-r-u,r=this.diff_main(f,e,!1,i),u=r.length-1;0<=u;u--)n.splice(t,0,r[u]);t+=r.length}r=u=0;e=f=""}t++}return n.pop(),n};n.prototype.diff_bisect_=function(n,t,i){for(var f,r,u,a,e,s=n.length,v=t.length,w=Math.ceil((s+v)/2),y=w,p=2*w,h=Array(p),c=Array(p),l=0;l<p;l++)h[l]=-1,c[l]=-1;h[y+1]=0;c[y+1]=0;for(var l=s-v,b=0!=l%2,k=0,d=0,g=0,nt=0,o=0;o<w&&!((new Date).getTime()>i);o++){for(f=-o+k;f<=o-d;f+=2){for(r=y+f,u=f==-o||f!=o&&h[r-1]<h[r+1]?h[r+1]:h[r-1]+1,a=u-f;u<s&&a<v&&n.charAt(u)==t.charAt(a);)u++,a++;if(h[r]=u,u>s)d+=2;else if(a>v)k+=2;else if(b&&(r=y+l-f,0<=r&&r<p&&-1!=c[r])&&(e=s-c[r],u>=e))return this.diff_bisectSplit_(n,t,u,a,i)}for(f=-o+g;f<=o-nt;f+=2){for(r=y+f,e=f==-o||f!=o&&c[r-1]<c[r+1]?c[r+1]:c[r-1]+1,u=e-f;e<s&&u<v&&n.charAt(s-e-1)==t.charAt(v-u-1);)e++,u++;if(c[r]=e,e>s)nt+=2;else if(u>v)g+=2;else if(!b&&(r=y+l-f,0<=r&&r<p&&-1!=h[r]&&(u=h[r],a=y+u-r,e=s-e,u>=e)))return this.diff_bisectSplit_(n,t,u,a,i)}}return[[-1,n],[1,t]]};n.prototype.diff_bisectSplit_=function(n,t,i,r,u){var f=n.substring(0,i),e=t.substring(0,r);return n=n.substring(i),t=t.substring(r),f=this.diff_main(f,e,!1,u),u=this.diff_main(n,t,!1,u),f.concat(u)};n.prototype.diff_linesToChars_=function(n,t){function u(n){for(var u,e="",f=0,t=-1,o=r.length;t<n.length-1;)t=n.indexOf("\n",f),-1==t&&(t=n.length-1),u=n.substring(f,t+1),f=t+1,(i.hasOwnProperty?i.hasOwnProperty(u):void 0!==i[u])?e+=String.fromCharCode(i[u]):(e+=String.fromCharCode(o),i[u]=o,r[o++]=u);return e}var r=[],i={},f,e;return r[0]="",f=u(n),e=u(t),{chars1:f,chars2:e,lineArray:r}};n.prototype.diff_charsToLines_=function(n,t){for(var i=0;i<n.length;i++){for(var u=n[i][1],f=[],r=0;r<u.length;r++)f[r]=t[u.charCodeAt(r)];n[i][1]=f.join("")}};n.prototype.diff_commonPrefix=function(n,t){if(!n||!t||n.charAt(0)!=t.charAt(0))return 0;for(var r=0,u=Math.min(n.length,t.length),i=u,f=0;r<i;)n.substring(f,i)==t.substring(f,i)?f=r=i:u=i,i=Math.floor((u-r)/2+r);return i};n.prototype.diff_commonSuffix=function(n,t){if(!n||!t||n.charAt(n.length-1)!=t.charAt(t.length-1))return 0;for(var r=0,u=Math.min(n.length,t.length),i=u,f=0;r<i;)n.substring(n.length-i,n.length-f)==t.substring(t.length-i,t.length-f)?f=r=i:u=i,i=Math.floor((u-r)/2+r);return i};n.prototype.diff_commonOverlap_=function(n,t){var i=n.length,r=t.length,u,f;if(0==i||0==r)return 0;if(i>r?n=n.substring(i-r):i<r&&(t=t.substring(0,i)),i=Math.min(i,r),n==t)return i;for(r=0,u=1;;){if(f=n.substring(i-u),f=t.indexOf(f),-1==f)return r;u+=f;(0==f||n.substring(i-u)==t.substring(0,u))&&(r=u,u++)}};n.prototype.diff_halfMatch_=function(n,t){function o(n,t,i){for(var u,f,a=n.substring(i,i+Math.floor(n.length/4)),r=-1,e="",o,h,c,l;-1!=(r=t.indexOf(a,r+1));)u=s.diff_commonPrefix(n.substring(i),t.substring(r)),f=s.diff_commonSuffix(n.substring(0,i),t.substring(0,r)),e.length<f+u&&(e=t.substring(r-f,r)+t.substring(r,r+u),o=n.substring(0,i-f),h=n.substring(i+u),c=t.substring(0,r-f),l=t.substring(r+u));return 2*e.length>=n.length?[o,h,c,l,e]:null}var i,f,e;if(0>=this.Diff_Timeout||(i=n.length>t.length?n:t,f=n.length>t.length?t:n,4>i.length||2*f.length<i.length))return null;var s=this,u=o(i,f,Math.ceil(i.length/4)),i=o(i,f,Math.ceil(i.length/2)),r;return!u&&!i?null:(r=i?u?u[4].length>i[4].length?u:i:i:u,n.length>t.length?(u=r[0],i=r[1],f=r[2],e=r[3]):(f=r[0],e=r[1],u=r[2],i=r[3]),r=r[4],[u,i,f,e,r])};n.prototype.diff_cleanupSemantic=function(n){for(var f=!1,r=[],i=0,u=null,t=0,s=0,h=0,e=0,o=0;t<n.length;)0==n[t][0]?(r[i++]=t,s=e,h=o,o=e=0,u=n[t][1]):(1==n[t][0]?e+=n[t][1].length:o+=n[t][1].length,u&&u.length<=Math.max(s,h)&&u.length<=Math.max(e,o)&&(n.splice(r[i-1],0,[-1,u]),n[r[i-1]+1][0]=1,i--,i--,t=0<i?r[i-1]:-1,o=e=h=s=0,u=null,f=!0)),t++;for(f&&this.diff_cleanupMerge(n),this.diff_cleanupSemanticLossless(n),t=1;t<n.length;)-1==n[t-1][0]&&1==n[t][0]&&(f=n[t-1][1],r=n[t][1],i=this.diff_commonOverlap_(f,r),u=this.diff_commonOverlap_(r,f),i>=u?(i>=f.length/2||i>=r.length/2)&&(n.splice(t,0,[0,r.substring(0,i)]),n[t-1][1]=f.substring(0,f.length-i),n[t+1][1]=r.substring(i),t++):(u>=f.length/2||u>=r.length/2)&&(n.splice(t,0,[0,f.substring(0,u)]),n[t-1][0]=1,n[t-1][1]=r.substring(0,r.length-u),n[t+1][0]=-1,n[t+1][1]=f.substring(u),t++),t++),t++};n.prototype.diff_cleanupSemanticLossless=function(t){function s(t,i){if(!t||!i)return 6;var r=t.charAt(t.length-1),u=i.charAt(0),f=r.match(n.nonAlphaNumericRegex_),s=u.match(n.nonAlphaNumericRegex_),e=f&&r.match(n.whitespaceRegex_),o=s&&u.match(n.whitespaceRegex_),r=e&&r.match(n.linebreakRegex_),u=o&&u.match(n.linebreakRegex_),h=r&&t.match(n.blanklineEndRegex_),c=u&&i.match(n.blanklineStartRegex_);return h||c?5:r||u?4:f&&!e&&o?3:e||o?2:f||s?1:0}for(var i=1;i<t.length-1;){if(0==t[i-1][0]&&0==t[i+1][0]){var u=t[i-1][1],r=t[i][1],f=t[i+1][1],e=this.diff_commonSuffix(u,r);if(e)var o=r.substring(r.length-e),u=u.substring(0,u.length-e),r=o+r.substring(0,r.length-e),f=o+f;for(var e=u,o=r,h=f,c=s(u,r)+s(r,f);r.charAt(0)===f.charAt(0);){var u=u+r.charAt(0),r=r.substring(1)+f.charAt(0),f=f.substring(1),l=s(u,r)+s(r,f);l>=c&&(c=l,e=u,o=r,h=f)}t[i-1][1]!=e&&(e?t[i-1][1]=e:(t.splice(i-1,1),i--),t[i][1]=o,h?t[i+1][1]=h:(t.splice(i+1,1),i--))}i++}};n.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;n.whitespaceRegex_=/\s/;n.linebreakRegex_=/[\r\n]/;n.blanklineEndRegex_=/\n\r?\n$/;n.blanklineStartRegex_=/^\r?\n\r?\n/;n.prototype.diff_cleanupEfficiency=function(n){for(var h=!1,e=[],t=0,f=null,i=0,o=!1,s=!1,r=!1,u=!1;i<n.length;)0==n[i][0]?(n[i][1].length<this.Diff_EditCost&&(r||u)?(e[t++]=i,o=r,s=u,f=n[i][1]):(t=0,f=null),r=u=!1):(-1==n[i][0]?u=!0:r=!0,f&&(o&&s&&r&&u||f.length<this.Diff_EditCost/2&&3==o+s+r+u))&&(n.splice(e[t-1],0,[-1,f]),n[e[t-1]+1][0]=1,t--,f=null,o&&s?(r=u=!0,t=0):(t--,i=0<t?e[t-1]:-1,r=u=!1),h=!0),i++;h&&this.diff_cleanupMerge(n)};n.prototype.diff_cleanupMerge=function(n){n.push([0,""]);for(var t=0,i=0,r=0,f="",u="",e;t<n.length;)switch(n[t][0]){case 1:r++;u+=n[t][1];t++;break;case-1:i++;f+=n[t][1];t++;break;case 0:1<i+r?(0!==i&&0!==r&&(e=this.diff_commonPrefix(u,f),0!==e&&(0<t-i-r&&0==n[t-i-r-1][0]?n[t-i-r-1][1]+=u.substring(0,e):(n.splice(0,0,[0,u.substring(0,e)]),t++),u=u.substring(e),f=f.substring(e)),e=this.diff_commonSuffix(u,f),0!==e&&(n[t][1]=u.substring(u.length-e)+n[t][1],u=u.substring(0,u.length-e),f=f.substring(0,f.length-e))),0===i?n.splice(t-r,i+r,[1,u]):0===r?n.splice(t-i,i+r,[-1,f]):n.splice(t-i-r,i+r,[-1,f],[1,u]),t=t-i-r+(i?1:0)+(r?1:0)+1):0!==t&&0==n[t-1][0]?(n[t-1][1]+=n[t][1],n.splice(t,1)):t++;i=r=0;u=f=""}for(""===n[n.length-1][1]&&n.pop(),i=!1,t=1;t<n.length-1;)0==n[t-1][0]&&0==n[t+1][0]&&(n[t][1].substring(n[t][1].length-n[t-1][1].length)==n[t-1][1]?(n[t][1]=n[t-1][1]+n[t][1].substring(0,n[t][1].length-n[t-1][1].length),n[t+1][1]=n[t-1][1]+n[t+1][1],n.splice(t-1,1),i=!0):n[t][1].substring(0,n[t+1][1].length)==n[t+1][1]&&(n[t-1][1]+=n[t+1][1],n[t][1]=n[t][1].substring(n[t+1][1].length)+n[t+1][1],n.splice(t+1,1),i=!0)),t++;i&&this.diff_cleanupMerge(n)};n.prototype.diff_xIndex=function(n,t){for(var r=0,f=0,e=0,u=0,i=0;i<n.length;i++){if(1!==n[i][0]&&(r+=n[i][1].length),-1!==n[i][0]&&(f+=n[i][1].length),r>t)break;e=r;u=f}return n.length!=i&&-1===n[i][0]?u:u+(t-e)};n.prototype.diff_prettyHtml=function(n){for(var r=[],u=/&/g,f=/</g,e=/>/g,o=/\n/g,t=0;t<n.length;t++){var s=n[t][0],i=n[t][1],i=i.replace(u,"&amp;").replace(f,"&lt;").replace(e,"&gt;").replace(o,"&para;<br>");switch(s){case 1:r[t]='<ins style="background:#e6ffe6;">'+i+"<\/ins>";break;case-1:r[t]='<del style="background:#ffe6e6;">'+i+"<\/del>";break;case 0:r[t]="<span>"+i+"<\/span>"}}return r.join("")};n.prototype.diff_text1=function(n){for(var i=[],t=0;t<n.length;t++)1!==n[t][0]&&(i[t]=n[t][1]);return i.join("")};n.prototype.diff_text2=function(n){for(var i=[],t=0;t<n.length;t++)-1!==n[t][0]&&(i[t]=n[t][1]);return i.join("")};n.prototype.diff_levenshtein=function(n){for(var e,u,f=0,t=0,i=0,r=0;r<n.length;r++){e=n[r][0];u=n[r][1];switch(e){case 1:t+=u.length;break;case-1:i+=u.length;break;case 0:f+=Math.max(t,i);i=t=0}}return f+Math.max(t,i)};n.prototype.diff_toDelta=function(n){for(var i=[],t=0;t<n.length;t++)switch(n[t][0]){case 1:i[t]="+"+encodeURI(n[t][1]);break;case-1:i[t]="-"+n[t][1].length;break;case 0:i[t]="="+n[t][1].length}return i.join("\t").replace(/%20/g," ")};n.prototype.diff_fromDelta=function(n,t){for(var i,e,o=[],s=0,f=0,u=t.split(/\t/g),r=0;r<u.length;r++){i=u[r].substring(1);switch(u[r].charAt(0)){case"+":try{o[s++]=[1,decodeURI(i)]}catch(h){throw Error("Illegal escape in diff_fromDelta: "+i);}break;case"-":case"=":if(e=parseInt(i,10),isNaN(e)||0>e)throw Error("Invalid number in diff_fromDelta: "+i);i=n.substring(f,f+=e);o[s++]="="==u[r].charAt(0)?[0,i]:[-1,i];break;default:if(u[r])throw Error("Invalid diff operation in diff_fromDelta: "+u[r]);}}if(f!=n.length)throw Error("Delta length ("+f+") does not equal source text length ("+n.length+").");return o};n.prototype.match_main=function(n,t,i){if(null==n||null==t||null==i)throw Error("Null input. (match_main)");return i=Math.max(0,Math.min(i,n.length)),n==t?0:n.length?n.substring(i,i+t.length)==t?i:this.match_bitap_(n,t,i):-1};n.prototype.match_bitap_=function(n,t,i){function c(n,r){var u=n/t.length,f=Math.abs(i-r);return v.Match_Distance?u+f/v.Match_Distance:f?1:u}var u,h;if(t.length>this.Match_MaxBits)throw Error("Pattern too long for this browser.");var y=this.match_alphabet_(t),v=this,e=this.Match_Threshold,f=n.indexOf(t,i);-1!=f&&(e=Math.min(c(0,f),e),f=n.lastIndexOf(t,i+t.length),-1!=f&&(e=Math.min(c(0,f),e)));for(var p=1<<t.length-1,f=-1,o,r,l=t.length+n.length,a,s=0;s<t.length;s++){for(o=0,r=l;o<r;)c(s,i+r)<=e?o=r:l=r,r=Math.floor((l-o)/2+o);for(l=r,o=Math.max(1,i-r+1),u=Math.min(i+r,n.length)+t.length,r=Array(u+2),r[u+1]=(1<<s)-1;u>=o;u--)if(h=y[n.charAt(u-1)],r[u]=0===s?(r[u+1]<<1|1)&h:(r[u+1]<<1|1)&h|(a[u+1]|a[u])<<1|1|a[u+1],r[u]&p&&(h=c(s,u-1),h<=e))if(e=h,f=u-1,f>i)o=Math.max(1,2*i-f);else break;if(c(s+1,i)>e)break;a=r}return f};n.prototype.match_alphabet_=function(n){for(var i={},t=0;t<n.length;t++)i[n.charAt(t)]=0;for(t=0;t<n.length;t++)i[n.charAt(t)]|=1<<n.length-t-1;return i};n.prototype.patch_addContext_=function(n,t){if(0!=t.length){for(var i=t.substring(n.start2,n.start2+n.length1),r=0;t.indexOf(i)!=t.lastIndexOf(i)&&i.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)r+=this.Patch_Margin,i=t.substring(n.start2-r,n.start2+n.length1+r);r+=this.Patch_Margin;(i=t.substring(n.start2-r,n.start2))&&n.diffs.unshift([0,i]);(r=t.substring(n.start2+n.length1,n.start2+n.length1+r))&&n.diffs.push([0,r]);n.start1-=i.length;n.start2-=i.length;n.length1+=i.length+r.length;n.length2+=i.length+r.length}};n.prototype.patch_make=function(t,i,r){var u,h,f;if("string"==typeof t&&"string"==typeof i&&"undefined"==typeof r)u=t,i=this.diff_main(u,i,!0),2<i.length&&(this.diff_cleanupSemantic(i),this.diff_cleanupEfficiency(i));else if(t&&"object"==typeof t&&"undefined"==typeof i&&"undefined"==typeof r)i=t,u=this.diff_text1(i);else if("string"==typeof t&&i&&"object"==typeof i&&"undefined"==typeof r)u=t;else if("string"==typeof t&&"string"==typeof i&&r&&"object"==typeof r)u=t,i=r;else throw Error("Unknown call format to patch_make.");if(0===i.length)return[];r=[];t=new n.patch_obj;for(var e=0,c=0,s=0,l=u,o=0;o<i.length;o++){h=i[o][0];f=i[o][1];e||0===h||(t.start1=c,t.start2=s);switch(h){case 1:t.diffs[e++]=i[o];t.length2+=f.length;u=u.substring(0,s)+f+u.substring(s);break;case-1:t.length1+=f.length;t.diffs[e++]=i[o];u=u.substring(0,s)+u.substring(s+f.length);break;case 0:f.length<=2*this.Patch_Margin&&e&&i.length!=o+1?(t.diffs[e++]=i[o],t.length1+=f.length,t.length2+=f.length):f.length>=2*this.Patch_Margin&&e&&(this.patch_addContext_(t,l),r.push(t),t=new n.patch_obj,e=0,l=u,c=s)}1!==h&&(c+=f.length);-1!==h&&(s+=f.length)}return e&&(this.patch_addContext_(t,l),r.push(t)),r};n.prototype.patch_deepCopy=function(t){for(var r,i,f,e=[],u=0;u<t.length;u++){for(r=t[u],i=new n.patch_obj,i.diffs=[],f=0;f<r.diffs.length;f++)i.diffs[f]=r.diffs[f].slice();i.start1=r.start1;i.start2=r.start2;i.length1=r.length1;i.length2=r.length2;e[u]=i}return e};n.prototype.patch_apply=function(n,t){var s,i,c,e,o;if(0==n.length)return[t,[]];n=this.patch_deepCopy(n);s=this.patch_addPadding(n);t=s+t+s;this.patch_splitMax(n);for(var l=0,h=[],u=0;u<n.length;u++){var f=n[u].start2+l,i=this.diff_text1(n[u].diffs),r,e=-1;if(i.length>this.Match_MaxBits?(r=this.match_main(t,i.substring(0,this.Match_MaxBits),f),-1!=r&&(e=this.match_main(t,i.substring(i.length-this.Match_MaxBits),f+i.length-this.Match_MaxBits),-1==e||r>=e))&&(r=-1):r=this.match_main(t,i,f),-1==r)h[u]=!1,l-=n[u].length2-n[u].length1;else if(h[u]=!0,l=r-f,f=-1==e?t.substring(r,r+i.length):t.substring(r,e+this.Match_MaxBits),i==f)t=t.substring(0,r)+this.diff_text2(n[u].diffs)+t.substring(r+i.length);else if(f=this.diff_main(i,f,!1),i.length>this.Match_MaxBits&&this.diff_levenshtein(f)/i.length>this.Patch_DeleteThreshold)h[u]=!1;else for(this.diff_cleanupSemanticLossless(f),i=0,e=0;e<n[u].diffs.length;e++)o=n[u].diffs[e],0!==o[0]&&(c=this.diff_xIndex(f,i)),1===o[0]?t=t.substring(0,r+c)+o[1]+t.substring(r+c):-1===o[0]&&(t=t.substring(0,r+c)+t.substring(r+this.diff_xIndex(f,i+o[1].length))),-1!==o[0]&&(i+=o[1].length)}return t=t.substring(s.length,t.length-s.length),[t,h]};n.prototype.patch_addPadding=function(n){for(var i,u,r=this.Patch_Margin,f="",t=1;t<=r;t++)f+=String.fromCharCode(t);for(t=0;t<n.length;t++)n[t].start1+=r,n[t].start2+=r;return t=n[0],i=t.diffs,0==i.length||0!=i[0][0]?(i.unshift([0,f]),t.start1-=r,t.start2-=r,t.length1+=r,t.length2+=r):r>i[0][1].length&&(u=r-i[0][1].length,i[0][1]=f.substring(i[0][1].length)+i[0][1],t.start1-=u,t.start2-=u,t.length1+=u,t.length2+=u),t=n[n.length-1],i=t.diffs,0==i.length||0!=i[i.length-1][0]?(i.push([0,f]),t.length1+=r,t.length2+=r):r>i[i.length-1][1].length&&(u=r-i[i.length-1][1].length,i[i.length-1][1]+=f.substring(0,u),t.length1+=u,t.length2+=u),f};n.prototype.patch_splitMax=function(t){for(var f,i,s,u,r,o=this.Match_MaxBits,e=0;e<t.length;e++)if(!(t[e].length1<=o)){f=t[e];t.splice(e--,1);for(var h=f.start1,c=f.start2,u="";0!==f.diffs.length;){for(i=new n.patch_obj,s=!0,i.start1=h-u.length,i.start2=c-u.length,""!==u&&(i.length1=i.length2=u.length,i.diffs.push([0,u]));0!==f.diffs.length&&i.length1<o-this.Patch_Margin;)u=f.diffs[0][0],r=f.diffs[0][1],1===u?(i.length2+=r.length,c+=r.length,i.diffs.push(f.diffs.shift()),s=!1):-1===u&&1==i.diffs.length&&0==i.diffs[0][0]&&r.length>2*o?(i.length1+=r.length,h+=r.length,s=!1,i.diffs.push([u,r]),f.diffs.shift()):(r=r.substring(0,o-i.length1-this.Patch_Margin),i.length1+=r.length,h+=r.length,0===u?(i.length2+=r.length,c+=r.length):s=!1,i.diffs.push([u,r]),r==f.diffs[0][1]?f.diffs.shift():f.diffs[0][1]=f.diffs[0][1].substring(r.length));u=this.diff_text2(i.diffs);u=u.substring(u.length-this.Patch_Margin);r=this.diff_text1(f.diffs).substring(0,this.Patch_Margin);""!==r&&(i.length1+=r.length,i.length2+=r.length,0!==i.diffs.length&&0===i.diffs[i.diffs.length-1][0]?i.diffs[i.diffs.length-1][1]+=r:i.diffs.push([0,r]));s||t.splice(++e,0,i)}}};n.prototype.patch_toText=function(n){for(var i=[],t=0;t<n.length;t++)i[t]=n[t];return i.join("")};n.prototype.patch_fromText=function(t){var e=[],u,o,i,r,f;if(!t)return e;for(t=t.split("\n"),u=0,o=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;u<t.length;){if(i=t[u].match(o),!i)throw Error("Invalid patch string: "+t[u]);for(r=new n.patch_obj,e.push(r),r.start1=parseInt(i[1],10),""===i[2]?(r.start1--,r.length1=1):"0"==i[2]?r.length1=0:(r.start1--,r.length1=parseInt(i[2],10)),r.start2=parseInt(i[3],10),""===i[4]?(r.start2--,r.length2=1):"0"==i[4]?r.length2=0:(r.start2--,r.length2=parseInt(i[4],10)),u++;u<t.length;){i=t[u].charAt(0);try{f=decodeURI(t[u].substring(1))}catch(s){throw Error("Illegal escape in patch_fromText: "+f);}if("-"==i)r.diffs.push([-1,f]);else if("+"==i)r.diffs.push([1,f]);else if(" "==i)r.diffs.push([0,f]);else if("@"==i)break;else if(""!==i)throw Error('Invalid patch mode "'+i+'" in: '+f);u++}}return e};n.patch_obj=function(){this.diffs=[];this.start2=this.start1=null;this.length2=this.length1=0};n.patch_obj.prototype.toString=function(){var t,n,i;for(t=0===this.length1?this.start1+",0":1==this.length1?this.start1+1:this.start1+1+","+this.length1,n=0===this.length2?this.start2+",0":1==this.length2?this.start2+1:this.start2+1+","+this.length2,t=["@@ -"+t+" +"+n+" @@\n"],n=0;n<this.diffs.length;n++){switch(this.diffs[n][0]){case 1:i="+";break;case-1:i="-";break;case 0:i=" "}t[n+1]=i+encodeURI(this.diffs[n][1])+"\n"}return t.join("").replace(/%20/g," ")};this.diff_match_patch=n;this.DIFF_DELETE=-1;this.DIFF_INSERT=1;this.DIFF_EQUAL=0})();!function(n,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=n.document?t(n,!0):function(n){if(!n.document)throw new Error("jQuery requires a window with a document");return t(n)}:t(n)}("undefined"!=typeof window?window:this,function(n,t){function ri(n){var t=n.length,r=i.type(n);return"function"===r||i.isWindow(n)?!1:1===n.nodeType&&t?!0:"array"===r||0===t||"number"==typeof t&&t>0&&t-1 in n}function ui(n,t,r){if(i.isFunction(t))return i.grep(n,function(n,i){return!!t.call(n,i,n)!==r});if(t.nodeType)return i.grep(n,function(n){return n===t!==r});if("string"==typeof t){if(ef.test(t))return i.filter(t,n,r);t=i.filter(t,n)}return i.grep(n,function(n){return ft.call(t,n)>=0!==r})}function ur(n,t){while((n=n[t])&&1!==n.nodeType);return n}function of(n){var t=fi[n]={};return i.each(n.match(c)||[],function(n,i){t[i]=!0}),t}function ht(){u.removeEventListener("DOMContentLoaded",ht,!1);n.removeEventListener("load",ht,!1);i.ready()}function v(){Object.defineProperty(this.cache={},0,{get:function(){return{}}});this.expando=i.expando+v.uid++}function fr(n,t,r){var u;if(void 0===r&&1===n.nodeType)if(u="data-"+t.replace(hf,"-$1").toLowerCase(),r=n.getAttribute(u),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:sf.test(r)?i.parseJSON(r):r}catch(f){}e.set(n,t,r)}else r=void 0;return r}function lt(){return!0}function k(){return!1}function hr(){try{return u.activeElement}catch(n){}}function vr(n,t){return i.nodeName(n,"table")&&i.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?n.getElementsByTagName("tbody")[0]||n.appendChild(n.ownerDocument.createElement("tbody")):n}function bf(n){return n.type=(null!==n.getAttribute("type"))+"/"+n.type,n}function kf(n){var t=pf.exec(n.type);return t?n.type=t[1]:n.removeAttribute("type"),n}function ei(n,t){for(var i=0,u=n.length;u>i;i++)r.set(n[i],"globalEval",!t||r.get(t[i],"globalEval"))}function yr(n,t){var u,c,f,s,h,l,a,o;if(1===t.nodeType){if(r.hasData(n)&&(s=r.access(n),h=r.set(t,s),o=s.events)){delete h.handle;h.events={};for(f in o)for(u=0,c=o[f].length;c>u;u++)i.event.add(t,f,o[f][u])}e.hasData(n)&&(l=e.access(n),a=i.extend({},l),e.set(t,a))}}function o(n,t){var r=n.getElementsByTagName?n.getElementsByTagName(t||"*"):n.querySelectorAll?n.querySelectorAll(t||"*"):[];return void 0===t||t&&i.nodeName(n,t)?i.merge([n],r):r}function df(n,t){var i=t.nodeName.toLowerCase();"input"===i&&er.test(n.type)?t.checked=n.checked:("input"===i||"textarea"===i)&&(t.defaultValue=n.defaultValue)}function pr(t,r){var f,u=i(r.createElement(t)).appendTo(r.body),e=n.getDefaultComputedStyle&&(f=n.getDefaultComputedStyle(u[0]))?f.display:i.css(u[0],"display");return u.detach(),e}function si(n){var r=u,t=oi[n];return t||(t=pr(n,r),"none"!==t&&t||(at=(at||i("<iframe frameborder='0' width='0' height='0'/>")).appendTo(r.documentElement),r=at[0].contentDocument,r.write(),r.close(),t=pr(n,r),at.detach()),oi[n]=t),t}function it(n,t,r){var e,o,s,u,f=n.style;return r=r||vt(n),r&&(u=r.getPropertyValue(t)||r[t]),r&&(""!==u||i.contains(n.ownerDocument,n)||(u=i.style(n,t)),hi.test(u)&&wr.test(t)&&(e=f.width,o=f.minWidth,s=f.maxWidth,f.minWidth=f.maxWidth=f.width=u,u=r.width,f.width=e,f.minWidth=o,f.maxWidth=s)),void 0!==u?u+"":u}function br(n,t){return{get:function(){return n()?void delete this.get:(this.get=t).apply(this,arguments)}}}function gr(n,t){if(t in n)return t;for(var r=t[0].toUpperCase()+t.slice(1),u=t,i=dr.length;i--;)if(t=dr[i]+r,t in n)return t;return u}function nu(n,t,i){var r=ne.exec(t);return r?Math.max(0,r[1]-(i||0))+(r[2]||"px"):t}function tu(n,t,r,u,f){for(var e=r===(u?"border":"content")?4:"width"===t?1:0,o=0;4>e;e+=2)"margin"===r&&(o+=i.css(n,r+p[e],!0,f)),u?("content"===r&&(o-=i.css(n,"padding"+p[e],!0,f)),"margin"!==r&&(o-=i.css(n,"border"+p[e]+"Width",!0,f))):(o+=i.css(n,"padding"+p[e],!0,f),"padding"!==r&&(o+=i.css(n,"border"+p[e]+"Width",!0,f)));return o}function iu(n,t,r){var o=!0,u="width"===t?n.offsetWidth:n.offsetHeight,e=vt(n),s="border-box"===i.css(n,"boxSizing",!1,e);if(0>=u||null==u){if(u=it(n,t,e),(0>u||null==u)&&(u=n.style[t]),hi.test(u))return u;o=s&&(f.boxSizingReliable()||u===n.style[t]);u=parseFloat(u)||0}return u+tu(n,t,r||(s?"border":"content"),o,e)+"px"}function ru(n,t){for(var e,u,s,o=[],f=0,h=n.length;h>f;f++)u=n[f],u.style&&(o[f]=r.get(u,"olddisplay"),e=u.style.display,t?(o[f]||"none"!==e||(u.style.display=""),""===u.style.display&&tt(u)&&(o[f]=r.access(u,"olddisplay",si(u.nodeName)))):(s=tt(u),"none"===e&&s||r.set(u,"olddisplay",s?e:i.css(u,"display"))));for(f=0;h>f;f++)u=n[f],u.style&&(t&&"none"!==u.style.display&&""!==u.style.display||(u.style.display=t?o[f]||"":"none"));return n}function s(n,t,i,r,u){return new s.prototype.init(n,t,i,r,u)}function fu(){return setTimeout(function(){d=void 0}),d=i.now()}function wt(n,t){var r,u=0,i={height:n};for(t=t?1:0;4>u;u+=2-t)r=p[u],i["margin"+r]=i["padding"+r]=n;return t&&(i.opacity=i.width=n),i}function eu(n,t,i){for(var u,f=(rt[t]||[]).concat(rt["*"]),r=0,e=f.length;e>r;r++)if(u=f[r].call(i,t,n))return u}function fe(n,t,u){var f,a,p,v,o,w,h,b,l=this,y={},s=n.style,c=n.nodeType&&tt(n),e=r.get(n,"fxshow");u.queue||(o=i._queueHooks(n,"fx"),null==o.unqueued&&(o.unqueued=0,w=o.empty.fire,o.empty.fire=function(){o.unqueued||w()}),o.unqueued++,l.always(function(){l.always(function(){o.unqueued--;i.queue(n,"fx").length||o.empty.fire()})}));1===n.nodeType&&("height"in t||"width"in t)&&(u.overflow=[s.overflow,s.overflowX,s.overflowY],h=i.css(n,"display"),b="none"===h?r.get(n,"olddisplay")||si(n.nodeName):h,"inline"===b&&"none"===i.css(n,"float")&&(s.display="inline-block"));u.overflow&&(s.overflow="hidden",l.always(function(){s.overflow=u.overflow[0];s.overflowX=u.overflow[1];s.overflowY=u.overflow[2]}));for(f in t)if(a=t[f],re.exec(a)){if(delete t[f],p=p||"toggle"===a,a===(c?"hide":"show")){if("show"!==a||!e||void 0===e[f])continue;c=!0}y[f]=e&&e[f]||i.style(n,f)}else h=void 0;if(i.isEmptyObject(y))"inline"===("none"===h?si(n.nodeName):h)&&(s.display=h);else{e?"hidden"in e&&(c=e.hidden):e=r.access(n,"fxshow",{});p&&(e.hidden=!c);c?i(n).show():l.done(function(){i(n).hide()});l.done(function(){var t;r.remove(n,"fxshow");for(t in y)i.style(n,t,y[t])});for(f in y)v=eu(c?e[f]:0,f,l),f in e||(e[f]=v.start,c&&(v.end=v.start,v.start="width"===f||"height"===f?1:0))}}function ee(n,t){var r,f,e,u,o;for(r in n)if(f=i.camelCase(r),e=t[f],u=n[r],i.isArray(u)&&(e=u[1],u=n[r]=u[0]),r!==f&&(n[f]=u,delete n[r]),o=i.cssHooks[f],o&&"expand"in o){u=o.expand(u);delete n[f];for(r in u)r in n||(n[r]=u[r],t[r]=e)}else t[f]=e}function ou(n,t,r){var h,e,o=0,l=pt.length,f=i.Deferred().always(function(){delete c.elem}),c=function(){if(e)return!1;for(var s=d||fu(),t=Math.max(0,u.startTime+u.duration-s),h=t/u.duration||0,i=1-h,r=0,o=u.tweens.length;o>r;r++)u.tweens[r].run(i);return f.notifyWith(n,[u,i,t]),1>i&&o?t:(f.resolveWith(n,[u]),!1)},u=f.promise({elem:n,props:i.extend({},t),opts:i.extend(!0,{specialEasing:{}},r),originalProperties:t,originalOptions:r,startTime:d||fu(),duration:r.duration,tweens:[],createTween:function(t,r){var f=i.Tween(n,u.opts,t,r,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(f),f},stop:function(t){var i=0,r=t?u.tweens.length:0;if(e)return this;for(e=!0;r>i;i++)u.tweens[i].run(1);return t?f.resolveWith(n,[u,t]):f.rejectWith(n,[u,t]),this}}),s=u.props;for(ee(s,u.opts.specialEasing);l>o;o++)if(h=pt[o].call(u,n,s,u.opts))return h;return i.map(s,eu,u),i.isFunction(u.opts.start)&&u.opts.start.call(n,u),i.fx.timer(i.extend(c,{elem:n,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function pu(n){return function(t,r){"string"!=typeof t&&(r=t,t="*");var u,f=0,e=t.toLowerCase().match(c)||[];if(i.isFunction(r))while(u=e[f++])"+"===u[0]?(u=u.slice(1)||"*",(n[u]=n[u]||[]).unshift(r)):(n[u]=n[u]||[]).push(r)}}function wu(n,t,r,u){function e(s){var h;return f[s]=!0,i.each(n[s]||[],function(n,i){var s=i(t,r,u);return"string"!=typeof s||o||f[s]?o?!(h=s):void 0:(t.dataTypes.unshift(s),e(s),!1)}),h}var f={},o=n===ci;return e(t.dataTypes[0])||!f["*"]&&e("*")}function ai(n,t){var r,u,f=i.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((f[r]?n:u||(u={}))[r]=t[r]);return u&&i.extend(!0,n,u),n}function ae(n,t,i){for(var e,u,f,o,s=n.contents,r=n.dataTypes;"*"===r[0];)r.shift(),void 0===e&&(e=n.mimeType||t.getResponseHeader("Content-Type"));if(e)for(u in s)if(s[u]&&s[u].test(e)){r.unshift(u);break}if(r[0]in i)f=r[0];else{for(u in i){if(!r[0]||n.converters[u+" "+r[0]]){f=u;break}o||(o=u)}f=f||o}if(f)return(f!==r[0]&&r.unshift(f),i[f])}function ve(n,t,i,r){var h,u,f,s,e,o={},c=n.dataTypes.slice();if(c[1])for(f in n.converters)o[f.toLowerCase()]=n.converters[f];for(u=c.shift();u;)if(n.responseFields[u]&&(i[n.responseFields[u]]=t),!e&&r&&n.dataFilter&&(t=n.dataFilter(t,n.dataType)),e=u,u=c.shift())if("*"===u)u=e;else if("*"!==e&&e!==u){if(f=o[e+" "+u]||o["* "+u],!f)for(h in o)if(s=h.split(" "),s[1]===u&&(f=o[e+" "+s[0]]||o["* "+s[0]])){f===!0?f=o[h]:o[h]!==!0&&(u=s[0],c.unshift(s[1]));break}if(f!==!0)if(f&&n.throws)t=f(t);else try{t=f(t)}catch(l){return{state:"parsererror",error:f?l:"No conversion from "+e+" to "+u}}}return{state:"success",data:t}}function vi(n,t,r,u){var f;if(i.isArray(t))i.each(t,function(t,i){r||pe.test(n)?u(n,i):vi(n+"["+("object"==typeof i?t:"")+"]",i,r,u)});else if(r||"object"!==i.type(t))u(n,t);else for(f in t)vi(n+"["+f+"]",t[f],r,u)}function ku(n){return i.isWindow(n)?n:9===n.nodeType&&n.defaultView}var w=[],a=w.slice,bi=w.concat,ti=w.push,ft=w.indexOf,et={},nf=et.toString,ii=et.hasOwnProperty,f={},u=n.document,ki="2.1.3",i=function(n,t){return new i.fn.init(n,t)},tf=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,rf=/^-ms-/,uf=/-([\da-z])/gi,ff=function(n,t){return t.toUpperCase()},y,ot,nr,tr,ir,rr,c,fi,st,l,b,at,oi,oe,su,g,hu,bt,cu,kt,dt,yi,ni,pi,wi,du,gu;i.fn=i.prototype={jquery:ki,constructor:i,selector:"",length:0,toArray:function(){return a.call(this)},get:function(n){return null!=n?0>n?this[n+this.length]:this[n]:a.call(this)},pushStack:function(n){var t=i.merge(this.constructor(),n);return t.prevObject=this,t.context=this.context,t},each:function(n,t){return i.each(this,n,t)},map:function(n){return this.pushStack(i.map(this,function(t,i){return n.call(t,i,t)}))},slice:function(){return this.pushStack(a.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(n){var i=this.length,t=+n+(0>n?i:0);return this.pushStack(t>=0&&i>t?[this[t]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:ti,sort:w.sort,splice:w.splice};i.extend=i.fn.extend=function(){var e,f,r,t,o,s,n=arguments[0]||{},u=1,c=arguments.length,h=!1;for("boolean"==typeof n&&(h=n,n=arguments[u]||{},u++),"object"==typeof n||i.isFunction(n)||(n={}),u===c&&(n=this,u--);c>u;u++)if(null!=(e=arguments[u]))for(f in e)r=n[f],t=e[f],n!==t&&(h&&t&&(i.isPlainObject(t)||(o=i.isArray(t)))?(o?(o=!1,s=r&&i.isArray(r)?r:[]):s=r&&i.isPlainObject(r)?r:{},n[f]=i.extend(h,s,t)):void 0!==t&&(n[f]=t));return n};i.extend({expando:"jQuery"+(ki+Math.random()).replace(/\D/g,""),isReady:!0,error:function(n){throw new Error(n);},noop:function(){},isFunction:function(n){return"function"===i.type(n)},isArray:Array.isArray,isWindow:function(n){return null!=n&&n===n.window},isNumeric:function(n){return!i.isArray(n)&&n-parseFloat(n)+1>=0},isPlainObject:function(n){return"object"!==i.type(n)||n.nodeType||i.isWindow(n)?!1:n.constructor&&!ii.call(n.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(n){var t;for(t in n)return!1;return!0},type:function(n){return null==n?n+"":"object"==typeof n||"function"==typeof n?et[nf.call(n)]||"object":typeof n},globalEval:function(n){var t,r=eval;n=i.trim(n);n&&(1===n.indexOf("use strict")?(t=u.createElement("script"),t.text=n,u.head.appendChild(t).parentNode.removeChild(t)):r(n))},camelCase:function(n){return n.replace(rf,"ms-").replace(uf,ff)},nodeName:function(n,t){return n.nodeName&&n.nodeName.toLowerCase()===t.toLowerCase()},each:function(n,t,i){var u,r=0,f=n.length,e=ri(n);if(i){if(e){for(;f>r;r++)if(u=t.apply(n[r],i),u===!1)break}else for(r in n)if(u=t.apply(n[r],i),u===!1)break}else if(e){for(;f>r;r++)if(u=t.call(n[r],r,n[r]),u===!1)break}else for(r in n)if(u=t.call(n[r],r,n[r]),u===!1)break;return n},trim:function(n){return null==n?"":(n+"").replace(tf,"")},makeArray:function(n,t){var r=t||[];return null!=n&&(ri(Object(n))?i.merge(r,"string"==typeof n?[n]:n):ti.call(r,n)),r},inArray:function(n,t,i){return null==t?-1:ft.call(t,n,i)},merge:function(n,t){for(var u=+t.length,i=0,r=n.length;u>i;i++)n[r++]=t[i];return n.length=r,n},grep:function(n,t,i){for(var u,f=[],r=0,e=n.length,o=!i;e>r;r++)u=!t(n[r],r),u!==o&&f.push(n[r]);return f},map:function(n,t,i){var u,r=0,e=n.length,o=ri(n),f=[];if(o)for(;e>r;r++)u=t(n[r],r,i),null!=u&&f.push(u);else for(r in n)u=t(n[r],r,i),null!=u&&f.push(u);return bi.apply([],f)},guid:1,proxy:function(n,t){var u,f,r;return"string"==typeof t&&(u=n[t],t=n,n=u),i.isFunction(n)?(f=a.call(arguments,2),r=function(){return n.apply(t||this,f.concat(a.call(arguments)))},r.guid=n.guid=n.guid||i.guid++,r):void 0},now:Date.now,support:f});i.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(n,t){et["[object "+t+"]"]=t.toLowerCase()});y=function(n){function r(n,t,i,r){var p,s,a,c,w,y,d,v,nt,g;if((t?t.ownerDocument||t:h)!==o&&k(t),t=t||o,i=i||[],c=t.nodeType,"string"!=typeof n||!n||1!==c&&9!==c&&11!==c)return i;if(!r&&l){if(11!==c&&(p=hr.exec(n)))if(a=p[1]){if(9===c){if(s=t.getElementById(a),!s||!s.parentNode)return i;if(s.id===a)return i.push(s),i}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(a))&&et(t,s)&&s.id===a)return i.push(s),i}else{if(p[2])return b.apply(i,t.getElementsByTagName(n)),i;if((a=p[3])&&u.getElementsByClassName)return b.apply(i,t.getElementsByClassName(a)),i}if(u.qsa&&(!e||!e.test(n))){if(v=d=f,nt=t,g=1!==c&&n,1===c&&"object"!==t.nodeName.toLowerCase()){for(y=ft(n),(d=t.getAttribute("id"))?v=d.replace(cr,"\\$&"):t.setAttribute("id",v),v="[id='"+v+"'] ",w=y.length;w--;)y[w]=v+vt(y[w]);nt=dt.test(n)&&ti(t.parentNode)||t;g=y.join(",")}if(g)try{return b.apply(i,nt.querySelectorAll(g)),i}catch(tt){}finally{d||t.removeAttribute("id")}}}return oi(n.replace(lt,"$1"),t,i,r)}function gt(){function n(r,u){return i.push(r+" ")>t.cacheLength&&delete n[i.shift()],n[r+" "]=u}var i=[];return n}function c(n){return n[f]=!0,n}function v(n){var t=o.createElement("div");try{return!!n(t)}catch(i){return!1}finally{t.parentNode&&t.parentNode.removeChild(t);t=null}}function ni(n,i){for(var u=n.split("|"),r=n.length;r--;)t.attrHandle[u[r]]=i}function wi(n,t){var i=t&&n,r=i&&1===n.nodeType&&1===t.nodeType&&(~t.sourceIndex||li)-(~n.sourceIndex||li);if(r)return r;if(i)while(i=i.nextSibling)if(i===t)return-1;return n?1:-1}function lr(n){return function(t){var i=t.nodeName.toLowerCase();return"input"===i&&t.type===n}}function ar(n){return function(t){var i=t.nodeName.toLowerCase();return("input"===i||"button"===i)&&t.type===n}}function tt(n){return c(function(t){return t=+t,c(function(i,r){for(var u,f=n([],i.length,t),e=f.length;e--;)i[u=f[e]]&&(i[u]=!(r[u]=i[u]))})})}function ti(n){return n&&"undefined"!=typeof n.getElementsByTagName&&n}function bi(){}function vt(n){for(var t=0,r=n.length,i="";r>t;t++)i+=n[t].value;return i}function ii(n,t,i){var r=t.dir,u=i&&"parentNode"===r,e=ki++;return t.first?function(t,i,f){while(t=t[r])if(1===t.nodeType||u)return n(t,i,f)}:function(t,i,o){var s,h,c=[a,e];if(o){while(t=t[r])if((1===t.nodeType||u)&&n(t,i,o))return!0}else while(t=t[r])if(1===t.nodeType||u){if(h=t[f]||(t[f]={}),(s=h[r])&&s[0]===a&&s[1]===e)return c[2]=s[2];if(h[r]=c,c[2]=n(t,i,o))return!0}}}function ri(n){return n.length>1?function(t,i,r){for(var u=n.length;u--;)if(!n[u](t,i,r))return!1;return!0}:n[0]}function vr(n,t,i){for(var u=0,f=t.length;f>u;u++)r(n,t[u],i);return i}function yt(n,t,i,r,u){for(var e,o=[],f=0,s=n.length,h=null!=t;s>f;f++)(e=n[f])&&(!i||i(e,r,u))&&(o.push(e),h&&t.push(f));return o}function ui(n,t,i,r,u,e){return r&&!r[f]&&(r=ui(r)),u&&!u[f]&&(u=ui(u,e)),c(function(f,e,o,s){var l,c,a,p=[],y=[],w=e.length,k=f||vr(t||"*",o.nodeType?[o]:o,[]),v=!n||!f&&t?k:yt(k,p,n,o,s),h=i?u||(f?n:w||r)?[]:e:v;if(i&&i(v,h,o,s),r)for(l=yt(h,y),r(l,[],o,s),c=l.length;c--;)(a=l[c])&&(h[y[c]]=!(v[y[c]]=a));if(f){if(u||n){if(u){for(l=[],c=h.length;c--;)(a=h[c])&&l.push(v[c]=a);u(null,h=[],l,s)}for(c=h.length;c--;)(a=h[c])&&(l=u?nt(f,a):p[c])>-1&&(f[l]=!(e[l]=a))}}else h=yt(h===e?h.splice(w,h.length):h),u?u(null,e,h,s):b.apply(e,h)})}function fi(n){for(var o,u,r,s=n.length,h=t.relative[n[0].type],c=h||t.relative[" "],i=h?1:0,l=ii(function(n){return n===o},c,!0),a=ii(function(n){return nt(o,n)>-1},c,!0),e=[function(n,t,i){var r=!h&&(i||t!==ht)||((o=t).nodeType?l(n,t,i):a(n,t,i));return o=null,r}];s>i;i++)if(u=t.relative[n[i].type])e=[ii(ri(e),u)];else{if(u=t.filter[n[i].type].apply(null,n[i].matches),u[f]){for(r=++i;s>r;r++)if(t.relative[n[r].type])break;return ui(i>1&&ri(e),i>1&&vt(n.slice(0,i-1).concat({value:" "===n[i-2].type?"*":""})).replace(lt,"$1"),u,r>i&&fi(n.slice(i,r)),s>r&&fi(n=n.slice(r)),s>r&&vt(n))}e.push(u)}return ri(e)}function yr(n,i){var u=i.length>0,f=n.length>0,e=function(e,s,h,c,l){var y,d,w,k=0,v="0",g=e&&[],p=[],nt=ht,tt=e||f&&t.find.TAG("*",l),it=a+=null==nt?1:Math.random()||.1,rt=tt.length;for(l&&(ht=s!==o&&s);v!==rt&&null!=(y=tt[v]);v++){if(f&&y){for(d=0;w=n[d++];)if(w(y,s,h)){c.push(y);break}l&&(a=it)}u&&((y=!w&&y)&&k--,e&&g.push(y))}if(k+=v,u&&v!==k){for(d=0;w=i[d++];)w(g,p,s,h);if(e){if(k>0)while(v--)g[v]||p[v]||(p[v]=gi.call(c));p=yt(p)}b.apply(c,p);l&&!e&&p.length>0&&k+i.length>1&&r.uniqueSort(c)}return l&&(a=it,ht=nt),g};return u?c(e):e}var it,u,t,st,ei,ft,pt,oi,ht,w,rt,k,o,s,l,e,d,ct,et,f="sizzle"+1*new Date,h=n.document,a=0,ki=0,si=gt(),hi=gt(),ci=gt(),wt=function(n,t){return n===t&&(rt=!0),0},li=-2147483648,di={}.hasOwnProperty,g=[],gi=g.pop,nr=g.push,b=g.push,ai=g.slice,nt=function(n,t){for(var i=0,r=n.length;r>i;i++)if(n[i]===t)return i;return-1},bt="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",i="[\\x20\\t\\r\\n\\f]",ut="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",vi=ut.replace("w","w#"),yi="\\["+i+"*("+ut+")(?:"+i+"*([*^$|!~]?=)"+i+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+vi+"))|)"+i+"*\\]",kt=":("+ut+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+yi+")*)|.*)\\)|)",tr=new RegExp(i+"+","g"),lt=new RegExp("^"+i+"+|((?:^|[^\\\\])(?:\\\\.)*)"+i+"+$","g"),ir=new RegExp("^"+i+"*,"+i+"*"),rr=new RegExp("^"+i+"*([>+~]|"+i+")"+i+"*"),ur=new RegExp("="+i+"*([^\\]'\"]*?)"+i+"*\\]","g"),fr=new RegExp(kt),er=new RegExp("^"+vi+"$"),at={ID:new RegExp("^#("+ut+")"),CLASS:new RegExp("^\\.("+ut+")"),TAG:new RegExp("^("+ut.replace("w","w*")+")"),ATTR:new RegExp("^"+yi),PSEUDO:new RegExp("^"+kt),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+i+"*(even|odd|(([+-]|)(\\d*)n|)"+i+"*(?:([+-]|)"+i+"*(\\d+)|))"+i+"*\\)|)","i"),bool:new RegExp("^(?:"+bt+")$","i"),needsContext:new RegExp("^"+i+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+i+"*((?:-\\d)?\\d*)"+i+"*\\)|)(?=[^-]|$)","i")},or=/^(?:input|select|textarea|button)$/i,sr=/^h\d$/i,ot=/^[^{]+\{\s*\[native \w/,hr=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,dt=/[+~]/,cr=/'|\\/g,y=new RegExp("\\\\([\\da-f]{1,6}"+i+"?|("+i+")|.)","ig"),p=function(n,t,i){var r="0x"+t-65536;return r!==r||i?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},pi=function(){k()};try{b.apply(g=ai.call(h.childNodes),h.childNodes);g[h.childNodes.length].nodeType}catch(pr){b={apply:g.length?function(n,t){nr.apply(n,ai.call(t))}:function(n,t){for(var i=n.length,r=0;n[i++]=t[r++];);n.length=i-1}}}u=r.support={};ei=r.isXML=function(n){var t=n&&(n.ownerDocument||n).documentElement;return t?"HTML"!==t.nodeName:!1};k=r.setDocument=function(n){var a,c,r=n?n.ownerDocument||n:h;return r!==o&&9===r.nodeType&&r.documentElement?(o=r,s=r.documentElement,c=r.defaultView,c&&c!==c.top&&(c.addEventListener?c.addEventListener("unload",pi,!1):c.attachEvent&&c.attachEvent("onunload",pi)),l=!ei(r),u.attributes=v(function(n){return n.className="i",!n.getAttribute("className")}),u.getElementsByTagName=v(function(n){return n.appendChild(r.createComment("")),!n.getElementsByTagName("*").length}),u.getElementsByClassName=ot.test(r.getElementsByClassName),u.getById=v(function(n){return s.appendChild(n).id=f,!r.getElementsByName||!r.getElementsByName(f).length}),u.getById?(t.find.ID=function(n,t){if("undefined"!=typeof t.getElementById&&l){var i=t.getElementById(n);return i&&i.parentNode?[i]:[]}},t.filter.ID=function(n){var t=n.replace(y,p);return function(n){return n.getAttribute("id")===t}}):(delete t.find.ID,t.filter.ID=function(n){var t=n.replace(y,p);return function(n){var i="undefined"!=typeof n.getAttributeNode&&n.getAttributeNode("id");return i&&i.value===t}}),t.find.TAG=u.getElementsByTagName?function(n,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(n):u.qsa?t.querySelectorAll(n):void 0}:function(n,t){var i,r=[],f=0,u=t.getElementsByTagName(n);if("*"===n){while(i=u[f++])1===i.nodeType&&r.push(i);return r}return u},t.find.CLASS=u.getElementsByClassName&&function(n,t){if(l)return t.getElementsByClassName(n)},d=[],e=[],(u.qsa=ot.test(r.querySelectorAll))&&(v(function(n){s.appendChild(n).innerHTML="<a id='"+f+"'><\/a><select id='"+f+"-\f]' msallowcapture=''><option selected=''><\/option><\/select>";n.querySelectorAll("[msallowcapture^='']").length&&e.push("[*^$]="+i+"*(?:''|\"\")");n.querySelectorAll("[selected]").length||e.push("\\["+i+"*(?:value|"+bt+")");n.querySelectorAll("[id~="+f+"-]").length||e.push("~=");n.querySelectorAll(":checked").length||e.push(":checked");n.querySelectorAll("a#"+f+"+*").length||e.push(".#.+[+~]")}),v(function(n){var t=r.createElement("input");t.setAttribute("type","hidden");n.appendChild(t).setAttribute("name","D");n.querySelectorAll("[name=d]").length&&e.push("name"+i+"*[*^$|!~]?=");n.querySelectorAll(":enabled").length||e.push(":enabled",":disabled");n.querySelectorAll("*,:x");e.push(",.*:")})),(u.matchesSelector=ot.test(ct=s.matches||s.webkitMatchesSelector||s.mozMatchesSelector||s.oMatchesSelector||s.msMatchesSelector))&&v(function(n){u.disconnectedMatch=ct.call(n,"div");ct.call(n,"[s!='']:x");d.push("!=",kt)}),e=e.length&&new RegExp(e.join("|")),d=d.length&&new RegExp(d.join("|")),a=ot.test(s.compareDocumentPosition),et=a||ot.test(s.contains)?function(n,t){var r=9===n.nodeType?n.documentElement:n,i=t&&t.parentNode;return n===i||!(!i||1!==i.nodeType||!(r.contains?r.contains(i):n.compareDocumentPosition&&16&n.compareDocumentPosition(i)))}:function(n,t){if(t)while(t=t.parentNode)if(t===n)return!0;return!1},wt=a?function(n,t){if(n===t)return rt=!0,0;var i=!n.compareDocumentPosition-!t.compareDocumentPosition;return i?i:(i=(n.ownerDocument||n)===(t.ownerDocument||t)?n.compareDocumentPosition(t):1,1&i||!u.sortDetached&&t.compareDocumentPosition(n)===i?n===r||n.ownerDocument===h&&et(h,n)?-1:t===r||t.ownerDocument===h&&et(h,t)?1:w?nt(w,n)-nt(w,t):0:4&i?-1:1)}:function(n,t){if(n===t)return rt=!0,0;var i,u=0,o=n.parentNode,s=t.parentNode,f=[n],e=[t];if(!o||!s)return n===r?-1:t===r?1:o?-1:s?1:w?nt(w,n)-nt(w,t):0;if(o===s)return wi(n,t);for(i=n;i=i.parentNode;)f.unshift(i);for(i=t;i=i.parentNode;)e.unshift(i);while(f[u]===e[u])u++;return u?wi(f[u],e[u]):f[u]===h?-1:e[u]===h?1:0},r):o};r.matches=function(n,t){return r(n,null,null,t)};r.matchesSelector=function(n,t){if((n.ownerDocument||n)!==o&&k(n),t=t.replace(ur,"='$1']"),!(!u.matchesSelector||!l||d&&d.test(t)||e&&e.test(t)))try{var i=ct.call(n,t);if(i||u.disconnectedMatch||n.document&&11!==n.document.nodeType)return i}catch(f){}return r(t,o,null,[n]).length>0};r.contains=function(n,t){return(n.ownerDocument||n)!==o&&k(n),et(n,t)};r.attr=function(n,i){(n.ownerDocument||n)!==o&&k(n);var f=t.attrHandle[i.toLowerCase()],r=f&&di.call(t.attrHandle,i.toLowerCase())?f(n,i,!l):void 0;return void 0!==r?r:u.attributes||!l?n.getAttribute(i):(r=n.getAttributeNode(i))&&r.specified?r.value:null};r.error=function(n){throw new Error("Syntax error, unrecognized expression: "+n);};r.uniqueSort=function(n){var r,f=[],t=0,i=0;if(rt=!u.detectDuplicates,w=!u.sortStable&&n.slice(0),n.sort(wt),rt){while(r=n[i++])r===n[i]&&(t=f.push(i));while(t--)n.splice(f[t],1)}return w=null,n};st=r.getText=function(n){var r,i="",u=0,t=n.nodeType;if(t){if(1===t||9===t||11===t){if("string"==typeof n.textContent)return n.textContent;for(n=n.firstChild;n;n=n.nextSibling)i+=st(n)}else if(3===t||4===t)return n.nodeValue}else while(r=n[u++])i+=st(r);return i};t=r.selectors={cacheLength:50,createPseudo:c,match:at,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(n){return n[1]=n[1].replace(y,p),n[3]=(n[3]||n[4]||n[5]||"").replace(y,p),"~="===n[2]&&(n[3]=" "+n[3]+" "),n.slice(0,4)},CHILD:function(n){return n[1]=n[1].toLowerCase(),"nth"===n[1].slice(0,3)?(n[3]||r.error(n[0]),n[4]=+(n[4]?n[5]+(n[6]||1):2*("even"===n[3]||"odd"===n[3])),n[5]=+(n[7]+n[8]||"odd"===n[3])):n[3]&&r.error(n[0]),n},PSEUDO:function(n){var i,t=!n[6]&&n[2];return at.CHILD.test(n[0])?null:(n[3]?n[2]=n[4]||n[5]||"":t&&fr.test(t)&&(i=ft(t,!0))&&(i=t.indexOf(")",t.length-i)-t.length)&&(n[0]=n[0].slice(0,i),n[2]=t.slice(0,i)),n.slice(0,3))}},filter:{TAG:function(n){var t=n.replace(y,p).toLowerCase();return"*"===n?function(){return!0}:function(n){return n.nodeName&&n.nodeName.toLowerCase()===t}},CLASS:function(n){var t=si[n+" "];return t||(t=new RegExp("(^|"+i+")"+n+"("+i+"|$)"))&&si(n,function(n){return t.test("string"==typeof n.className&&n.className||"undefined"!=typeof n.getAttribute&&n.getAttribute("class")||"")})},ATTR:function(n,t,i){return function(u){var f=r.attr(u,n);return null==f?"!="===t:t?(f+="","="===t?f===i:"!="===t?f!==i:"^="===t?i&&0===f.indexOf(i):"*="===t?i&&f.indexOf(i)>-1:"$="===t?i&&f.slice(-i.length)===i:"~="===t?(" "+f.replace(tr," ")+" ").indexOf(i)>-1:"|="===t?f===i||f.slice(0,i.length+1)===i+"-":!1):!0}},CHILD:function(n,t,i,r,u){var s="nth"!==n.slice(0,3),o="last"!==n.slice(-4),e="of-type"===t;return 1===r&&0===u?function(n){return!!n.parentNode}:function(t,i,h){var v,k,c,l,y,w,b=s!==o?"nextSibling":"previousSibling",p=t.parentNode,g=e&&t.nodeName.toLowerCase(),d=!h&&!e;if(p){if(s){while(b){for(c=t;c=c[b];)if(e?c.nodeName.toLowerCase()===g:1===c.nodeType)return!1;w=b="only"===n&&!w&&"nextSibling"}return!0}if(w=[o?p.firstChild:p.lastChild],o&&d){for(k=p[f]||(p[f]={}),v=k[n]||[],y=v[0]===a&&v[1],l=v[0]===a&&v[2],c=y&&p.childNodes[y];c=++y&&c&&c[b]||(l=y=0)||w.pop();)if(1===c.nodeType&&++l&&c===t){k[n]=[a,y,l];break}}else if(d&&(v=(t[f]||(t[f]={}))[n])&&v[0]===a)l=v[1];else while(c=++y&&c&&c[b]||(l=y=0)||w.pop())if((e?c.nodeName.toLowerCase()===g:1===c.nodeType)&&++l&&(d&&((c[f]||(c[f]={}))[n]=[a,l]),c===t))break;return l-=u,l===r||l%r==0&&l/r>=0}}},PSEUDO:function(n,i){var e,u=t.pseudos[n]||t.setFilters[n.toLowerCase()]||r.error("unsupported pseudo: "+n);return u[f]?u(i):u.length>1?(e=[n,n,"",i],t.setFilters.hasOwnProperty(n.toLowerCase())?c(function(n,t){for(var r,f=u(n,i),e=f.length;e--;)r=nt(n,f[e]),n[r]=!(t[r]=f[e])}):function(n){return u(n,0,e)}):u}},pseudos:{not:c(function(n){var t=[],r=[],i=pt(n.replace(lt,"$1"));return i[f]?c(function(n,t,r,u){for(var e,o=i(n,null,u,[]),f=n.length;f--;)(e=o[f])&&(n[f]=!(t[f]=e))}):function(n,u,f){return t[0]=n,i(t,null,f,r),t[0]=null,!r.pop()}}),has:c(function(n){return function(t){return r(n,t).length>0}}),contains:c(function(n){return n=n.replace(y,p),function(t){return(t.textContent||t.innerText||st(t)).indexOf(n)>-1}}),lang:c(function(n){return er.test(n||"")||r.error("unsupported lang: "+n),n=n.replace(y,p).toLowerCase(),function(t){var i;do if(i=l?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return i=i.toLowerCase(),i===n||0===i.indexOf(n+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var i=n.location&&n.location.hash;return i&&i.slice(1)===t.id},root:function(n){return n===s},focus:function(n){return n===o.activeElement&&(!o.hasFocus||o.hasFocus())&&!!(n.type||n.href||~n.tabIndex)},enabled:function(n){return n.disabled===!1},disabled:function(n){return n.disabled===!0},checked:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&!!n.checked||"option"===t&&!!n.selected},selected:function(n){return n.parentNode&&n.parentNode.selectedIndex,n.selected===!0},empty:function(n){for(n=n.firstChild;n;n=n.nextSibling)if(n.nodeType<6)return!1;return!0},parent:function(n){return!t.pseudos.empty(n)},header:function(n){return sr.test(n.nodeName)},input:function(n){return or.test(n.nodeName)},button:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&"button"===n.type||"button"===t},text:function(n){var t;return"input"===n.nodeName.toLowerCase()&&"text"===n.type&&(null==(t=n.getAttribute("type"))||"text"===t.toLowerCase())},first:tt(function(){return[0]}),last:tt(function(n,t){return[t-1]}),eq:tt(function(n,t,i){return[0>i?i+t:i]}),even:tt(function(n,t){for(var i=0;t>i;i+=2)n.push(i);return n}),odd:tt(function(n,t){for(var i=1;t>i;i+=2)n.push(i);return n}),lt:tt(function(n,t,i){for(var r=0>i?i+t:i;--r>=0;)n.push(r);return n}),gt:tt(function(n,t,i){for(var r=0>i?i+t:i;++r<t;)n.push(r);return n})}};t.pseudos.nth=t.pseudos.eq;for(it in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})t.pseudos[it]=lr(it);for(it in{submit:!0,reset:!0})t.pseudos[it]=ar(it);return bi.prototype=t.filters=t.pseudos,t.setFilters=new bi,ft=r.tokenize=function(n,i){var e,f,s,o,u,h,c,l=hi[n+" "];if(l)return i?0:l.slice(0);for(u=n,h=[],c=t.preFilter;u;){(!e||(f=ir.exec(u)))&&(f&&(u=u.slice(f[0].length)||u),h.push(s=[]));e=!1;(f=rr.exec(u))&&(e=f.shift(),s.push({value:e,type:f[0].replace(lt," ")}),u=u.slice(e.length));for(o in t.filter)(f=at[o].exec(u))&&(!c[o]||(f=c[o](f)))&&(e=f.shift(),s.push({value:e,type:o,matches:f}),u=u.slice(e.length));if(!e)break}return i?u.length:u?r.error(n):hi(n,h).slice(0)},pt=r.compile=function(n,t){var r,u=[],e=[],i=ci[n+" "];if(!i){for(t||(t=ft(n)),r=t.length;r--;)i=fi(t[r]),i[f]?u.push(i):e.push(i);i=ci(n,yr(e,u));i.selector=n}return i},oi=r.select=function(n,i,r,f){var s,e,o,a,v,c="function"==typeof n&&n,h=!f&&ft(n=c.selector||n);if(r=r||[],1===h.length){if(e=h[0]=h[0].slice(0),e.length>2&&"ID"===(o=e[0]).type&&u.getById&&9===i.nodeType&&l&&t.relative[e[1].type]){if(i=(t.find.ID(o.matches[0].replace(y,p),i)||[])[0],!i)return r;c&&(i=i.parentNode);n=n.slice(e.shift().value.length)}for(s=at.needsContext.test(n)?0:e.length;s--;){if(o=e[s],t.relative[a=o.type])break;if((v=t.find[a])&&(f=v(o.matches[0].replace(y,p),dt.test(e[0].type)&&ti(i.parentNode)||i))){if(e.splice(s,1),n=f.length&&vt(e),!n)return b.apply(r,f),r;break}}}return(c||pt(n,h))(f,i,!l,r,dt.test(n)&&ti(i.parentNode)||i),r},u.sortStable=f.split("").sort(wt).join("")===f,u.detectDuplicates=!!rt,k(),u.sortDetached=v(function(n){return 1&n.compareDocumentPosition(o.createElement("div"))}),v(function(n){return n.innerHTML="<a href='#'><\/a>","#"===n.firstChild.getAttribute("href")})||ni("type|href|height|width",function(n,t,i){if(!i)return n.getAttribute(t,"type"===t.toLowerCase()?1:2)}),u.attributes&&v(function(n){return n.innerHTML="<input/>",n.firstChild.setAttribute("value",""),""===n.firstChild.getAttribute("value")})||ni("value",function(n,t,i){if(!i&&"input"===n.nodeName.toLowerCase())return n.defaultValue}),v(function(n){return null==n.getAttribute("disabled")})||ni(bt,function(n,t,i){var r;if(!i)return n[t]===!0?t.toLowerCase():(r=n.getAttributeNode(t))&&r.specified?r.value:null}),r}(n);i.find=y;i.expr=y.selectors;i.expr[":"]=i.expr.pseudos;i.unique=y.uniqueSort;i.text=y.getText;i.isXMLDoc=y.isXML;i.contains=y.contains;var di=i.expr.match.needsContext,gi=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ef=/^.[^:#\[\.,]*$/;i.filter=function(n,t,r){var u=t[0];return r&&(n=":not("+n+")"),1===t.length&&1===u.nodeType?i.find.matchesSelector(u,n)?[u]:[]:i.find.matches(n,i.grep(t,function(n){return 1===n.nodeType}))};i.fn.extend({find:function(n){var t,u=this.length,r=[],f=this;if("string"!=typeof n)return this.pushStack(i(n).filter(function(){for(t=0;u>t;t++)if(i.contains(f[t],this))return!0}));for(t=0;u>t;t++)i.find(n,f[t],r);return r=this.pushStack(u>1?i.unique(r):r),r.selector=this.selector?this.selector+" "+n:n,r},filter:function(n){return this.pushStack(ui(this,n||[],!1))},not:function(n){return this.pushStack(ui(this,n||[],!0))},is:function(n){return!!ui(this,"string"==typeof n&&di.test(n)?i(n):n||[],!1).length}});nr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;tr=i.fn.init=function(n,t){var r,f;if(!n)return this;if("string"==typeof n){if(r="<"===n[0]&&">"===n[n.length-1]&&n.length>=3?[null,n,null]:nr.exec(n),!r||!r[1]&&t)return!t||t.jquery?(t||ot).find(n):this.constructor(t).find(n);if(r[1]){if(t=t instanceof i?t[0]:t,i.merge(this,i.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:u,!0)),gi.test(r[1])&&i.isPlainObject(t))for(r in t)i.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return f=u.getElementById(r[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=u,this.selector=n,this}return n.nodeType?(this.context=this[0]=n,this.length=1,this):i.isFunction(n)?"undefined"!=typeof ot.ready?ot.ready(n):n(i):(void 0!==n.selector&&(this.selector=n.selector,this.context=n.context),i.makeArray(n,this))};tr.prototype=i.fn;ot=i(u);ir=/^(?:parents|prev(?:Until|All))/;rr={children:!0,contents:!0,next:!0,prev:!0};i.extend({dir:function(n,t,r){for(var u=[],f=void 0!==r;(n=n[t])&&9!==n.nodeType;)if(1===n.nodeType){if(f&&i(n).is(r))break;u.push(n)}return u},sibling:function(n,t){for(var i=[];n;n=n.nextSibling)1===n.nodeType&&n!==t&&i.push(n);return i}});i.fn.extend({has:function(n){var t=i(n,this),r=t.length;return this.filter(function(){for(var n=0;r>n;n++)if(i.contains(this,t[n]))return!0})},closest:function(n,t){for(var r,f=0,o=this.length,u=[],e=di.test(n)||"string"!=typeof n?i(n,t||this.context):0;o>f;f++)for(r=this[f];r&&r!==t;r=r.parentNode)if(r.nodeType<11&&(e?e.index(r)>-1:1===r.nodeType&&i.find.matchesSelector(r,n))){u.push(r);break}return this.pushStack(u.length>1?i.unique(u):u)},index:function(n){return n?"string"==typeof n?ft.call(i(n),this[0]):ft.call(this,n.jquery?n[0]:n):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(n,t){return this.pushStack(i.unique(i.merge(this.get(),i(n,t))))},addBack:function(n){return this.add(null==n?this.prevObject:this.prevObject.filter(n))}});i.each({parent:function(n){var t=n.parentNode;return t&&11!==t.nodeType?t:null},parents:function(n){return i.dir(n,"parentNode")},parentsUntil:function(n,t,r){return i.dir(n,"parentNode",r)},next:function(n){return ur(n,"nextSibling")},prev:function(n){return ur(n,"previousSibling")},nextAll:function(n){return i.dir(n,"nextSibling")},prevAll:function(n){return i.dir(n,"previousSibling")},nextUntil:function(n,t,r){return i.dir(n,"nextSibling",r)},prevUntil:function(n,t,r){return i.dir(n,"previousSibling",r)},siblings:function(n){return i.sibling((n.parentNode||{}).firstChild,n)},children:function(n){return i.sibling(n.firstChild)},contents:function(n){return n.contentDocument||i.merge([],n.childNodes)}},function(n,t){i.fn[n]=function(r,u){var f=i.map(this,t,r);return"Until"!==n.slice(-5)&&(u=r),u&&"string"==typeof u&&(f=i.filter(u,f)),this.length>1&&(rr[n]||i.unique(f),ir.test(n)&&f.reverse()),this.pushStack(f)}});c=/\S+/g;fi={};i.Callbacks=function(n){n="string"==typeof n?fi[n]||of(n):i.extend({},n);var u,h,o,c,f,e,t=[],r=!n.once&&[],l=function(i){for(u=n.memory&&i,h=!0,e=c||0,c=0,f=t.length,o=!0;t&&f>e;e++)if(t[e].apply(i[0],i[1])===!1&&n.stopOnFalse){u=!1;break}o=!1;t&&(r?r.length&&l(r.shift()):u?t=[]:s.disable())},s={add:function(){if(t){var r=t.length;!function e(r){i.each(r,function(r,u){var f=i.type(u);"function"===f?n.unique&&s.has(u)||t.push(u):u&&u.length&&"string"!==f&&e(u)})}(arguments);o?f=t.length:u&&(c=r,l(u))}return this},remove:function(){return t&&i.each(arguments,function(n,r){for(var u;(u=i.inArray(r,t,u))>-1;)t.splice(u,1),o&&(f>=u&&f--,e>=u&&e--)}),this},has:function(n){return n?i.inArray(n,t)>-1:!(!t||!t.length)},empty:function(){return t=[],f=0,this},disable:function(){return t=r=u=void 0,this},disabled:function(){return!t},lock:function(){return r=void 0,u||s.disable(),this},locked:function(){return!r},fireWith:function(n,i){return!t||h&&!r||(i=i||[],i=[n,i.slice?i.slice():i],o?r.push(i):l(i)),this},fire:function(){return s.fireWith(this,arguments),this},fired:function(){return!!h}};return s};i.extend({Deferred:function(n){var u=[["resolve","done",i.Callbacks("once memory"),"resolved"],["reject","fail",i.Callbacks("once memory"),"rejected"],["notify","progress",i.Callbacks("memory")]],f="pending",r={state:function(){return f},always:function(){return t.done(arguments).fail(arguments),this},then:function(){var n=arguments;return i.Deferred(function(f){i.each(u,function(u,e){var o=i.isFunction(n[u])&&n[u];t[e[1]](function(){var n=o&&o.apply(this,arguments);n&&i.isFunction(n.promise)?n.promise().done(f.resolve).fail(f.reject).progress(f.notify):f[e[0]+"With"](this===r?f.promise():this,o?[n]:arguments)})});n=null}).promise()},promise:function(n){return null!=n?i.extend(n,r):r}},t={};return r.pipe=r.then,i.each(u,function(n,i){var e=i[2],o=i[3];r[i[1]]=e.add;o&&e.add(function(){f=o},u[1^n][2].disable,u[2][2].lock);t[i[0]]=function(){return t[i[0]+"With"](this===t?r:this,arguments),this};t[i[0]+"With"]=e.fireWith}),r.promise(t),n&&n.call(t,t),t},when:function(n){var t=0,u=a.call(arguments),r=u.length,e=1!==r||n&&i.isFunction(n.promise)?r:0,f=1===e?n:i.Deferred(),h=function(n,t,i){return function(r){t[n]=this;i[n]=arguments.length>1?a.call(arguments):r;i===o?f.notifyWith(t,i):--e||f.resolveWith(t,i)}},o,c,s;if(r>1)for(o=new Array(r),c=new Array(r),s=new Array(r);r>t;t++)u[t]&&i.isFunction(u[t].promise)?u[t].promise().done(h(t,s,u)).fail(f.reject).progress(h(t,c,o)):--e;return e||f.resolveWith(s,u),f.promise()}});i.fn.ready=function(n){return i.ready.promise().done(n),this};i.extend({isReady:!1,readyWait:1,holdReady:function(n){n?i.readyWait++:i.ready(!0)},ready:function(n){(n===!0?--i.readyWait:i.isReady)||(i.isReady=!0,n!==!0&&--i.readyWait>0||(st.resolveWith(u,[i]),i.fn.triggerHandler&&(i(u).triggerHandler("ready"),i(u).off("ready"))))}});i.ready.promise=function(t){return st||(st=i.Deferred(),"complete"===u.readyState?setTimeout(i.ready):(u.addEventListener("DOMContentLoaded",ht,!1),n.addEventListener("load",ht,!1))),st.promise(t)};i.ready.promise();l=i.access=function(n,t,r,u,f,e,o){var s=0,c=n.length,h=null==r;if("object"===i.type(r)){f=!0;for(s in r)i.access(n,t,s,r[s],!0,e,o)}else if(void 0!==u&&(f=!0,i.isFunction(u)||(o=!0),h&&(o?(t.call(n,u),t=null):(h=t,t=function(n,t,r){return h.call(i(n),r)})),t))for(;c>s;s++)t(n[s],r,o?u:u.call(n[s],s,t(n[s],r)));return f?n:h?t.call(n):c?t(n[0],r):e};i.acceptData=function(n){return 1===n.nodeType||9===n.nodeType||!+n.nodeType};v.uid=1;v.accepts=i.acceptData;v.prototype={key:function(n){if(!v.accepts(n))return 0;var r={},t=n[this.expando];if(!t){t=v.uid++;try{r[this.expando]={value:t};Object.defineProperties(n,r)}catch(u){r[this.expando]=t;i.extend(n,r)}}return this.cache[t]||(this.cache[t]={}),t},set:function(n,t,r){var f,e=this.key(n),u=this.cache[e];if("string"==typeof t)u[t]=r;else if(i.isEmptyObject(u))i.extend(this.cache[e],t);else for(f in t)u[f]=t[f];return u},get:function(n,t){var i=this.cache[this.key(n)];return void 0===t?i:i[t]},access:function(n,t,r){var u;return void 0===t||t&&"string"==typeof t&&void 0===r?(u=this.get(n,t),void 0!==u?u:this.get(n,i.camelCase(t))):(this.set(n,t,r),void 0!==r?r:t)},remove:function(n,t){var u,r,f,o=this.key(n),e=this.cache[o];if(void 0===t)this.cache[o]={};else for(i.isArray(t)?r=t.concat(t.map(i.camelCase)):(f=i.camelCase(t),(t in e)?r=[t,f]:(r=f,r=(r in e)?[r]:r.match(c)||[])),u=r.length;u--;)delete e[r[u]]},hasData:function(n){return!i.isEmptyObject(this.cache[n[this.expando]]||{})},discard:function(n){n[this.expando]&&delete this.cache[n[this.expando]]}};var r=new v,e=new v,sf=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,hf=/([A-Z])/g;i.extend({hasData:function(n){return e.hasData(n)||r.hasData(n)},data:function(n,t,i){return e.access(n,t,i)},removeData:function(n,t){e.remove(n,t)},_data:function(n,t,i){return r.access(n,t,i)},_removeData:function(n,t){r.remove(n,t)}});i.fn.extend({data:function(n,t){var o,f,s,u=this[0],h=u&&u.attributes;if(void 0===n){if(this.length&&(s=e.get(u),1===u.nodeType&&!r.get(u,"hasDataAttrs"))){for(o=h.length;o--;)h[o]&&(f=h[o].name,0===f.indexOf("data-")&&(f=i.camelCase(f.slice(5)),fr(u,f,s[f])));r.set(u,"hasDataAttrs",!0)}return s}return"object"==typeof n?this.each(function(){e.set(this,n)}):l(this,function(t){var r,f=i.camelCase(n);if(u&&void 0===t){if((r=e.get(u,n),void 0!==r)||(r=e.get(u,f),void 0!==r)||(r=fr(u,f,void 0),void 0!==r))return r}else this.each(function(){var i=e.get(this,f);e.set(this,f,t);-1!==n.indexOf("-")&&void 0!==i&&e.set(this,n,t)})},null,t,arguments.length>1,null,!0)},removeData:function(n){return this.each(function(){e.remove(this,n)})}});i.extend({queue:function(n,t,u){var f;if(n)return(t=(t||"fx")+"queue",f=r.get(n,t),u&&(!f||i.isArray(u)?f=r.access(n,t,i.makeArray(u)):f.push(u)),f||[])},dequeue:function(n,t){t=t||"fx";var r=i.queue(n,t),e=r.length,u=r.shift(),f=i._queueHooks(n,t),o=function(){i.dequeue(n,t)};"inprogress"===u&&(u=r.shift(),e--);u&&("fx"===t&&r.unshift("inprogress"),delete f.stop,u.call(n,o,f));!e&&f&&f.empty.fire()},_queueHooks:function(n,t){var u=t+"queueHooks";return r.get(n,u)||r.access(n,u,{empty:i.Callbacks("once memory").add(function(){r.remove(n,[t+"queue",u])})})}});i.fn.extend({queue:function(n,t){var r=2;return"string"!=typeof n&&(t=n,n="fx",r--),arguments.length<r?i.queue(this[0],n):void 0===t?this:this.each(function(){var r=i.queue(this,n,t);i._queueHooks(this,n);"fx"===n&&"inprogress"!==r[0]&&i.dequeue(this,n)})},dequeue:function(n){return this.each(function(){i.dequeue(this,n)})},clearQueue:function(n){return this.queue(n||"fx",[])},promise:function(n,t){var u,e=1,o=i.Deferred(),f=this,s=this.length,h=function(){--e||o.resolveWith(f,[f])};for("string"!=typeof n&&(t=n,n=void 0),n=n||"fx";s--;)u=r.get(f[s],n+"queueHooks"),u&&u.empty&&(e++,u.empty.add(h));return h(),o.promise(t)}});var ct=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,p=["Top","Right","Bottom","Left"],tt=function(n,t){return n=t||n,"none"===i.css(n,"display")||!i.contains(n.ownerDocument,n)},er=/^(?:checkbox|radio)$/i;!function(){var i=u.createDocumentFragment(),n=i.appendChild(u.createElement("div")),t=u.createElement("input");t.setAttribute("type","radio");t.setAttribute("checked","checked");t.setAttribute("name","t");n.appendChild(t);f.checkClone=n.cloneNode(!0).cloneNode(!0).lastChild.checked;n.innerHTML="<textarea>x<\/textarea>";f.noCloneChecked=!!n.cloneNode(!0).lastChild.defaultValue}();b="undefined";f.focusinBubbles="onfocusin"in n;var cf=/^key/,lf=/^(?:mouse|pointer|contextmenu)|click/,or=/^(?:focusinfocus|focusoutblur)$/,sr=/^([^.]*)(?:\.(.+)|)$/;i.event={global:{},add:function(n,t,u,f,e){var v,y,w,p,k,h,s,l,o,d,g,a=r.get(n);if(a)for(u.handler&&(v=u,u=v.handler,e=v.selector),u.guid||(u.guid=i.guid++),(p=a.events)||(p=a.events={}),(y=a.handle)||(y=a.handle=function(t){if(typeof i!==b&&i.event.triggered!==t.type)return i.event.dispatch.apply(n,arguments)}),t=(t||"").match(c)||[""],k=t.length;k--;)w=sr.exec(t[k])||[],o=g=w[1],d=(w[2]||"").split(".").sort(),o&&(s=i.event.special[o]||{},o=(e?s.delegateType:s.bindType)||o,s=i.event.special[o]||{},h=i.extend({type:o,origType:g,data:f,handler:u,guid:u.guid,selector:e,needsContext:e&&i.expr.match.needsContext.test(e),namespace:d.join(".")},v),(l=p[o])||(l=p[o]=[],l.delegateCount=0,s.setup&&s.setup.call(n,f,d,y)!==!1||n.addEventListener&&n.addEventListener(o,y,!1)),s.add&&(s.add.call(n,h),h.handler.guid||(h.handler.guid=u.guid)),e?l.splice(l.delegateCount++,0,h):l.push(h),i.event.global[o]=!0)},remove:function(n,t,u,f,e){var p,k,h,v,w,s,l,a,o,b,d,y=r.hasData(n)&&r.get(n);if(y&&(v=y.events)){for(t=(t||"").match(c)||[""],w=t.length;w--;)if(h=sr.exec(t[w])||[],o=d=h[1],b=(h[2]||"").split(".").sort(),o){for(l=i.event.special[o]||{},o=(f?l.delegateType:l.bindType)||o,a=v[o]||[],h=h[2]&&new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"),k=p=a.length;p--;)s=a[p],!e&&d!==s.origType||u&&u.guid!==s.guid||h&&!h.test(s.namespace)||f&&f!==s.selector&&("**"!==f||!s.selector)||(a.splice(p,1),s.selector&&a.delegateCount--,l.remove&&l.remove.call(n,s));k&&!a.length&&(l.teardown&&l.teardown.call(n,b,y.handle)!==!1||i.removeEvent(n,o,y.handle),delete v[o])}else for(o in v)i.event.remove(n,o+t[w],u,f,!0);i.isEmptyObject(v)&&(delete y.handle,r.remove(n,"events"))}},trigger:function(t,f,e,o){var w,s,c,b,a,v,l,p=[e||u],h=ii.call(t,"type")?t.type:t,y=ii.call(t,"namespace")?t.namespace.split("."):[];if(s=c=e=e||u,3!==e.nodeType&&8!==e.nodeType&&!or.test(h+i.event.triggered)&&(h.indexOf(".")>=0&&(y=h.split("."),h=y.shift(),y.sort()),a=h.indexOf(":")<0&&"on"+h,t=t[i.expando]?t:new i.Event(h,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=y.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=e),f=null==f?[t]:i.makeArray(f,[t]),l=i.event.special[h]||{},o||!l.trigger||l.trigger.apply(e,f)!==!1)){if(!o&&!l.noBubble&&!i.isWindow(e)){for(b=l.delegateType||h,or.test(b+h)||(s=s.parentNode);s;s=s.parentNode)p.push(s),c=s;c===(e.ownerDocument||u)&&p.push(c.defaultView||c.parentWindow||n)}for(w=0;(s=p[w++])&&!t.isPropagationStopped();)t.type=w>1?b:l.bindType||h,v=(r.get(s,"events")||{})[t.type]&&r.get(s,"handle"),v&&v.apply(s,f),v=a&&s[a],v&&v.apply&&i.acceptData(s)&&(t.result=v.apply(s,f),t.result===!1&&t.preventDefault());return t.type=h,o||t.isDefaultPrevented()||l._default&&l._default.apply(p.pop(),f)!==!1||!i.acceptData(e)||a&&i.isFunction(e[h])&&!i.isWindow(e)&&(c=e[a],c&&(e[a]=null),i.event.triggered=h,e[h](),i.event.triggered=void 0,c&&(e[a]=c)),t.result}},dispatch:function(n){n=i.event.fix(n);var o,s,e,u,t,h=[],c=a.call(arguments),l=(r.get(this,"events")||{})[n.type]||[],f=i.event.special[n.type]||{};if(c[0]=n,n.delegateTarget=this,!f.preDispatch||f.preDispatch.call(this,n)!==!1){for(h=i.event.handlers.call(this,n,l),o=0;(u=h[o++])&&!n.isPropagationStopped();)for(n.currentTarget=u.elem,s=0;(t=u.handlers[s++])&&!n.isImmediatePropagationStopped();)(!n.namespace_re||n.namespace_re.test(t.namespace))&&(n.handleObj=t,n.data=t.data,e=((i.event.special[t.origType]||{}).handle||t.handler).apply(u.elem,c),void 0!==e&&(n.result=e)===!1&&(n.preventDefault(),n.stopPropagation()));return f.postDispatch&&f.postDispatch.call(this,n),n.result}},handlers:function(n,t){var e,u,f,o,h=[],s=t.delegateCount,r=n.target;if(s&&r.nodeType&&(!n.button||"click"!==n.type))for(;r!==this;r=r.parentNode||this)if(r.disabled!==!0||"click"!==n.type){for(u=[],e=0;s>e;e++)o=t[e],f=o.selector+" ",void 0===u[f]&&(u[f]=o.needsContext?i(f,this).index(r)>=0:i.find(f,this,null,[r]).length),u[f]&&u.push(o);u.length&&h.push({elem:r,handlers:u})}return s<t.length&&h.push({elem:this,handlers:t.slice(s)}),h},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(n,t){return null==n.which&&(n.which=null!=t.charCode?t.charCode:t.keyCode),n}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(n,t){var e,i,r,f=t.button;return null==n.pageX&&null!=t.clientX&&(e=n.target.ownerDocument||u,i=e.documentElement,r=e.body,n.pageX=t.clientX+(i&&i.scrollLeft||r&&r.scrollLeft||0)-(i&&i.clientLeft||r&&r.clientLeft||0),n.pageY=t.clientY+(i&&i.scrollTop||r&&r.scrollTop||0)-(i&&i.clientTop||r&&r.clientTop||0)),n.which||void 0===f||(n.which=1&f?1:2&f?3:4&f?2:0),n}},fix:function(n){if(n[i.expando])return n;var f,e,o,r=n.type,s=n,t=this.fixHooks[r];for(t||(this.fixHooks[r]=t=lf.test(r)?this.mouseHooks:cf.test(r)?this.keyHooks:{}),o=t.props?this.props.concat(t.props):this.props,n=new i.Event(s),f=o.length;f--;)e=o[f],n[e]=s[e];return n.target||(n.target=u),3===n.target.nodeType&&(n.target=n.target.parentNode),t.filter?t.filter(n,s):n},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==hr()&&this.focus)return(this.focus(),!1)},delegateType:"focusin"},blur:{trigger:function(){if(this===hr()&&this.blur)return(this.blur(),!1)},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&i.nodeName(this,"input"))return(this.click(),!1)},_default:function(n){return i.nodeName(n.target,"a")}},beforeunload:{postDispatch:function(n){void 0!==n.result&&n.originalEvent&&(n.originalEvent.returnValue=n.result)}}},simulate:function(n,t,r,u){var f=i.extend(new i.Event,r,{type:n,isSimulated:!0,originalEvent:{}});u?i.event.trigger(f,null,t):i.event.dispatch.call(t,f);f.isDefaultPrevented()&&r.preventDefault()}};i.removeEvent=function(n,t,i){n.removeEventListener&&n.removeEventListener(t,i,!1)};i.Event=function(n,t){return this instanceof i.Event?(n&&n.type?(this.originalEvent=n,this.type=n.type,this.isDefaultPrevented=n.defaultPrevented||void 0===n.defaultPrevented&&n.returnValue===!1?lt:k):this.type=n,t&&i.extend(this,t),this.timeStamp=n&&n.timeStamp||i.now(),void(this[i.expando]=!0)):new i.Event(n,t)};i.Event.prototype={isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k,preventDefault:function(){var n=this.originalEvent;this.isDefaultPrevented=lt;n&&n.preventDefault&&n.preventDefault()},stopPropagation:function(){var n=this.originalEvent;this.isPropagationStopped=lt;n&&n.stopPropagation&&n.stopPropagation()},stopImmediatePropagation:function(){var n=this.originalEvent;this.isImmediatePropagationStopped=lt;n&&n.stopImmediatePropagation&&n.stopImmediatePropagation();this.stopPropagation()}};i.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(n,t){i.event.special[n]={delegateType:t,bindType:t,handle:function(n){var u,f=this,r=n.relatedTarget,e=n.handleObj;return(!r||r!==f&&!i.contains(f,r))&&(n.type=e.origType,u=e.handler.apply(this,arguments),n.type=t),u}}});f.focusinBubbles||i.each({focus:"focusin",blur:"focusout"},function(n,t){var u=function(n){i.event.simulate(t,n.target,i.event.fix(n),!0)};i.event.special[t]={setup:function(){var i=this.ownerDocument||this,f=r.access(i,t);f||i.addEventListener(n,u,!0);r.access(i,t,(f||0)+1)},teardown:function(){var i=this.ownerDocument||this,f=r.access(i,t)-1;f?r.access(i,t,f):(i.removeEventListener(n,u,!0),r.remove(i,t))}}});i.fn.extend({on:function(n,t,r,u,f){var e,o;if("object"==typeof n){"string"!=typeof t&&(r=r||t,t=void 0);for(o in n)this.on(o,t,r,n[o],f);return this}if(null==r&&null==u?(u=t,r=t=void 0):null==u&&("string"==typeof t?(u=r,r=void 0):(u=r,r=t,t=void 0)),u===!1)u=k;else if(!u)return this;return 1===f&&(e=u,u=function(n){return i().off(n),e.apply(this,arguments)},u.guid=e.guid||(e.guid=i.guid++)),this.each(function(){i.event.add(this,n,u,r,t)})},one:function(n,t,i,r){return this.on(n,t,i,r,1)},off:function(n,t,r){var u,f;if(n&&n.preventDefault&&n.handleObj)return u=n.handleObj,i(n.delegateTarget).off(u.namespace?u.origType+"."+u.namespace:u.origType,u.selector,u.handler),this;if("object"==typeof n){for(f in n)this.off(f,t,n[f]);return this}return(t===!1||"function"==typeof t)&&(r=t,t=void 0),r===!1&&(r=k),this.each(function(){i.event.remove(this,n,r,t)})},trigger:function(n,t){return this.each(function(){i.event.trigger(n,t,this)})},triggerHandler:function(n,t){var r=this[0];if(r)return i.event.trigger(n,t,r,!0)}});var cr=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,lr=/<([\w:]+)/,af=/<|&#?\w+;/,vf=/<(?:script|style|link)/i,yf=/checked\s*(?:[^=]|=\s*.checked.)/i,ar=/^$|\/(?:java|ecma)script/i,pf=/^true\/(.*)/,wf=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,h={option:[1,"<select multiple='multiple'>","<\/select>"],thead:[1,"<table>","<\/table>"],col:[2,"<table><colgroup>","<\/colgroup><\/table>"],tr:[2,"<table><tbody>","<\/tbody><\/table>"],td:[3,"<table><tbody><tr>","<\/tr><\/tbody><\/table>"],_default:[0,"",""]};h.optgroup=h.option;h.tbody=h.tfoot=h.colgroup=h.caption=h.thead;h.th=h.td;i.extend({clone:function(n,t,r){var u,c,s,e,h=n.cloneNode(!0),l=i.contains(n.ownerDocument,n);if(!(f.noCloneChecked||1!==n.nodeType&&11!==n.nodeType||i.isXMLDoc(n)))for(e=o(h),s=o(n),u=0,c=s.length;c>u;u++)df(s[u],e[u]);if(t)if(r)for(s=s||o(n),e=e||o(h),u=0,c=s.length;c>u;u++)yr(s[u],e[u]);else yr(n,h);return e=o(h,"script"),e.length>0&&ei(e,!l&&o(n,"script")),h},buildFragment:function(n,t,r,u){for(var f,e,y,l,p,a,s=t.createDocumentFragment(),v=[],c=0,w=n.length;w>c;c++)if(f=n[c],f||0===f)if("object"===i.type(f))i.merge(v,f.nodeType?[f]:f);else if(af.test(f)){for(e=e||s.appendChild(t.createElement("div")),y=(lr.exec(f)||["",""])[1].toLowerCase(),l=h[y]||h._default,e.innerHTML=l[1]+f.replace(cr,"<$1><\/$2>")+l[2],a=l[0];a--;)e=e.lastChild;i.merge(v,e.childNodes);e=s.firstChild;e.textContent=""}else v.push(t.createTextNode(f));for(s.textContent="",c=0;f=v[c++];)if((!u||-1===i.inArray(f,u))&&(p=i.contains(f.ownerDocument,f),e=o(s.appendChild(f),"script"),p&&ei(e),r))for(a=0;f=e[a++];)ar.test(f.type||"")&&r.push(f);return s},cleanData:function(n){for(var f,t,o,u,h=i.event.special,s=0;void 0!==(t=n[s]);s++){if(i.acceptData(t)&&(u=t[r.expando],u&&(f=r.cache[u]))){if(f.events)for(o in f.events)h[o]?i.event.remove(t,o):i.removeEvent(t,o,f.handle);r.cache[u]&&delete r.cache[u]}delete e.cache[t[e.expando]]}}});i.fn.extend({text:function(n){return l(this,function(n){return void 0===n?i.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=n)})},null,n,arguments.length)},append:function(){return this.domManip(arguments,function(n){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=vr(this,n);t.appendChild(n)}})},prepend:function(){return this.domManip(arguments,function(n){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=vr(this,n);t.insertBefore(n,t.firstChild)}})},before:function(){return this.domManip(arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this)})},after:function(){return this.domManip(arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling)})},remove:function(n,t){for(var r,f=n?i.filter(n,this):this,u=0;null!=(r=f[u]);u++)t||1!==r.nodeType||i.cleanData(o(r)),r.parentNode&&(t&&i.contains(r.ownerDocument,r)&&ei(o(r,"script")),r.parentNode.removeChild(r));return this},empty:function(){for(var n,t=0;null!=(n=this[t]);t++)1===n.nodeType&&(i.cleanData(o(n,!1)),n.textContent="");return this},clone:function(n,t){return n=null==n?!1:n,t=null==t?n:t,this.map(function(){return i.clone(this,n,t)})},html:function(n){return l(this,function(n){var t=this[0]||{},r=0,u=this.length;if(void 0===n&&1===t.nodeType)return t.innerHTML;if("string"==typeof n&&!vf.test(n)&&!h[(lr.exec(n)||["",""])[1].toLowerCase()]){n=n.replace(cr,"<$1><\/$2>");try{for(;u>r;r++)t=this[r]||{},1===t.nodeType&&(i.cleanData(o(t,!1)),t.innerHTML=n);t=0}catch(f){}}t&&this.empty().append(n)},null,n,arguments.length)},replaceWith:function(){var n=arguments[0];return this.domManip(arguments,function(t){n=this.parentNode;i.cleanData(o(this));n&&n.replaceChild(t,this)}),n&&(n.length||n.nodeType)?this:this.remove()},detach:function(n){return this.remove(n,!0)},domManip:function(n,t){n=bi.apply([],n);var h,v,s,c,u,y,e=0,l=this.length,w=this,b=l-1,a=n[0],p=i.isFunction(a);if(p||l>1&&"string"==typeof a&&!f.checkClone&&yf.test(a))return this.each(function(i){var r=w.eq(i);p&&(n[0]=a.call(this,i,r.html()));r.domManip(n,t)});if(l&&(h=i.buildFragment(n,this[0].ownerDocument,!1,this),v=h.firstChild,1===h.childNodes.length&&(h=v),v)){for(s=i.map(o(h,"script"),bf),c=s.length;l>e;e++)u=h,e!==b&&(u=i.clone(u,!0,!0),c&&i.merge(s,o(u,"script"))),t.call(this[e],u,e);if(c)for(y=s[s.length-1].ownerDocument,i.map(s,kf),e=0;c>e;e++)u=s[e],ar.test(u.type||"")&&!r.access(u,"globalEval")&&i.contains(y,u)&&(u.src?i._evalUrl&&i._evalUrl(u.src):i.globalEval(u.textContent.replace(wf,"")))}return this}});i.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(n,t){i.fn[n]=function(n){for(var u,f=[],e=i(n),o=e.length-1,r=0;o>=r;r++)u=r===o?this:this.clone(!0),i(e[r])[t](u),ti.apply(f,u.get());return this.pushStack(f)}});oi={};var wr=/^margin/,hi=new RegExp("^("+ct+")(?!px)[a-z%]+$","i"),vt=function(t){return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):n.getComputedStyle(t,null)};!function(){var s,o,e=u.documentElement,r=u.createElement("div"),t=u.createElement("div");if(t.style){t.style.backgroundClip="content-box";t.cloneNode(!0).style.backgroundClip="";f.clearCloneStyle="content-box"===t.style.backgroundClip;r.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute";r.appendChild(t);function h(){t.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute";t.innerHTML="";e.appendChild(r);var i=n.getComputedStyle(t,null);s="1%"!==i.top;o="4px"===i.width;e.removeChild(r)}n.getComputedStyle&&i.extend(f,{pixelPosition:function(){return h(),s},boxSizingReliable:function(){return null==o&&h(),o},reliableMarginRight:function(){var f,i=t.appendChild(u.createElement("div"));return i.style.cssText=t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",t.style.width="1px",e.appendChild(r),f=!parseFloat(n.getComputedStyle(i,null).marginRight),e.removeChild(r),t.removeChild(i),f}})}}();i.swap=function(n,t,i,r){var f,u,e={};for(u in t)e[u]=n.style[u],n.style[u]=t[u];f=i.apply(n,r||[]);for(u in t)n.style[u]=e[u];return f};var gf=/^(none|table(?!-c[ea]).+)/,ne=new RegExp("^("+ct+")(.*)$","i"),te=new RegExp("^([+-])=("+ct+")","i"),ie={position:"absolute",visibility:"hidden",display:"block"},kr={letterSpacing:"0",fontWeight:"400"},dr=["Webkit","O","Moz","ms"];i.extend({cssHooks:{opacity:{get:function(n,t){if(t){var i=it(n,"opacity");return""===i?"1":i}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(n,t,r,u){if(n&&3!==n.nodeType&&8!==n.nodeType&&n.style){var o,h,e,s=i.camelCase(t),c=n.style;return t=i.cssProps[s]||(i.cssProps[s]=gr(c,s)),e=i.cssHooks[t]||i.cssHooks[s],void 0===r?e&&"get"in e&&void 0!==(o=e.get(n,!1,u))?o:c[t]:(h=typeof r,"string"===h&&(o=te.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(i.css(n,t)),h="number"),null!=r&&r===r&&("number"!==h||i.cssNumber[s]||(r+="px"),f.clearCloneStyle||""!==r||0!==t.indexOf("background")||(c[t]="inherit"),e&&"set"in e&&void 0===(r=e.set(n,r,u))||(c[t]=r)),void 0)}},css:function(n,t,r,u){var f,s,e,o=i.camelCase(t);return t=i.cssProps[o]||(i.cssProps[o]=gr(n.style,o)),e=i.cssHooks[t]||i.cssHooks[o],e&&"get"in e&&(f=e.get(n,!0,r)),void 0===f&&(f=it(n,t,u)),"normal"===f&&t in kr&&(f=kr[t]),""===r||r?(s=parseFloat(f),r===!0||i.isNumeric(s)?s||0:f):f}});i.each(["height","width"],function(n,t){i.cssHooks[t]={get:function(n,r,u){if(r)return gf.test(i.css(n,"display"))&&0===n.offsetWidth?i.swap(n,ie,function(){return iu(n,t,u)}):iu(n,t,u)},set:function(n,r,u){var f=u&&vt(n);return nu(n,r,u?tu(n,t,u,"border-box"===i.css(n,"boxSizing",!1,f),f):0)}}});i.cssHooks.marginRight=br(f.reliableMarginRight,function(n,t){if(t)return i.swap(n,{display:"inline-block"},it,[n,"marginRight"])});i.each({margin:"",padding:"",border:"Width"},function(n,t){i.cssHooks[n+t]={expand:function(i){for(var r=0,f={},u="string"==typeof i?i.split(" "):[i];4>r;r++)f[n+p[r]+t]=u[r]||u[r-2]||u[0];return f}};wr.test(n)||(i.cssHooks[n+t].set=nu)});i.fn.extend({css:function(n,t){return l(this,function(n,t,r){var f,e,o={},u=0;if(i.isArray(t)){for(f=vt(n),e=t.length;e>u;u++)o[t[u]]=i.css(n,t[u],!1,f);return o}return void 0!==r?i.style(n,t,r):i.css(n,t)},n,t,arguments.length>1)},show:function(){return ru(this,!0)},hide:function(){return ru(this)},toggle:function(n){return"boolean"==typeof n?n?this.show():this.hide():this.each(function(){tt(this)?i(this).show():i(this).hide()})}});i.Tween=s;s.prototype={constructor:s,init:function(n,t,r,u,f,e){this.elem=n;this.prop=r;this.easing=f||"swing";this.options=t;this.start=this.now=this.cur();this.end=u;this.unit=e||(i.cssNumber[r]?"":"px")},cur:function(){var n=s.propHooks[this.prop];return n&&n.get?n.get(this):s.propHooks._default.get(this)},run:function(n){var r,t=s.propHooks[this.prop];return this.pos=r=this.options.duration?i.easing[this.easing](n,this.options.duration*n,0,1,this.options.duration):n,this.now=(this.end-this.start)*r+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),t&&t.set?t.set(this):s.propHooks._default.set(this),this}};s.prototype.init.prototype=s.prototype;s.propHooks={_default:{get:function(n){var t;return null==n.elem[n.prop]||n.elem.style&&null!=n.elem.style[n.prop]?(t=i.css(n.elem,n.prop,""),t&&"auto"!==t?t:0):n.elem[n.prop]},set:function(n){i.fx.step[n.prop]?i.fx.step[n.prop](n):n.elem.style&&(null!=n.elem.style[i.cssProps[n.prop]]||i.cssHooks[n.prop])?i.style(n.elem,n.prop,n.now+n.unit):n.elem[n.prop]=n.now}}};s.propHooks.scrollTop=s.propHooks.scrollLeft={set:function(n){n.elem.nodeType&&n.elem.parentNode&&(n.elem[n.prop]=n.now)}};i.easing={linear:function(n){return n},swing:function(n){return.5-Math.cos(n*Math.PI)/2}};i.fx=s.prototype.init;i.fx.step={};var d,yt,re=/^(?:toggle|show|hide)$/,uu=new RegExp("^(?:([+-])=|)("+ct+")([a-z%]*)$","i"),ue=/queueHooks$/,pt=[fe],rt={"*":[function(n,t){var f=this.createTween(n,t),s=f.cur(),r=uu.exec(t),e=r&&r[3]||(i.cssNumber[n]?"":"px"),u=(i.cssNumber[n]||"px"!==e&&+s)&&uu.exec(i.css(f.elem,n)),o=1,h=20;if(u&&u[3]!==e){e=e||u[3];r=r||[];u=+s||1;do o=o||".5",u/=o,i.style(f.elem,n,u+e);while(o!==(o=f.cur()/s)&&1!==o&&--h)}return r&&(u=f.start=+u||+s||0,f.unit=e,f.end=r[1]?u+(r[1]+1)*r[2]:+r[2]),f}]};i.Animation=i.extend(ou,{tweener:function(n,t){i.isFunction(n)?(t=n,n=["*"]):n=n.split(" ");for(var r,u=0,f=n.length;f>u;u++)r=n[u],rt[r]=rt[r]||[],rt[r].unshift(t)},prefilter:function(n,t){t?pt.unshift(n):pt.push(n)}});i.speed=function(n,t,r){var u=n&&"object"==typeof n?i.extend({},n):{complete:r||!r&&t||i.isFunction(n)&&n,duration:n,easing:r&&t||t&&!i.isFunction(t)&&t};return u.duration=i.fx.off?0:"number"==typeof u.duration?u.duration:u.duration in i.fx.speeds?i.fx.speeds[u.duration]:i.fx.speeds._default,(null==u.queue||u.queue===!0)&&(u.queue="fx"),u.old=u.complete,u.complete=function(){i.isFunction(u.old)&&u.old.call(this);u.queue&&i.dequeue(this,u.queue)},u};i.fn.extend({fadeTo:function(n,t,i,r){return this.filter(tt).css("opacity",0).show().end().animate({opacity:t},n,i,r)},animate:function(n,t,u,f){var s=i.isEmptyObject(n),o=i.speed(t,u,f),e=function(){var t=ou(this,i.extend({},n),o);(s||r.get(this,"finish"))&&t.stop(!0)};return e.finish=e,s||o.queue===!1?this.each(e):this.queue(o.queue,e)},stop:function(n,t,u){var f=function(n){var t=n.stop;delete n.stop;t(u)};return"string"!=typeof n&&(u=t,t=n,n=void 0),t&&n!==!1&&this.queue(n||"fx",[]),this.each(function(){var s=!0,t=null!=n&&n+"queueHooks",o=i.timers,e=r.get(this);if(t)e[t]&&e[t].stop&&f(e[t]);else for(t in e)e[t]&&e[t].stop&&ue.test(t)&&f(e[t]);for(t=o.length;t--;)o[t].elem!==this||null!=n&&o[t].queue!==n||(o[t].anim.stop(u),s=!1,o.splice(t,1));(s||!u)&&i.dequeue(this,n)})},finish:function(n){return n!==!1&&(n=n||"fx"),this.each(function(){var t,e=r.get(this),u=e[n+"queue"],o=e[n+"queueHooks"],f=i.timers,s=u?u.length:0;for(e.finish=!0,i.queue(this,n,[]),o&&o.stop&&o.stop.call(this,!0),t=f.length;t--;)f[t].elem===this&&f[t].queue===n&&(f[t].anim.stop(!0),f.splice(t,1));for(t=0;s>t;t++)u[t]&&u[t].finish&&u[t].finish.call(this);delete e.finish})}});i.each(["toggle","show","hide"],function(n,t){var r=i.fn[t];i.fn[t]=function(n,i,u){return null==n||"boolean"==typeof n?r.apply(this,arguments):this.animate(wt(t,!0),n,i,u)}});i.each({slideDown:wt("show"),slideUp:wt("hide"),slideToggle:wt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(n,t){i.fn[n]=function(n,i,r){return this.animate(t,n,i,r)}});i.timers=[];i.fx.tick=function(){var r,n=0,t=i.timers;for(d=i.now();n<t.length;n++)r=t[n],r()||t[n]!==r||t.splice(n--,1);t.length||i.fx.stop();d=void 0};i.fx.timer=function(n){i.timers.push(n);n()?i.fx.start():i.timers.pop()};i.fx.interval=13;i.fx.start=function(){yt||(yt=setInterval(i.fx.tick,i.fx.interval))};i.fx.stop=function(){clearInterval(yt);yt=null};i.fx.speeds={slow:600,fast:200,_default:400};i.fn.delay=function(n,t){return n=i.fx?i.fx.speeds[n]||n:n,t=t||"fx",this.queue(t,function(t,i){var r=setTimeout(t,n);i.stop=function(){clearTimeout(r)}})},function(){var n=u.createElement("input"),t=u.createElement("select"),i=t.appendChild(u.createElement("option"));n.type="checkbox";f.checkOn=""!==n.value;f.optSelected=i.selected;t.disabled=!0;f.optDisabled=!i.disabled;n=u.createElement("input");n.value="t";n.type="radio";f.radioValue="t"===n.value}();g=i.expr.attrHandle;i.fn.extend({attr:function(n,t){return l(this,i.attr,n,t,arguments.length>1)},removeAttr:function(n){return this.each(function(){i.removeAttr(this,n)})}});i.extend({attr:function(n,t,r){var u,f,e=n.nodeType;if(n&&3!==e&&8!==e&&2!==e)return typeof n.getAttribute===b?i.prop(n,t,r):(1===e&&i.isXMLDoc(n)||(t=t.toLowerCase(),u=i.attrHooks[t]||(i.expr.match.bool.test(t)?su:oe)),void 0===r?u&&"get"in u&&null!==(f=u.get(n,t))?f:(f=i.find.attr(n,t),null==f?void 0:f):null!==r?u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:(n.setAttribute(t,r+""),r):void i.removeAttr(n,t))},removeAttr:function(n,t){var r,u,e=0,f=t&&t.match(c);if(f&&1===n.nodeType)while(r=f[e++])u=i.propFix[r]||r,i.expr.match.bool.test(r)&&(n[u]=!1),n.removeAttribute(r)},attrHooks:{type:{set:function(n,t){if(!f.radioValue&&"radio"===t&&i.nodeName(n,"input")){var r=n.value;return n.setAttribute("type",t),r&&(n.value=r),t}}}}});su={set:function(n,t,r){return t===!1?i.removeAttr(n,r):n.setAttribute(r,r),r}};i.each(i.expr.match.bool.source.match(/\w+/g),function(n,t){var r=g[t]||i.find.attr;g[t]=function(n,t,i){var u,f;return i||(f=g[t],g[t]=u,u=null!=r(n,t,i)?t.toLowerCase():null,g[t]=f),u}});hu=/^(?:input|select|textarea|button)$/i;i.fn.extend({prop:function(n,t){return l(this,i.prop,n,t,arguments.length>1)},removeProp:function(n){return this.each(function(){delete this[i.propFix[n]||n]})}});i.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(n,t,r){var f,u,o,e=n.nodeType;if(n&&3!==e&&8!==e&&2!==e)return o=1!==e||!i.isXMLDoc(n),o&&(t=i.propFix[t]||t,u=i.propHooks[t]),void 0!==r?u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:n[t]=r:u&&"get"in u&&null!==(f=u.get(n,t))?f:n[t]},propHooks:{tabIndex:{get:function(n){return n.hasAttribute("tabindex")||hu.test(n.nodeName)||n.href?n.tabIndex:-1}}}});f.optSelected||(i.propHooks.selected={get:function(n){var t=n.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}});i.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){i.propFix[this.toLowerCase()]=this});bt=/[\t\r\n\f]/g;i.fn.extend({addClass:function(n){var o,t,r,u,s,f,h="string"==typeof n&&n,e=0,l=this.length;if(i.isFunction(n))return this.each(function(t){i(this).addClass(n.call(this,t,this.className))});if(h)for(o=(n||"").match(c)||[];l>e;e++)if(t=this[e],r=1===t.nodeType&&(t.className?(" "+t.className+" ").replace(bt," "):" ")){for(s=0;u=o[s++];)r.indexOf(" "+u+" ")<0&&(r+=u+" ");f=i.trim(r);t.className!==f&&(t.className=f)}return this},removeClass:function(n){var o,t,r,u,s,f,h=0===arguments.length||"string"==typeof n&&n,e=0,l=this.length;if(i.isFunction(n))return this.each(function(t){i(this).removeClass(n.call(this,t,this.className))});if(h)for(o=(n||"").match(c)||[];l>e;e++)if(t=this[e],r=1===t.nodeType&&(t.className?(" "+t.className+" ").replace(bt," "):"")){for(s=0;u=o[s++];)while(r.indexOf(" "+u+" ")>=0)r=r.replace(" "+u+" "," ");f=n?i.trim(r):"";t.className!==f&&(t.className=f)}return this},toggleClass:function(n,t){var u=typeof n;return"boolean"==typeof t&&"string"===u?t?this.addClass(n):this.removeClass(n):this.each(i.isFunction(n)?function(r){i(this).toggleClass(n.call(this,r,this.className,t),t)}:function(){if("string"===u)for(var t,e=0,f=i(this),o=n.match(c)||[];t=o[e++];)f.hasClass(t)?f.removeClass(t):f.addClass(t);else(u===b||"boolean"===u)&&(this.className&&r.set(this,"__className__",this.className),this.className=this.className||n===!1?"":r.get(this,"__className__")||"")})},hasClass:function(n){for(var i=" "+n+" ",t=0,r=this.length;r>t;t++)if(1===this[t].nodeType&&(" "+this[t].className+" ").replace(bt," ").indexOf(i)>=0)return!0;return!1}});cu=/\r/g;i.fn.extend({val:function(n){var t,r,f,u=this[0];return arguments.length?(f=i.isFunction(n),this.each(function(r){var u;1===this.nodeType&&(u=f?n.call(this,r,i(this).val()):n,null==u?u="":"number"==typeof u?u+="":i.isArray(u)&&(u=i.map(u,function(n){return null==n?"":n+""})),t=i.valHooks[this.type]||i.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,u,"value")||(this.value=u))})):u?(t=i.valHooks[u.type]||i.valHooks[u.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(r=t.get(u,"value"))?r:(r=u.value,"string"==typeof r?r.replace(cu,""):null==r?"":r)):void 0}});i.extend({valHooks:{option:{get:function(n){var t=i.find.attr(n,"value");return null!=t?t:i.trim(i.text(n))}},select:{get:function(n){for(var o,t,s=n.options,r=n.selectedIndex,u="select-one"===n.type||0>r,h=u?null:[],c=u?r+1:s.length,e=0>r?c:u?r:0;c>e;e++)if(t=s[e],!(!t.selected&&e!==r||(f.optDisabled?t.disabled:null!==t.getAttribute("disabled"))||t.parentNode.disabled&&i.nodeName(t.parentNode,"optgroup"))){if(o=i(t).val(),u)return o;h.push(o)}return h},set:function(n,t){for(var u,r,f=n.options,e=i.makeArray(t),o=f.length;o--;)r=f[o],(r.selected=i.inArray(r.value,e)>=0)&&(u=!0);return u||(n.selectedIndex=-1),e}}}});i.each(["radio","checkbox"],function(){i.valHooks[this]={set:function(n,t){if(i.isArray(t))return n.checked=i.inArray(i(n).val(),t)>=0}};f.checkOn||(i.valHooks[this].get=function(n){return null===n.getAttribute("value")?"on":n.value})});i.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(n,t){i.fn[t]=function(n,i){return arguments.length>0?this.on(t,null,n,i):this.trigger(t)}});i.fn.extend({hover:function(n,t){return this.mouseenter(n).mouseleave(t||n)},bind:function(n,t,i){return this.on(n,null,t,i)},unbind:function(n,t){return this.off(n,null,t)},delegate:function(n,t,i,r){return this.on(t,n,i,r)},undelegate:function(n,t,i){return 1===arguments.length?this.off(n,"**"):this.off(t,n||"**",i)}});kt=i.now();dt=/\?/;i.parseJSON=function(n){return JSON.parse(n+"")};i.parseXML=function(n){var t,r;if(!n||"string"!=typeof n)return null;try{r=new DOMParser;t=r.parseFromString(n,"text/xml")}catch(u){t=void 0}return(!t||t.getElementsByTagName("parsererror").length)&&i.error("Invalid XML: "+n),t};var se=/#.*$/,lu=/([?&])_=[^&]*/,he=/^(.*?):[ \t]*([^\r\n]*)$/gm,ce=/^(?:GET|HEAD)$/,le=/^\/\//,au=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,vu={},ci={},yu="*/".concat("*"),li=n.location.href,nt=au.exec(li.toLowerCase())||[];i.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:li,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(nt[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":yu,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":i.parseJSON,"text xml":i.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(n,t){return t?ai(ai(n,i.ajaxSettings),t):ai(i.ajaxSettings,n)},ajaxPrefilter:pu(vu),ajaxTransport:pu(ci),ajax:function(n,t){function p(n,t,s,h){var v,it,tt,p,nt,c=t;2!==e&&(e=2,b&&clearTimeout(b),l=void 0,w=h||"",u.readyState=n>0?4:0,v=n>=200&&300>n||304===n,s&&(p=ae(r,u,s)),p=ve(r,p,u,v),v?(r.ifModified&&(nt=u.getResponseHeader("Last-Modified"),nt&&(i.lastModified[f]=nt),nt=u.getResponseHeader("etag"),nt&&(i.etag[f]=nt)),204===n||"HEAD"===r.type?c="nocontent":304===n?c="notmodified":(c=p.state,it=p.data,tt=p.error,v=!tt)):(tt=c,(n||!c)&&(c="error",0>n&&(n=0))),u.status=n,u.statusText=(t||c)+"",v?d.resolveWith(o,[it,c,u]):d.rejectWith(o,[u,c,tt]),u.statusCode(y),y=void 0,a&&k.trigger(v?"ajaxSuccess":"ajaxError",[u,r,v?it:tt]),g.fireWith(o,[u,c]),a&&(k.trigger("ajaxComplete",[u,r]),--i.active||i.event.trigger("ajaxStop")))}"object"==typeof n&&(t=n,n=void 0);t=t||{};var l,f,w,v,b,s,a,h,r=i.ajaxSetup({},t),o=r.context||r,k=r.context&&(o.nodeType||o.jquery)?i(o):i.event,d=i.Deferred(),g=i.Callbacks("once memory"),y=r.statusCode||{},tt={},it={},e=0,rt="canceled",u={readyState:0,getResponseHeader:function(n){var t;if(2===e){if(!v)for(v={};t=he.exec(w);)v[t[1].toLowerCase()]=t[2];t=v[n.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===e?w:null},setRequestHeader:function(n,t){var i=n.toLowerCase();return e||(n=it[i]=it[i]||n,tt[n]=t),this},overrideMimeType:function(n){return e||(r.mimeType=n),this},statusCode:function(n){var t;if(n)if(2>e)for(t in n)y[t]=[y[t],n[t]];else u.always(n[u.status]);return this},abort:function(n){var t=n||rt;return l&&l.abort(t),p(0,t),this}};if(d.promise(u).complete=g.add,u.success=u.done,u.error=u.fail,r.url=((n||r.url||li)+"").replace(se,"").replace(le,nt[1]+"//"),r.type=t.method||t.type||r.method||r.type,r.dataTypes=i.trim(r.dataType||"*").toLowerCase().match(c)||[""],null==r.crossDomain&&(s=au.exec(r.url.toLowerCase()),r.crossDomain=!(!s||s[1]===nt[1]&&s[2]===nt[2]&&(s[3]||("http:"===s[1]?"80":"443"))===(nt[3]||("http:"===nt[1]?"80":"443")))),r.data&&r.processData&&"string"!=typeof r.data&&(r.data=i.param(r.data,r.traditional)),wu(vu,r,t,u),2===e)return u;a=i.event&&r.global;a&&0==i.active++&&i.event.trigger("ajaxStart");r.type=r.type.toUpperCase();r.hasContent=!ce.test(r.type);f=r.url;r.hasContent||(r.data&&(f=r.url+=(dt.test(f)?"&":"?")+r.data,delete r.data),r.cache===!1&&(r.url=lu.test(f)?f.replace(lu,"$1_="+kt++):f+(dt.test(f)?"&":"?")+"_="+kt++));r.ifModified&&(i.lastModified[f]&&u.setRequestHeader("If-Modified-Since",i.lastModified[f]),i.etag[f]&&u.setRequestHeader("If-None-Match",i.etag[f]));(r.data&&r.hasContent&&r.contentType!==!1||t.contentType)&&u.setRequestHeader("Content-Type",r.contentType);u.setRequestHeader("Accept",r.dataTypes[0]&&r.accepts[r.dataTypes[0]]?r.accepts[r.dataTypes[0]]+("*"!==r.dataTypes[0]?", "+yu+"; q=0.01":""):r.accepts["*"]);for(h in r.headers)u.setRequestHeader(h,r.headers[h]);if(r.beforeSend&&(r.beforeSend.call(o,u,r)===!1||2===e))return u.abort();rt="abort";for(h in{success:1,error:1,complete:1})u[h](r[h]);if(l=wu(ci,r,t,u)){u.readyState=1;a&&k.trigger("ajaxSend",[u,r]);r.async&&r.timeout>0&&(b=setTimeout(function(){u.abort("timeout")},r.timeout));try{e=1;l.send(tt,p)}catch(ut){if(!(2>e))throw ut;p(-1,ut)}}else p(-1,"No Transport");return u},getJSON:function(n,t,r){return i.get(n,t,r,"json")},getScript:function(n,t){return i.get(n,void 0,t,"script")}});i.each(["get","post"],function(n,t){i[t]=function(n,r,u,f){return i.isFunction(r)&&(f=f||u,u=r,r=void 0),i.ajax({url:n,type:t,dataType:f,data:r,success:u})}});i._evalUrl=function(n){return i.ajax({url:n,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})};i.fn.extend({wrapAll:function(n){var t;return i.isFunction(n)?this.each(function(t){i(this).wrapAll(n.call(this,t))}):(this[0]&&(t=i(n,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var n=this;n.firstElementChild;)n=n.firstElementChild;return n}).append(this)),this)},wrapInner:function(n){return this.each(i.isFunction(n)?function(t){i(this).wrapInner(n.call(this,t))}:function(){var t=i(this),r=t.contents();r.length?r.wrapAll(n):t.append(n)})},wrap:function(n){var t=i.isFunction(n);return this.each(function(r){i(this).wrapAll(t?n.call(this,r):n)})},unwrap:function(){return this.parent().each(function(){i.nodeName(this,"body")||i(this).replaceWith(this.childNodes)}).end()}});i.expr.filters.hidden=function(n){return n.offsetWidth<=0&&n.offsetHeight<=0};i.expr.filters.visible=function(n){return!i.expr.filters.hidden(n)};var ye=/%20/g,pe=/\[\]$/,bu=/\r?\n/g,we=/^(?:submit|button|image|reset|file)$/i,be=/^(?:input|select|textarea|keygen)/i;i.param=function(n,t){var r,u=[],f=function(n,t){t=i.isFunction(t)?t():null==t?"":t;u[u.length]=encodeURIComponent(n)+"="+encodeURIComponent(t)};if(void 0===t&&(t=i.ajaxSettings&&i.ajaxSettings.traditional),i.isArray(n)||n.jquery&&!i.isPlainObject(n))i.each(n,function(){f(this.name,this.value)});else for(r in n)vi(r,n[r],t,f);return u.join("&").replace(ye,"+")};i.fn.extend({serialize:function(){return i.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var n=i.prop(this,"elements");return n?i.makeArray(n):this}).filter(function(){var n=this.type;return this.name&&!i(this).is(":disabled")&&be.test(this.nodeName)&&!we.test(n)&&(this.checked||!er.test(n))}).map(function(n,t){var r=i(this).val();return null==r?null:i.isArray(r)?i.map(r,function(n){return{name:t.name,value:n.replace(bu,"\r\n")}}):{name:t.name,value:r.replace(bu,"\r\n")}}).get()}});i.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(n){}};var ke=0,gt={},de={0:200,1223:204},ut=i.ajaxSettings.xhr();return n.attachEvent&&n.attachEvent("onunload",function(){for(var n in gt)gt[n]()}),f.cors=!!ut&&"withCredentials"in ut,f.ajax=ut=!!ut,i.ajaxTransport(function(n){var t;if(f.cors||ut&&!n.crossDomain)return{send:function(i,r){var f,u=n.xhr(),e=++ke;if(u.open(n.type,n.url,n.async,n.username,n.password),n.xhrFields)for(f in n.xhrFields)u[f]=n.xhrFields[f];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType);n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(f in i)u.setRequestHeader(f,i[f]);t=function(n){return function(){t&&(delete gt[e],t=u.onload=u.onerror=null,"abort"===n?u.abort():"error"===n?r(u.status,u.statusText):r(de[u.status]||u.status,u.statusText,"string"==typeof u.responseText?{text:u.responseText}:void 0,u.getAllResponseHeaders()))}};u.onload=t();u.onerror=t("error");t=gt[e]=t("abort");try{u.send(n.hasContent&&n.data||null)}catch(o){if(t)throw o;}},abort:function(){t&&t()}}}),i.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(n){return i.globalEval(n),n}}}),i.ajaxPrefilter("script",function(n){void 0===n.cache&&(n.cache=!1);n.crossDomain&&(n.type="GET")}),i.ajaxTransport("script",function(n){if(n.crossDomain){var r,t;return{send:function(f,e){r=i("<script>").prop({async:!0,charset:n.scriptCharset,src:n.url}).on("load error",t=function(n){r.remove();t=null;n&&e("error"===n.type?404:200,n.type)});u.head.appendChild(r[0])},abort:function(){t&&t()}}}}),yi=[],ni=/(=)\?(?=&|$)|\?\?/,i.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var n=yi.pop()||i.expando+"_"+kt++;return this[n]=!0,n}}),i.ajaxPrefilter("json jsonp",function(t,r,u){var f,o,e,s=t.jsonp!==!1&&(ni.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&ni.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return(f=t.jsonpCallback=i.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(ni,"$1"+f):t.jsonp!==!1&&(t.url+=(dt.test(t.url)?"&":"?")+t.jsonp+"="+f),t.converters["script json"]=function(){return e||i.error(f+" was not called"),e[0]},t.dataTypes[0]="json",o=n[f],n[f]=function(){e=arguments},u.always(function(){n[f]=o;t[f]&&(t.jsonpCallback=r.jsonpCallback,yi.push(f));e&&i.isFunction(o)&&o(e[0]);e=o=void 0}),"script")}),i.parseHTML=function(n,t,r){if(!n||"string"!=typeof n)return null;"boolean"==typeof t&&(r=t,t=!1);t=t||u;var f=gi.exec(n),e=!r&&[];return f?[t.createElement(f[1])]:(f=i.buildFragment([n],t,e),e&&e.length&&i(e).remove(),i.merge([],f.childNodes))},pi=i.fn.load,i.fn.load=function(n,t,r){if("string"!=typeof n&&pi)return pi.apply(this,arguments);var u,o,s,f=this,e=n.indexOf(" ");return e>=0&&(u=i.trim(n.slice(e)),n=n.slice(0,e)),i.isFunction(t)?(r=t,t=void 0):t&&"object"==typeof t&&(o="POST"),f.length>0&&i.ajax({url:n,type:o,dataType:"html",data:t}).done(function(n){s=arguments;f.html(u?i("<div>").append(i.parseHTML(n)).find(u):n)}).complete(r&&function(n,t){f.each(r,s||[n.responseText,t,n])}),this},i.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(n,t){i.fn[t]=function(n){return this.on(t,n)}}),i.expr.filters.animated=function(n){return i.grep(i.timers,function(t){return n===t.elem}).length},wi=n.document.documentElement,i.offset={setOffset:function(n,t,r){var e,o,s,h,u,c,v,l=i.css(n,"position"),a=i(n),f={};"static"===l&&(n.style.position="relative");u=a.offset();s=i.css(n,"top");c=i.css(n,"left");v=("absolute"===l||"fixed"===l)&&(s+c).indexOf("auto")>-1;v?(e=a.position(),h=e.top,o=e.left):(h=parseFloat(s)||0,o=parseFloat(c)||0);i.isFunction(t)&&(t=t.call(n,r,u));null!=t.top&&(f.top=t.top-u.top+h);null!=t.left&&(f.left=t.left-u.left+o);"using"in t?t.using.call(n,f):a.css(f)}},i.fn.extend({offset:function(n){if(arguments.length)return void 0===n?this:this.each(function(t){i.offset.setOffset(this,n,t)});var r,f,t=this[0],u={top:0,left:0},e=t&&t.ownerDocument;if(e)return r=e.documentElement,i.contains(r,t)?(typeof t.getBoundingClientRect!==b&&(u=t.getBoundingClientRect()),f=ku(e),{top:u.top+f.pageYOffset-r.clientTop,left:u.left+f.pageXOffset-r.clientLeft}):u},position:function(){if(this[0]){var n,r,u=this[0],t={top:0,left:0};return"fixed"===i.css(u,"position")?r=u.getBoundingClientRect():(n=this.offsetParent(),r=this.offset(),i.nodeName(n[0],"html")||(t=n.offset()),t.top+=i.css(n[0],"borderTopWidth",!0),t.left+=i.css(n[0],"borderLeftWidth",!0)),{top:r.top-t.top-i.css(u,"marginTop",!0),left:r.left-t.left-i.css(u,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var n=this.offsetParent||wi;n&&!i.nodeName(n,"html")&&"static"===i.css(n,"position");)n=n.offsetParent;return n||wi})}}),i.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,r){var u="pageYOffset"===r;i.fn[t]=function(i){return l(this,function(t,i,f){var e=ku(t);return void 0===f?e?e[r]:t[i]:void(e?e.scrollTo(u?n.pageXOffset:f,u?f:n.pageYOffset):t[i]=f)},t,i,arguments.length,null)}}),i.each(["top","left"],function(n,t){i.cssHooks[t]=br(f.pixelPosition,function(n,r){if(r)return(r=it(n,t),hi.test(r)?i(n).position()[t]+"px":r)})}),i.each({Height:"height",Width:"width"},function(n,t){i.each({padding:"inner"+n,content:t,"":"outer"+n},function(r,u){i.fn[u]=function(u,f){var e=arguments.length&&(r||"boolean"!=typeof u),o=r||(u===!0||f===!0?"margin":"border");return l(this,function(t,r,u){var f;return i.isWindow(t)?t.document.documentElement["client"+n]:9===t.nodeType?(f=t.documentElement,Math.max(t.body["scroll"+n],f["scroll"+n],t.body["offset"+n],f["offset"+n],f["client"+n])):void 0===u?i.css(t,r,o):i.style(t,r,u,o)},t,e?u:void 0,e,null)}})}),i.fn.size=function(){return this.length},i.fn.andSelf=i.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return i}),du=n.jQuery,gu=n.$,i.noConflict=function(t){return n.$===i&&(n.$=gu),t&&n.jQuery===i&&(n.jQuery=du),i},typeof t===b&&(n.jQuery=n.$=i),i}),function(n){"function"==typeof define&&define.amd?define(["jquery"],n):n(jQuery)}(function(n){function h(t,i){var r,u,f,e=t.nodeName.toLowerCase();return"area"===e?(r=t.parentNode,u=r.name,t.href&&u&&"map"===r.nodeName.toLowerCase()?(f=n("img[usemap='#"+u+"']")[0],!!f&&c(f)):!1):(/input|select|textarea|button|object/.test(e)?!t.disabled:"a"===e?t.href||i:i)&&c(t)}function c(t){return n.expr.filters.visible(t)&&!n(t).parents().addBack().filter(function(){return"hidden"===n.css(this,"visibility")}).length}function k(n){for(var t,i;n.length&&n[0]!==document;){if(t=n.css("position"),("absolute"===t||"relative"===t||"fixed"===t)&&(i=parseInt(n.css("zIndex"),10),!isNaN(i)&&0!==i))return i;n=n.parent()}return 0}function l(){this._curInst=null;this._keyEvent=!1;this._disabledInputs=[];this._datepickerShowing=!1;this._inDialog=!1;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1};n.extend(this._defaults,this.regional[""]);this.regional.en=n.extend(!0,{},this.regional[""]);this.regional["en-US"]=n.extend(!0,{},this.regional.en);this.dpDiv=a(n("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'><\/div>"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){n(this).removeClass("ui-state-hover");-1!==this.className.indexOf("ui-datepicker-prev")&&n(this).removeClass("ui-datepicker-prev-hover");-1!==this.className.indexOf("ui-datepicker-next")&&n(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",v)}function v(){n.datepicker._isDisabledDatepicker(u.inline?u.dpDiv.parent()[0]:u.input[0])||(n(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),n(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&n(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&n(this).addClass("ui-datepicker-next-hover"))}function r(t,i){n.extend(t,i);for(var r in i)null==i[r]&&(t[r]=i[r]);return t}function t(n){return function(){var t=this.element.val();n.apply(this,arguments);this._refresh();t!==this.element.val()&&this._trigger("change")}}var y,f,i,u,o,s;n.ui=n.ui||{};n.extend(n.ui,{version:"1.11.1",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}});n.fn.extend({scrollParent:function(t){var i=this.css("position"),u="absolute"===i,f=t?/(auto|scroll|hidden)/:/(auto|scroll)/,r=this.parents().filter(function(){var t=n(this);return u&&"static"===t.css("position")?!1:f.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==i&&r.length?r:n(this[0].ownerDocument||document)},uniqueId:function(){var n=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++n)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&n(this).removeAttr("id")})}});n.extend(n.expr[":"],{data:n.expr.createPseudo?n.expr.createPseudo(function(t){return function(i){return!!n.data(i,t)}}):function(t,i,r){return!!n.data(t,r[3])},focusable:function(t){return h(t,!isNaN(n.attr(t,"tabindex")))},tabbable:function(t){var i=n.attr(t,"tabindex"),r=isNaN(i);return(r||i>=0)&&h(t,!r)}});n("<a>").outerWidth(1).jquery||n.each(["Width","Height"],function(t,i){function r(t,i,r,u){return n.each(e,function(){i-=parseFloat(n.css(t,"padding"+this))||0;r&&(i-=parseFloat(n.css(t,"border"+this+"Width"))||0);u&&(i-=parseFloat(n.css(t,"margin"+this))||0)}),i}var e="Width"===i?["Left","Right"]:["Top","Bottom"],u=i.toLowerCase(),f={innerWidth:n.fn.innerWidth,innerHeight:n.fn.innerHeight,outerWidth:n.fn.outerWidth,outerHeight:n.fn.outerHeight};n.fn["inner"+i]=function(t){return void 0===t?f["inner"+i].call(this):this.each(function(){n(this).css(u,r(this,t)+"px")})};n.fn["outer"+i]=function(t,e){return"number"!=typeof t?f["outer"+i].call(this,t):this.each(function(){n(this).css(u,r(this,t,!0,e)+"px")})}});n.fn.addBack||(n.fn.addBack=function(n){return this.add(null==n?this.prevObject:this.prevObject.filter(n))});n("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(n.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,n.camelCase(i)):t.call(this)}}(n.fn.removeData));n.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());n.fn.extend({focus:function(t){return function(i,r){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){n(t).focus();r&&r.call(t)},i)}):t.apply(this,arguments)}}(n.fn.focus),disableSelection:function(){var n="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(n+".ui-disableSelection",function(n){n.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(t){if(void 0!==t)return this.css("zIndex",t);if(this.length)for(var r,u,i=n(this[0]);i.length&&i[0]!==document;){if(r=i.css("position"),("absolute"===r||"relative"===r||"fixed"===r)&&(u=parseInt(i.css("zIndex"),10),!isNaN(u)&&0!==u))return u;i=i.parent()}return 0}});n.ui.plugin={add:function(t,i,r){var u,f=n.ui[t].prototype;for(u in r)f.plugins[u]=f.plugins[u]||[],f.plugins[u].push([i,r[u]])},call:function(n,t,i,r){var u,f=n.plugins[t];if(f&&(r||n.element[0].parentNode&&11!==n.element[0].parentNode.nodeType))for(u=0;f.length>u;u++)n.options[f[u][0]]&&f[u][1].apply(n.element,i)}};y=0;f=Array.prototype.slice;n.cleanData=function(t){return function(i){for(var r,u,f=0;null!=(u=i[f]);f++)try{r=n._data(u,"events");r&&r.remove&&n(u).triggerHandler("remove")}catch(e){}t(i)}}(n.cleanData);n.widget=function(t,i,r){var s,f,u,o,h={},e=t.split(".")[0];return t=t.split(".")[1],s=e+"-"+t,r||(r=i,i=n.Widget),n.expr[":"][s.toLowerCase()]=function(t){return!!n.data(t,s)},n[e]=n[e]||{},f=n[e][t],u=n[e][t]=function(n,t){return this._createWidget?(arguments.length&&this._createWidget(n,t),void 0):new u(n,t)},n.extend(u,f,{version:r.version,_proto:n.extend({},r),_childConstructors:[]}),o=new i,o.options=n.widget.extend({},o.options),n.each(r,function(t,r){return n.isFunction(r)?(h[t]=function(){var n=function(){return i.prototype[t].apply(this,arguments)},u=function(n){return i.prototype[t].apply(this,n)};return function(){var t,i=this._super,f=this._superApply;return this._super=n,this._superApply=u,t=r.apply(this,arguments),this._super=i,this._superApply=f,t}}(),void 0):(h[t]=r,void 0)}),u.prototype=n.widget.extend(o,{widgetEventPrefix:f?o.widgetEventPrefix||t:t},h,{constructor:u,namespace:e,widgetName:t,widgetFullName:s}),f?(n.each(f._childConstructors,function(t,i){var r=i.prototype;n.widget(r.namespace+"."+r.widgetName,u,i._proto)}),delete f._childConstructors):i._childConstructors.push(u),n.widget.bridge(t,u),u};n.widget.extend=function(t){for(var i,r,e=f.call(arguments,1),u=0,o=e.length;o>u;u++)for(i in e[u])r=e[u][i],e[u].hasOwnProperty(i)&&void 0!==r&&(t[i]=n.isPlainObject(r)?n.isPlainObject(t[i])?n.widget.extend({},t[i],r):n.widget.extend({},r):r);return t};n.widget.bridge=function(t,i){var r=i.prototype.widgetFullName||t;n.fn[t]=function(u){var s="string"==typeof u,o=f.call(arguments,1),e=this;return u=!s&&o.length?n.widget.extend.apply(null,[u].concat(o)):u,s?this.each(function(){var i,f=n.data(this,r);return"instance"===u?(e=f,!1):f?n.isFunction(f[u])&&"_"!==u.charAt(0)?(i=f[u].apply(f,o),i!==f&&void 0!==i?(e=i&&i.jquery?e.pushStack(i.get()):i,!1):void 0):n.error("no such method '"+u+"' for "+t+" widget instance"):n.error("cannot call methods on "+t+" prior to initialization; attempted to call method '"+u+"'")}):this.each(function(){var t=n.data(this,r);t?(t.option(u||{}),t._init&&t._init()):n.data(this,r,new i(u,this))}),e}};n.Widget=function(){};n.Widget._childConstructors=[];n.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,i){i=n(i||this.defaultElement||this)[0];this.element=n(i);this.uuid=y++;this.eventNamespace="."+this.widgetName+this.uuid;this.options=n.widget.extend({},this.options,this._getCreateOptions(),t);this.bindings=n();this.hoverable=n();this.focusable=n();i!==this&&(n.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(n){n.target===i&&this.destroy()}}),this.document=n(i.style?i.ownerDocument:i.document||i),this.window=n(this.document[0].defaultView||this.document[0].parentWindow));this._create();this._trigger("create",null,this._getCreateEventData());this._init()},_getCreateOptions:n.noop,_getCreateEventData:n.noop,_create:n.noop,_init:n.noop,destroy:function(){this._destroy();this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(n.camelCase(this.widgetFullName));this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled");this.bindings.unbind(this.eventNamespace);this.hoverable.removeClass("ui-state-hover");this.focusable.removeClass("ui-state-focus")},_destroy:n.noop,widget:function(){return this.element},option:function(t,i){var r,u,f,e=t;if(0===arguments.length)return n.widget.extend({},this.options);if("string"==typeof t)if(e={},r=t.split("."),t=r.shift(),r.length){for(u=e[t]=n.widget.extend({},this.options[t]),f=0;r.length-1>f;f++)u[r[f]]=u[r[f]]||{},u=u[r[f]];if(t=r.pop(),1===arguments.length)return void 0===u[t]?null:u[t];u[t]=i}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];e[t]=i}return this._setOptions(e),this},_setOptions:function(n){var t;for(t in n)this._setOption(t,n[t]);return this},_setOption:function(n,t){return this.options[n]=t,"disabled"===n&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,r){var f,u=this;"boolean"!=typeof t&&(r=i,i=t,t=!1);r?(i=f=n(i),this.bindings=this.bindings.add(i)):(r=i,i=this.element,f=this.widget());n.each(r,function(r,e){function o(){if(t||u.options.disabled!==!0&&!n(this).hasClass("ui-state-disabled"))return("string"==typeof e?u[e]:e).apply(u,arguments)}"string"!=typeof e&&(o.guid=e.guid=e.guid||o.guid||n.guid++);var s=r.match(/^([\w:-]*)\s*(.*)$/),h=s[1]+u.eventNamespace,c=s[2];c?f.delegate(c,h,o):i.bind(h,o)})},_off:function(n,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace;n.unbind(t).undelegate(t)},_delay:function(n,t){function r(){return("string"==typeof n?i[n]:n).apply(i,arguments)}var i=this;return setTimeout(r,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t);this._on(t,{mouseenter:function(t){n(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){n(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t);this._on(t,{focusin:function(t){n(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){n(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,r){var u,f,e=this.options[t];if(r=r||{},i=n.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],f=i.originalEvent)for(u in f)u in i||(i[u]=f[u]);return this.element.trigger(i,r),!(n.isFunction(e)&&e.apply(this.element[0],[i].concat(r))===!1||i.isDefaultPrevented())}};n.each({show:"fadeIn",hide:"fadeOut"},function(t,i){n.Widget.prototype["_"+t]=function(r,u,f){"string"==typeof u&&(u={effect:u});var o,e=u?u===!0||"number"==typeof u?i:u.effect||i:t;u=u||{};"number"==typeof u&&(u={duration:u});o=!n.isEmptyObject(u);u.complete=f;u.delay&&r.delay(u.delay);o&&n.effects&&n.effects.effect[e]?r[t](u):e!==t&&r[e]?r[e](u.duration,u.easing,f):r.queue(function(i){n(this)[t]();f&&f.call(r[0]);i()})}});n.widget;i=!1;n(document).mouseup(function(){i=!1});n.widget("ui.mouse",{version:"1.11.1",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(n){return t._mouseDown(n)}).bind("click."+this.widgetName,function(i){if(!0===n.data(i.target,t.widgetName+".preventClickEvent"))return(n.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1)});this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName);this._mouseMoveDelegate&&this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!i){this._mouseStarted&&this._mouseUp(t);this._mouseDownEvent=t;var r=this,u=1===t.which,f="string"==typeof this.options.cancel&&t.target.nodeName?n(t.target).closest(this.options.cancel).length:!1;return u&&!f&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){r.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(t)!==!1,!this._mouseStarted)?(t.preventDefault(),!0):(!0===n.data(t.target,this.widgetName+".preventClickEvent")&&n.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(n){return r._mouseMove(n)},this._mouseUpDelegate=function(n){return r._mouseUp(n)},this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),i=!0,!0)):!0}},_mouseMove:function(t){return n.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button?this._mouseUp(t):t.which?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&n.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),i=!1,!1},_mouseDistanceMet:function(n){return Math.max(Math.abs(this._mouseDownEvent.pageX-n.pageX),Math.abs(this._mouseDownEvent.pageY-n.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),function(){function f(n,t,i){return[parseFloat(n[0])*(a.test(n[0])?t/100:1),parseFloat(n[1])*(a.test(n[1])?i/100:1)]}function i(t,i){return parseInt(n.css(t,i),10)||0}function v(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:n.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}n.ui=n.ui||{};var u,e,r=Math.max,t=Math.abs,o=Math.round,s=/left|center|right/,h=/top|center|bottom/,c=/[\+\-]\d+(\.[\d]+)?%?/,l=/^\w+/,a=/%$/,y=n.fn.position;n.position={scrollbarWidth:function(){if(void 0!==u)return u;var r,i,t=n("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'><\/div><\/div>"),f=t.children()[0];return n("body").append(t),r=f.offsetWidth,t.css("overflow","scroll"),i=f.offsetWidth,r===i&&(i=t[0].clientWidth),t.remove(),u=r-i},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),r=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),u="scroll"===i||"auto"===i&&t.width<t.element[0].scrollWidth,f="scroll"===r||"auto"===r&&t.height<t.element[0].scrollHeight;return{width:f?n.position.scrollbarWidth():0,height:u?n.position.scrollbarWidth():0}},getWithinInfo:function(t){var i=n(t||window),r=n.isWindow(i[0]),u=!!i[0]&&9===i[0].nodeType;return{element:i,isWindow:r,isDocument:u,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:r||u?i.width():i.outerWidth(),height:r||u?i.height():i.outerHeight()}}};n.fn.position=function(u){if(!u||!u.of)return y.apply(this,arguments);u=n.extend({},u);var k,a,p,b,w,g,nt=n(u.of),it=n.position.getWithinInfo(u.within),rt=n.position.getScrollInfo(it),d=(u.collision||"flip").split(" "),tt={};return g=v(nt),nt[0].preventDefault&&(u.at="left top"),a=g.width,p=g.height,b=g.offset,w=n.extend({},b),n.each(["my","at"],function(){var t,i,n=(u[this]||"").split(" ");1===n.length&&(n=s.test(n[0])?n.concat(["center"]):h.test(n[0])?["center"].concat(n):["center","center"]);n[0]=s.test(n[0])?n[0]:"center";n[1]=h.test(n[1])?n[1]:"center";t=c.exec(n[0]);i=c.exec(n[1]);tt[this]=[t?t[0]:0,i?i[0]:0];u[this]=[l.exec(n[0])[0],l.exec(n[1])[0]]}),1===d.length&&(d[1]=d[0]),"right"===u.at[0]?w.left+=a:"center"===u.at[0]&&(w.left+=a/2),"bottom"===u.at[1]?w.top+=p:"center"===u.at[1]&&(w.top+=p/2),k=f(tt.at,a,p),w.left+=k[0],w.top+=k[1],this.each(function(){var y,g,h=n(this),c=h.outerWidth(),l=h.outerHeight(),ut=i(this,"marginLeft"),ft=i(this,"marginTop"),et=c+ut+i(this,"marginRight")+rt.width,ot=l+ft+i(this,"marginBottom")+rt.height,s=n.extend({},w),v=f(tt.my,h.outerWidth(),h.outerHeight());"right"===u.my[0]?s.left-=c:"center"===u.my[0]&&(s.left-=c/2);"bottom"===u.my[1]?s.top-=l:"center"===u.my[1]&&(s.top-=l/2);s.left+=v[0];s.top+=v[1];e||(s.left=o(s.left),s.top=o(s.top));y={marginLeft:ut,marginTop:ft};n.each(["left","top"],function(t,i){n.ui.position[d[t]]&&n.ui.position[d[t]][i](s,{targetWidth:a,targetHeight:p,elemWidth:c,elemHeight:l,collisionPosition:y,collisionWidth:et,collisionHeight:ot,offset:[k[0]+v[0],k[1]+v[1]],my:u.my,at:u.at,within:it,elem:h})});u.using&&(g=function(n){var i=b.left-s.left,o=i+a-c,f=b.top-s.top,v=f+p-l,e={target:{element:nt,left:b.left,top:b.top,width:a,height:p},element:{element:h,left:s.left,top:s.top,width:c,height:l},horizontal:0>o?"left":i>0?"right":"center",vertical:0>v?"top":f>0?"bottom":"middle"};c>a&&a>t(i+o)&&(e.horizontal="center");l>p&&p>t(f+v)&&(e.vertical="middle");e.important=r(t(i),t(o))>r(t(f),t(v))?"horizontal":"vertical";u.using.call(this,n,e)});h.offset(n.extend(s,{using:g}))})};n.ui.position={fit:{left:function(n,t){var h,e=t.within,u=e.isWindow?e.scrollLeft:e.offset.left,o=e.width,s=n.left-t.collisionPosition.marginLeft,i=u-s,f=s+t.collisionWidth-o-u;t.collisionWidth>o?i>0&&0>=f?(h=n.left+i+t.collisionWidth-o-u,n.left+=i-h):n.left=f>0&&0>=i?u:i>f?u+o-t.collisionWidth:u:i>0?n.left+=i:f>0?n.left-=f:n.left=r(n.left-s,n.left)},top:function(n,t){var h,o=t.within,u=o.isWindow?o.scrollTop:o.offset.top,e=t.within.height,s=n.top-t.collisionPosition.marginTop,i=u-s,f=s+t.collisionHeight-e-u;t.collisionHeight>e?i>0&&0>=f?(h=n.top+i+t.collisionHeight-e-u,n.top+=i-h):n.top=f>0&&0>=i?u:i>f?u+e-t.collisionHeight:u:i>0?n.top+=i:f>0?n.top-=f:n.top=r(n.top-s,n.top)}},flip:{left:function(n,i){var o,s,r=i.within,y=r.offset.left+r.scrollLeft,c=r.width,h=r.isWindow?r.scrollLeft:r.offset.left,l=n.left-i.collisionPosition.marginLeft,a=l-h,v=l+i.collisionWidth-c-h,u="left"===i.my[0]?-i.elemWidth:"right"===i.my[0]?i.elemWidth:0,f="left"===i.at[0]?i.targetWidth:"right"===i.at[0]?-i.targetWidth:0,e=-2*i.offset[0];0>a?(o=n.left+u+f+e+i.collisionWidth-c-y,(0>o||t(a)>o)&&(n.left+=u+f+e)):v>0&&(s=n.left-i.collisionPosition.marginLeft+u+f+e-h,(s>0||v>t(s))&&(n.left+=u+f+e))},top:function(n,i){var o,s,r=i.within,y=r.offset.top+r.scrollTop,a=r.height,h=r.isWindow?r.scrollTop:r.offset.top,v=n.top-i.collisionPosition.marginTop,c=v-h,l=v+i.collisionHeight-a-h,p="top"===i.my[1],u=p?-i.elemHeight:"bottom"===i.my[1]?i.elemHeight:0,f="top"===i.at[1]?i.targetHeight:"bottom"===i.at[1]?-i.targetHeight:0,e=-2*i.offset[1];0>c?(s=n.top+u+f+e+i.collisionHeight-a-y,n.top+u+f+e>c&&(0>s||t(c)>s)&&(n.top+=u+f+e)):l>0&&(o=n.top-i.collisionPosition.marginTop+u+f+e-h,n.top+u+f+e>l&&(o>0||l>t(o))&&(n.top+=u+f+e))}},flipfit:{left:function(){n.ui.position.flip.left.apply(this,arguments);n.ui.position.fit.left.apply(this,arguments)},top:function(){n.ui.position.flip.top.apply(this,arguments);n.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,r,u,f,o=document.getElementsByTagName("body")[0],s=document.createElement("div");t=document.createElement(o?"div":"body");r={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};o&&n.extend(r,{position:"absolute",left:"-1000px",top:"-1000px"});for(f in r)t.style[f]=r[f];t.appendChild(s);i=o||document.documentElement;i.insertBefore(t,i.firstChild);s.style.cssText="position: absolute; left: 10.7432222px;";u=n(s).offset().left;e=u>10&&11>u;t.innerHTML="";i.removeChild(t)}()}();n.ui.position;n.widget("ui.accordion",{version:"1.11.1",options:{active:0,animate:{},collapsible:!1,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},hideProps:{borderTopWidth:"hide",borderBottomWidth:"hide",paddingTop:"hide",paddingBottom:"hide",height:"hide"},showProps:{borderTopWidth:"show",borderBottomWidth:"show",paddingTop:"show",paddingBottom:"show",height:"show"},_create:function(){var t=this.options;this.prevShow=this.prevHide=n();this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist");t.collapsible||t.active!==!1&&null!=t.active||(t.active=0);this._processPanels();0>t.active&&(t.active+=this.headers.length);this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():n()}},_createIcons:function(){var t=this.options.icons;t&&(n("<span>").addClass("ui-accordion-header-icon ui-icon "+t.header).prependTo(this.headers),this.active.children(".ui-accordion-header-icon").removeClass(t.header).addClass(t.activeHeader),this.headers.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var n;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").removeUniqueId();this._destroyIcons();n=this.headers.next().removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeUniqueId();"content"!==this.options.heightStyle&&n.css("height","")},_setOption:function(n,t){return"active"===n?(this._activate(t),void 0):("event"===n&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(t)),this._super(n,t),"collapsible"!==n||t||this.options.active!==!1||this._activate(0),"icons"===n&&(this._destroyIcons(),t&&this._createIcons()),"disabled"===n&&(this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!t)),void 0)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var i=n.ui.keyCode,u=this.headers.length,f=this.headers.index(t.target),r=!1;switch(t.keyCode){case i.RIGHT:case i.DOWN:r=this.headers[(f+1)%u];break;case i.LEFT:case i.UP:r=this.headers[(f-1+u)%u];break;case i.SPACE:case i.ENTER:this._eventHandler(t);break;case i.HOME:r=this.headers[0];break;case i.END:r=this.headers[u-1]}r&&(n(t.target).attr("tabIndex",-1),n(r).attr("tabIndex",0),r.focus(),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===n.ui.keyCode.UP&&t.ctrlKey&&n(t.currentTarget).prev().focus()},refresh:function(){var t=this.options;this._processPanels();t.active===!1&&t.collapsible===!0||!this.headers.length?(t.active=!1,this.active=n()):t.active===!1?this._activate(0):this.active.length&&!n.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=n()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active);this._destroyIcons();this._refresh()},_processPanels:function(){this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-state-default ui-corner-all");this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide()},_refresh:function(){var t,i=this.options,r=i.heightStyle,u=this.element.parent();this.active=this._findActive(i.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all");this.active.next().addClass("ui-accordion-content-active").show();this.headers.attr("role","tab").each(function(){var t=n(this),r=t.uniqueId().attr("id"),i=t.next(),u=i.uniqueId().attr("id");t.attr("aria-controls",u);i.attr("aria-labelledby",r)}).next().attr("role","tabpanel");this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide();this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0);this._createIcons();this._setupEvents(i.event);"fill"===r?(t=u.height(),this.element.siblings(":visible").each(function(){var i=n(this),r=i.css("position");"absolute"!==r&&"fixed"!==r&&(t-=i.outerHeight(!0))}),this.headers.each(function(){t-=n(this).outerHeight(!0)}),this.headers.next().each(function(){n(this).height(Math.max(0,t-n(this).innerHeight()+n(this).height()))}).css("overflow","auto")):"auto"===r&&(t=0,this.headers.next().each(function(){t=Math.max(t,n(this).css("height","").height())}).height(t))},_activate:function(t){var i=this._findActive(t)[0];i!==this.active[0]&&(i=i||this.active[0],this._eventHandler({target:i,currentTarget:i,preventDefault:n.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):n()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&n.each(t.split(" "),function(n,t){i[t]="_eventHandler"});this._off(this.headers.add(this.headers.next()));this._on(this.headers,i);this._on(this.headers.next(),{keydown:"_panelKeyDown"});this._hoverable(this.headers);this._focusable(this.headers)},_eventHandler:function(t){var i=this.options,u=this.active,r=n(t.currentTarget),f=r[0]===u[0],e=f&&i.collapsible,s=e?n():r.next(),h=u.next(),o={oldHeader:u,oldPanel:h,newHeader:e?n():r,newPanel:s};t.preventDefault();f&&!i.collapsible||this._trigger("beforeActivate",t,o)===!1||(i.active=e?!1:this.headers.index(r),this.active=f?n():r,this._toggle(o),u.removeClass("ui-accordion-header-active ui-state-active"),i.icons&&u.children(".ui-accordion-header-icon").removeClass(i.icons.activeHeader).addClass(i.icons.header),f||(r.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top"),i.icons&&r.children(".ui-accordion-header-icon").removeClass(i.icons.header).addClass(i.icons.activeHeader),r.next().addClass("ui-accordion-content-active")))},_toggle:function(t){var r=t.newPanel,i=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0);this.prevShow=r;this.prevHide=i;this.options.animate?this._animate(r,i,t):(i.hide(),r.show(),this._toggleComplete(t));i.attr({"aria-hidden":"true"});i.prev().attr("aria-selected","false");r.length&&i.length?i.prev().attr({tabIndex:-1,"aria-expanded":"false"}):r.length&&this.headers.filter(function(){return 0===n(this).attr("tabIndex")}).attr("tabIndex",-1);r.attr("aria-hidden","false").prev().attr({"aria-selected":"true",tabIndex:0,"aria-expanded":"true"})},_animate:function(n,t,i){var h,r,u,c=this,o=0,l=n.length&&(!t.length||n.index()<t.index()),e=this.options.animate||{},f=l&&e.down||e,s=function(){c._toggleComplete(i)};return"number"==typeof f&&(u=f),"string"==typeof f&&(r=f),r=r||f.easing||e.easing,u=u||f.duration||e.duration,t.length?n.length?(h=n.show().outerHeight(),t.animate(this.hideProps,{duration:u,easing:r,step:function(n,t){t.now=Math.round(n)}}),n.hide().animate(this.showProps,{duration:u,easing:r,complete:s,step:function(n,i){i.now=Math.round(n);"height"!==i.prop?o+=i.now:"content"!==c.options.heightStyle&&(i.now=Math.round(h-t.outerHeight()-o),o=0)}}),void 0):t.animate(this.hideProps,u,r,s):n.animate(this.showProps,u,r,s)},_toggleComplete:function(n){var t=n.oldPanel;t.removeClass("ui-accordion-content-active").prev().removeClass("ui-corner-top").addClass("ui-corner-all");t.length&&(t.parent()[0].className=t.parent()[0].className);this._trigger("activate",null,n)}});n.widget("ui.menu",{version:"1.11.1",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},items:"> *",menus:"ul",position:{my:"left-1 top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element;this.mouseHandled=!1;this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0});this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true");this._on({"mousedown .ui-menu-item":function(n){n.preventDefault()},"click .ui-menu-item":function(t){var i=n(t.target);!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&n(this.document[0].activeElement).closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var i=n(t.currentTarget);i.siblings(".ui-state-active").removeClass("ui-state-active");this.focus(t,i)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(n,t){var i=this.active||this.element.find(this.options.items).eq(0);t||this.focus(n,i)},blur:function(t){this._delay(function(){n.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"});this.refresh();this._on(this.document,{click:function(n){this._closeOnDocumentClick(n)&&this.collapseAll(n);this.mouseHandled=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-menu-icons ui-front").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show();this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").removeUniqueId().removeClass("ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=n(this);t.data("ui-menu-submenu-carat")&&t.remove()});this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){function o(n){return n.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var i,f,r,e,u,s=!0;switch(t.keyCode){case n.ui.keyCode.PAGE_UP:this.previousPage(t);break;case n.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case n.ui.keyCode.HOME:this._move("first","first",t);break;case n.ui.keyCode.END:this._move("last","last",t);break;case n.ui.keyCode.UP:this.previous(t);break;case n.ui.keyCode.DOWN:this.next(t);break;case n.ui.keyCode.LEFT:this.collapse(t);break;case n.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case n.ui.keyCode.ENTER:case n.ui.keyCode.SPACE:this._activate(t);break;case n.ui.keyCode.ESCAPE:this.collapse(t);break;default:s=!1;f=this.previousFilter||"";r=String.fromCharCode(t.keyCode);e=!1;clearTimeout(this.filterTimer);r===f?e=!0:r=f+r;u=RegExp("^"+o(r),"i");i=this.activeMenu.find(this.options.items).filter(function(){return u.test(n(this).text())});i=e&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i;i.length||(r=String.fromCharCode(t.keyCode),u=RegExp("^"+o(r),"i"),i=this.activeMenu.find(this.options.items).filter(function(){return u.test(n(this).text())}));i.length?(this.focus(t,i),i.length>1?(this.previousFilter=r,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}s&&t.preventDefault()},_activate:function(n){this.active.is(".ui-state-disabled")||(this.active.is("[aria-haspopup='true']")?this.expand(n):this.select(n))},refresh:function(){var i,t,u=this,f=this.options.icons.submenu,r=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length);r.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-front").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=n(this),i=t.parent(),r=n("<span>").addClass("ui-menu-icon ui-icon "+f).data("ui-menu-submenu-carat",!0);i.attr("aria-haspopup","true").prepend(r);t.attr("aria-labelledby",i.attr("id"))});i=r.add(this.element);t=i.find(this.options.items);t.not(".ui-menu-item").each(function(){var t=n(this);u._isDivider(t)&&t.addClass("ui-widget-content ui-menu-divider")});t.not(".ui-menu-item, .ui-menu-divider").addClass("ui-menu-item").uniqueId().attr({tabIndex:-1,role:this._itemRole()});t.filter(".ui-state-disabled").attr("aria-disabled","true");this.active&&!n.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(n,t){"icons"===n&&this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(t.submenu);"disabled"===n&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t);this._super(n,t)},focus:function(n,t){var i,r;this.blur(n,n&&"focus"===n.type);this._scrollIntoView(t);this.active=t.first();r=this.active.addClass("ui-state-focus").removeClass("ui-state-active");this.options.role&&this.element.attr("aria-activedescendant",r.attr("id"));this.active.parent().closest(".ui-menu-item").addClass("ui-state-active");n&&"keydown"===n.type?this._close():this.timer=this._delay(function(){this._close()},this.delay);i=t.children(".ui-menu");i.length&&n&&/^mouse/.test(n.type)&&this._startOpening(i);this.activeMenu=t.parent();this._trigger("focus",n,{item:t})},_scrollIntoView:function(t){var e,o,i,r,u,f;this._hasScroll()&&(e=parseFloat(n.css(this.activeMenu[0],"borderTopWidth"))||0,o=parseFloat(n.css(this.activeMenu[0],"paddingTop"))||0,i=t.offset().top-this.activeMenu.offset().top-e-o,r=this.activeMenu.scrollTop(),u=this.activeMenu.height(),f=t.outerHeight(),0>i?this.activeMenu.scrollTop(r+i):i+f>u&&this.activeMenu.scrollTop(r+i-u+f))},blur:function(n,t){t||clearTimeout(this.timer);this.active&&(this.active.removeClass("ui-state-focus"),this.active=null,this._trigger("blur",n,{item:this.active}))},_startOpening:function(n){clearTimeout(this.timer);"true"===n.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close();this._open(n)},this.delay))},_open:function(t){var i=n.extend({of:this.active},this.options.position);clearTimeout(this.timer);this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true");t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(t,i){clearTimeout(this.timer);this.timer=this._delay(function(){var r=i?this.element:n(t&&t.target).closest(this.element.find(".ui-menu"));r.length||(r=this.element);this._close(r);this.blur(t);this.activeMenu=r},this.delay)},_close:function(n){n||(n=this.active?this.active.parent():this.element);n.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find(".ui-state-active").not(".ui-state-focus").removeClass("ui-state-active")},_closeOnDocumentClick:function(t){return!n(t.target).closest(".ui-menu").length},_isDivider:function(n){return!/[^\-\u2014\u2013\s]/.test(n.text())},collapse:function(n){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(n,t))},expand:function(n){var t=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(n,t)}))},next:function(n){this._move("next","first",n)},previous:function(n){this._move("prev","last",n)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(n,t,i){var r;this.active&&(r="first"===n||"last"===n?this.active["first"===n?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[n+"All"](".ui-menu-item").eq(0));r&&r.length&&this.active||(r=this.activeMenu.find(this.options.items)[t]());this.focus(i,r)},nextPage:function(t){var i,r,u;return this.active?(this.isLastItem()||(this._hasScroll()?(r=this.active.offset().top,u=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=n(this),0>i.offset().top-r-u}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(t),void 0)},previousPage:function(t){var i,r,u;return this.active?(this.isFirstItem()||(this._hasScroll()?(r=this.active.offset().top,u=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=n(this),i.offset().top-r+u>0}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items).first())),void 0):(this.next(t),void 0)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(t){this.active=this.active||n(t.target).closest(".ui-menu-item");var i={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(t,!0);this._trigger("select",t,i)}});n.widget("ui.autocomplete",{version:"1.11.1",defaultElement:"<input>",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var t,i,r,u=this.element[0].nodeName.toLowerCase(),f="textarea"===u,e="input"===u;this.isMultiLine=f?!0:e?!1:this.element.prop("isContentEditable");this.valueMethod=this.element[f||e?"val":"text"];this.isNewMenu=!0;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off");this._on(this.element,{keydown:function(u){if(this.element.prop("readOnly"))return t=!0,r=!0,i=!0,void 0;t=!1;r=!1;i=!1;var f=n.ui.keyCode;switch(u.keyCode){case f.PAGE_UP:t=!0;this._move("previousPage",u);break;case f.PAGE_DOWN:t=!0;this._move("nextPage",u);break;case f.UP:t=!0;this._keyEvent("previous",u);break;case f.DOWN:t=!0;this._keyEvent("next",u);break;case f.ENTER:this.menu.active&&(t=!0,u.preventDefault(),this.menu.select(u));break;case f.TAB:this.menu.active&&this.menu.select(u);break;case f.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(u),u.preventDefault());break;default:i=!0;this._searchTimeout(u)}},keypress:function(r){if(t)return t=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&r.preventDefault(),void 0;if(!i){var u=n.ui.keyCode;switch(r.keyCode){case u.PAGE_UP:this._move("previousPage",r);break;case u.PAGE_DOWN:this._move("nextPage",r);break;case u.UP:this._keyEvent("previous",r);break;case u.DOWN:this._keyEvent("next",r)}}},input:function(n){return r?(r=!1,n.preventDefault(),void 0):(this._searchTimeout(n),void 0)},focus:function(){this.selectedItem=null;this.previous=this._value()},blur:function(n){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(n),this._change(n),void 0)}});this._initSource();this.menu=n("<ul>").addClass("ui-autocomplete ui-front").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance");this._on(this.menu.element,{mousedown:function(t){t.preventDefault();this.cancelBlur=!0;this._delay(function(){delete this.cancelBlur});var i=this.menu.element[0];n(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(r){r.target===t.element[0]||r.target===i||n.contains(i,r.target)||t.close()})})},menufocus:function(t,i){var r,u;return this.isNewMenu&&(this.isNewMenu=!1,t.originalEvent&&/^mouse/.test(t.originalEvent.type))?(this.menu.blur(),this.document.one("mousemove",function(){n(t.target).trigger(t.originalEvent)}),void 0):(u=i.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",t,{item:u})&&t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(u.value),r=i.item.attr("aria-label")||u.value,r&&n.trim(r).length&&(this.liveRegion.children().hide(),n("<div>").text(r).appendTo(this.liveRegion)),void 0)},menuselect:function(n,t){var i=t.item.data("ui-autocomplete-item"),r=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=r,this._delay(function(){this.previous=r;this.selectedItem=i}));!1!==this._trigger("select",n,{item:i})&&this._value(i.value);this.term=this._value();this.close(n);this.selectedItem=i}});this.liveRegion=n("<span>",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body);this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching);this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete");this.menu.element.remove();this.liveRegion.remove()},_setOption:function(n,t){this._super(n,t);"source"===n&&this._initSource();"appendTo"===n&&this.menu.element.appendTo(this._appendTo());"disabled"===n&&t&&this.xhr&&this.xhr.abort()},_appendTo:function(){var t=this.options.appendTo;return t&&(t=t.jquery||t.nodeType?n(t):this.document.find(t).eq(0)),t&&t[0]||(t=this.element.closest(".ui-front")),t.length||(t=this.document[0].body),t},_initSource:function(){var i,r,t=this;n.isArray(this.options.source)?(i=this.options.source,this.source=function(t,r){r(n.ui.autocomplete.filter(i,t.term))}):"string"==typeof this.options.source?(r=this.options.source,this.source=function(i,u){t.xhr&&t.xhr.abort();t.xhr=n.ajax({url:r,data:i,dataType:"json",success:function(n){u(n)},error:function(){u([])}})}):this.source=this.options.source},_searchTimeout:function(n){clearTimeout(this.searching);this.searching=this._delay(function(){var t=this.term===this._value(),i=this.menu.element.is(":visible"),r=n.altKey||n.ctrlKey||n.metaKey||n.shiftKey;t&&(!t||i||r)||(this.selectedItem=null,this.search(null,n))},this.options.delay)},search:function(n,t){return n=null!=n?n:this._value(),this.term=this._value(),n.length<this.options.minLength?this.close(t):this._trigger("search",t)!==!1?this._search(n):void 0},_search:function(n){this.pending++;this.element.addClass("ui-autocomplete-loading");this.cancelSearch=!1;this.source({term:n},this._response())},_response:function(){var t=++this.requestIndex;return n.proxy(function(n){t===this.requestIndex&&this.__response(n);this.pending--;this.pending||this.element.removeClass("ui-autocomplete-loading")},this)},__response:function(n){n&&(n=this._normalize(n));this._trigger("response",null,{content:n});!this.options.disabled&&n&&n.length&&!this.cancelSearch?(this._suggest(n),this._trigger("open")):this._close()},close:function(n){this.cancelSearch=!0;this._close(n)},_close:function(n){this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",n))},_change:function(n){this.previous!==this._value()&&this._trigger("change",n,{item:this.selectedItem})},_normalize:function(t){return t.length&&t[0].label&&t[0].value?t:n.map(t,function(t){return"string"==typeof t?{label:t,value:t}:n.extend({},t,{label:t.label||t.value,value:t.value||t.label})})},_suggest:function(t){var i=this.menu.element.empty();this._renderMenu(i,t);this.isNewMenu=!0;this.menu.refresh();i.show();this._resizeMenu();i.position(n.extend({of:this.element},this.options.position));this.options.autoFocus&&this.menu.next()},_resizeMenu:function(){var n=this.menu.element;n.outerWidth(Math.max(n.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,i){var r=this;n.each(i,function(n,i){r._renderItemData(t,i)})},_renderItemData:function(n,t){return this._renderItem(n,t).data("ui-autocomplete-item",t)},_renderItem:function(t,i){return n("<li>").text(i.label).appendTo(t)},_move:function(n,t){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(n)||this.menu.isLastItem()&&/^next/.test(n)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[n](t),void 0):(this.search(null,t),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(n,t){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(n,t),t.preventDefault())}});n.extend(n.ui.autocomplete,{escapeRegex:function(n){return n.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,i){var r=RegExp(n.ui.autocomplete.escapeRegex(i),"i");return n.grep(t,function(n){return r.test(n.label||n.value||n)})}});n.widget("ui.autocomplete",n.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(n){return n+(n>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(t){var i;this._superApply(arguments);this.options.disabled||this.cancelSearch||(i=t&&t.length?this.options.messages.results(t.length):this.options.messages.noResults,this.liveRegion.children().hide(),n("<div>").text(i).appendTo(this.liveRegion))}});n.ui.autocomplete;var e,p="ui-button ui-widget ui-state-default ui-corner-all",w="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",d=function(){var t=n(this);setTimeout(function(){t.find(":ui-button").button("refresh")},1)},b=function(t){var i=t.name,r=t.form,u=n([]);return i&&(i=i.replace(/'/g,"\\'"),u=r?n(r).find("[name='"+i+"'][type=radio]"):n("[name='"+i+"'][type=radio]",t.ownerDocument).filter(function(){return!this.form})),u};n.widget("ui.button",{version:"1.11.1",defaultElement:"<button>",options:{disabled:null,text:!0,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset"+this.eventNamespace).bind("reset"+this.eventNamespace,d);"boolean"!=typeof this.options.disabled?this.options.disabled=!!this.element.prop("disabled"):this.element.prop("disabled",this.options.disabled);this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var i=this,t=this.options,r="checkbox"===this.type||"radio"===this.type,u=r?"":"ui-state-active";null===t.label&&(t.label="input"===this.type?this.buttonElement.val():this.buttonElement.html());this._hoverable(this.buttonElement);this.buttonElement.addClass(p).attr("role","button").bind("mouseenter"+this.eventNamespace,function(){t.disabled||this===e&&n(this).addClass("ui-state-active")}).bind("mouseleave"+this.eventNamespace,function(){t.disabled||n(this).removeClass(u)}).bind("click"+this.eventNamespace,function(n){t.disabled&&(n.preventDefault(),n.stopImmediatePropagation())});this._on({focus:function(){this.buttonElement.addClass("ui-state-focus")},blur:function(){this.buttonElement.removeClass("ui-state-focus")}});r&&this.element.bind("change"+this.eventNamespace,function(){i.refresh()});"checkbox"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){if(t.disabled)return!1}):"radio"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){if(t.disabled)return!1;n(this).addClass("ui-state-active");i.buttonElement.attr("aria-pressed","true");var r=i.element[0];b(r).not(r).map(function(){return n(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")}):(this.buttonElement.bind("mousedown"+this.eventNamespace,function(){return t.disabled?!1:(n(this).addClass("ui-state-active"),e=this,i.document.one("mouseup",function(){e=null}),void 0)}).bind("mouseup"+this.eventNamespace,function(){return t.disabled?!1:(n(this).removeClass("ui-state-active"),void 0)}).bind("keydown"+this.eventNamespace,function(i){return t.disabled?!1:((i.keyCode===n.ui.keyCode.SPACE||i.keyCode===n.ui.keyCode.ENTER)&&n(this).addClass("ui-state-active"),void 0)}).bind("keyup"+this.eventNamespace+" blur"+this.eventNamespace,function(){n(this).removeClass("ui-state-active")}),this.buttonElement.is("a")&&this.buttonElement.keyup(function(t){t.keyCode===n.ui.keyCode.SPACE&&n(this).click()}));this._setOption("disabled",t.disabled);this._resetButton()},_determineButtonType:function(){var n,t,i;this.type=this.element.is("[type=checkbox]")?"checkbox":this.element.is("[type=radio]")?"radio":this.element.is("input")?"input":"button";"checkbox"===this.type||"radio"===this.type?(n=this.element.parents().last(),t="label[for='"+this.element.attr("id")+"']",this.buttonElement=n.find(t),this.buttonElement.length||(n=n.length?n.siblings():this.element.siblings(),this.buttonElement=n.filter(t),this.buttonElement.length||(this.buttonElement=n.find(t))),this.element.addClass("ui-helper-hidden-accessible"),i=this.element.is(":checked"),i&&this.buttonElement.addClass("ui-state-active"),this.buttonElement.prop("aria-pressed",i)):this.buttonElement=this.element},widget:function(){return this.buttonElement},_destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass(p+" ui-state-active "+w).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());this.hasTitle||this.buttonElement.removeAttr("title")},_setOption:function(n,t){return this._super(n,t),"disabled"===n?(this.widget().toggleClass("ui-state-disabled",!!t),this.element.prop("disabled",!!t),t&&("checkbox"===this.type||"radio"===this.type?this.buttonElement.removeClass("ui-state-focus"):this.buttonElement.removeClass("ui-state-focus ui-state-active")),void 0):(this._resetButton(),void 0)},refresh:function(){var t=this.element.is("input, button")?this.element.is(":disabled"):this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOption("disabled",t);"radio"===this.type?b(this.element[0]).each(function(){n(this).is(":checked")?n(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true"):n(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}):"checkbox"===this.type&&(this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false"))},_resetButton:function(){if("input"===this.type)return this.options.label&&this.element.val(this.options.label),void 0;var i=this.buttonElement.removeClass(w),f=n("<span><\/span>",this.document[0]).addClass("ui-button-text").html(this.options.label).appendTo(i.empty()).text(),t=this.options.icons,u=t.primary&&t.secondary,r=[];t.primary||t.secondary?(this.options.text&&r.push("ui-button-text-icon"+(u?"s":t.primary?"-primary":"-secondary")),t.primary&&i.prepend("<span class='ui-button-icon-primary ui-icon "+t.primary+"'><\/span>"),t.secondary&&i.append("<span class='ui-button-icon-secondary ui-icon "+t.secondary+"'><\/span>"),this.options.text||(r.push(u?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||i.attr("title",n.trim(f)))):r.push("ui-button-text-only");i.addClass(r.join(" "))}});n.widget("ui.buttonset",{version:"1.11.1",options:{items:"button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(ui-button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(n,t){"disabled"===n&&this.buttons.button("option",n,t);this._super(n,t)},refresh:function(){var i="rtl"===this.element.css("direction"),t=this.element.find(this.options.items),r=t.filter(":ui-button");t.not(":ui-button").button();r.button("refresh");this.buttons=t.map(function(){return n(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(i?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(i?"ui-corner-left":"ui-corner-right").end().end()},_destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return n(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy")}});n.ui.button;n.extend(n.ui,{datepicker:{version:"1.11.1"}});n.extend(l.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(n){return r(this._defaults,n||{}),this},_attachDatepicker:function(t,i){var r,f,u;r=t.nodeName.toLowerCase();f="div"===r||"span"===r;t.id||(this.uuid+=1,t.id="dp"+this.uuid);u=this._newInst(n(t),f);u.settings=n.extend({},i||{});"input"===r?this._connectDatepicker(t,u):f&&this._inlineDatepicker(t,u)},_newInst:function(t,i){var r=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:r,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?a(n("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'><\/div>")):this.dpDiv}},_connectDatepicker:function(t,i){var r=n(t);i.append=n([]);i.trigger=n([]);r.hasClass(this.markerClassName)||(this._attachments(r,i),r.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(i),n.data(t,"datepicker",i),i.settings.disabled&&this._disableDatepicker(t))},_attachments:function(t,i){var u,r,f,e=this._get(i,"appendText"),o=this._get(i,"isRTL");i.append&&i.append.remove();e&&(i.append=n("<span class='"+this._appendClass+"'>"+e+"<\/span>"),t[o?"before":"after"](i.append));t.unbind("focus",this._showDatepicker);i.trigger&&i.trigger.remove();u=this._get(i,"showOn");("focus"===u||"both"===u)&&t.focus(this._showDatepicker);("button"===u||"both"===u)&&(r=this._get(i,"buttonText"),f=this._get(i,"buttonImage"),i.trigger=n(this._get(i,"buttonImageOnly")?n("<img/>").addClass(this._triggerClass).attr({src:f,alt:r,title:r}):n("<button type='button'><\/button>").addClass(this._triggerClass).html(f?n("<img/>").attr({src:f,alt:r,title:r}):r)),t[o?"before":"after"](i.trigger),i.trigger.click(function(){return n.datepicker._datepickerShowing&&n.datepicker._lastInput===t[0]?n.datepicker._hideDatepicker():n.datepicker._datepickerShowing&&n.datepicker._lastInput!==t[0]?(n.datepicker._hideDatepicker(),n.datepicker._showDatepicker(t[0])):n.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(n){if(this._get(n,"autoSize")&&!n.inline){var r,u,f,t,i=new Date(2009,11,20),e=this._get(n,"dateFormat");e.match(/[DM]/)&&(r=function(n){for(u=0,f=0,t=0;n.length>t;t++)n[t].length>u&&(u=n[t].length,f=t);return f},i.setMonth(r(this._get(n,e.match(/MM/)?"monthNames":"monthNamesShort"))),i.setDate(r(this._get(n,e.match(/DD/)?"dayNames":"dayNamesShort"))+20-i.getDay()));n.input.attr("size",this._formatDate(n,i).length)}},_inlineDatepicker:function(t,i){var r=n(t);r.hasClass(this.markerClassName)||(r.addClass(this.markerClassName).append(i.dpDiv),n.data(t,"datepicker",i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,u,f,e){var s,h,c,l,a,o=this._dialogInst;return o||(this.uuid+=1,s="dp"+this.uuid,this._dialogInput=n("<input type='text' id='"+s+"' style='position: absolute; top: -100px; width: 0px;'/>"),this._dialogInput.keydown(this._doKeyDown),n("body").append(this._dialogInput),o=this._dialogInst=this._newInst(this._dialogInput,!1),o.settings={},n.data(this._dialogInput[0],"datepicker",o)),r(o.settings,f||{}),i=i&&i.constructor===Date?this._formatDate(o,i):i,this._dialogInput.val(i),this._pos=e?e.length?e:[e.pageX,e.pageY]:null,this._pos||(h=document.documentElement.clientWidth,c=document.documentElement.clientHeight,l=document.documentElement.scrollLeft||document.body.scrollLeft,a=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[h/2-100+l,c/2-150+a]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),o.settings.onSelect=u,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),n.blockUI&&n.blockUI(this.dpDiv),n.data(this._dialogInput[0],"datepicker",o),this},_destroyDatepicker:function(t){var i,r=n(t),u=n.data(t,"datepicker");r.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),n.removeData(t,"datepicker"),"input"===i?(u.append.remove(),u.trigger.remove(),r.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&r.removeClass(this.markerClassName).empty())},_enableDatepicker:function(t){var i,r,u=n(t),f=n.data(t,"datepicker");u.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,f.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(r=u.children("."+this._inlineClass),r.children().removeClass("ui-state-disabled"),r.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=n.map(this._disabledInputs,function(n){return n===t?null:n}))},_disableDatepicker:function(t){var i,r,u=n(t),f=n.data(t,"datepicker");u.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,f.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(r=u.children("."+this._inlineClass),r.children().addClass("ui-state-disabled"),r.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=n.map(this._disabledInputs,function(n){return n===t?null:n}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(n){if(!n)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===n)return!0;return!1},_getInst:function(t){try{return n.data(t,"datepicker")}catch(i){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(t,i,u){var e,h,o,s,f=this._getInst(t);return 2===arguments.length&&"string"==typeof i?"defaults"===i?n.extend({},n.datepicker._defaults):f?"all"===i?n.extend({},f.settings):this._get(f,i):null:(e=i||{},"string"==typeof i&&(e={},e[i]=u),f&&(this._curInst===f&&this._hideDatepicker(),h=this._getDateDatepicker(t,!0),o=this._getMinMaxDate(f,"min"),s=this._getMinMaxDate(f,"max"),r(f.settings,e),null!==o&&void 0!==e.dateFormat&&void 0===e.minDate&&(f.settings.minDate=this._formatDate(f,o)),null!==s&&void 0!==e.dateFormat&&void 0===e.maxDate&&(f.settings.maxDate=this._formatDate(f,s)),"disabled"in e&&(e.disabled?this._disableDatepicker(t):this._enableDatepicker(t)),this._attachments(n(t),f),this._autoSize(f),this._setDate(f,h),this._updateAlternate(f),this._updateDatepicker(f)),void 0)},_changeDatepicker:function(n,t,i){this._optionDatepicker(n,t,i)},_refreshDatepicker:function(n){var t=this._getInst(n);t&&this._updateDatepicker(t)},_setDateDatepicker:function(n,t){var i=this._getInst(n);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(n,t){var i=this._getInst(n);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var u,e,f,i=n.datepicker._getInst(t.target),r=!0,o=i.dpDiv.is(".ui-datepicker-rtl");if(i._keyEvent=!0,n.datepicker._datepickerShowing)switch(t.keyCode){case 9:n.datepicker._hideDatepicker();r=!1;break;case 13:return f=n("td."+n.datepicker._dayOverClass+":not(."+n.datepicker._currentClass+")",i.dpDiv),f[0]&&n.datepicker._selectDay(t.target,i.selectedMonth,i.selectedYear,f[0]),u=n.datepicker._get(i,"onSelect"),u?(e=n.datepicker._formatDate(i),u.apply(i.input?i.input[0]:null,[e,i])):n.datepicker._hideDatepicker(),!1;case 27:n.datepicker._hideDatepicker();break;case 33:n.datepicker._adjustDate(t.target,t.ctrlKey?-n.datepicker._get(i,"stepBigMonths"):-n.datepicker._get(i,"stepMonths"),"M");break;case 34:n.datepicker._adjustDate(t.target,t.ctrlKey?+n.datepicker._get(i,"stepBigMonths"):+n.datepicker._get(i,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&n.datepicker._clearDate(t.target);r=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&n.datepicker._gotoToday(t.target);r=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&n.datepicker._adjustDate(t.target,o?1:-1,"D");r=t.ctrlKey||t.metaKey;t.originalEvent.altKey&&n.datepicker._adjustDate(t.target,t.ctrlKey?-n.datepicker._get(i,"stepBigMonths"):-n.datepicker._get(i,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&n.datepicker._adjustDate(t.target,-7,"D");r=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&n.datepicker._adjustDate(t.target,o?-1:1,"D");r=t.ctrlKey||t.metaKey;t.originalEvent.altKey&&n.datepicker._adjustDate(t.target,t.ctrlKey?+n.datepicker._get(i,"stepBigMonths"):+n.datepicker._get(i,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&n.datepicker._adjustDate(t.target,7,"D");r=t.ctrlKey||t.metaKey;break;default:r=!1}else 36===t.keyCode&&t.ctrlKey?n.datepicker._showDatepicker(this):r=!1;r&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(t){var i,r,u=n.datepicker._getInst(t.target);if(n.datepicker._get(u,"constrainInput"))return(i=n.datepicker._possibleChars(n.datepicker._get(u,"dateFormat")),r=String.fromCharCode(null==t.charCode?t.keyCode:t.charCode),t.ctrlKey||t.metaKey||" ">r||!i||i.indexOf(r)>-1)},_doKeyUp:function(t){var r,i=n.datepicker._getInst(t.target);if(i.input.val()!==i.lastVal)try{r=n.datepicker.parseDate(n.datepicker._get(i,"dateFormat"),i.input?i.input.val():null,n.datepicker._getFormatConfig(i));r&&(n.datepicker._setDateFromField(i),n.datepicker._updateAlternate(i),n.datepicker._updateDatepicker(i))}catch(u){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=n("input",t.parentNode)[0]),!n.datepicker._isDisabledDatepicker(t)&&n.datepicker._lastInput!==t){var i,o,s,u,f,e,h;i=n.datepicker._getInst(t);n.datepicker._curInst&&n.datepicker._curInst!==i&&(n.datepicker._curInst.dpDiv.stop(!0,!0),i&&n.datepicker._datepickerShowing&&n.datepicker._hideDatepicker(n.datepicker._curInst.input[0]));o=n.datepicker._get(i,"beforeShow");s=o?o.apply(t,[t,i]):{};s!==!1&&(r(i.settings,s),i.lastVal=null,n.datepicker._lastInput=t,n.datepicker._setDateFromField(i),n.datepicker._inDialog&&(t.value=""),n.datepicker._pos||(n.datepicker._pos=n.datepicker._findPos(t),n.datepicker._pos[1]+=t.offsetHeight),u=!1,n(t).parents().each(function(){return u|="fixed"===n(this).css("position"),!u}),f={left:n.datepicker._pos[0],top:n.datepicker._pos[1]},n.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),n.datepicker._updateDatepicker(i),f=n.datepicker._checkOffset(i,f,u),i.dpDiv.css({position:n.datepicker._inDialog&&n.blockUI?"static":u?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"}),i.inline||(e=n.datepicker._get(i,"showAnim"),h=n.datepicker._get(i,"duration"),i.dpDiv.css("z-index",k(n(t))+1),n.datepicker._datepickerShowing=!0,n.effects&&n.effects.effect[e]?i.dpDiv.show(e,n.datepicker._get(i,"showOptions"),h):i.dpDiv[e||"show"](e?h:null),n.datepicker._shouldFocusInput(i)&&i.input.focus(),n.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4;u=t;t.dpDiv.empty().append(this._generateHTML(t));this._attachHandlers(t);var i,r=this._getNumberOfMonths(t),f=r[1],e=t.dpDiv.find("."+this._dayOverClass+" a");e.length>0&&v.apply(e.get(0));t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");f>1&&t.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",17*f+"em");t.dpDiv[(1!==r[0]||1!==r[1]?"add":"remove")+"Class"]("ui-datepicker-multi");t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");t===n.datepicker._curInst&&n.datepicker._datepickerShowing&&n.datepicker._shouldFocusInput(t)&&t.input.focus();t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml);i=t.yearshtml=null},0))},_shouldFocusInput:function(n){return n.input&&n.input.is(":visible")&&!n.input.is(":disabled")&&!n.input.is(":focus")},_checkOffset:function(t,i,r){var u=t.dpDiv.outerWidth(),f=t.dpDiv.outerHeight(),h=t.input?t.input.outerWidth():0,o=t.input?t.input.outerHeight():0,e=document.documentElement.clientWidth+(r?0:n(document).scrollLeft()),s=document.documentElement.clientHeight+(r?0:n(document).scrollTop());return i.left-=this._get(t,"isRTL")?u-h:0,i.left-=r&&i.left===t.input.offset().left?n(document).scrollLeft():0,i.top-=r&&i.top===t.input.offset().top+o?n(document).scrollTop():0,i.left-=Math.min(i.left,i.left+u>e&&e>u?Math.abs(i.left+u-e):0),i.top-=Math.min(i.top,i.top+f>s&&s>f?Math.abs(f+o):0),i},_findPos:function(t){for(var i,r=this._getInst(t),u=this._get(r,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||n.expr.filters.hidden(t));)t=t[u?"previousSibling":"nextSibling"];return i=n(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var r,f,u,e,i=this._curInst;!i||t&&i!==n.data(t,"datepicker")||this._datepickerShowing&&(r=this._get(i,"showAnim"),f=this._get(i,"duration"),u=function(){n.datepicker._tidyDialog(i)},n.effects&&(n.effects.effect[r]||n.effects[r])?i.dpDiv.hide(r,n.datepicker._get(i,"showOptions"),f,u):i.dpDiv["slideDown"===r?"slideUp":"fadeIn"===r?"fadeOut":"hide"](r?f:null,u),r||u(),this._datepickerShowing=!1,e=this._get(i,"onClose"),e&&e.apply(i.input?i.input[0]:null,[i.input?i.input.val():"",i]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),n.blockUI&&(n.unblockUI(),n("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(n){n.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(n.datepicker._curInst){var i=n(t.target),r=n.datepicker._getInst(i[0]);(i[0].id===n.datepicker._mainDivId||0!==i.parents("#"+n.datepicker._mainDivId).length||i.hasClass(n.datepicker.markerClassName)||i.closest("."+n.datepicker._triggerClass).length||!n.datepicker._datepickerShowing||n.datepicker._inDialog&&n.blockUI)&&(!i.hasClass(n.datepicker.markerClassName)||n.datepicker._curInst===r)||n.datepicker._hideDatepicker()}},_adjustDate:function(t,i,r){var f=n(t),u=this._getInst(f[0]);this._isDisabledDatepicker(f[0])||(this._adjustInstDate(u,i+("M"===r?this._get(u,"showCurrentAtPos"):0),r),this._updateDatepicker(u))},_gotoToday:function(t){var r,u=n(t),i=this._getInst(u[0]);this._get(i,"gotoCurrent")&&i.currentDay?(i.selectedDay=i.currentDay,i.drawMonth=i.selectedMonth=i.currentMonth,i.drawYear=i.selectedYear=i.currentYear):(r=new Date,i.selectedDay=r.getDate(),i.drawMonth=i.selectedMonth=r.getMonth(),i.drawYear=i.selectedYear=r.getFullYear());this._notifyChange(i);this._adjustDate(u)},_selectMonthYear:function(t,i,r){var f=n(t),u=this._getInst(f[0]);u["selected"+("M"===r?"Month":"Year")]=u["draw"+("M"===r?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10);this._notifyChange(u);this._adjustDate(f)},_selectDay:function(t,i,r,u){var f,e=n(t);n(u).hasClass(this._unselectableClass)||this._isDisabledDatepicker(e[0])||(f=this._getInst(e[0]),f.selectedDay=f.currentDay=n("a",u).html(),f.selectedMonth=f.currentMonth=i,f.selectedYear=f.currentYear=r,this._selectDate(t,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear)))},_clearDate:function(t){var i=n(t);this._selectDate(i,"")},_selectDate:function(t,i){var u,f=n(t),r=this._getInst(f[0]);i=null!=i?i:this._formatDate(r);r.input&&r.input.val(i);this._updateAlternate(r);u=this._get(r,"onSelect");u?u.apply(r.input?r.input[0]:null,[i,r]):r.input&&r.input.trigger("change");r.inline?this._updateDatepicker(r):(this._hideDatepicker(),this._lastInput=r.input[0],"object"!=typeof r.input[0]&&r.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,r,u,f=this._get(t,"altField");f&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),r=this._getDate(t),u=this.formatDate(i,r,this._getFormatConfig(t)),n(f).each(function(){n(this).val(u)}))},noWeekends:function(n){var t=n.getDay();return[t>0&&6>t,""]},iso8601Week:function(n){var i,t=new Date(n.getTime());return t.setDate(t.getDate()+4-(t.getDay()||7)),i=t.getTime(),t.setMonth(0),t.setDate(1),Math.floor(Math.round((i-t)/864e5)/7)+1},parseDate:function(t,i,r){if(null==t||null==i)throw"Invalid arguments";if(i="object"==typeof i?""+i:i+"",""===i)return null;for(var a,v,u,f=0,y=(r?r.shortYearCutoff:null)||this._defaults.shortYearCutoff,d="string"!=typeof y?y:(new Date).getFullYear()%100+parseInt(y,10),g=(r?r.dayNamesShort:null)||this._defaults.dayNamesShort,nt=(r?r.dayNames:null)||this._defaults.dayNames,tt=(r?r.monthNamesShort:null)||this._defaults.monthNamesShort,it=(r?r.monthNames:null)||this._defaults.monthNames,e=-1,s=-1,h=-1,p=-1,w=!1,l=function(n){var i=t.length>o+1&&t.charAt(o+1)===n;return i&&o++,i},c=function(n){var u=l(n),r="@"===n?14:"!"===n?20:"y"===n&&u?4:"o"===n?3:2,e="y"===n?r:1,o=RegExp("^\\d{"+e+","+r+"}"),t=i.substring(f).match(o);if(!t)throw"Missing number at position "+f;return f+=t[0].length,parseInt(t[0],10)},k=function(t,r,u){var e=-1,o=n.map(l(t)?u:r,function(n,t){return[[t,n]]}).sort(function(n,t){return-(n[1].length-t[1].length)});if(n.each(o,function(n,t){var r=t[1];if(i.substr(f,r.length).toLowerCase()===r.toLowerCase())return(e=t[0],f+=r.length,!1)}),-1!==e)return e+1;throw"Unknown name at position "+f;},b=function(){if(i.charAt(f)!==t.charAt(o))throw"Unexpected literal at position "+f;f++},o=0;t.length>o;o++)if(w)"'"!==t.charAt(o)||l("'")?b():w=!1;else switch(t.charAt(o)){case"d":h=c("d");break;case"D":k("D",g,nt);break;case"o":p=c("o");break;case"m":s=c("m");break;case"M":s=k("M",tt,it);break;case"y":e=c("y");break;case"@":u=new Date(c("@"));e=u.getFullYear();s=u.getMonth()+1;h=u.getDate();break;case"!":u=new Date((c("!")-this._ticksTo1970)/1e4);e=u.getFullYear();s=u.getMonth()+1;h=u.getDate();break;case"'":l("'")?b():w=!0;break;default:b()}if(i.length>f&&(v=i.substr(f),!/^\s+/.test(v)))throw"Extra/unparsed characters found in date: "+v;if(-1===e?e=(new Date).getFullYear():100>e&&(e+=(new Date).getFullYear()-(new Date).getFullYear()%100+(d>=e?0:-100)),p>-1)for(s=1,h=p;;){if(a=this._getDaysInMonth(e,s-1),a>=h)break;s++;h-=a}if(u=this._daylightSavingAdjust(new Date(e,s-1,h)),u.getFullYear()!==e||u.getMonth()+1!==s||u.getDate()!==h)throw"Invalid date";return u},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:864e9*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(n,t,i){if(!t)return"";var u,h=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,c=(i?i.dayNames:null)||this._defaults.dayNames,l=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,a=(i?i.monthNames:null)||this._defaults.monthNames,f=function(t){var i=n.length>u+1&&n.charAt(u+1)===t;return i&&u++,i},e=function(n,t,i){var r=""+t;if(f(n))for(;i>r.length;)r="0"+r;return r},s=function(n,t,i,r){return f(n)?r[t]:i[t]},r="",o=!1;if(t)for(u=0;n.length>u;u++)if(o)"'"!==n.charAt(u)||f("'")?r+=n.charAt(u):o=!1;else switch(n.charAt(u)){case"d":r+=e("d",t.getDate(),2);break;case"D":r+=s("D",t.getDay(),h,c);break;case"o":r+=e("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":r+=e("m",t.getMonth()+1,2);break;case"M":r+=s("M",t.getMonth(),l,a);break;case"y":r+=f("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":r+=t.getTime();break;case"!":r+=1e4*t.getTime()+this._ticksTo1970;break;case"'":f("'")?r+="'":o=!0;break;default:r+=n.charAt(u)}return r},_possibleChars:function(n){for(var i="",r=!1,u=function(i){var r=n.length>t+1&&n.charAt(t+1)===i;return r&&t++,r},t=0;n.length>t;t++)if(r)"'"!==n.charAt(t)||u("'")?i+=n.charAt(t):r=!1;else switch(n.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":u("'")?i+="'":r=!0;break;default:i+=n.charAt(t)}return i},_get:function(n,t){return void 0!==n.settings[t]?n.settings[t]:this._defaults[t]},_setDateFromField:function(n,t){if(n.input.val()!==n.lastVal){var f=this._get(n,"dateFormat"),r=n.lastVal=n.input?n.input.val():null,u=this._getDefaultDate(n),i=u,e=this._getFormatConfig(n);try{i=this.parseDate(f,r,e)||u}catch(o){r=t?"":r}n.selectedDay=i.getDate();n.drawMonth=n.selectedMonth=i.getMonth();n.drawYear=n.selectedYear=i.getFullYear();n.currentDay=r?i.getDate():0;n.currentMonth=r?i.getMonth():0;n.currentYear=r?i.getFullYear():0;this._adjustInstDate(n)}},_getDefaultDate:function(n){return this._restrictMinMax(n,this._determineDate(n,this._get(n,"defaultDate"),new Date))},_determineDate:function(t,i,r){var f=function(n){var t=new Date;return t.setDate(t.getDate()+n),t},e=function(i){try{return n.datepicker.parseDate(n.datepicker._get(t,"dateFormat"),i,n.datepicker._getFormatConfig(t))}catch(h){}for(var o=(i.toLowerCase().match(/^c/)?n.datepicker._getDate(t):null)||new Date,f=o.getFullYear(),e=o.getMonth(),r=o.getDate(),s=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,u=s.exec(i);u;){switch(u[2]||"d"){case"d":case"D":r+=parseInt(u[1],10);break;case"w":case"W":r+=7*parseInt(u[1],10);break;case"m":case"M":e+=parseInt(u[1],10);r=Math.min(r,n.datepicker._getDaysInMonth(f,e));break;case"y":case"Y":f+=parseInt(u[1],10);r=Math.min(r,n.datepicker._getDaysInMonth(f,e))}u=s.exec(i)}return new Date(f,e,r)},u=null==i||""===i?r:"string"==typeof i?e(i):"number"==typeof i?isNaN(i)?r:f(i):new Date(i.getTime());return u=u&&"Invalid Date"==""+u?r:u,u&&(u.setHours(0),u.setMinutes(0),u.setSeconds(0),u.setMilliseconds(0)),this._daylightSavingAdjust(u)},_daylightSavingAdjust:function(n){return n?(n.setHours(n.getHours()>12?n.getHours()+2:0),n):null},_setDate:function(n,t,i){var u=!t,f=n.selectedMonth,e=n.selectedYear,r=this._restrictMinMax(n,this._determineDate(n,t,new Date));n.selectedDay=n.currentDay=r.getDate();n.drawMonth=n.selectedMonth=n.currentMonth=r.getMonth();n.drawYear=n.selectedYear=n.currentYear=r.getFullYear();f===n.selectedMonth&&e===n.selectedYear||i||this._notifyChange(n);this._adjustInstDate(n);n.input&&n.input.val(u?"":this._formatDate(n))},_getDate:function(n){return!n.currentYear||n.input&&""===n.input.val()?null:this._daylightSavingAdjust(new Date(n.currentYear,n.currentMonth,n.currentDay))},_attachHandlers:function(t){var r=this._get(t,"stepMonths"),i="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){n.datepicker._adjustDate(i,-r,"M")},next:function(){n.datepicker._adjustDate(i,+r,"M")},hide:function(){n.datepicker._hideDatepicker()},today:function(){n.datepicker._gotoToday(i)},selectDay:function(){return n.datepicker._selectDay(i,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return n.datepicker._selectMonthYear(i,this,"M"),!1},selectYear:function(){return n.datepicker._selectMonthYear(i,this,"Y"),!1}};n(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(n){var b,s,rt,h,ut,k,ft,et,ri,c,ot,ui,fi,ei,oi,st,g,si,ht,nt,o,y,ct,p,lt,l,u,at,vt,yt,pt,tt,wt,i,bt,kt,d,a,it,dt=new Date,gt=this._daylightSavingAdjust(new Date(dt.getFullYear(),dt.getMonth(),dt.getDate())),f=this._get(n,"isRTL"),li=this._get(n,"showButtonPanel"),hi=this._get(n,"hideIfNoPrevNext"),ni=this._get(n,"navigationAsDateFormat"),e=this._getNumberOfMonths(n),ai=this._get(n,"showCurrentAtPos"),ci=this._get(n,"stepMonths"),ti=1!==e[0]||1!==e[1],ii=this._daylightSavingAdjust(n.currentDay?new Date(n.currentYear,n.currentMonth,n.currentDay):new Date(9999,9,9)),w=this._getMinMaxDate(n,"min"),v=this._getMinMaxDate(n,"max"),t=n.drawMonth-ai,r=n.drawYear;if(0>t&&(t+=12,r--),v)for(b=this._daylightSavingAdjust(new Date(v.getFullYear(),v.getMonth()-e[0]*e[1]+1,v.getDate())),b=w&&w>b?w:b;this._daylightSavingAdjust(new Date(r,t,1))>b;)t--,0>t&&(t=11,r--);for(n.drawMonth=t,n.drawYear=r,s=this._get(n,"prevText"),s=ni?this.formatDate(s,this._daylightSavingAdjust(new Date(r,t-ci,1)),this._getFormatConfig(n)):s,rt=this._canAdjustMonth(n,-1,r,t)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(f?"e":"w")+"'>"+s+"<\/span><\/a>":hi?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(f?"e":"w")+"'>"+s+"<\/span><\/a>",h=this._get(n,"nextText"),h=ni?this.formatDate(h,this._daylightSavingAdjust(new Date(r,t+ci,1)),this._getFormatConfig(n)):h,ut=this._canAdjustMonth(n,1,r,t)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+h+"'><span class='ui-icon ui-icon-circle-triangle-"+(f?"w":"e")+"'>"+h+"<\/span><\/a>":hi?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+h+"'><span class='ui-icon ui-icon-circle-triangle-"+(f?"w":"e")+"'>"+h+"<\/span><\/a>",k=this._get(n,"currentText"),ft=this._get(n,"gotoCurrent")&&n.currentDay?ii:gt,k=ni?this.formatDate(k,ft,this._getFormatConfig(n)):k,et=n.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(n,"closeText")+"<\/button>",ri=li?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(f?et:"")+(this._isInRange(n,ft)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+k+"<\/button>":"")+(f?"":et)+"<\/div>":"",c=parseInt(this._get(n,"firstDay"),10),c=isNaN(c)?0:c,ot=this._get(n,"showWeek"),ui=this._get(n,"dayNames"),fi=this._get(n,"dayNamesMin"),ei=this._get(n,"monthNames"),oi=this._get(n,"monthNamesShort"),st=this._get(n,"beforeShowDay"),g=this._get(n,"showOtherMonths"),si=this._get(n,"selectOtherMonths"),ht=this._getDefaultDate(n),nt="",y=0;e[0]>y;y++){for(ct="",this.maxRows=4,p=0;e[1]>p;p++){if(lt=this._daylightSavingAdjust(new Date(r,t,n.selectedDay)),l=" ui-corner-all",u="",ti){if(u+="<div class='ui-datepicker-group",e[1]>1)switch(p){case 0:u+=" ui-datepicker-group-first";l=" ui-corner-"+(f?"right":"left");break;case e[1]-1:u+=" ui-datepicker-group-last";l=" ui-corner-"+(f?"left":"right");break;default:u+=" ui-datepicker-group-middle";l=""}u+="'>"}for(u+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+l+"'>"+(/all|left/.test(l)&&0===y?f?ut:rt:"")+(/all|right/.test(l)&&0===y?f?rt:ut:"")+this._generateMonthYearHeader(n,t,r,w,v,y>0||p>0,ei,oi)+"<\/div><table class='ui-datepicker-calendar'><thead><tr>",at=ot?"<th class='ui-datepicker-week-col'>"+this._get(n,"weekHeader")+"<\/th>":"",o=0;7>o;o++)vt=(o+c)%7,at+="<th scope='col'"+((o+c+6)%7>=5?" class='ui-datepicker-week-end'":"")+"><span title='"+ui[vt]+"'>"+fi[vt]+"<\/span><\/th>";for(u+=at+"<\/tr><\/thead><tbody>",yt=this._getDaysInMonth(r,t),r===n.selectedYear&&t===n.selectedMonth&&(n.selectedDay=Math.min(n.selectedDay,yt)),pt=(this._getFirstDayOfMonth(r,t)-c+7)%7,tt=Math.ceil((pt+yt)/7),wt=ti?this.maxRows>tt?this.maxRows:tt:tt,this.maxRows=wt,i=this._daylightSavingAdjust(new Date(r,t,1-pt)),bt=0;wt>bt;bt++){for(u+="<tr>",kt=ot?"<td class='ui-datepicker-week-col'>"+this._get(n,"calculateWeek")(i)+"<\/td>":"",o=0;7>o;o++)d=st?st.apply(n.input?n.input[0]:null,[i]):[!0,""],a=i.getMonth()!==t,it=a&&!si||!d[0]||w&&w>i||v&&i>v,kt+="<td class='"+((o+c+6)%7>=5?" ui-datepicker-week-end":"")+(a?" ui-datepicker-other-month":"")+(i.getTime()===lt.getTime()&&t===n.selectedMonth&&n._keyEvent||ht.getTime()===i.getTime()&&ht.getTime()===lt.getTime()?" "+this._dayOverClass:"")+(it?" "+this._unselectableClass+" ui-state-disabled":"")+(a&&!g?"":" "+d[1]+(i.getTime()===ii.getTime()?" "+this._currentClass:"")+(i.getTime()===gt.getTime()?" ui-datepicker-today":""))+"'"+(a&&!g||!d[2]?"":" title='"+d[2].replace(/'/g,"&#39;")+"'")+(it?"":" data-handler='selectDay' data-event='click' data-month='"+i.getMonth()+"' data-year='"+i.getFullYear()+"'")+">"+(a&&!g?"&#xa0;":it?"<span class='ui-state-default'>"+i.getDate()+"<\/span>":"<a class='ui-state-default"+(i.getTime()===gt.getTime()?" ui-state-highlight":"")+(i.getTime()===ii.getTime()?" ui-state-active":"")+(a?" ui-priority-secondary":"")+"' href='#'>"+i.getDate()+"<\/a>")+"<\/td>",i.setDate(i.getDate()+1),i=this._daylightSavingAdjust(i);u+=kt+"<\/tr>"}t++;t>11&&(t=0,r++);u+="<\/tbody><\/table>"+(ti?"<\/div>"+(e[0]>0&&p===e[1]-1?"<div class='ui-datepicker-row-break'><\/div>":""):"");ct+=u}nt+=ct}return nt+=ri,n._keyEvent=!1,nt},_generateMonthYearHeader:function(n,t,i,r,u,f,e,o){var k,d,h,v,y,p,s,a,w=this._get(n,"changeMonth"),b=this._get(n,"changeYear"),g=this._get(n,"showMonthAfterYear"),c="<div class='ui-datepicker-title'>",l="";if(f||!w)l+="<span class='ui-datepicker-month'>"+e[t]+"<\/span>";else{for(k=r&&r.getFullYear()===i,d=u&&u.getFullYear()===i,l+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",h=0;12>h;h++)(!k||h>=r.getMonth())&&(!d||u.getMonth()>=h)&&(l+="<option value='"+h+"'"+(h===t?" selected='selected'":"")+">"+o[h]+"<\/option>");l+="<\/select>"}if(g||(c+=l+(!f&&w&&b?"":"&#xa0;")),!n.yearshtml)if(n.yearshtml="",f||!b)c+="<span class='ui-datepicker-year'>"+i+"<\/span>";else{for(v=this._get(n,"yearRange").split(":"),y=(new Date).getFullYear(),p=function(n){var t=n.match(/c[+\-].*/)?i+parseInt(n.substring(1),10):n.match(/[+\-].*/)?y+parseInt(n,10):parseInt(n,10);return isNaN(t)?y:t},s=p(v[0]),a=Math.max(s,p(v[1]||"")),s=r?Math.max(s,r.getFullYear()):s,a=u?Math.min(a,u.getFullYear()):a,n.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";a>=s;s++)n.yearshtml+="<option value='"+s+"'"+(s===i?" selected='selected'":"")+">"+s+"<\/option>";n.yearshtml+="<\/select>";c+=n.yearshtml;n.yearshtml=null}return c+=this._get(n,"yearSuffix"),g&&(c+=(!f&&w&&b?"":"&#xa0;")+l),c+"<\/div>"},_adjustInstDate:function(n,t,i){var u=n.drawYear+("Y"===i?t:0),f=n.drawMonth+("M"===i?t:0),e=Math.min(n.selectedDay,this._getDaysInMonth(u,f))+("D"===i?t:0),r=this._restrictMinMax(n,this._daylightSavingAdjust(new Date(u,f,e)));n.selectedDay=r.getDate();n.drawMonth=n.selectedMonth=r.getMonth();n.drawYear=n.selectedYear=r.getFullYear();("M"===i||"Y"===i)&&this._notifyChange(n)},_restrictMinMax:function(n,t){var i=this._getMinMaxDate(n,"min"),r=this._getMinMaxDate(n,"max"),u=i&&i>t?i:t;return r&&u>r?r:u},_notifyChange:function(n){var t=this._get(n,"onChangeMonthYear");t&&t.apply(n.input?n.input[0]:null,[n.selectedYear,n.selectedMonth+1,n])},_getNumberOfMonths:function(n){var t=this._get(n,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(n,t){return this._determineDate(n,this._get(n,t+"Date"),null)},_getDaysInMonth:function(n,t){return 32-this._daylightSavingAdjust(new Date(n,t,32)).getDate()},_getFirstDayOfMonth:function(n,t){return new Date(n,t,1).getDay()},_canAdjustMonth:function(n,t,i,r){var f=this._getNumberOfMonths(n),u=this._daylightSavingAdjust(new Date(i,r+(0>t?t:f[0]*f[1]),1));return 0>t&&u.setDate(this._getDaysInMonth(u.getFullYear(),u.getMonth())),this._isInRange(n,u)},_isInRange:function(n,t){var i,f,e=this._getMinMaxDate(n,"min"),o=this._getMinMaxDate(n,"max"),r=null,u=null,s=this._get(n,"yearRange");return s&&(i=s.split(":"),f=(new Date).getFullYear(),r=parseInt(i[0],10),u=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(r+=f),i[1].match(/[+\-].*/)&&(u+=f)),(!e||t.getTime()>=e.getTime())&&(!o||t.getTime()<=o.getTime())&&(!r||t.getFullYear()>=r)&&(!u||u>=t.getFullYear())},_getFormatConfig:function(n){var t=this._get(n,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(n,"dayNamesShort"),dayNames:this._get(n,"dayNames"),monthNamesShort:this._get(n,"monthNamesShort"),monthNames:this._get(n,"monthNames")}},_formatDate:function(n,t,i,r){t||(n.currentDay=n.selectedDay,n.currentMonth=n.selectedMonth,n.currentYear=n.selectedYear);var u=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(r,i,t)):this._daylightSavingAdjust(new Date(n.currentYear,n.currentMonth,n.currentDay));return this.formatDate(this._get(n,"dateFormat"),u,this._getFormatConfig(n))}});n.fn.datepicker=function(t){if(!this.length)return this;n.datepicker.initialized||(n(document).mousedown(n.datepicker._checkExternalClick),n.datepicker.initialized=!0);0===n("#"+n.datepicker._mainDivId).length&&n("body").append(n.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?n.datepicker["_"+t+"Datepicker"].apply(n.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?n.datepicker["_"+t+"Datepicker"].apply(n.datepicker,[this].concat(i)):n.datepicker._attachDatepicker(this,t)}):n.datepicker["_"+t+"Datepicker"].apply(n.datepicker,[this[0]].concat(i))};n.datepicker=new l;n.datepicker.initialized=!1;n.datepicker.uuid=(new Date).getTime();n.datepicker.version="1.11.1";n.datepicker;n.widget("ui.draggable",n.ui.mouse,{version:"1.11.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative");this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._setHandleClassName();this._mouseInit()},_setOption:function(n,t){this._super(n,t);"handle"===n&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(t){var i=this.document[0],r=this.options;try{i.activeElement&&"body"!==i.activeElement.nodeName.toLowerCase()&&n(i.activeElement).blur()}catch(u){}return this.helper||r.disabled||n(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(n(r.iframeFix===!0?"iframe":r.iframeFix).each(function(){n("<div class='ui-draggable-iframeFix' style='background: #fff;'><\/div>").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(n(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var i=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),n.ui.ddmanager&&(n.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,n.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t,!1),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),n.ui.ddmanager&&!i.dropBehaviour&&n.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),n.ui.ddmanager&&n.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,i){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var r=this._uiHash();if(this._trigger("drag",t,r)===!1)return this._mouseUp({}),!1;this.position=r.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",n.ui.ddmanager&&n.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var r=this,i=!1;return n.ui.ddmanager&&!this.options.dropBehaviour&&(i=n.ui.ddmanager.drop(this,t)),this.dropped&&(i=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!i||"valid"===this.options.revert&&i||this.options.revert===!0||n.isFunction(this.options.revert)&&this.options.revert.call(this.element,i)?n(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){r._trigger("stop",t)!==!1&&r._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1},_mouseUp:function(t){return n("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),n.ui.ddmanager&&n.ui.ddmanager.dragStop(this,t),this.element.focus(),n.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){return this.options.handle?!!n(t.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element;this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(t){var r=this.options,i=n.isFunction(r.helper)?n(r.helper.apply(this.element[0],[t])):"clone"===r.helper?this.element.clone().removeAttr("id"):this.element;return i.parents("body").length||i.appendTo("parent"===r.appendTo?this.element[0].parentNode:r.appendTo),i[0]===this.element[0]||/(fixed|absolute)/.test(i.css("position"))||i.css("position","absolute"),i},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" "));n.isArray(t)&&(t={left:+t[0],top:+t[1]||0});"left"in t&&(this.offset.click.left=t.left+this.margins.left);"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left);"top"in t&&(this.offset.click.top=t.top+this.margins.top);"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_isRootNode:function(n){return/(html|body)/i.test(n.tagName)||n===this.document[0]},_getParentOffset:function(){var t=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&n.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var n=this.element.position(),t=this._isRootNode(this.scrollParent[0]);return{top:n.top-(parseInt(this.helper.css("top"),10)||0)+(t?0:this.scrollParent.scrollTop()),left:n.left-(parseInt(this.helper.css("left"),10)||0)+(t?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var f,t,i,r=this.options,u=this.document[0];return this.relativeContainer=null,r.containment?"window"===r.containment?(this.containment=[n(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,n(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,n(window).scrollLeft()+n(window).width()-this.helperProportions.width-this.margins.left,n(window).scrollTop()+(n(window).height()||u.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===r.containment?(this.containment=[0,0,n(u).width()-this.helperProportions.width-this.margins.left,(n(u).height()||u.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):r.containment.constructor===Array?(this.containment=r.containment,void 0):("parent"===r.containment&&(r.containment=this.helper[0].parentNode),t=n(r.containment),i=t[0],i&&(f="hidden"!==t.css("overflow"),this.containment=[(parseInt(t.css("borderLeftWidth"),10)||0)+(parseInt(t.css("paddingLeft"),10)||0),(parseInt(t.css("borderTopWidth"),10)||0)+(parseInt(t.css("paddingTop"),10)||0),(f?Math.max(i.scrollWidth,i.offsetWidth):i.offsetWidth)-(parseInt(t.css("borderRightWidth"),10)||0)-(parseInt(t.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(f?Math.max(i.scrollHeight,i.offsetHeight):i.offsetHeight)-(parseInt(t.css("borderBottomWidth"),10)||0)-(parseInt(t.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=t),void 0):(this.containment=null,void 0)},_convertPositionTo:function(n,t){t||(t=this.position);var i="absolute"===n?1:-1,r=this._isRootNode(this.scrollParent[0]);return{top:t.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top)*i,left:t.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)*i}},_generatePosition:function(n,t){var i,s,u,f,r=this.options,h=this._isRootNode(this.scrollParent[0]),e=n.pageX,o=n.pageY;return h&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),t&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,n.pageX-this.offset.click.left<i[0]&&(e=i[0]+this.offset.click.left),n.pageY-this.offset.click.top<i[1]&&(o=i[1]+this.offset.click.top),n.pageX-this.offset.click.left>i[2]&&(e=i[2]+this.offset.click.left),n.pageY-this.offset.click.top>i[3]&&(o=i[3]+this.offset.click.top)),r.grid&&(u=r.grid[1]?this.originalPageY+Math.round((o-this.originalPageY)/r.grid[1])*r.grid[1]:this.originalPageY,o=i?u-this.offset.click.top>=i[1]||u-this.offset.click.top>i[3]?u:u-this.offset.click.top>=i[1]?u-r.grid[1]:u+r.grid[1]:u,f=r.grid[0]?this.originalPageX+Math.round((e-this.originalPageX)/r.grid[0])*r.grid[0]:this.originalPageX,e=i?f-this.offset.click.left>=i[0]||f-this.offset.click.left>i[2]?f:f-this.offset.click.left>=i[0]?f-r.grid[0]:f+r.grid[0]:f),"y"===r.axis&&(e=this.originalPageX),"x"===r.axis&&(o=this.originalPageY)),{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:h?0:this.offset.scroll.top),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:h?0:this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove();this.helper=null;this.cancelHelperRemoval=!1;this.destroyOnClear&&this.destroy()},_trigger:function(t,i,r){return r=r||this._uiHash(),n.ui.plugin.call(this,t,[i,r,this],!0),"drag"===t&&(this.positionAbs=this._convertPositionTo("absolute")),n.Widget.prototype._trigger.call(this,t,i,r)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});n.ui.plugin.add("draggable","connectToSortable",{start:function(t,i,r){var u=r.options,f=n.extend({},i,{item:r.element});r.sortables=[];n(u.connectToSortable).each(function(){var i=n(this).sortable("instance");i&&!i.options.disabled&&(r.sortables.push({instance:i,shouldRevert:i.options.revert}),i.refreshPositions(),i._trigger("activate",t,f))})},stop:function(t,i,r){var u=n.extend({},i,{item:r.element});n.each(r.sortables,function(){this.instance.isOver?(this.instance.isOver=0,r.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(t),this.instance.options.helper=this.instance.options._helper,"original"===r.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",t,u))})},drag:function(t,i,r){var u=this;n.each(r.sortables,function(){var f=!1,e=this;this.instance.positionAbs=r.positionAbs;this.instance.helperProportions=r.helperProportions;this.instance.offset.click=r.offset.click;this.instance._intersectsWith(this.instance.containerCache)&&(f=!0,n.each(r.sortables,function(){return this.instance.positionAbs=r.positionAbs,this.instance.helperProportions=r.helperProportions,this.instance.offset.click=r.offset.click,this!==e&&this.instance._intersectsWith(this.instance.containerCache)&&n.contains(e.instance.element[0],this.instance.element[0])&&(f=!1),f}));f?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=n(u).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return i.helper[0]},t.target=this.instance.currentItem[0],this.instance._mouseCapture(t,!0),this.instance._mouseStart(t,!0,!0),this.instance.offset.click.top=r.offset.click.top,this.instance.offset.click.left=r.offset.click.left,this.instance.offset.parent.left-=r.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=r.offset.parent.top-this.instance.offset.parent.top,r._trigger("toSortable",t),r.dropped=this.instance.element,r.currentItem=r.element,this.instance.fromOutside=r),this.instance.currentItem&&this.instance._mouseDrag(t)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",t,this.instance._uiHash(this.instance)),this.instance._mouseStop(t,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),r._trigger("fromSortable",t),r.dropped=!1)})}});n.ui.plugin.add("draggable","cursor",{start:function(t,i,r){var u=n("body"),f=r.options;u.css("cursor")&&(f._cursor=u.css("cursor"));u.css("cursor",f.cursor)},stop:function(t,i,r){var u=r.options;u._cursor&&n("body").css("cursor",u._cursor)}});n.ui.plugin.add("draggable","opacity",{start:function(t,i,r){var u=n(i.helper),f=r.options;u.css("opacity")&&(f._opacity=u.css("opacity"));u.css("opacity",f.opacity)},stop:function(t,i,r){var u=r.options;u._opacity&&n(i.helper).css("opacity",u._opacity)}});n.ui.plugin.add("draggable","scroll",{start:function(n,t,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1));i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(t,i,r){var u=r.options,o=!1,e=r.scrollParentNotHidden[0],f=r.document[0];e!==f&&"HTML"!==e.tagName?(u.axis&&"x"===u.axis||(r.overflowOffset.top+e.offsetHeight-t.pageY<u.scrollSensitivity?e.scrollTop=o=e.scrollTop+u.scrollSpeed:t.pageY-r.overflowOffset.top<u.scrollSensitivity&&(e.scrollTop=o=e.scrollTop-u.scrollSpeed)),u.axis&&"y"===u.axis||(r.overflowOffset.left+e.offsetWidth-t.pageX<u.scrollSensitivity?e.scrollLeft=o=e.scrollLeft+u.scrollSpeed:t.pageX-r.overflowOffset.left<u.scrollSensitivity&&(e.scrollLeft=o=e.scrollLeft-u.scrollSpeed))):(u.axis&&"x"===u.axis||(t.pageY-n(f).scrollTop()<u.scrollSensitivity?o=n(f).scrollTop(n(f).scrollTop()-u.scrollSpeed):n(window).height()-(t.pageY-n(f).scrollTop())<u.scrollSensitivity&&(o=n(f).scrollTop(n(f).scrollTop()+u.scrollSpeed))),u.axis&&"y"===u.axis||(t.pageX-n(f).scrollLeft()<u.scrollSensitivity?o=n(f).scrollLeft(n(f).scrollLeft()-u.scrollSpeed):n(window).width()-(t.pageX-n(f).scrollLeft())<u.scrollSensitivity&&(o=n(f).scrollLeft(n(f).scrollLeft()+u.scrollSpeed))));o!==!1&&n.ui.ddmanager&&!u.dropBehaviour&&n.ui.ddmanager.prepareOffsets(r,t)}});n.ui.plugin.add("draggable","snap",{start:function(t,i,r){var u=r.options;r.snapElements=[];n(u.snap.constructor!==String?u.snap.items||":data(ui-draggable)":u.snap).each(function(){var t=n(this),i=t.offset();this!==r.element[0]&&r.snapElements.push({item:this,width:t.outerWidth(),height:t.outerHeight(),top:i.top,left:i.left})})},drag:function(t,i,r){for(var e,o,s,h,c,a,l,v,w,b=r.options,f=b.snapTolerance,y=i.offset.left,k=y+r.helperProportions.width,p=i.offset.top,d=p+r.helperProportions.height,u=r.snapElements.length-1;u>=0;u--)c=r.snapElements[u].left,a=c+r.snapElements[u].width,l=r.snapElements[u].top,v=l+r.snapElements[u].height,c-f>k||y>a+f||l-f>d||p>v+f||!n.contains(r.snapElements[u].item.ownerDocument,r.snapElements[u].item)?(r.snapElements[u].snapping&&r.options.snap.release&&r.options.snap.release.call(r.element,t,n.extend(r._uiHash(),{snapItem:r.snapElements[u].item})),r.snapElements[u].snapping=!1):("inner"!==b.snapMode&&(e=f>=Math.abs(l-d),o=f>=Math.abs(v-p),s=f>=Math.abs(c-k),h=f>=Math.abs(a-y),e&&(i.position.top=r._convertPositionTo("relative",{top:l-r.helperProportions.height,left:0}).top-r.margins.top),o&&(i.position.top=r._convertPositionTo("relative",{top:v,left:0}).top-r.margins.top),s&&(i.position.left=r._convertPositionTo("relative",{top:0,left:c-r.helperProportions.width}).left-r.margins.left),h&&(i.position.left=r._convertPositionTo("relative",{top:0,left:a}).left-r.margins.left)),w=e||o||s||h,"outer"!==b.snapMode&&(e=f>=Math.abs(l-p),o=f>=Math.abs(v-d),s=f>=Math.abs(c-y),h=f>=Math.abs(a-k),e&&(i.position.top=r._convertPositionTo("relative",{top:l,left:0}).top-r.margins.top),o&&(i.position.top=r._convertPositionTo("relative",{top:v-r.helperProportions.height,left:0}).top-r.margins.top),s&&(i.position.left=r._convertPositionTo("relative",{top:0,left:c}).left-r.margins.left),h&&(i.position.left=r._convertPositionTo("relative",{top:0,left:a-r.helperProportions.width}).left-r.margins.left)),!r.snapElements[u].snapping&&(e||o||s||h||w)&&r.options.snap.snap&&r.options.snap.snap.call(r.element,t,n.extend(r._uiHash(),{snapItem:r.snapElements[u].item})),r.snapElements[u].snapping=e||o||s||h||w)}});n.ui.plugin.add("draggable","stack",{start:function(t,i,r){var f,e=r.options,u=n.makeArray(n(e.stack)).sort(function(t,i){return(parseInt(n(t).css("zIndex"),10)||0)-(parseInt(n(i).css("zIndex"),10)||0)});u.length&&(f=parseInt(n(u[0]).css("zIndex"),10)||0,n(u).each(function(t){n(this).css("zIndex",f+t)}),this.css("zIndex",f+u.length))}});n.ui.plugin.add("draggable","zIndex",{start:function(t,i,r){var u=n(i.helper),f=r.options;u.css("zIndex")&&(f._zIndex=u.css("zIndex"));u.css("zIndex",f.zIndex)},stop:function(t,i,r){var u=r.options;u._zIndex&&n(i.helper).css("zIndex",u._zIndex)}});n.ui.draggable;n.widget("ui.resizable",n.ui.mouse,{version:"1.11.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(n){return parseInt(n,10)||0},_isNumber:function(n){return!isNaN(parseInt(n,10))},_hasScroll:function(t,i){if("hidden"===n(t).css("overflow"))return!1;var r=i&&"left"===i?"scrollLeft":"scrollTop",u=!1;return t[r]>0?!0:(t[r]=1,u=t[r]>0,t[r]=0,u)},_create:function(){var e,f,r,i,o,u=this,t=this.options;if(this.element.addClass("ui-resizable"),n.extend(this,{_aspectRatio:!!t.aspectRatio,aspectRatio:t.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:t.helper||t.ghost||t.animate?t.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(n("<div class='ui-wrapper' style='overflow: hidden;'><\/div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=t.handles||(n(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),e=this.handles.split(","),this.handles={},f=0;e.length>f;f++)r=n.trim(e[f]),o="ui-resizable-"+r,i=n("<div class='ui-resizable-handle "+o+"'><\/div>"),i.css({zIndex:t.zIndex}),"se"===r&&i.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[r]=".ui-resizable-"+r,this.element.append(i);this._renderAxis=function(t){var i,r,u,f;t=t||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=this.element.children(this.handles[i]).first().show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(r=n(this.handles[i],this.element),f=/sw|ne|nw|se|n|s/.test(i)?r.outerHeight():r.outerWidth(),u=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),t.css(u,f),this._proportionallyResize()),n(this.handles[i]).length};this._renderAxis(this.element);this._handles=n(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){u.resizing||(this.className&&(i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),u.axis=i&&i[1]?i[1]:"se")});t.autoHide&&(this._handles.hide(),n(this.element).addClass("ui-resizable-autohide").mouseenter(function(){t.disabled||(n(this).removeClass("ui-resizable-autohide"),u._handles.show())}).mouseleave(function(){t.disabled||u.resizing||(n(this).addClass("ui-resizable-autohide"),u._handles.hide())}));this._mouseInit()},_destroy:function(){this._mouseDestroy();var t,i=function(t){n(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(t){var r,i,u=!1;for(r in this.handles)i=n(this.handles[r])[0],(i===t.target||n.contains(i,t.target))&&(u=!0);return!this.options.disabled&&u},_mouseStart:function(t){var u,f,e,r=this.options,i=this.element;return this.resizing=!0,this._renderProxy(),u=this._num(this.helper.css("left")),f=this._num(this.helper.css("top")),r.containment&&(u+=n(r.containment).scrollLeft()||0,f+=n(r.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:u,top:f},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:i.width(),height:i.height()},this.originalSize=this._helper?{width:i.outerWidth(),height:i.outerHeight()}:{width:i.width(),height:i.height()},this.sizeDiff={width:i.outerWidth()-i.width(),height:i.outerHeight()-i.height()},this.originalPosition={left:u,top:f},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof r.aspectRatio?r.aspectRatio:this.originalSize.width/this.originalSize.height||1,e=n(".ui-resizable-"+this.axis).css("cursor"),n("body").css("cursor","auto"===e?this.axis+"-resize":e),i.addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var i,r,u=this.originalMousePosition,e=this.axis,o=t.pageX-u.left||0,s=t.pageY-u.top||0,f=this._change[e];return this._updatePrevProperties(),f?(i=f.apply(this,[t,o,s]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(i=this._updateRatio(i,t)),i=this._respectSize(i,t),this._updateCache(i),this._propagate("resize",t),r=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),n.isEmptyObject(r)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(t){this.resizing=!1;var r,u,f,e,o,s,h,c=this.options,i=this;return this._helper&&(r=this._proportionallyResizeElements,u=r.length&&/textarea/i.test(r[0].nodeName),f=u&&this._hasScroll(r[0],"left")?0:i.sizeDiff.height,e=u?0:i.sizeDiff.width,o={width:i.helper.width()-e,height:i.helper.height()-f},s=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,h=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null,c.animate||this.element.css(n.extend(o,{top:h,left:s})),i.helper.height(i.size.height),i.helper.width(i.size.width),this._helper&&!c.animate&&this._proportionallyResize()),n("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left};this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var n={};return this.position.top!==this.prevPosition.top&&(n.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(n.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(n.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(n.height=this.size.height+"px"),this.helper.css(n),n},_updateVirtualBoundaries:function(n){var r,u,f,e,t,i=this.options;t={minWidth:this._isNumber(i.minWidth)?i.minWidth:0,maxWidth:this._isNumber(i.maxWidth)?i.maxWidth:1/0,minHeight:this._isNumber(i.minHeight)?i.minHeight:0,maxHeight:this._isNumber(i.maxHeight)?i.maxHeight:1/0};(this._aspectRatio||n)&&(r=t.minHeight*this.aspectRatio,f=t.minWidth/this.aspectRatio,u=t.maxHeight*this.aspectRatio,e=t.maxWidth/this.aspectRatio,r>t.minWidth&&(t.minWidth=r),f>t.minHeight&&(t.minHeight=f),t.maxWidth>u&&(t.maxWidth=u),t.maxHeight>e&&(t.maxHeight=e));this._vBoundaries=t},_updateCache:function(n){this.offset=this.helper.offset();this._isNumber(n.left)&&(this.position.left=n.left);this._isNumber(n.top)&&(this.position.top=n.top);this._isNumber(n.height)&&(this.size.height=n.height);this._isNumber(n.width)&&(this.size.width=n.width)},_updateRatio:function(n){var t=this.position,i=this.size,r=this.axis;return this._isNumber(n.height)?n.width=n.height*this.aspectRatio:this._isNumber(n.width)&&(n.height=n.width/this.aspectRatio),"sw"===r&&(n.left=t.left+(i.width-n.width),n.top=null),"nw"===r&&(n.top=t.top+(i.height-n.height),n.left=t.left+(i.width-n.width)),n},_respectSize:function(n){var t=this._vBoundaries,i=this.axis,r=this._isNumber(n.width)&&t.maxWidth&&t.maxWidth<n.width,u=this._isNumber(n.height)&&t.maxHeight&&t.maxHeight<n.height,f=this._isNumber(n.width)&&t.minWidth&&t.minWidth>n.width,e=this._isNumber(n.height)&&t.minHeight&&t.minHeight>n.height,o=this.originalPosition.left+this.originalSize.width,s=this.position.top+this.size.height,h=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return f&&(n.width=t.minWidth),e&&(n.height=t.minHeight),r&&(n.width=t.maxWidth),u&&(n.height=t.maxHeight),f&&h&&(n.left=o-t.minWidth),r&&h&&(n.left=o-t.maxWidth),e&&c&&(n.top=s-t.minHeight),u&&c&&(n.top=s-t.maxHeight),n.width||n.height||n.left||!n.top?n.width||n.height||n.top||!n.left||(n.left=null):n.top=null,n},_getPaddingPlusBorderDimensions:function(n){for(var t=0,i=[],r=[n.css("borderTopWidth"),n.css("borderRightWidth"),n.css("borderBottomWidth"),n.css("borderLeftWidth")],u=[n.css("paddingTop"),n.css("paddingRight"),n.css("paddingBottom"),n.css("paddingLeft")];4>t;t++)i[t]=parseInt(r[t],10)||0,i[t]+=parseInt(u[t],10)||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var n,t=0,i=this.helper||this.element;this._proportionallyResizeElements.length>t;t++)n=this._proportionallyResizeElements[t],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(n)),n.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,i=this.options;this.elementOffset=t.offset();this._helper?(this.helper=this.helper||n("<div style='overflow:hidden;'><\/div>"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(n,t){return{width:this.originalSize.width+t}},w:function(n,t){var i=this.originalSize,r=this.originalPosition;return{left:r.left+t,width:i.width-t}},n:function(n,t,i){var r=this.originalSize,u=this.originalPosition;return{top:u.top+i,height:r.height-i}},s:function(n,t,i){return{height:this.originalSize.height+i}},se:function(t,i,r){return n.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,i,r]))},sw:function(t,i,r){return n.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,i,r]))},ne:function(t,i,r){return n.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,i,r]))},nw:function(t,i,r){return n.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,i,r]))}},_propagate:function(t,i){n.ui.plugin.call(this,t,[i,this.ui()]);"resize"!==t&&this._trigger(t,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});n.ui.plugin.add("resizable","animate",{stop:function(t){var i=n(this).resizable("instance"),u=i.options,r=i._proportionallyResizeElements,f=r.length&&/textarea/i.test(r[0].nodeName),s=f&&i._hasScroll(r[0],"left")?0:i.sizeDiff.height,h=f?0:i.sizeDiff.width,c={width:i.size.width-h,height:i.size.height-s},e=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,o=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(n.extend(c,o&&e?{top:o,left:e}:{}),{duration:u.animateDuration,easing:u.animateEasing,step:function(){var u={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};r&&r.length&&n(r[0]).css({width:u.width,height:u.height});i._updateCache(u);i._propagate("resize",t)}})}});n.ui.plugin.add("resizable","containment",{start:function(){var r,f,e,o,s,h,c,t=n(this).resizable("instance"),l=t.options,a=t.element,u=l.containment,i=u instanceof n?u.get(0):/parent/.test(u)?a.parent().get(0):u;i&&(t.containerElement=n(i),/document/.test(u)||u===document?(t.containerOffset={left:0,top:0},t.containerPosition={left:0,top:0},t.parentData={element:n(document),left:0,top:0,width:n(document).width(),height:n(document).height()||document.body.parentNode.scrollHeight}):(r=n(i),f=[],n(["Top","Right","Left","Bottom"]).each(function(n,i){f[n]=t._num(r.css("padding"+i))}),t.containerOffset=r.offset(),t.containerPosition=r.position(),t.containerSize={height:r.innerHeight()-f[3],width:r.innerWidth()-f[1]},e=t.containerOffset,o=t.containerSize.height,s=t.containerSize.width,h=t._hasScroll(i,"left")?i.scrollWidth:s,c=t._hasScroll(i)?i.scrollHeight:o,t.parentData={element:i,left:e.left,top:e.top,width:h,height:c}))},resize:function(t){var o,s,h,c,i=n(this).resizable("instance"),v=i.options,r=i.containerOffset,l=i.position,f=i._aspectRatio||t.shiftKey,e={top:0,left:0},a=i.containerElement,u=!0;a[0]!==document&&/static/.test(a.css("position"))&&(e=r);l.left<(i._helper?r.left:0)&&(i.size.width=i.size.width+(i._helper?i.position.left-r.left:i.position.left-e.left),f&&(i.size.height=i.size.width/i.aspectRatio,u=!1),i.position.left=v.helper?r.left:0);l.top<(i._helper?r.top:0)&&(i.size.height=i.size.height+(i._helper?i.position.top-r.top:i.position.top),f&&(i.size.width=i.size.height*i.aspectRatio,u=!1),i.position.top=i._helper?r.top:0);h=i.containerElement.get(0)===i.element.parent().get(0);c=/relative|absolute/.test(i.containerElement.css("position"));h&&c?(i.offset.left=i.parentData.left+i.position.left,i.offset.top=i.parentData.top+i.position.top):(i.offset.left=i.element.offset().left,i.offset.top=i.element.offset().top);o=Math.abs(i.sizeDiff.width+(i._helper?i.offset.left-e.left:i.offset.left-r.left));s=Math.abs(i.sizeDiff.height+(i._helper?i.offset.top-e.top:i.offset.top-r.top));o+i.size.width>=i.parentData.width&&(i.size.width=i.parentData.width-o,f&&(i.size.height=i.size.width/i.aspectRatio,u=!1));s+i.size.height>=i.parentData.height&&(i.size.height=i.parentData.height-s,f&&(i.size.width=i.size.height*i.aspectRatio,u=!1));u||(i.position.left=i.prevPosition.left,i.position.top=i.prevPosition.top,i.size.width=i.prevSize.width,i.size.height=i.prevSize.height)},stop:function(){var t=n(this).resizable("instance"),r=t.options,u=t.containerOffset,f=t.containerPosition,e=t.containerElement,i=n(t.helper),o=i.offset(),s=i.outerWidth()-t.sizeDiff.width,h=i.outerHeight()-t.sizeDiff.height;t._helper&&!r.animate&&/relative/.test(e.css("position"))&&n(this).css({left:o.left-f.left-u.left,width:s,height:h});t._helper&&!r.animate&&/static/.test(e.css("position"))&&n(this).css({left:o.left-f.left-u.left,width:s,height:h})}});n.ui.plugin.add("resizable","alsoResize",{start:function(){var r=n(this).resizable("instance"),t=r.options,i=function(t){n(t).each(function(){var t=n(this);t.data("ui-resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})};"object"!=typeof t.alsoResize||t.alsoResize.parentNode?i(t.alsoResize):t.alsoResize.length?(t.alsoResize=t.alsoResize[0],i(t.alsoResize)):n.each(t.alsoResize,function(n){i(n)})},resize:function(t,i){var r=n(this).resizable("instance"),u=r.options,f=r.originalSize,e=r.originalPosition,s={height:r.size.height-f.height||0,width:r.size.width-f.width||0,top:r.position.top-e.top||0,left:r.position.left-e.left||0},o=function(t,r){n(t).each(function(){var t=n(this),f=n(this).data("ui-resizable-alsoresize"),u={},e=r&&r.length?r:t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];n.each(e,function(n,t){var i=(f[t]||0)+(s[t]||0);i&&i>=0&&(u[t]=i||null)});t.css(u)})};"object"!=typeof u.alsoResize||u.alsoResize.nodeType?o(u.alsoResize):n.each(u.alsoResize,function(n,t){o(n,t)})},stop:function(){n(this).removeData("resizable-alsoresize")}});n.ui.plugin.add("resizable","ghost",{start:function(){var t=n(this).resizable("instance"),i=t.options,r=t.size;t.ghost=t.originalElement.clone();t.ghost.css({opacity:.25,display:"block",position:"relative",height:r.height,width:r.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:"");t.ghost.appendTo(t.helper)},resize:function(){var t=n(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=n(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}});n.ui.plugin.add("resizable","grid",{resize:function(){var h,t=n(this).resizable("instance"),i=t.options,y=t.size,e=t.originalSize,o=t.originalPosition,c=t.axis,l="number"==typeof i.grid?[i.grid,i.grid]:i.grid,s=l[0]||1,f=l[1]||1,a=Math.round((y.width-e.width)/s)*s,v=Math.round((y.height-e.height)/f)*f,r=e.width+a,u=e.height+v,p=i.maxWidth&&r>i.maxWidth,w=i.maxHeight&&u>i.maxHeight,b=i.minWidth&&i.minWidth>r,k=i.minHeight&&i.minHeight>u;i.grid=l;b&&(r+=s);k&&(u+=f);p&&(r-=s);w&&(u-=f);/^(se|s|e)$/.test(c)?(t.size.width=r,t.size.height=u):/^(ne)$/.test(c)?(t.size.width=r,t.size.height=u,t.position.top=o.top-v):/^(sw)$/.test(c)?(t.size.width=r,t.size.height=u,t.position.left=o.left-a):((0>=u-f||0>=r-s)&&(h=t._getPaddingPlusBorderDimensions(this)),u-f>0?(t.size.height=u,t.position.top=o.top-v):(u=f-h.height,t.size.height=u,t.position.top=o.top+e.height-u),r-s>0?(t.size.width=r,t.position.left=o.left-a):(r=f-h.height,t.size.width=r,t.position.left=o.left+e.width-r))}});n.ui.resizable;n.widget("ui.dialog",{version:"1.11.1",options:{appendTo:"body",autoOpen:!0,buttons:[],closeOnEscape:!0,closeText:"Close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",of:window,collision:"fit",using:function(t){var i=n(this).css(t).offset().top;0>i&&n(this).css("top",t.top-i)}},resizable:!0,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},sizeRelatedOptions:{buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},resizableRelatedOptions:{maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height};this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)};this.originalTitle=this.element.attr("title");this.options.title=this.options.title||this.originalTitle;this._createWrapper();this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(this.uiDialog);this._createTitlebar();this._createButtonPane();this.options.draggable&&n.fn.draggable&&this._makeDraggable();this.options.resizable&&n.fn.resizable&&this._makeResizable();this._isOpen=!1;this._trackFocus()},_init:function(){this.options.autoOpen&&this.open()},_appendTo:function(){var t=this.options.appendTo;return t&&(t.jquery||t.nodeType)?n(t):this.document.find(t||"body").eq(0)},_destroy:function(){var n,t=this.originalPosition;this._destroyOverlay();this.element.removeUniqueId().removeClass("ui-dialog-content ui-widget-content").css(this.originalCss).detach();this.uiDialog.stop(!0,!0).remove();this.originalTitle&&this.element.attr("title",this.originalTitle);n=t.parent.children().eq(t.index);n.length&&n[0]!==this.element[0]?n.before(this.element):t.parent.append(this.element)},widget:function(){return this.uiDialog},disable:n.noop,enable:n.noop,close:function(t){var i,r=this;if(this._isOpen&&this._trigger("beforeClose",t)!==!1){if(this._isOpen=!1,this._focusedElement=null,this._destroyOverlay(),this._untrackInstance(),!this.opener.filter(":focusable").focus().length)try{i=this.document[0].activeElement;i&&"body"!==i.nodeName.toLowerCase()&&n(i).blur()}catch(u){}this._hide(this.uiDialog,this.options.hide,function(){r._trigger("close",t)})}},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(t,i){var r=!1,f=this.uiDialog.siblings(".ui-front:visible").map(function(){return+n(this).css("z-index")}).get(),u=Math.max.apply(null,f);return u>=+this.uiDialog.css("z-index")&&(this.uiDialog.css("z-index",u+1),r=!0),r&&!i&&this._trigger("focus",t),r},open:function(){var t=this;return this._isOpen?(this._moveToTop()&&this._focusTabbable(),void 0):(this._isOpen=!0,this.opener=n(this.document[0].activeElement),this._size(),this._position(),this._createOverlay(),this._moveToTop(null,!0),this.overlay&&this.overlay.css("z-index",this.uiDialog.css("z-index")-1),this._show(this.uiDialog,this.options.show,function(){t._focusTabbable();t._trigger("focus")}),this._makeFocusTarget(),this._trigger("open"),void 0)},_focusTabbable:function(){var n=this._focusedElement;n||(n=this.element.find("[autofocus]"));n.length||(n=this.element.find(":tabbable"));n.length||(n=this.uiDialogButtonPane.find(":tabbable"));n.length||(n=this.uiDialogTitlebarClose.filter(":tabbable"));n.length||(n=this.uiDialog);n.eq(0).focus()},_keepFocus:function(t){function i(){var t=this.document[0].activeElement,i=this.uiDialog[0]===t||n.contains(this.uiDialog[0],t);i||this._focusTabbable()}t.preventDefault();i.call(this);this._delay(i)},_createWrapper:function(){this.uiDialog=n("<div>").addClass("ui-dialog ui-widget ui-widget-content ui-corner-all ui-front "+this.options.dialogClass).hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo());this._on(this.uiDialog,{keydown:function(t){if(this.options.closeOnEscape&&!t.isDefaultPrevented()&&t.keyCode&&t.keyCode===n.ui.keyCode.ESCAPE)return t.preventDefault(),this.close(t),void 0;if(t.keyCode===n.ui.keyCode.TAB&&!t.isDefaultPrevented()){var i=this.uiDialog.find(":tabbable"),r=i.filter(":first"),u=i.filter(":last");t.target!==u[0]&&t.target!==this.uiDialog[0]||t.shiftKey?t.target!==r[0]&&t.target!==this.uiDialog[0]||!t.shiftKey||(this._delay(function(){u.focus()}),t.preventDefault()):(this._delay(function(){r.focus()}),t.preventDefault())}},mousedown:function(n){this._moveToTop(n)&&this._focusTabbable()}});this.element.find("[aria-describedby]").length||this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})},_createTitlebar:function(){var t;this.uiDialogTitlebar=n("<div>").addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(this.uiDialog);this._on(this.uiDialogTitlebar,{mousedown:function(t){n(t.target).closest(".ui-dialog-titlebar-close")||this.uiDialog.focus()}});this.uiDialogTitlebarClose=n("<button type='button'><\/button>").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:!1}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar);this._on(this.uiDialogTitlebarClose,{click:function(n){n.preventDefault();this.close(n)}});t=n("<span>").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar);this._title(t);this.uiDialog.attr({"aria-labelledby":t.attr("id")})},_title:function(n){this.options.title||n.html("&#160;");n.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=n("<div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix");this.uiButtonSet=n("<div>").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane);this._createButtons()},_createButtons:function(){var i=this,t=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),n.isEmptyObject(t)||n.isArray(t)&&!t.length?(this.uiDialog.removeClass("ui-dialog-buttons"),void 0):(n.each(t,function(t,r){var u,f;r=n.isFunction(r)?{click:r,text:t}:r;r=n.extend({type:"button"},r);u=r.click;r.click=function(){u.apply(i.element[0],arguments)};f={icons:r.icons,text:r.showText};delete r.icons;delete r.showText;n("<button><\/button>",r).button(f).appendTo(i.uiButtonSet)}),this.uiDialog.addClass("ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),void 0)},_makeDraggable:function(){function i(n){return{position:n.position,offset:n.offset}}var t=this,r=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(r,u){n(this).addClass("ui-dialog-dragging");t._blockFrames();t._trigger("dragStart",r,i(u))},drag:function(n,r){t._trigger("drag",n,i(r))},stop:function(u,f){var e=f.offset.left-t.document.scrollLeft(),o=f.offset.top-t.document.scrollTop();r.position={my:"left top",at:"left"+(e>=0?"+":"")+e+" top"+(o>=0?"+":"")+o,of:t.window};n(this).removeClass("ui-dialog-dragging");t._unblockFrames();t._trigger("dragStop",u,i(f))}})},_makeResizable:function(){function r(n){return{originalPosition:n.originalPosition,originalSize:n.originalSize,position:n.position,size:n.size}}var t=this,i=this.options,u=i.resizable,f=this.uiDialog.css("position"),e="string"==typeof u?u:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:i.maxWidth,maxHeight:i.maxHeight,minWidth:i.minWidth,minHeight:this._minHeight(),handles:e,start:function(i,u){n(this).addClass("ui-dialog-resizing");t._blockFrames();t._trigger("resizeStart",i,r(u))},resize:function(n,i){t._trigger("resize",n,r(i))},stop:function(u,f){var e=t.uiDialog.offset(),o=e.left-t.document.scrollLeft(),s=e.top-t.document.scrollTop();i.height=t.uiDialog.height();i.width=t.uiDialog.width();i.position={my:"left top",at:"left"+(o>=0?"+":"")+o+" top"+(s>=0?"+":"")+s,of:t.window};n(this).removeClass("ui-dialog-resizing");t._unblockFrames();t._trigger("resizeStop",u,r(f))}}).css("position",f)},_trackFocus:function(){this._on(this.widget(),{focusin:function(t){this._makeFocusTarget();this._focusedElement=n(t.target)}})},_makeFocusTarget:function(){this._untrackInstance();this._trackingInstances().unshift(this)},_untrackInstance:function(){var t=this._trackingInstances(),i=n.inArray(this,t);-1!==i&&t.splice(i,1)},_trackingInstances:function(){var n=this.document.data("ui-dialog-instances");return n||(n=[],this.document.data("ui-dialog-instances",n)),n},_minHeight:function(){var n=this.options;return"auto"===n.height?n.minHeight:Math.min(n.minHeight,n.height)},_position:function(){var n=this.uiDialog.is(":visible");n||this.uiDialog.show();this.uiDialog.position(this.options.position);n||this.uiDialog.hide()},_setOptions:function(t){var i=this,r=!1,u={};n.each(t,function(n,t){i._setOption(n,t);n in i.sizeRelatedOptions&&(r=!0);n in i.resizableRelatedOptions&&(u[n]=t)});r&&(this._size(),this._position());this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",u)},_setOption:function(n,t){var u,r,i=this.uiDialog;"dialogClass"===n&&i.removeClass(this.options.dialogClass).addClass(t);"disabled"!==n&&(this._super(n,t),"appendTo"===n&&this.uiDialog.appendTo(this._appendTo()),"buttons"===n&&this._createButtons(),"closeText"===n&&this.uiDialogTitlebarClose.button({label:""+t}),"draggable"===n&&(u=i.is(":data(ui-draggable)"),u&&!t&&i.draggable("destroy"),!u&&t&&this._makeDraggable()),"position"===n&&this._position(),"resizable"===n&&(r=i.is(":data(ui-resizable)"),r&&!t&&i.resizable("destroy"),r&&"string"==typeof t&&i.resizable("option","handles",t),r||t===!1||this._makeResizable()),"title"===n&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var t,i,r,n=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0});n.minWidth>n.width&&(n.width=n.minWidth);t=this.uiDialog.css({height:"auto",width:n.width}).outerHeight();i=Math.max(0,n.minHeight-t);r="number"==typeof n.maxHeight?Math.max(0,n.maxHeight-t):"none";"auto"===n.height?this.element.css({minHeight:i,maxHeight:r,height:"auto"}):this.element.height(Math.max(0,n.height-t));this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var t=n(this);return n("<div>").css({position:"absolute",width:t.outerWidth(),height:t.outerHeight()}).appendTo(t.parent()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(t){return n(t.target).closest(".ui-dialog").length?!0:!!n(t.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var t=!0;this._delay(function(){t=!1});this.document.data("ui-dialog-overlays")||this._on(this.document,{focusin:function(n){t||this._allowInteraction(n)||(n.preventDefault(),this._trackingInstances()[0]._focusTabbable())}});this.overlay=n("<div>").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo());this._on(this.overlay,{mousedown:"_keepFocus"});this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)}},_destroyOverlay:function(){if(this.options.modal&&this.overlay){var n=this.document.data("ui-dialog-overlays")-1;n?this.document.data("ui-dialog-overlays",n):this.document.unbind("focusin").removeData("ui-dialog-overlays");this.overlay.remove();this.overlay=null}}});n.widget("ui.droppable",{version:"1.11.1",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var t,i=this.options,r=i.accept;this.isover=!1;this.isout=!0;this.accept=n.isFunction(r)?r:function(n){return n.is(r)};this.proportions=function(){return arguments.length?(t=arguments[0],void 0):t?t:t={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}};this._addToManager(i.scope);i.addClasses&&this.element.addClass("ui-droppable")},_addToManager:function(t){n.ui.ddmanager.droppables[t]=n.ui.ddmanager.droppables[t]||[];n.ui.ddmanager.droppables[t].push(this)},_splice:function(n){for(var t=0;n.length>t;t++)n[t]===this&&n.splice(t,1)},_destroy:function(){var t=n.ui.ddmanager.droppables[this.options.scope];this._splice(t);this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(t,i){if("accept"===t)this.accept=n.isFunction(i)?i:function(n){return n.is(i)};else if("scope"===t){var r=n.ui.ddmanager.droppables[this.options.scope];this._splice(r);this._addToManager(i)}this._super(t,i)},_activate:function(t){var i=n.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass);i&&this._trigger("activate",t,this.ui(i))},_deactivate:function(t){var i=n.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);i&&this._trigger("deactivate",t,this.ui(i))},_over:function(t){var i=n.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",t,this.ui(i)))},_out:function(t){var i=n.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",t,this.ui(i)))},_drop:function(t,i){var r=i||n.ui.ddmanager.current,u=!1;return r&&(r.currentItem||r.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var i=n(this).droppable("instance");if(i.options.greedy&&!i.options.disabled&&i.options.scope===r.options.scope&&i.accept.call(i.element[0],r.currentItem||r.element)&&n.ui.intersect(r,n.extend(i,{offset:i.element.offset()}),i.options.tolerance,t))return(u=!0,!1)}),u?!1:this.accept.call(this.element[0],r.currentItem||r.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",t,this.ui(r)),this.element):!1):!1},ui:function(n){return{draggable:n.currentItem||n.element,helper:n.helper,position:n.position,offset:n.positionAbs}}});n.ui.intersect=function(){function n(n,t,i){return n>=t&&t+i>n}return function(t,i,r,u){if(!i.offset)return!1;var o=(t.positionAbs||t.position.absolute).left,s=(t.positionAbs||t.position.absolute).top,h=o+t.helperProportions.width,c=s+t.helperProportions.height,f=i.offset.left,e=i.offset.top,l=f+i.proportions().width,a=e+i.proportions().height;switch(r){case"fit":return o>=f&&l>=h&&s>=e&&a>=c;case"intersect":return o+t.helperProportions.width/2>f&&l>h-t.helperProportions.width/2&&s+t.helperProportions.height/2>e&&a>c-t.helperProportions.height/2;case"pointer":return n(u.pageY,e,i.proportions().height)&&n(u.pageX,f,i.proportions().width);case"touch":return(s>=e&&a>=s||c>=e&&a>=c||e>s&&c>a)&&(o>=f&&l>=o||h>=f&&l>=h||f>o&&h>l);default:return!1}}}();n.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,i){var r,f,u=n.ui.ddmanager.droppables[t.options.scope]||[],o=i?i.type:null,e=(t.currentItem||t.element).find(":data(ui-droppable)").addBack();n:for(r=0;u.length>r;r++)if(!(u[r].options.disabled||t&&!u[r].accept.call(u[r].element[0],t.currentItem||t.element))){for(f=0;e.length>f;f++)if(e[f]===u[r].element[0]){u[r].proportions().height=0;continue n}u[r].visible="none"!==u[r].element.css("display");u[r].visible&&("mousedown"===o&&u[r]._activate.call(u[r],i),u[r].offset=u[r].element.offset(),u[r].proportions({width:u[r].element[0].offsetWidth,height:u[r].element[0].offsetHeight}))}},drop:function(t,i){var r=!1;return n.each((n.ui.ddmanager.droppables[t.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&n.ui.intersect(t,this,this.options.tolerance,i)&&(r=this._drop.call(this,i)||r),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],t.currentItem||t.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),r},dragStart:function(t,i){t.element.parentsUntil("body").bind("scroll.droppable",function(){t.options.refreshPositions||n.ui.ddmanager.prepareOffsets(t,i)})},drag:function(t,i){t.options.refreshPositions&&n.ui.ddmanager.prepareOffsets(t,i);n.each(n.ui.ddmanager.droppables[t.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var r,e,f,o=n.ui.intersect(t,this,this.options.tolerance,i),u=!o&&this.isover?"isout":o&&!this.isover?"isover":null;u&&(this.options.greedy&&(e=this.options.scope,f=this.element.parents(":data(ui-droppable)").filter(function(){return n(this).droppable("instance").options.scope===e}),f.length&&(r=n(f[0]).droppable("instance"),r.greedyChild="isover"===u)),r&&"isover"===u&&(r.isover=!1,r.isout=!0,r._out.call(r,i)),this[u]=!0,this["isout"===u?"isover":"isout"]=!1,this["isover"===u?"_over":"_out"].call(this,i),r&&"isout"===u&&(r.isout=!1,r.isover=!0,r._over.call(r,i)))}})},dragStop:function(t,i){t.element.parentsUntil("body").unbind("scroll.droppable");t.options.refreshPositions||n.ui.ddmanager.prepareOffsets(t,i)}};n.ui.droppable;o="ui-effects-";s=n;n.effects={effect:{}},function(n,t){function f(n,t,i){var r=h[t.type]||{};return null==n?i||!t.def?null:t.def:(n=r.floor?~~n:parseFloat(n),isNaN(n)?t.def:r.mod?(n+r.mod)%r.mod:0>n?0:n>r.max?r.max:n)}function s(f){var o=i(),s=o._rgba=[];return f=f.toLowerCase(),r(v,function(n,i){var r,h=i.re.exec(f),c=h&&i.parse(h),e=i.space||"rgba";return c?(r=o[e](c),o[u[e].cache]=r[u[e].cache],s=o._rgba=r._rgba,!1):t}),s.length?("0,0,0,0"===s.join()&&n.extend(s,e.transparent),o):e[f]}function o(n,t,i){return i=(i+1)%1,1>6*i?n+6*(t-n)*i:1>2*i?t:2>3*i?n+6*(t-n)*(2/3-i):n}var e,a=/^([\-+])=\s*(\d+\.?\d*)/,v=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(n){return[n[1],n[2],n[3],n[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(n){return[2.55*n[1],2.55*n[2],2.55*n[3],n[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(n){return[parseInt(n[1],16),parseInt(n[2],16),parseInt(n[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(n){return[parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16),parseInt(n[3]+n[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(n){return[n[1],n[2]/100,n[3]/100,n[4]]}}],i=n.Color=function(t,i,r,u){return new n.Color.fn.parse(t,i,r,u)},u={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},h={byte:{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},c=i.support={},l=n("<p>")[0],r=n.each;l.style.cssText="background-color:rgba(1,1,1,.5)";c.rgba=l.style.backgroundColor.indexOf("rgba")>-1;r(u,function(n,t){t.cache="_"+n;t.props.alpha={idx:3,type:"percent",def:1}});i.fn=n.extend(i.prototype,{parse:function(o,h,c,l){if(o===t)return this._rgba=[null,null,null,null],this;(o.jquery||o.nodeType)&&(o=n(o).css(h),h=t);var a=this,v=n.type(o),y=this._rgba=[];return h!==t&&(o=[o,h,c,l],v="array"),"string"===v?this.parse(s(o)||e._default):"array"===v?(r(u.rgba.props,function(n,t){y[t.idx]=f(o[t.idx],t)}),this):"object"===v?(o instanceof i?r(u,function(n,t){o[t.cache]&&(a[t.cache]=o[t.cache].slice())}):r(u,function(t,i){var u=i.cache;r(i.props,function(n,t){if(!a[u]&&i.to){if("alpha"===n||null==o[n])return;a[u]=i.to(a._rgba)}a[u][t.idx]=f(o[n],t,!0)});a[u]&&0>n.inArray(null,a[u].slice(0,3))&&(a[u][3]=1,i.from&&(a._rgba=i.from(a[u])))}),this):t},is:function(n){var o=i(n),f=!0,e=this;return r(u,function(n,i){var s,u=o[i.cache];return u&&(s=e[i.cache]||i.to&&i.to(e._rgba)||[],r(i.props,function(n,i){return null!=u[i.idx]?f=u[i.idx]===s[i.idx]:t})),f}),f},_space:function(){var n=[],t=this;return r(u,function(i,r){t[r.cache]&&n.push(i)}),n.pop()},transition:function(n,t){var e=i(n),c=e._space(),o=u[c],l=0===this.alpha()?i("transparent"):this,a=l[o.cache]||o.to(l._rgba),s=a.slice();return e=e[o.cache],r(o.props,function(n,i){var c=i.idx,r=a[c],u=e[c],o=h[i.type]||{};null!==u&&(null===r?s[c]=u:(o.mod&&(u-r>o.mod/2?r+=o.mod:r-u>o.mod/2&&(r-=o.mod)),s[c]=f((u-r)*t+r,i)))}),this[c](s)},blend:function(t){if(1===this._rgba[3])return this;var r=this._rgba.slice(),u=r.pop(),f=i(t)._rgba;return i(n.map(r,function(n,t){return(1-u)*f[t]+u*n}))},toRgbaString:function(){var i="rgba(",t=n.map(this._rgba,function(n,t){return null==n?t>2?1:0:n});return 1===t[3]&&(t.pop(),i="rgb("),i+t.join()+")"},toHslaString:function(){var i="hsla(",t=n.map(this.hsla(),function(n,t){return null==n&&(n=t>2?1:0),t&&3>t&&(n=Math.round(100*n)+"%"),n});return 1===t[3]&&(t.pop(),i="hsl("),i+t.join()+")"},toHexString:function(t){var i=this._rgba.slice(),r=i.pop();return t&&i.push(~~(255*r)),"#"+n.map(i,function(n){return n=(n||0).toString(16),1===n.length?"0"+n:n}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}});i.fn.parse.prototype=i.fn;u.hsla.to=function(n){if(null==n[0]||null==n[1]||null==n[2])return[null,null,null,n[3]];var s,h,i=n[0]/255,r=n[1]/255,f=n[2]/255,c=n[3],u=Math.max(i,r,f),e=Math.min(i,r,f),t=u-e,o=u+e,l=.5*o;return s=e===u?0:i===u?60*(r-f)/t+360:r===u?60*(f-i)/t+120:60*(i-r)/t+240,h=0===t?0:.5>=l?t/o:t/(2-o),[Math.round(s)%360,h,l,null==c?1:c]};u.hsla.from=function(n){if(null==n[0]||null==n[1]||null==n[2])return[null,null,null,n[3]];var r=n[0]/360,u=n[1],t=n[2],e=n[3],i=.5>=t?t*(1+u):t+u-t*u,f=2*t-i;return[Math.round(255*o(f,i,r+1/3)),Math.round(255*o(f,i,r)),Math.round(255*o(f,i,r-1/3)),e]};r(u,function(u,e){var s=e.props,o=e.cache,h=e.to,c=e.from;i.fn[u]=function(u){if(h&&!this[o]&&(this[o]=h(this._rgba)),u===t)return this[o].slice();var l,a=n.type(u),v="array"===a||"object"===a?u:arguments,e=this[o].slice();return r(s,function(n,t){var i=v["object"===a?n:t.idx];null==i&&(i=e[t.idx]);e[t.idx]=f(i,t)}),c?(l=i(c(e)),l[o]=e,l):i(e)};r(s,function(t,r){i.fn[t]||(i.fn[t]=function(i){var f,e=n.type(i),h="alpha"===t?this._hsla?"hsla":"rgba":u,o=this[h](),s=o[r.idx];return"undefined"===e?s:("function"===e&&(i=i.call(this,s),e=n.type(i)),null==i&&r.empty?this:("string"===e&&(f=a.exec(i),f&&(i=s+parseFloat(f[2])*("+"===f[1]?1:-1))),o[r.idx]=i,this[h](o)))})})});i.hook=function(t){var u=t.split(" ");r(u,function(t,r){n.cssHooks[r]={set:function(t,u){var o,f,e="";if("transparent"!==u&&("string"!==n.type(u)||(o=s(u)))){if(u=i(o||u),!c.rgba&&1!==u._rgba[3]){for(f="backgroundColor"===r?t.parentNode:t;(""===e||"transparent"===e)&&f&&f.style;)try{e=n.css(f,"backgroundColor");f=f.parentNode}catch(h){}u=u.blend(e&&"transparent"!==e?e:"_default")}u=u.toRgbaString()}try{t.style[r]=u}catch(h){}}};n.fx.step[r]=function(t){t.colorInit||(t.start=i(t.elem,r),t.end=i(t.end),t.colorInit=!0);n.cssHooks[r].set(t.elem,t.start.transition(t.end,t.pos))}})};i.hook("backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor");n.cssHooks.borderColor={expand:function(n){var t={};return r(["Top","Right","Bottom","Left"],function(i,r){t["border"+r+"Color"]=n}),t}};e=n.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}}(s),function(){function t(t){var r,u,i=t.ownerDocument.defaultView?t.ownerDocument.defaultView.getComputedStyle(t,null):t.currentStyle,f={};if(i&&i.length&&i[0]&&i[i[0]])for(u=i.length;u--;)r=i[u],"string"==typeof i[r]&&(f[n.camelCase(r)]=i[r]);else for(r in i)"string"==typeof i[r]&&(f[r]=i[r]);return f}function i(t,i){var r,f,e={};for(r in i)f=i[r],t[r]!==f&&(u[r]||(n.fx.step[r]||!isNaN(parseFloat(f)))&&(e[r]=f));return e}var r=["add","remove","toggle"],u={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};n.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(t,i){n.fx.step[i]=function(n){("none"===n.end||n.setAttr)&&(1!==n.pos||n.setAttr)||(s.style(n.elem,i,n.end),n.setAttr=!0)}});n.fn.addBack||(n.fn.addBack=function(n){return this.add(null==n?this.prevObject:this.prevObject.filter(n))});n.effects.animateClass=function(u,f,e,o){var s=n.speed(f,e,o);return this.queue(function(){var o,e=n(this),h=e.attr("class")||"",f=s.children?e.find("*").addBack():e;f=f.map(function(){var i=n(this);return{el:i,start:t(this)}});o=function(){n.each(r,function(n,t){u[t]&&e[t+"Class"](u[t])})};o();f=f.map(function(){return this.end=t(this.el[0]),this.diff=i(this.start,this.end),this});e.attr("class",h);f=f.map(function(){var i=this,t=n.Deferred(),r=n.extend({},s,{queue:!1,complete:function(){t.resolve(i)}});return this.el.animate(this.diff,r),t.promise()});n.when.apply(n,f.get()).done(function(){o();n.each(arguments,function(){var t=this.el;n.each(this.diff,function(n){t.css(n,"")})});s.complete.call(e[0])})})};n.fn.extend({addClass:function(t){return function(i,r,u,f){return r?n.effects.animateClass.call(this,{add:i},r,u,f):t.apply(this,arguments)}}(n.fn.addClass),removeClass:function(t){return function(i,r,u,f){return arguments.length>1?n.effects.animateClass.call(this,{remove:i},r,u,f):t.apply(this,arguments)}}(n.fn.removeClass),toggleClass:function(t){return function(i,r,u,f,e){return"boolean"==typeof r||void 0===r?u?n.effects.animateClass.call(this,r?{add:i}:{remove:i},u,f,e):t.apply(this,arguments):n.effects.animateClass.call(this,{toggle:i},r,u,f)}}(n.fn.toggleClass),switchClass:function(t,i,r,u,f){return n.effects.animateClass.call(this,{add:i,remove:t},r,u,f)}})}(),function(){function t(t,i,r,u){return n.isPlainObject(t)&&(i=t,t=t.effect),t={effect:t},null==i&&(i={}),n.isFunction(i)&&(u=i,r=null,i={}),("number"==typeof i||n.fx.speeds[i])&&(u=r,r=i,i={}),n.isFunction(r)&&(u=r,r=null),i&&n.extend(t,i),r=r||i.duration,t.duration=n.fx.off?0:"number"==typeof r?r:r in n.fx.speeds?n.fx.speeds[r]:n.fx.speeds._default,t.complete=u||i.complete,t}function i(t){return!t||"number"==typeof t||n.fx.speeds[t]?!0:"string"!=typeof t||n.effects.effect[t]?n.isFunction(t)?!0:"object"!=typeof t||t.effect?!1:!0:!0}n.extend(n.effects,{version:"1.11.1",save:function(n,t){for(var i=0;t.length>i;i++)null!==t[i]&&n.data(o+t[i],n[0].style[t[i]])},restore:function(n,t){for(var r,i=0;t.length>i;i++)null!==t[i]&&(r=n.data(o+t[i]),void 0===r&&(r=""),n.css(t[i],r))},setMode:function(n,t){return"toggle"===t&&(t=n.is(":hidden")?"show":"hide"),t},getBaseline:function(n,t){var i,r;switch(n[0]){case"top":i=0;break;case"middle":i=.5;break;case"bottom":i=1;break;default:i=n[0]/t.height}switch(n[1]){case"left":r=0;break;case"center":r=.5;break;case"right":r=1;break;default:r=n[1]/t.width}return{x:r,y:i}},createWrapper:function(t){if(t.parent().is(".ui-effects-wrapper"))return t.parent();var i={width:t.outerWidth(!0),height:t.outerHeight(!0),float:t.css("float")},u=n("<div><\/div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),f={width:t.width(),height:t.height()},r=document.activeElement;try{r.id}catch(e){r=document.body}return t.wrap(u),(t[0]===r||n.contains(t[0],r))&&n(r).focus(),u=t.parent(),"static"===t.css("position")?(u.css({position:"relative"}),t.css({position:"relative"})):(n.extend(i,{position:t.css("position"),zIndex:t.css("z-index")}),n.each(["top","left","bottom","right"],function(n,r){i[r]=t.css(r);isNaN(parseInt(i[r],10))&&(i[r]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),t.css(f),u.css(i).show()},removeWrapper:function(t){var i=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),(t[0]===i||n.contains(t[0],i))&&n(i).focus()),t},setTransition:function(t,i,r,u){return u=u||{},n.each(i,function(n,i){var f=t.cssUnit(i);f[0]>0&&(u[i]=f[0]*r+f[1])}),u}});n.fn.extend({effect:function(){function r(t){function f(){n.isFunction(o)&&o.call(r[0]);n.isFunction(t)&&t()}var r=n(this),o=i.complete,u=i.mode;(r.is(":hidden")?"hide"===u:"show"===u)?(r[u](),f()):e.call(r[0],i,f)}var i=t.apply(this,arguments),u=i.mode,f=i.queue,e=n.effects.effect[i.effect];return n.fx.off||!e?u?this[u](i.duration,i.complete):this.each(function(){i.complete&&i.complete.call(this)}):f===!1?this.each(r):this.queue(f||"fx",r)},show:function(n){return function(r){if(i(r))return n.apply(this,arguments);var u=t.apply(this,arguments);return u.mode="show",this.effect.call(this,u)}}(n.fn.show),hide:function(n){return function(r){if(i(r))return n.apply(this,arguments);var u=t.apply(this,arguments);return u.mode="hide",this.effect.call(this,u)}}(n.fn.hide),toggle:function(n){return function(r){if(i(r)||"boolean"==typeof r)return n.apply(this,arguments);var u=t.apply(this,arguments);return u.mode="toggle",this.effect.call(this,u)}}(n.fn.toggle),cssUnit:function(t){var i=this.css(t),r=[];return n.each(["em","px","%","pt"],function(n,t){i.indexOf(t)>0&&(r=[parseFloat(i),t])}),r}})}(),function(){var t={};n.each(["Quad","Cubic","Quart","Quint","Expo"],function(n,i){t[i]=function(t){return Math.pow(t,n+2)}});n.extend(t,{Sine:function(n){return 1-Math.cos(n*Math.PI/2)},Circ:function(n){return 1-Math.sqrt(1-n*n)},Elastic:function(n){return 0===n||1===n?n:-Math.pow(2,8*(n-1))*Math.sin((80*(n-1)-7.5)*Math.PI/15)},Back:function(n){return n*n*(3*n-2)},Bounce:function(n){for(var t,i=4;((t=Math.pow(2,--i))-1)/11>n;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*t-2)/22-n,2)}});n.each(t,function(t,i){n.easing["easeIn"+t]=i;n.easing["easeOut"+t]=function(n){return 1-i(1-n)};n.easing["easeInOut"+t]=function(n){return.5>n?i(2*n)/2:1-i(-2*n+2)/2}})}();n.effects;n.effects.effect.blind=function(t,i){var u,f,e,r=n(this),s=["position","top","bottom","left","right","height","width"],v=n.effects.setMode(r,t.mode||"hide"),y=t.direction||"up",o=/up|down|vertical/.test(y),h=o?"height":"width",c=o?"top":"left",p=/up|left|vertical|horizontal/.test(y),l={},a="show"===v;r.parent().is(".ui-effects-wrapper")?n.effects.save(r.parent(),s):n.effects.save(r,s);r.show();u=n.effects.createWrapper(r).css({overflow:"hidden"});f=u[h]();e=parseFloat(u.css(c))||0;l[h]=a?f:0;p||(r.css(o?"bottom":"right",0).css(o?"top":"left","auto").css({position:"absolute"}),l[c]=a?e:f+e);a&&(u.css(h,0),p||u.css(c,e+f));u.animate(l,{duration:t.duration,easing:t.easing,queue:!1,complete:function(){"hide"===v&&r.hide();n.effects.restore(r,s);n.effects.removeWrapper(r);i()}})};n.effects.effect.bounce=function(t,i){var v,f,e,r=n(this),y=["position","top","bottom","left","right","height","width"],k=n.effects.setMode(r,t.mode||"effect"),o="hide"===k,p="show"===k,h=t.direction||"up",u=t.distance,w=t.times||5,d=2*w+(p||o?1:0),c=t.duration/d,l=t.easing,s="up"===h||"down"===h?"top":"left",b="up"===h||"left"===h,a=r.queue(),g=a.length;for((p||o)&&y.push("opacity"),n.effects.save(r,y),r.show(),n.effects.createWrapper(r),u||(u=r["top"===s?"outerHeight":"outerWidth"]()/3),p&&(e={opacity:1},e[s]=0,r.css("opacity",0).css(s,b?2*-u:2*u).animate(e,c,l)),o&&(u/=Math.pow(2,w-1)),e={},e[s]=0,v=0;w>v;v++)f={},f[s]=(b?"-=":"+=")+u,r.animate(f,c,l).animate(e,c,l),u=o?2*u:u/2;o&&(f={opacity:0},f[s]=(b?"-=":"+=")+u,r.animate(f,c,l));r.queue(function(){o&&r.hide();n.effects.restore(r,y);n.effects.removeWrapper(r);i()});g>1&&a.splice.apply(a,[1,0].concat(a.splice(g,d+1)));r.dequeue()};n.effects.effect.clip=function(t,i){var h,u,f,r=n(this),c=["position","top","bottom","left","right","height","width"],v=n.effects.setMode(r,t.mode||"hide"),e="show"===v,y=t.direction||"vertical",l="vertical"===y,o=l?"height":"width",a=l?"top":"left",s={};n.effects.save(r,c);r.show();h=n.effects.createWrapper(r).css({overflow:"hidden"});u="IMG"===r[0].tagName?h:r;f=u[o]();e&&(u.css(o,0),u.css(a,f/2));s[o]=e?f:0;s[a]=e?0:f/2;u.animate(s,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){e||r.hide();n.effects.restore(r,c);n.effects.removeWrapper(r);i()}})};n.effects.effect.drop=function(t,i){var u,r=n(this),h=["position","top","bottom","left","right","opacity","height","width"],c=n.effects.setMode(r,t.mode||"hide"),e="show"===c,f=t.direction||"left",o="up"===f||"down"===f?"top":"left",s="up"===f||"left"===f?"pos":"neg",l={opacity:e?1:0};n.effects.save(r,h);r.show();n.effects.createWrapper(r);u=t.distance||r["top"===o?"outerHeight":"outerWidth"](!0)/2;e&&r.css("opacity",0).css(o,"pos"===s?-u:u);l[o]=(e?"pos"===s?"+=":"-=":"pos"===s?"-=":"+=")+u;r.animate(l,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===c&&r.hide();n.effects.restore(r,h);n.effects.removeWrapper(r);i()}})};n.effects.effect.explode=function(t,i){function b(){p.push(this);p.length===o*c&&k()}function k(){r.css({visibility:"visible"});n(p).remove();u||r.hide();i()}for(var e,l,a,v,y,o=t.pieces?Math.round(Math.sqrt(t.pieces)):3,c=o,r=n(this),d=n.effects.setMode(r,t.mode||"hide"),u="show"===d,w=r.show().css("visibility","hidden").offset(),s=Math.ceil(r.outerWidth()/c),h=Math.ceil(r.outerHeight()/o),p=[],f=0;o>f;f++)for(a=w.top+f*h,y=f-(o-1)/2,e=0;c>e;e++)l=w.left+e*s,v=e-(c-1)/2,r.clone().appendTo("body").wrap("<div><\/div>").css({position:"absolute",visibility:"visible",left:-e*s,top:-f*h}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:s,height:h,left:l+(u?v*s:0),top:a+(u?y*h:0),opacity:u?0:1}).animate({left:l+(u?0:v*s),top:a+(u?0:y*h),opacity:u?1:0},t.duration||500,t.easing,b)};n.effects.effect.fade=function(t,i){var r=n(this),u=n.effects.setMode(r,t.mode||"toggle");r.animate({opacity:u},{queue:!1,duration:t.duration,easing:t.easing,complete:i})};n.effects.effect.fold=function(t,i){var r,e,u=n(this),s=["position","top","bottom","left","right","height","width"],h=n.effects.setMode(u,t.mode||"hide"),o="show"===h,c="hide"===h,f=t.size||15,l=/([0-9]+)%/.exec(f),a=!!t.horizFirst,v=o!==a,y=v?["width","height"]:["height","width"],p=t.duration/2,w={},b={};n.effects.save(u,s);u.show();r=n.effects.createWrapper(u).css({overflow:"hidden"});e=v?[r.width(),r.height()]:[r.height(),r.width()];l&&(f=parseInt(l[1],10)/100*e[c?0:1]);o&&r.css(a?{height:0,width:f}:{height:f,width:0});w[y[0]]=o?e[0]:f;b[y[1]]=o?e[1]:0;r.animate(w,p,t.easing).animate(b,p,t.easing,function(){c&&u.hide();n.effects.restore(u,s);n.effects.removeWrapper(u);i()})};n.effects.effect.highlight=function(t,i){var r=n(this),u=["backgroundImage","backgroundColor","opacity"],f=n.effects.setMode(r,t.mode||"show"),e={backgroundColor:r.css("backgroundColor")};"hide"===f&&(e.opacity=0);n.effects.save(r,u);r.show().css({backgroundImage:"none",backgroundColor:t.color||"#ffff99"}).animate(e,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===f&&r.hide();n.effects.restore(r,u);i()}})};n.effects.effect.size=function(t,i){var f,l,u,r=n(this),w=["position","top","bottom","left","right","width","height","overflow","opacity"],a=["width","height","overflow"],v=["fontSize"],e=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],o=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],h=n.effects.setMode(r,t.mode||"effect"),y=t.restore||"effect"!==h,c=t.scale||"both",b=t.origin||["middle","center"],k=r.css("position"),s=y?w:["position","top","bottom","left","right","overflow","opacity"],p={height:0,width:0,outerHeight:0,outerWidth:0};"show"===h&&r.show();f={height:r.height(),width:r.width(),outerHeight:r.outerHeight(),outerWidth:r.outerWidth()};"toggle"===t.mode&&"show"===h?(r.from=t.to||p,r.to=t.from||f):(r.from=t.from||("show"===h?p:f),r.to=t.to||("hide"===h?p:f));u={from:{y:r.from.height/f.height,x:r.from.width/f.width},to:{y:r.to.height/f.height,x:r.to.width/f.width}};("box"===c||"both"===c)&&(u.from.y!==u.to.y&&(s=s.concat(e),r.from=n.effects.setTransition(r,e,u.from.y,r.from),r.to=n.effects.setTransition(r,e,u.to.y,r.to)),u.from.x!==u.to.x&&(s=s.concat(o),r.from=n.effects.setTransition(r,o,u.from.x,r.from),r.to=n.effects.setTransition(r,o,u.to.x,r.to)));("content"===c||"both"===c)&&u.from.y!==u.to.y&&(s=s.concat(v).concat(a),r.from=n.effects.setTransition(r,v,u.from.y,r.from),r.to=n.effects.setTransition(r,v,u.to.y,r.to));n.effects.save(r,s);r.show();n.effects.createWrapper(r);r.css("overflow","hidden").css(r.from);b&&(l=n.effects.getBaseline(b,f),r.from.top=(f.outerHeight-r.outerHeight())*l.y,r.from.left=(f.outerWidth-r.outerWidth())*l.x,r.to.top=(f.outerHeight-r.to.outerHeight)*l.y,r.to.left=(f.outerWidth-r.to.outerWidth)*l.x);r.css(r.from);("content"===c||"both"===c)&&(e=e.concat(["marginTop","marginBottom"]).concat(v),o=o.concat(["marginLeft","marginRight"]),a=w.concat(e).concat(o),r.find("*[width]").each(function(){var i=n(this),r={height:i.height(),width:i.width(),outerHeight:i.outerHeight(),outerWidth:i.outerWidth()};y&&n.effects.save(i,a);i.from={height:r.height*u.from.y,width:r.width*u.from.x,outerHeight:r.outerHeight*u.from.y,outerWidth:r.outerWidth*u.from.x};i.to={height:r.height*u.to.y,width:r.width*u.to.x,outerHeight:r.height*u.to.y,outerWidth:r.width*u.to.x};u.from.y!==u.to.y&&(i.from=n.effects.setTransition(i,e,u.from.y,i.from),i.to=n.effects.setTransition(i,e,u.to.y,i.to));u.from.x!==u.to.x&&(i.from=n.effects.setTransition(i,o,u.from.x,i.from),i.to=n.effects.setTransition(i,o,u.to.x,i.to));i.css(i.from);i.animate(i.to,t.duration,t.easing,function(){y&&n.effects.restore(i,a)})}));r.animate(r.to,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){0===r.to.opacity&&r.css("opacity",r.from.opacity);"hide"===h&&r.hide();n.effects.restore(r,s);y||("static"===k?r.css({position:"relative",top:r.to.top,left:r.to.left}):n.each(["top","left"],function(n,t){r.css(t,function(t,i){var f=parseInt(i,10),u=n?r.to.left:r.to.top;return"auto"===i?u+"px":f+u+"px"})}));n.effects.removeWrapper(r);i()}})};n.effects.effect.scale=function(t,i){var u=n(this),r=n.extend(!0,{},t),f=n.effects.setMode(u,t.mode||"effect"),s=parseInt(t.percent,10)||(0===parseInt(t.percent,10)?0:"hide"===f?0:100),h=t.direction||"both",c=t.origin,e={height:u.height(),width:u.width(),outerHeight:u.outerHeight(),outerWidth:u.outerWidth()},o={y:"horizontal"!==h?s/100:1,x:"vertical"!==h?s/100:1};r.effect="size";r.queue=!1;r.complete=i;"effect"!==f&&(r.origin=c||["middle","center"],r.restore=!0);r.from=t.from||("show"===f?{height:0,width:0,outerHeight:0,outerWidth:0}:e);r.to={height:e.height*o.y,width:e.width*o.x,outerHeight:e.outerHeight*o.y,outerWidth:e.outerWidth*o.x};r.fade&&("show"===f&&(r.from.opacity=0,r.to.opacity=1),"hide"===f&&(r.from.opacity=1,r.to.opacity=0));u.effect(r)};n.effects.effect.puff=function(t,i){var r=n(this),e=n.effects.setMode(r,t.mode||"hide"),o="hide"===e,s=parseInt(t.percent,10)||150,f=s/100,u={height:r.height(),width:r.width(),outerHeight:r.outerHeight(),outerWidth:r.outerWidth()};n.extend(t,{effect:"scale",queue:!1,fade:!0,mode:e,complete:i,percent:o?s:100,from:o?u:{height:u.height*f,width:u.width*f,outerHeight:u.outerHeight*f,outerWidth:u.outerWidth*f}});r.effect(t)};n.effects.effect.pulsate=function(t,i){var e,r=n(this),o=n.effects.setMode(r,t.mode||"show"),h="show"===o,a="hide"===o,v=h||"hide"===o,s=2*(t.times||5)+(v?1:0),c=t.duration/s,u=0,f=r.queue(),l=f.length;for((h||!r.is(":visible"))&&(r.css("opacity",0).show(),u=1),e=1;s>e;e++)r.animate({opacity:u},c,t.easing),u=1-u;r.animate({opacity:u},c,t.easing);r.queue(function(){a&&r.hide();i()});l>1&&f.splice.apply(f,[1,0].concat(f.splice(l,s+1)));r.dequeue()};n.effects.effect.shake=function(t,i){var o,r=n(this),v=["position","top","bottom","left","right","height","width"],k=n.effects.setMode(r,t.mode||"effect"),f=t.direction||"left",s=t.distance||20,y=t.times||3,p=2*y+1,u=Math.round(t.duration/p),h="up"===f||"down"===f?"top":"left",c="up"===f||"left"===f,l={},a={},w={},e=r.queue(),b=e.length;for(n.effects.save(r,v),r.show(),n.effects.createWrapper(r),l[h]=(c?"-=":"+=")+s,a[h]=(c?"+=":"-=")+2*s,w[h]=(c?"-=":"+=")+2*s,r.animate(l,u,t.easing),o=1;y>o;o++)r.animate(a,u,t.easing).animate(w,u,t.easing);r.animate(a,u,t.easing).animate(l,u/2,t.easing).queue(function(){"hide"===k&&r.hide();n.effects.restore(r,v);n.effects.removeWrapper(r);i()});b>1&&e.splice.apply(e,[1,0].concat(e.splice(b,p+1)));r.dequeue()};n.effects.effect.slide=function(t,i){var u,r=n(this),s=["position","top","bottom","left","right","width","height"],h=n.effects.setMode(r,t.mode||"show"),c="show"===h,f=t.direction||"left",e="up"===f||"down"===f?"top":"left",o="up"===f||"left"===f,l={};n.effects.save(r,s);r.show();u=t.distance||r["top"===e?"outerHeight":"outerWidth"](!0);n.effects.createWrapper(r).css({overflow:"hidden"});c&&r.css(e,o?isNaN(u)?"-"+u:-u:u);l[e]=(c?o?"+=":"-=":o?"-=":"+=")+u;r.animate(l,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===h&&r.hide();n.effects.restore(r,s);n.effects.removeWrapper(r);i()}})};n.effects.effect.transfer=function(t,i){var u=n(this),r=n(t.to),f="fixed"===r.css("position"),e=n("body"),o=f?e.scrollTop():0,s=f?e.scrollLeft():0,h=r.offset(),l={top:h.top-o,left:h.left-s,height:r.innerHeight(),width:r.innerWidth()},c=u.offset(),a=n("<div class='ui-effects-transfer'><\/div>").appendTo(document.body).addClass(t.className).css({top:c.top-o,left:c.left-s,height:u.innerHeight(),width:u.innerWidth(),position:f?"fixed":"absolute"}).animate(l,t.duration,t.easing,function(){a.remove();i()})};n.widget("ui.progressbar",{version:"1.11.1",options:{max:100,value:0,change:null,complete:null},min:0,_create:function(){this.oldValue=this.options.value=this._constrainedValue();this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min});this.valueDiv=n("<div class='ui-progressbar-value ui-widget-header ui-corner-left'><\/div>").appendTo(this.element);this._refreshValue()},_destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");this.valueDiv.remove()},value:function(n){return void 0===n?this.options.value:(this.options.value=this._constrainedValue(n),this._refreshValue(),void 0)},_constrainedValue:function(n){return void 0===n&&(n=this.options.value),this.indeterminate=n===!1,"number"!=typeof n&&(n=0),this.indeterminate?!1:Math.min(this.options.max,Math.max(this.min,n))},_setOptions:function(n){var t=n.value;delete n.value;this._super(n);this.options.value=this._constrainedValue(t);this._refreshValue()},_setOption:function(n,t){"max"===n&&(t=Math.max(this.min,t));"disabled"===n&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t);this._super(n,t)},_percentage:function(){return this.indeterminate?100:100*(this.options.value-this.min)/(this.options.max-this.min)},_refreshValue:function(){var t=this.options.value,i=this._percentage();this.valueDiv.toggle(this.indeterminate||t>this.min).toggleClass("ui-corner-right",t===this.options.max).width(i.toFixed(0)+"%");this.element.toggleClass("ui-progressbar-indeterminate",this.indeterminate);this.indeterminate?(this.element.removeAttr("aria-valuenow"),this.overlayDiv||(this.overlayDiv=n("<div class='ui-progressbar-overlay'><\/div>").appendTo(this.valueDiv))):(this.element.attr({"aria-valuemax":this.options.max,"aria-valuenow":t}),this.overlayDiv&&(this.overlayDiv.remove(),this.overlayDiv=null));this.oldValue!==t&&(this.oldValue=t,this._trigger("change"));t===this.options.max&&this._trigger("complete")}});n.widget("ui.selectable",n.ui.mouse,{version:"1.11.1",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var t,i=this;this.element.addClass("ui-selectable");this.dragged=!1;this.refresh=function(){t=n(i.options.filter,i.element[0]);t.addClass("ui-selectee");t.each(function(){var t=n(this),i=t.offset();n.data(this,"selectable-item",{element:this,$element:t,left:i.left,top:i.top,right:i.left+t.outerWidth(),bottom:i.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})};this.refresh();this.selectees=t.addClass("ui-selectee");this._mouseInit();this.helper=n("<div class='ui-selectable-helper'><\/div>")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled");this._mouseDestroy()},_mouseStart:function(t){var i=this,r=this.options;this.opos=[t.pageX,t.pageY];this.options.disabled||(this.selectees=n(r.filter,this.element[0]),this._trigger("start",t),n(r.appendTo).append(this.helper),this.helper.css({left:t.pageX,top:t.pageY,width:0,height:0}),r.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var r=n.data(this,"selectable-item");r.startselected=!0;t.metaKey||t.ctrlKey||(r.$element.removeClass("ui-selected"),r.selected=!1,r.$element.addClass("ui-unselecting"),r.unselecting=!0,i._trigger("unselecting",t,{unselecting:r.element}))}),n(t.target).parents().addBack().each(function(){var u,r=n.data(this,"selectable-item");if(r)return(u=!t.metaKey&&!t.ctrlKey||!r.$element.hasClass("ui-selected"),r.$element.removeClass(u?"ui-unselecting":"ui-selected").addClass(u?"ui-selecting":"ui-unselecting"),r.unselecting=!u,r.selecting=u,r.selected=u,u?i._trigger("selecting",t,{selecting:r.element}):i._trigger("unselecting",t,{unselecting:r.element}),!1)}))},_mouseDrag:function(t){if(this.dragged=!0,!this.options.disabled){var e,o=this,s=this.options,i=this.opos[0],r=this.opos[1],u=t.pageX,f=t.pageY;return i>u&&(e=u,u=i,i=e),r>f&&(e=f,f=r,r=e),this.helper.css({left:i,top:r,width:u-i,height:f-r}),this.selectees.each(function(){var e=n.data(this,"selectable-item"),h=!1;e&&e.element!==o.element[0]&&("touch"===s.tolerance?h=!(e.left>u||i>e.right||e.top>f||r>e.bottom):"fit"===s.tolerance&&(h=e.left>i&&u>e.right&&e.top>r&&f>e.bottom),h?(e.selected&&(e.$element.removeClass("ui-selected"),e.selected=!1),e.unselecting&&(e.$element.removeClass("ui-unselecting"),e.unselecting=!1),e.selecting||(e.$element.addClass("ui-selecting"),e.selecting=!0,o._trigger("selecting",t,{selecting:e.element}))):(e.selecting&&((t.metaKey||t.ctrlKey)&&e.startselected?(e.$element.removeClass("ui-selecting"),e.selecting=!1,e.$element.addClass("ui-selected"),e.selected=!0):(e.$element.removeClass("ui-selecting"),e.selecting=!1,e.startselected&&(e.$element.addClass("ui-unselecting"),e.unselecting=!0),o._trigger("unselecting",t,{unselecting:e.element}))),e.selected&&(t.metaKey||t.ctrlKey||e.startselected||(e.$element.removeClass("ui-selected"),e.selected=!1,e.$element.addClass("ui-unselecting"),e.unselecting=!0,o._trigger("unselecting",t,{unselecting:e.element})))))}),!1}},_mouseStop:function(t){var i=this;return this.dragged=!1,n(".ui-unselecting",this.element[0]).each(function(){var r=n.data(this,"selectable-item");r.$element.removeClass("ui-unselecting");r.unselecting=!1;r.startselected=!1;i._trigger("unselected",t,{unselected:r.element})}),n(".ui-selecting",this.element[0]).each(function(){var r=n.data(this,"selectable-item");r.$element.removeClass("ui-selecting").addClass("ui-selected");r.selecting=!1;r.selected=!0;r.startselected=!0;i._trigger("selected",t,{selected:r.element})}),this._trigger("stop",t),this.helper.remove(),!1}});n.widget("ui.selectmenu",{version:"1.11.1",defaultElement:"<select>",options:{appendTo:null,disabled:null,icons:{button:"ui-icon-triangle-1-s"},position:{my:"left top",at:"left bottom",collision:"none"},width:null,change:null,close:null,focus:null,open:null,select:null},_create:function(){var n=this.element.uniqueId().attr("id");this.ids={element:n,button:n+"-button",menu:n+"-menu"};this._drawButton();this._drawMenu();this.options.disabled&&this.disable()},_drawButton:function(){var t=this,i=this.element.attr("tabindex");this.label=n("label[for='"+this.ids.element+"']").attr("for",this.ids.button);this._on(this.label,{click:function(n){this.button.focus();n.preventDefault()}});this.element.hide();this.button=n("<span>",{"class":"ui-selectmenu-button ui-widget ui-state-default ui-corner-all",tabindex:i||this.options.disabled?-1:0,id:this.ids.button,role:"combobox","aria-expanded":"false","aria-autocomplete":"list","aria-owns":this.ids.menu,"aria-haspopup":"true"}).insertAfter(this.element);n("<span>",{"class":"ui-icon "+this.options.icons.button}).prependTo(this.button);this.buttonText=n("<span>",{"class":"ui-selectmenu-text"}).appendTo(this.button);this._setText(this.buttonText,this.element.find("option:selected").text());this._resizeButton();this._on(this.button,this._buttonEvents);this.button.one("focusin",function(){t.menuItems||t._refreshMenu()});this._hoverable(this.button);this._focusable(this.button)},_drawMenu:function(){var t=this;this.menu=n("<ul>",{"aria-hidden":"true","aria-labelledby":this.ids.button,id:this.ids.menu});this.menuWrap=n("<div>",{"class":"ui-selectmenu-menu ui-front"}).append(this.menu).appendTo(this._appendTo());this.menuInstance=this.menu.menu({role:"listbox",select:function(n,i){n.preventDefault();t._select(i.item.data("ui-selectmenu-item"),n)},focus:function(n,i){var r=i.item.data("ui-selectmenu-item");null!=t.focusIndex&&r.index!==t.focusIndex&&(t._trigger("focus",n,{item:r}),t.isOpen||t._select(r,n));t.focusIndex=r.index;t.button.attr("aria-activedescendant",t.menuItems.eq(r.index).attr("id"))}}).menu("instance");this.menu.addClass("ui-corner-bottom").removeClass("ui-corner-all");this.menuInstance._off(this.menu,"mouseleave");this.menuInstance._closeOnDocumentClick=function(){return!1};this.menuInstance._isDivider=function(){return!1}},refresh:function(){this._refreshMenu();this._setText(this.buttonText,this._getSelectedItem().text());this.options.width||this._resizeButton()},_refreshMenu:function(){this.menu.empty();var n,t=this.element.find("option");t.length&&(this._parseOptions(t),this._renderMenu(this.menu,this.items),this.menuInstance.refresh(),this.menuItems=this.menu.find("li").not(".ui-selectmenu-optgroup"),n=this._getSelectedItem(),this.menuInstance.focus(null,n),this._setAria(n.data("ui-selectmenu-item")),this._setOption("disabled",this.element.prop("disabled")))},open:function(n){this.options.disabled||(this.menuItems?(this.menu.find(".ui-state-focus").removeClass("ui-state-focus"),this.menuInstance.focus(null,this._getSelectedItem())):this._refreshMenu(),this.isOpen=!0,this._toggleAttr(),this._resizeMenu(),this._position(),this._on(this.document,this._documentClick),this._trigger("open",n))},_position:function(){this.menuWrap.position(n.extend({of:this.button},this.options.position))},close:function(n){this.isOpen&&(this.isOpen=!1,this._toggleAttr(),this._off(this.document),this._trigger("close",n))},widget:function(){return this.button},menuWidget:function(){return this.menu},_renderMenu:function(t,i){var u=this,r="";n.each(i,function(i,f){f.optgroup!==r&&(n("<li>",{"class":"ui-selectmenu-optgroup ui-menu-divider"+(f.element.parent("optgroup").prop("disabled")?" ui-state-disabled":""),text:f.optgroup}).appendTo(t),r=f.optgroup);u._renderItemData(t,f)})},_renderItemData:function(n,t){return this._renderItem(n,t).data("ui-selectmenu-item",t)},_renderItem:function(t,i){var r=n("<li>");return i.disabled&&r.addClass("ui-state-disabled"),this._setText(r,i.label),r.appendTo(t)},_setText:function(n,t){t?n.text(t):n.html("&#160;")},_move:function(n,t){var i,r,u=".ui-menu-item";this.isOpen?i=this.menuItems.eq(this.focusIndex):(i=this.menuItems.eq(this.element[0].selectedIndex),u+=":not(.ui-state-disabled)");r="first"===n||"last"===n?i["first"===n?"prevAll":"nextAll"](u).eq(-1):i[n+"All"](u).eq(0);r.length&&this.menuInstance.focus(t,r)},_getSelectedItem:function(){return this.menuItems.eq(this.element[0].selectedIndex)},_toggle:function(n){this[this.isOpen?"close":"open"](n)},_documentClick:{mousedown:function(t){this.isOpen&&(n(t.target).closest(".ui-selectmenu-menu, #"+this.ids.button).length||this.close(t))}},_buttonEvents:{mousedown:function(n){n.preventDefault()},click:"_toggle",keydown:function(t){var i=!0;switch(t.keyCode){case n.ui.keyCode.TAB:case n.ui.keyCode.ESCAPE:this.close(t);i=!1;break;case n.ui.keyCode.ENTER:this.isOpen&&this._selectFocusedItem(t);break;case n.ui.keyCode.UP:t.altKey?this._toggle(t):this._move("prev",t);break;case n.ui.keyCode.DOWN:t.altKey?this._toggle(t):this._move("next",t);break;case n.ui.keyCode.SPACE:this.isOpen?this._selectFocusedItem(t):this._toggle(t);break;case n.ui.keyCode.LEFT:this._move("prev",t);break;case n.ui.keyCode.RIGHT:this._move("next",t);break;case n.ui.keyCode.HOME:case n.ui.keyCode.PAGE_UP:this._move("first",t);break;case n.ui.keyCode.END:case n.ui.keyCode.PAGE_DOWN:this._move("last",t);break;default:this.menu.trigger(t);i=!1}i&&t.preventDefault()}},_selectFocusedItem:function(n){var t=this.menuItems.eq(this.focusIndex);t.hasClass("ui-state-disabled")||this._select(t.data("ui-selectmenu-item"),n)},_select:function(n,t){var i=this.element[0].selectedIndex;this.element[0].selectedIndex=n.index;this._setText(this.buttonText,n.label);this._setAria(n);this._trigger("select",t,{item:n});n.index!==i&&this._trigger("change",t,{item:n});this.close(t)},_setAria:function(n){var t=this.menuItems.eq(n.index).attr("id");this.button.attr({"aria-labelledby":t,"aria-activedescendant":t});this.menu.attr("aria-activedescendant",t)},_setOption:function(n,t){"icons"===n&&this.button.find("span.ui-icon").removeClass(this.options.icons.button).addClass(t.button);this._super(n,t);"appendTo"===n&&this.menuWrap.appendTo(this._appendTo());"disabled"===n&&(this.menuInstance.option("disabled",t),this.button.toggleClass("ui-state-disabled",t).attr("aria-disabled",t),this.element.prop("disabled",t),t?(this.button.attr("tabindex",-1),this.close()):this.button.attr("tabindex",0));"width"===n&&this._resizeButton()},_appendTo:function(){var t=this.options.appendTo;return t&&(t=t.jquery||t.nodeType?n(t):this.document.find(t).eq(0)),t&&t[0]||(t=this.element.closest(".ui-front")),t.length||(t=this.document[0].body),t},_toggleAttr:function(){this.button.toggleClass("ui-corner-top",this.isOpen).toggleClass("ui-corner-all",!this.isOpen).attr("aria-expanded",this.isOpen);this.menuWrap.toggleClass("ui-selectmenu-open",this.isOpen);this.menu.attr("aria-hidden",!this.isOpen)},_resizeButton:function(){var n=this.options.width;n||(n=this.element.show().outerWidth(),this.element.hide());this.button.outerWidth(n)},_resizeMenu:function(){this.menu.outerWidth(Math.max(this.button.outerWidth(),this.menu.width("").outerWidth()+1))},_getCreateOptions:function(){return{disabled:this.element.prop("disabled")}},_parseOptions:function(t){var i=[];t.each(function(t,r){var u=n(r),f=u.parent("optgroup");i.push({element:u,index:t,value:u.attr("value"),label:u.text(),optgroup:f.attr("label")||"",disabled:f.prop("disabled")||u.prop("disabled")})});this.items=i},_destroy:function(){this.menuWrap.remove();this.button.remove();this.element.show();this.element.removeUniqueId();this.label.attr("for",this.ids.element)}});n.widget("ui.slider",n.ui.mouse,{version:"1.11.1",widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1;this._mouseSliding=!1;this._animateOff=!0;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget ui-widget-content ui-corner-all");this._refresh();this._setOption("disabled",this.options.disabled);this._animateOff=!1},_refresh:function(){this._createRange();this._createHandles();this._setupEvents();this._refreshValue()},_createHandles:function(){var r,i,u=this.options,t=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f=[];for(i=u.values&&u.values.length||1,t.length>i&&(t.slice(i).remove(),t=t.slice(0,i)),r=t.length;i>r;r++)f.push("<span class='ui-slider-handle ui-state-default ui-corner-all' tabindex='0'><\/span>");this.handles=t.add(n(f.join("")).appendTo(this.element));this.handle=this.handles.eq(0);this.handles.each(function(t){n(this).data("ui-slider-handle-index",t)})},_createRange:function(){var t=this.options,i="";t.range?(t.range===!0&&(t.values?t.values.length&&2!==t.values.length?t.values=[t.values[0],t.values[0]]:n.isArray(t.values)&&(t.values=t.values.slice(0)):t.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?this.range.removeClass("ui-slider-range-min ui-slider-range-max").css({left:"",bottom:""}):(this.range=n("<div><\/div>").appendTo(this.element),i="ui-slider-range ui-widget-header ui-corner-all"),this.range.addClass(i+("min"===t.range||"max"===t.range?" ui-slider-range-"+t.range:""))):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles);this._on(this.handles,this._handleEvents);this._hoverable(this.handles);this._focusable(this.handles)},_destroy:function(){this.handles.remove();this.range&&this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-widget ui-widget-content ui-corner-all");this._mouseDestroy()},_mouseCapture:function(t){var s,f,r,i,u,h,e,c,o=this,l=this.options;return l.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),s={x:t.pageX,y:t.pageY},f=this._normValueFromMouse(s),r=this._valueMax()-this._valueMin()+1,this.handles.each(function(t){var e=Math.abs(f-o.values(t));(r>e||r===e&&(t===o._lastChangedValue||o.values(t)===l.min))&&(r=e,i=n(this),u=t)}),h=this._start(t,u),h===!1?!1:(this._mouseSliding=!0,this._handleIndex=u,i.addClass("ui-state-active").focus(),e=i.offset(),c=!n(t.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=c?{left:0,top:0}:{left:t.pageX-e.left-i.width()/2,top:t.pageY-e.top-i.height()/2-(parseInt(i.css("borderTopWidth"),10)||0)-(parseInt(i.css("borderBottomWidth"),10)||0)+(parseInt(i.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(t,u,f),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(n){var t={x:n.pageX,y:n.pageY},i=this._normValueFromMouse(t);return this._slide(n,this._handleIndex,i),!1},_mouseStop:function(n){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(n,this._handleIndex),this._change(n,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(n){var i,r,t,u,f;return"horizontal"===this.orientation?(i=this.elementSize.width,r=n.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(i=this.elementSize.height,r=n.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),t=r/i,t>1&&(t=1),0>t&&(t=0),"vertical"===this.orientation&&(t=1-t),u=this._valueMax()-this._valueMin(),f=this._valueMin()+t*u,this._trimAlignValue(f)},_start:function(n,t){var i={handle:this.handles[t],value:this.value()};return this.options.values&&this.options.values.length&&(i.value=this.values(t),i.values=this.values()),this._trigger("start",n,i)},_slide:function(n,t,i){var r,f,u;this.options.values&&this.options.values.length?(r=this.values(t?0:1),2===this.options.values.length&&this.options.range===!0&&(0===t&&i>r||1===t&&r>i)&&(i=r),i!==this.values(t)&&(f=this.values(),f[t]=i,u=this._trigger("slide",n,{handle:this.handles[t],value:i,values:f}),r=this.values(t?0:1),u!==!1&&this.values(t,i))):i!==this.value()&&(u=this._trigger("slide",n,{handle:this.handles[t],value:i}),u!==!1&&this.value(i))},_stop:function(n,t){var i={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(i.value=this.values(t),i.values=this.values());this._trigger("stop",n,i)},_change:function(n,t){if(!this._keySliding&&!this._mouseSliding){var i={handle:this.handles[t],value:this.value()};this.options.values&&this.options.values.length&&(i.value=this.values(t),i.values=this.values());this._lastChangedValue=t;this._trigger("change",n,i)}},value:function(n){return arguments.length?(this.options.value=this._trimAlignValue(n),this._refreshValue(),this._change(null,0),void 0):this._value()},values:function(t,i){var u,f,r;if(arguments.length>1)return this.options.values[t]=this._trimAlignValue(i),this._refreshValue(),this._change(null,t),void 0;if(!arguments.length)return this._values();if(!n.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(t):this.value();for(u=this.options.values,f=arguments[0],r=0;u.length>r;r+=1)u[r]=this._trimAlignValue(f[r]),this._change(null,r);this._refreshValue()},_setOption:function(t,i){var r,u=0;switch("range"===t&&this.options.range===!0&&("min"===i?(this.options.value=this._values(0),this.options.values=null):"max"===i&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),n.isArray(this.options.values)&&(u=this.options.values.length),"disabled"===t&&this.element.toggleClass("ui-state-disabled",!!i),this._super(t,i),t){case"orientation":this._detectOrientation();this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();this.handles.css("horizontal"===i?"bottom":"left","");break;case"value":this._animateOff=!0;this._refreshValue();this._change(null,0);this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),r=0;u>r;r+=1)this._change(null,r);this._animateOff=!1;break;case"min":case"max":this._animateOff=!0;this._refreshValue();this._animateOff=!1;break;case"range":this._animateOff=!0;this._refresh();this._animateOff=!1}},_value:function(){var n=this.options.value;return this._trimAlignValue(n)},_values:function(n){var r,t,i;if(arguments.length)return r=this.options.values[n],r=this._trimAlignValue(r);if(this.options.values&&this.options.values.length){for(t=this.options.values.slice(),i=0;t.length>i;i+=1)t[i]=this._trimAlignValue(t[i]);return t}return[]},_trimAlignValue:function(n){if(this._valueMin()>=n)return this._valueMin();if(n>=this._valueMax())return this._valueMax();var t=this.options.step>0?this.options.step:1,i=(n-this._valueMin())%t,r=n-i;return 2*Math.abs(i)>=t&&(r+=i>0?t:-t),parseFloat(r.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var s,t,c,f,h,e=this.options.range,i=this.options,r=this,u=this._animateOff?!1:i.animate,o={};this.options.values&&this.options.values.length?this.handles.each(function(f){t=100*((r.values(f)-r._valueMin())/(r._valueMax()-r._valueMin()));o["horizontal"===r.orientation?"left":"bottom"]=t+"%";n(this).stop(1,1)[u?"animate":"css"](o,i.animate);r.options.range===!0&&("horizontal"===r.orientation?(0===f&&r.range.stop(1,1)[u?"animate":"css"]({left:t+"%"},i.animate),1===f&&r.range[u?"animate":"css"]({width:t-s+"%"},{queue:!1,duration:i.animate})):(0===f&&r.range.stop(1,1)[u?"animate":"css"]({bottom:t+"%"},i.animate),1===f&&r.range[u?"animate":"css"]({height:t-s+"%"},{queue:!1,duration:i.animate})));s=t}):(c=this.value(),f=this._valueMin(),h=this._valueMax(),t=h!==f?100*((c-f)/(h-f)):0,o["horizontal"===this.orientation?"left":"bottom"]=t+"%",this.handle.stop(1,1)[u?"animate":"css"](o,i.animate),"min"===e&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:t+"%"},i.animate),"max"===e&&"horizontal"===this.orientation&&this.range[u?"animate":"css"]({width:100-t+"%"},{queue:!1,duration:i.animate}),"min"===e&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:t+"%"},i.animate),"max"===e&&"vertical"===this.orientation&&this.range[u?"animate":"css"]({height:100-t+"%"},{queue:!1,duration:i.animate}))},_handleEvents:{keydown:function(t){var e,r,i,u,f=n(t.target).data("ui-slider-handle-index");switch(t.keyCode){case n.ui.keyCode.HOME:case n.ui.keyCode.END:case n.ui.keyCode.PAGE_UP:case n.ui.keyCode.PAGE_DOWN:case n.ui.keyCode.UP:case n.ui.keyCode.RIGHT:case n.ui.keyCode.DOWN:case n.ui.keyCode.LEFT:if(t.preventDefault(),!this._keySliding&&(this._keySliding=!0,n(t.target).addClass("ui-state-active"),e=this._start(t,f),e===!1))return}switch(u=this.options.step,r=i=this.options.values&&this.options.values.length?this.values(f):this.value(),t.keyCode){case n.ui.keyCode.HOME:i=this._valueMin();break;case n.ui.keyCode.END:i=this._valueMax();break;case n.ui.keyCode.PAGE_UP:i=this._trimAlignValue(r+(this._valueMax()-this._valueMin())/this.numPages);break;case n.ui.keyCode.PAGE_DOWN:i=this._trimAlignValue(r-(this._valueMax()-this._valueMin())/this.numPages);break;case n.ui.keyCode.UP:case n.ui.keyCode.RIGHT:if(r===this._valueMax())return;i=this._trimAlignValue(r+u);break;case n.ui.keyCode.DOWN:case n.ui.keyCode.LEFT:if(r===this._valueMin())return;i=this._trimAlignValue(r-u)}this._slide(t,f,i)},keyup:function(t){var i=n(t.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(t,i),this._change(t,i),n(t.target).removeClass("ui-state-active"))}}});n.widget("ui.sortable",n.ui.mouse,{version:"1.11.1",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_isOverAxis:function(n,t,i){return n>=t&&t+i>n},_isFloating:function(n){return/left|right/.test(n.css("float"))||/inline|table-cell/.test(n.css("display"))},_create:function(){var n=this.options;this.containerCache={};this.element.addClass("ui-sortable");this.refresh();this.floating=this.items.length?"x"===n.axis||this._isFloating(this.items[0].item):!1;this.offset=this.element.offset();this._mouseInit();this._setHandleClassName();this.ready=!0},_setOption:function(n,t){this._super(n,t);"handle"===n&&this._setHandleClassName()},_setHandleClassName:function(){this.element.find(".ui-sortable-handle").removeClass("ui-sortable-handle");n.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").find(".ui-sortable-handle").removeClass("ui-sortable-handle");this._mouseDestroy();for(var n=this.items.length-1;n>=0;n--)this.items[n].item.removeData(this.widgetName+"-item");return this},_mouseCapture:function(t,i){var r=null,f=!1,u=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(t),n(t.target).parents().each(function(){if(n.data(this,u.widgetName+"-item")===u)return(r=n(this),!1)}),n.data(t.target,u.widgetName+"-item")===u&&(r=n(t.target)),r?!this.options.handle||i||(n(this.options.handle,r).find("*").addBack().each(function(){this===t.target&&(f=!0)}),f)?(this.currentItem=r,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(t,i,r){var f,e,u=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},n.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,u.cursorAt&&this._adjustOffsetFromHelper(u.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),u.containment&&this._setContainment(),u.cursor&&"auto"!==u.cursor&&(e=this.document.find("body"),this.storedCursor=e.css("cursor"),e.css("cursor",u.cursor),this.storedStylesheet=n("<style>*{ cursor: "+u.cursor+" !important; }<\/style>").appendTo(e)),u.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",u.opacity)),u.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",u.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!r)for(f=this.containers.length-1;f>=0;f--)this.containers[f]._trigger("activate",t,this._uiHash(this));return n.ui.ddmanager&&(n.ui.ddmanager.current=this),n.ui.ddmanager&&!u.dropBehaviour&&n.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){var e,u,f,o,i=this.options,r=!1;for(this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY<i.scrollSensitivity?this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop+i.scrollSpeed:t.pageY-this.overflowOffset.top<i.scrollSensitivity&&(this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop-i.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-t.pageX<i.scrollSensitivity?this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft+i.scrollSpeed:t.pageX-this.overflowOffset.left<i.scrollSensitivity&&(this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft-i.scrollSpeed)):(t.pageY-n(document).scrollTop()<i.scrollSensitivity?r=n(document).scrollTop(n(document).scrollTop()-i.scrollSpeed):n(window).height()-(t.pageY-n(document).scrollTop())<i.scrollSensitivity&&(r=n(document).scrollTop(n(document).scrollTop()+i.scrollSpeed)),t.pageX-n(document).scrollLeft()<i.scrollSensitivity?r=n(document).scrollLeft(n(document).scrollLeft()-i.scrollSpeed):n(window).width()-(t.pageX-n(document).scrollLeft())<i.scrollSensitivity&&(r=n(document).scrollLeft(n(document).scrollLeft()+i.scrollSpeed))),r!==!1&&n.ui.ddmanager&&!i.dropBehaviour&&n.ui.ddmanager.prepareOffsets(this,t)),this.positionAbs=this._convertPositionTo("absolute"),this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),e=this.items.length-1;e>=0;e--)if(u=this.items[e],f=u.item[0],o=this._intersectsWithPointer(u),o&&u.instance===this.currentContainer&&f!==this.currentItem[0]&&this.placeholder[1===o?"next":"prev"]()[0]!==f&&!n.contains(this.placeholder[0],f)&&("semi-dynamic"===this.options.type?!n.contains(this.element[0],f):!0)){if(this.direction=1===o?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(u))break;this._rearrange(t,u);this._trigger("change",t,this._uiHash());break}return this._contactContainers(t),n.ui.ddmanager&&n.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,i){if(t){if(n.ui.ddmanager&&!this.options.dropBehaviour&&n.ui.ddmanager.drop(this,t),this.options.revert){var e=this,f=this.placeholder.offset(),r=this.options.axis,u={};r&&"x"!==r||(u.left=f.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft));r&&"y"!==r||(u.top=f.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop));this.reverting=!0;n(this.helper).animate(u,parseInt(this.options.revert,10)||500,function(){e._clear(t)})}else this._clear(t,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null});"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),n.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?n(this.domPosition.prev).after(this.currentItem):n(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var r=this._getItemsAsjQuery(t&&t.connected),i=[];return t=t||{},n(r).each(function(){var r=(n(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[\-=_](.+)/);r&&i.push((t.key||r[1]+"[]")+"="+(t.key&&t.expression?r[1]:r[2]))}),!i.length&&t.key&&i.push(t.key+"="),i.join("&")},toArray:function(t){var r=this._getItemsAsjQuery(t&&t.connected),i=[];return t=t||{},r.each(function(){i.push(n(t.item||this).attr(t.attribute||"id")||"")}),i},_intersectsWith:function(n){var t=this.positionAbs.left,h=t+this.helperProportions.width,i=this.positionAbs.top,c=i+this.helperProportions.height,r=n.left,f=r+n.width,u=n.top,e=u+n.height,o=this.offset.click.top,s=this.offset.click.left,l="x"===this.options.axis||i+o>u&&e>i+o,a="y"===this.options.axis||t+s>r&&f>t+s,v=l&&a;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>n[this.floating?"width":"height"]?v:t+this.helperProportions.width/2>r&&f>h-this.helperProportions.width/2&&i+this.helperProportions.height/2>u&&e>c-this.helperProportions.height/2},_intersectsWithPointer:function(n){var r="x"===this.options.axis||this._isOverAxis(this.positionAbs.top+this.offset.click.top,n.top,n.height),u="y"===this.options.axis||this._isOverAxis(this.positionAbs.left+this.offset.click.left,n.left,n.width),f=r&&u,t=this._getDragVerticalDirection(),i=this._getDragHorizontalDirection();return f?this.floating?i&&"right"===i||"down"===t?2:1:t&&("down"===t?2:1):!1},_intersectsWithSides:function(n){var r=this._isOverAxis(this.positionAbs.top+this.offset.click.top,n.top+n.height/2,n.height),u=this._isOverAxis(this.positionAbs.left+this.offset.click.left,n.left+n.width/2,n.width),t=this._getDragVerticalDirection(),i=this._getDragHorizontalDirection();return this.floating&&i?"right"===i&&u||"left"===i&&!u:t&&("down"===t&&r||"up"===t&&!r)},_getDragVerticalDirection:function(){var n=this.positionAbs.top-this.lastPositionAbs.top;return 0!==n&&(n>0?"down":"up")},_getDragHorizontalDirection:function(){var n=this.positionAbs.left-this.lastPositionAbs.left;return 0!==n&&(n>0?"right":"left")},refresh:function(n){return this._refreshItems(n),this._setHandleClassName(),this.refreshPositions(),this},_connectWith:function(){var n=this.options;return n.connectWith.constructor===String?[n.connectWith]:n.connectWith},_getItemsAsjQuery:function(t){function h(){s.push(this)}var r,u,e,i,s=[],f=[],o=this._connectWith();if(o&&t)for(r=o.length-1;r>=0;r--)for(e=n(o[r]),u=e.length-1;u>=0;u--)i=n.data(e[u],this.widgetFullName),i&&i!==this&&!i.options.disabled&&f.push([n.isFunction(i.options.items)?i.options.items.call(i.element):n(i.options.items,i.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),i]);for(f.push([n.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):n(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),r=f.length-1;r>=0;r--)f[r][0].each(h);return n(s)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=n.grep(this.items,function(n){for(var i=0;t.length>i;i++)if(t[i]===n.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[];this.containers=[this];var r,u,e,i,o,s,h,l,a=this.items,f=[[n.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):n(this.options.items,this.element),this]],c=this._connectWith();if(c&&this.ready)for(r=c.length-1;r>=0;r--)for(e=n(c[r]),u=e.length-1;u>=0;u--)i=n.data(e[u],this.widgetFullName),i&&i!==this&&!i.options.disabled&&(f.push([n.isFunction(i.options.items)?i.options.items.call(i.element[0],t,{item:this.currentItem}):n(i.options.items,i.element),i]),this.containers.push(i));for(r=f.length-1;r>=0;r--)for(o=f[r][1],s=f[r][0],u=0,l=s.length;l>u;u++)h=n(s[u]),h.data(this.widgetName+"-item",o),a.push({item:h,instance:o,width:0,height:0,left:0,top:0})},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var r,f,u,i=this.items.length-1;i>=0;i--)r=this.items[i],r.instance!==this.currentContainer&&this.currentContainer&&r.item[0]!==this.currentItem[0]||(f=this.options.toleranceElement?n(this.options.toleranceElement,r.item):r.item,t||(r.width=f.outerWidth(),r.height=f.outerHeight()),u=f.offset(),r.left=u.left,r.top=u.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)u=this.containers[i].element.offset(),this.containers[i].containerCache.left=u.left,this.containers[i].containerCache.top=u.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(t){t=t||this;var r,i=t.options;i.placeholder&&i.placeholder.constructor!==String||(r=i.placeholder,i.placeholder={element:function(){var u=t.currentItem[0].nodeName.toLowerCase(),i=n("<"+u+">",t.document[0]).addClass(r||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===u?t.currentItem.children().each(function(){n("<td>&#160;<\/td>",t.document[0]).attr("colspan",n(this).attr("colspan")||1).appendTo(i)}):"img"===u&&i.attr("src",t.currentItem.attr("src")),r||i.css("visibility","hidden"),i},update:function(n,u){(!r||i.forcePlaceholderSize)&&(u.height()||u.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),u.width()||u.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10)))}});t.placeholder=n(i.placeholder.element.call(t.element,t.currentItem));t.currentItem.after(t.placeholder);i.placeholder.update(t,t.placeholder)},_contactContainers:function(t){for(var u,c,f,a,v,o,l,s,h,e=null,r=null,i=this.containers.length-1;i>=0;i--)if(!n.contains(this.currentItem[0],this.containers[i].element[0]))if(this._intersectsWith(this.containers[i].containerCache)){if(e&&n.contains(this.containers[i].element[0],e.element[0]))continue;e=this.containers[i];r=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0);if(e)if(1===this.containers.length)this.containers[r].containerCache.over||(this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1);else{for(c=1e4,f=null,s=e.floating||this._isFloating(this.currentItem),a=s?"left":"top",v=s?"width":"height",h=s?"clientX":"clientY",u=this.items.length-1;u>=0;u--)n.contains(this.containers[r].element[0],this.items[u].item[0])&&this.items[u].item[0]!==this.currentItem[0]&&(o=this.items[u].item.offset()[a],l=!1,t[h]-o>this.items[u][v]/2&&(l=!0),c>Math.abs(t[h]-o)&&(c=Math.abs(t[h]-o),f=this.items[u],this.direction=l?"up":"down"));if(!f&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[r])return;f?this._rearrange(t,f,null,!0):this._rearrange(t,null,this.containers[r].element,!0);this._trigger("change",t,this._uiHash());this.containers[r]._trigger("change",t,this._uiHash(this));this.currentContainer=this.containers[r];this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[r]._trigger("over",t,this._uiHash(this));this.containers[r].containerCache.over=1}},_createHelper:function(t){var r=this.options,i=n.isFunction(r.helper)?n(r.helper.apply(this.element[0],[t,this.currentItem])):"clone"===r.helper?this.currentItem.clone():this.currentItem;return i.parents("body").length||n("parent"!==r.appendTo?r.appendTo:this.currentItem[0].parentNode)[0].appendChild(i[0]),i[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!i[0].style.width||r.forceHelperSize)&&i.width(this.currentItem.width()),(!i[0].style.height||r.forceHelperSize)&&i.height(this.currentItem.height()),i},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" "));n.isArray(t)&&(t={left:+t[0],top:+t[1]||0});"left"in t&&(this.offset.click.left=t.left+this.margins.left);"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left);"top"in t&&(this.offset.click.top=t.top+this.margins.top);"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&n.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&n.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var n=this.currentItem.position();return{top:n.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:n.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,r,u,i=this.options;"parent"===i.containment&&(i.containment=this.helper[0].parentNode);("document"===i.containment||"window"===i.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,n("document"===i.containment?document:window).width()-this.helperProportions.width-this.margins.left,(n("document"===i.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]);/^(document|window|parent)$/.test(i.containment)||(t=n(i.containment)[0],r=n(i.containment).offset(),u="hidden"!==n(t).css("overflow"),this.containment=[r.left+(parseInt(n(t).css("borderLeftWidth"),10)||0)+(parseInt(n(t).css("paddingLeft"),10)||0)-this.margins.left,r.top+(parseInt(n(t).css("borderTopWidth"),10)||0)+(parseInt(n(t).css("paddingTop"),10)||0)-this.margins.top,r.left+(u?Math.max(t.scrollWidth,t.offsetWidth):t.offsetWidth)-(parseInt(n(t).css("borderLeftWidth"),10)||0)-(parseInt(n(t).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,r.top+(u?Math.max(t.scrollHeight,t.offsetHeight):t.offsetHeight)-(parseInt(n(t).css("borderTopWidth"),10)||0)-(parseInt(n(t).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(t,i){i||(i=this.position);var r="absolute"===t?1:-1,u="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&n.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,f=/(html|body)/i.test(u[0].tagName);return{top:i.top+this.offset.relative.top*r+this.offset.parent.top*r-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():f?0:u.scrollTop())*r,left:i.left+this.offset.relative.left*r+this.offset.parent.left*r-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():f?0:u.scrollLeft())*r}},_generatePosition:function(t){var r,u,i=this.options,f=t.pageX,e=t.pageY,o="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&n.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,s=/(html|body)/i.test(o[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(t.pageX-this.offset.click.left<this.containment[0]&&(f=this.containment[0]+this.offset.click.left),t.pageY-this.offset.click.top<this.containment[1]&&(e=this.containment[1]+this.offset.click.top),t.pageX-this.offset.click.left>this.containment[2]&&(f=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(e=this.containment[3]+this.offset.click.top)),i.grid&&(r=this.originalPageY+Math.round((e-this.originalPageY)/i.grid[1])*i.grid[1],e=this.containment?r-this.offset.click.top>=this.containment[1]&&r-this.offset.click.top<=this.containment[3]?r:r-this.offset.click.top>=this.containment[1]?r-i.grid[1]:r+i.grid[1]:r,u=this.originalPageX+Math.round((f-this.originalPageX)/i.grid[0])*i.grid[0],f=this.containment?u-this.offset.click.left>=this.containment[0]&&u-this.offset.click.left<=this.containment[2]?u:u-this.offset.click.left>=this.containment[0]?u-i.grid[0]:u+i.grid[0]:u)),{top:e-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():s?0:o.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():s?0:o.scrollLeft())}},_rearrange:function(n,t,i,r){i?i[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?t.item[0]:t.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var u=this.counter;this._delay(function(){u===this.counter&&this.refreshPositions(!r)})},_clear:function(n,t){function u(n,t,i){return function(r){i._trigger(n,r,t._uiHash(t))}}this.reverting=!1;var i,r=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(i in this._storedCSS)("auto"===this._storedCSS[i]||"static"===this._storedCSS[i])&&(this._storedCSS[i]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!t&&r.push(function(n){this._trigger("receive",n,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||t||r.push(function(n){this._trigger("update",n,this._uiHash())}),this!==this.currentContainer&&(t||(r.push(function(n){this._trigger("remove",n,this._uiHash())}),r.push(function(n){return function(t){n._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),r.push(function(n){return function(t){n._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer)))),i=this.containers.length-1;i>=0;i--)t||r.push(u("deactivate",this,this.containers[i])),this.containers[i].containerCache.over&&(r.push(u("out",this,this.containers[i])),this.containers[i].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!t){for(this._trigger("beforeStop",n,this._uiHash()),i=0;r.length>i;i++)r[i].call(this,n);this._trigger("stop",n,this._uiHash())}return this.fromOutside=!1,!1}if(t||this._trigger("beforeStop",n,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null,!t){for(i=0;r.length>i;i++)r[i].call(this,n);this._trigger("stop",n,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){n.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var i=t||this;return{helper:i.helper,placeholder:i.placeholder||n([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:t?t.element:null}}});n.widget("ui.spinner",{version:"1.11.1",defaultElement:"<input>",widgetEventPrefix:"spin",options:{culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max);this._setOption("min",this.options.min);this._setOption("step",this.options.step);""!==this.value()&&this._value(this.element.val(),!0);this._draw();this._on(this._events);this._refresh();this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var t={},i=this.element;return n.each(["min","max","step"],function(n,r){var u=i.attr(r);void 0!==u&&u.length&&(t[r]=u)}),t},_events:{keydown:function(n){this._start(n)&&this._keydown(n)&&n.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(n){return this.cancelBlur?(delete this.cancelBlur,void 0):(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",n),void 0)},mousewheel:function(n,t){if(t){if(!this.spinning&&!this._start(n))return!1;this._spin((t>0?1:-1)*this.options.step,n);clearTimeout(this.mousewheelTimer);this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(n)},100);n.preventDefault()}},"mousedown .ui-spinner-button":function(t){function r(){var n=this.element[0]===this.document[0].activeElement;n||(this.element.focus(),this.previous=i,this._delay(function(){this.previous=i}))}var i;i=this.element[0]===this.document[0].activeElement?this.previous:this.element.val();t.preventDefault();r.call(this);this.cancelBlur=!0;this._delay(function(){delete this.cancelBlur;r.call(this)});this._start(t)!==!1&&this._repeat(null,n(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(t){if(n(t.currentTarget).hasClass("ui-state-active"))return this._start(t)===!1?!1:(this._repeat(null,n(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t),void 0)},"mouseleave .ui-spinner-button":"_stop"},_draw:function(){var n=this.uiSpinner=this.element.addClass("ui-spinner-input").attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml());this.element.attr("role","spinbutton");this.buttons=n.find(".ui-spinner-button").attr("tabIndex",-1).button().removeClass("ui-corner-all");this.buttons.height()>Math.ceil(.5*n.height())&&n.height()>0&&n.height(n.height());this.options.disabled&&this.disable()},_keydown:function(t){var r=this.options,i=n.ui.keyCode;switch(t.keyCode){case i.UP:return this._repeat(null,1,t),!0;case i.DOWN:return this._repeat(null,-1,t),!0;case i.PAGE_UP:return this._repeat(null,r.page,t),!0;case i.PAGE_DOWN:return this._repeat(null,-r.page,t),!0}return!1},_uiSpinnerHtml:function(){return"<span class='ui-spinner ui-widget ui-widget-content ui-corner-all'><\/span>"},_buttonHtml:function(){return"<a class='ui-spinner-button ui-spinner-up ui-corner-tr'><span class='ui-icon "+this.options.icons.up+"'>&#9650;<\/span><\/a><a class='ui-spinner-button ui-spinner-down ui-corner-br'><span class='ui-icon "+this.options.icons.down+"'>&#9660;<\/span><\/a>"},_start:function(n){return this.spinning||this._trigger("start",n)!==!1?(this.counter||(this.counter=1),this.spinning=!0,!0):!1},_repeat:function(n,t,i){n=n||500;clearTimeout(this.timer);this.timer=this._delay(function(){this._repeat(40,t,i)},n);this._spin(t*this.options.step,i)},_spin:function(n,t){var i=this.value()||0;this.counter||(this.counter=1);i=this._adjustValue(i+n*this._increment(this.counter));this.spinning&&this._trigger("spin",t,{value:i})===!1||(this._value(i),this.counter++)},_increment:function(t){var i=this.options.incremental;return i?n.isFunction(i)?i(t):Math.floor(t*t*t/5e4-t*t/500+17*t/200+1):1},_precision:function(){var n=this._precisionOf(this.options.step);return null!==this.options.min&&(n=Math.max(n,this._precisionOf(this.options.min))),n},_precisionOf:function(n){var t=""+n,i=t.indexOf(".");return-1===i?0:t.length-i-1},_adjustValue:function(n){var r,i,t=this.options;return r=null!==t.min?t.min:0,i=n-r,i=Math.round(i/t.step)*t.step,n=r+i,n=parseFloat(n.toFixed(this._precision())),null!==t.max&&n>t.max?t.max:null!==t.min&&t.min>n?t.min:n},_stop:function(n){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",n))},_setOption:function(n,t){if("culture"===n||"numberFormat"===n){var i=this._parse(this.element.val());return this.options[n]=t,this.element.val(this._format(i)),void 0}("max"===n||"min"===n||"step"===n)&&"string"==typeof t&&(t=this._parse(t));"icons"===n&&(this.buttons.first().find(".ui-icon").removeClass(this.options.icons.up).addClass(t.up),this.buttons.last().find(".ui-icon").removeClass(this.options.icons.down).addClass(t.down));this._super(n,t);"disabled"===n&&(this.widget().toggleClass("ui-state-disabled",!!t),this.element.prop("disabled",!!t),this.buttons.button(t?"disable":"enable"))},_setOptions:t(function(n){this._super(n)}),_parse:function(n){return"string"==typeof n&&""!==n&&(n=window.Globalize&&this.options.numberFormat?Globalize.parseFloat(n,10,this.options.culture):+n),""===n||isNaN(n)?null:n},_format:function(n){return""===n?"":window.Globalize&&this.options.numberFormat?Globalize.format(n,this.options.numberFormat,this.options.culture):n},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},isValid:function(){var n=this.value();return null===n?!1:n===this._adjustValue(n)},_value:function(n,t){var i;""!==n&&(i=this._parse(n),null!==i&&(t||(i=this._adjustValue(i)),n=this._format(i)));this.element.val(n);this._refresh()},_destroy:function(){this.element.removeClass("ui-spinner-input").prop("disabled",!1).removeAttr("autocomplete").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");this.uiSpinner.replaceWith(this.element)},stepUp:t(function(n){this._stepUp(n)}),_stepUp:function(n){this._start()&&(this._spin((n||1)*this.options.step),this._stop())},stepDown:t(function(n){this._stepDown(n)}),_stepDown:function(n){this._start()&&(this._spin((n||1)*-this.options.step),this._stop())},pageUp:t(function(n){this._stepUp((n||1)*this.options.page)}),pageDown:t(function(n){this._stepDown((n||1)*this.options.page)}),value:function(n){return arguments.length?(t(this._value).call(this,n),void 0):this._parse(this.element.val())},widget:function(){return this.uiSpinner}});n.widget("ui.tabs",{version:"1.11.1",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_isLocal:function(){var n=/#.*$/;return function(t){var i,r;t=t.cloneNode(!1);i=t.href.replace(n,"");r=location.href.replace(n,"");try{i=decodeURIComponent(i)}catch(u){}try{r=decodeURIComponent(r)}catch(u){}return t.hash.length>1&&i===r}}(),_create:function(){var i=this,t=this.options;this.running=!1;this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",t.collapsible);this._processTabs();t.active=this._initialActive();n.isArray(t.disabled)&&(t.disabled=n.unique(t.disabled.concat(n.map(this.tabs.filter(".ui-state-disabled"),function(n){return i.tabs.index(n)}))).sort());this.active=this.options.active!==!1&&this.anchors.length?this._findActive(t.active):n();this._refresh();this.active.length&&this.load(t.active)},_initialActive:function(){var t=this.options.active,i=this.options.collapsible,r=location.hash.substring(1);return null===t&&(r&&this.tabs.each(function(i,u){if(n(u).attr("aria-controls")===r)return(t=i,!1)}),null===t&&(t=this.tabs.index(this.tabs.filter(".ui-tabs-active"))),(null===t||-1===t)&&(t=this.tabs.length?0:!1)),t!==!1&&(t=this.tabs.index(this.tabs.eq(t)),-1===t&&(t=i?!1:0)),!i&&t===!1&&this.anchors.length&&(t=0),t},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):n()}},_tabKeydown:function(t){var r=n(this.document[0].activeElement).closest("li"),i=this.tabs.index(r),u=!0;if(!this._handlePageNav(t)){switch(t.keyCode){case n.ui.keyCode.RIGHT:case n.ui.keyCode.DOWN:i++;break;case n.ui.keyCode.UP:case n.ui.keyCode.LEFT:u=!1;i--;break;case n.ui.keyCode.END:i=this.anchors.length-1;break;case n.ui.keyCode.HOME:i=0;break;case n.ui.keyCode.SPACE:return t.preventDefault(),clearTimeout(this.activating),this._activate(i),void 0;case n.ui.keyCode.ENTER:return t.preventDefault(),clearTimeout(this.activating),this._activate(i===this.options.active?!1:i),void 0;default:return}t.preventDefault();clearTimeout(this.activating);i=this._focusNextTab(i,u);t.ctrlKey||(r.attr("aria-selected","false"),this.tabs.eq(i).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",i)},this.delay))}},_panelKeydown:function(t){this._handlePageNav(t)||t.ctrlKey&&t.keyCode===n.ui.keyCode.UP&&(t.preventDefault(),this.active.focus())},_handlePageNav:function(t){return t.altKey&&t.keyCode===n.ui.keyCode.PAGE_UP?(this._activate(this._focusNextTab(this.options.active-1,!1)),!0):t.altKey&&t.keyCode===n.ui.keyCode.PAGE_DOWN?(this._activate(this._focusNextTab(this.options.active+1,!0)),!0):void 0},_findNextTab:function(t,i){function u(){return t>r&&(t=0),0>t&&(t=r),t}for(var r=this.tabs.length-1;-1!==n.inArray(u(),this.options.disabled);)t=i?t+1:t-1;return t},_focusNextTab:function(n,t){return n=this._findNextTab(n,t),this.tabs.eq(n).focus(),n},_setOption:function(n,t){return"active"===n?(this._activate(t),void 0):"disabled"===n?(this._setupDisabled(t),void 0):(this._super(n,t),"collapsible"===n&&(this.element.toggleClass("ui-tabs-collapsible",t),t||this.options.active!==!1||this._activate(0)),"event"===n&&this._setupEvents(t),"heightStyle"===n&&this._setupHeightStyle(t),void 0)},_sanitizeSelector:function(n){return n?n.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var t=this.options,i=this.tablist.children(":has(a[href])");t.disabled=n.map(i.filter(".ui-state-disabled"),function(n){return i.index(n)});this._processTabs();t.active!==!1&&this.anchors.length?this.active.length&&!n.contains(this.tablist[0],this.active[0])?this.tabs.length===t.disabled.length?(t.active=!1,this.active=n()):this._activate(this._findNextTab(Math.max(0,t.active-1),!1)):t.active=this.tabs.index(this.active):(t.active=!1,this.active=n());this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled);this._setupEvents(this.options.event);this._setupHeightStyle(this.options.heightStyle);this.tabs.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1});this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-hidden":"true"});this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var t=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist").delegate("> li","mousedown"+this.eventNamespace,function(t){n(this).is(".ui-state-disabled")&&t.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){n(this).closest("li").is(".ui-state-disabled")&&this.blur()});this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1});this.anchors=this.tabs.map(function(){return n("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1});this.panels=n();this.anchors.each(function(i,r){var f,u,e,s=n(r).uniqueId().attr("id"),o=n(r).closest("li"),h=o.attr("aria-controls");t._isLocal(r)?(f=r.hash,e=f.substring(1),u=t.element.find(t._sanitizeSelector(f))):(e=o.attr("aria-controls")||n({}).uniqueId()[0].id,f="#"+e,u=t.element.find(f),u.length||(u=t._createPanel(e),u.insertAfter(t.panels[i-1]||t.tablist)),u.attr("aria-live","polite"));u.length&&(t.panels=t.panels.add(u));h&&o.data("ui-tabs-aria-controls",h);o.attr({"aria-controls":e,"aria-labelledby":s});u.attr("aria-labelledby",s)});this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.tablist||this.element.find("ol,ul").eq(0)},_createPanel:function(t){return n("<div>").attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(t){n.isArray(t)&&(t.length?t.length===this.anchors.length&&(t=!0):t=!1);for(var i,r=0;i=this.tabs[r];r++)t===!0||-1!==n.inArray(r,t)?n(i).addClass("ui-state-disabled").attr("aria-disabled","true"):n(i).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=t},_setupEvents:function(t){var i={};t&&n.each(t.split(" "),function(n,t){i[t]="_eventHandler"});this._off(this.anchors.add(this.tabs).add(this.panels));this._on(!0,this.anchors,{click:function(n){n.preventDefault()}});this._on(this.anchors,i);this._on(this.tabs,{keydown:"_tabKeydown"});this._on(this.panels,{keydown:"_panelKeydown"});this._focusable(this.tabs);this._hoverable(this.tabs)},_setupHeightStyle:function(t){var i,r=this.element.parent();"fill"===t?(i=r.height(),i-=this.element.outerHeight()-this.element.height(),this.element.siblings(":visible").each(function(){var t=n(this),r=t.css("position");"absolute"!==r&&"fixed"!==r&&(i-=t.outerHeight(!0))}),this.element.children().not(this.panels).each(function(){i-=n(this).outerHeight(!0)}),this.panels.each(function(){n(this).height(Math.max(0,i-n(this).innerHeight()+n(this).height()))}).css("overflow","auto")):"auto"===t&&(i=0,this.panels.each(function(){i=Math.max(i,n(this).height("").height())}).height(i))},_eventHandler:function(t){var u=this.options,r=this.active,c=n(t.currentTarget),i=c.closest("li"),f=i[0]===r[0],e=f&&u.collapsible,o=e?n():this._getPanelForTab(i),s=r.length?this._getPanelForTab(r):n(),h={oldTab:r,oldPanel:s,newTab:e?n():i,newPanel:o};t.preventDefault();i.hasClass("ui-state-disabled")||i.hasClass("ui-tabs-loading")||this.running||f&&!u.collapsible||this._trigger("beforeActivate",t,h)===!1||(u.active=e?!1:this.tabs.index(i),this.active=f?n():i,this.xhr&&this.xhr.abort(),s.length||o.length||n.error("jQuery UI Tabs: Mismatching fragment identifier."),o.length&&this.load(this.tabs.index(i),t),this._toggle(t,h))},_toggle:function(t,i){function e(){u.running=!1;u._trigger("activate",t,i)}function o(){i.newTab.closest("li").addClass("ui-tabs-active ui-state-active");r.length&&u.options.show?u._show(r,u.options.show,e):(r.show(),e())}var u=this,r=i.newPanel,f=i.oldPanel;this.running=!0;f.length&&this.options.hide?this._hide(f,this.options.hide,function(){i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active");o()}):(i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),f.hide(),o());f.attr("aria-hidden","true");i.oldTab.attr({"aria-selected":"false","aria-expanded":"false"});r.length&&f.length?i.oldTab.attr("tabIndex",-1):r.length&&this.tabs.filter(function(){return 0===n(this).attr("tabIndex")}).attr("tabIndex",-1);r.attr("aria-hidden","false");i.newTab.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0})},_activate:function(t){var r,i=this._findActive(t);i[0]!==this.active[0]&&(i.length||(i=this.active),r=i.find(".ui-tabs-anchor")[0],this._eventHandler({target:r,currentTarget:r,preventDefault:n.noop}))},_findActive:function(t){return t===!1?n():this.tabs.eq(t)},_getIndex:function(n){return"string"==typeof n&&(n=this.anchors.index(this.anchors.filter("[href$='"+n+"']"))),n},_destroy:function(){this.xhr&&this.xhr.abort();this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible");this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role");this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeUniqueId();this.tablist.unbind(this.eventNamespace);this.tabs.add(this.panels).each(function(){n.data(this,"ui-tabs-destroy")?n(this).remove():n(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")});this.tabs.each(function(){var t=n(this),i=t.data("ui-tabs-aria-controls");i?t.attr("aria-controls",i).removeData("ui-tabs-aria-controls"):t.removeAttr("aria-controls")});this.panels.show();"content"!==this.options.heightStyle&&this.panels.css("height","")},enable:function(t){var i=this.options.disabled;i!==!1&&(void 0===t?i=!1:(t=this._getIndex(t),i=n.isArray(i)?n.map(i,function(n){return n!==t?n:null}):n.map(this.tabs,function(n,i){return i!==t?i:null})),this._setupDisabled(i))},disable:function(t){var i=this.options.disabled;if(i!==!0){if(void 0===t)i=!0;else{if(t=this._getIndex(t),-1!==n.inArray(t,i))return;i=n.isArray(i)?n.merge([t],i).sort():[t]}this._setupDisabled(i)}},load:function(t,i){t=this._getIndex(t);var u=this,r=this.tabs.eq(t),e=r.find(".ui-tabs-anchor"),f=this._getPanelForTab(r),o={tab:r,panel:f};this._isLocal(e[0])||(this.xhr=n.ajax(this._ajaxSettings(e,i,o)),this.xhr&&"canceled"!==this.xhr.statusText&&(r.addClass("ui-tabs-loading"),f.attr("aria-busy","true"),this.xhr.success(function(n){setTimeout(function(){f.html(n);u._trigger("load",i,o)},1)}).complete(function(n,t){setTimeout(function(){"abort"===t&&u.panels.stop(!1,!0);r.removeClass("ui-tabs-loading");f.removeAttr("aria-busy");n===u.xhr&&delete u.xhr},1)})))},_ajaxSettings:function(t,i,r){var u=this;return{url:t.attr("href"),beforeSend:function(t,f){return u._trigger("beforeLoad",i,n.extend({jqXHR:t,ajaxSettings:f},r))}}},_getPanelForTab:function(t){var i=n(t).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+i))}});n.widget("ui.tooltip",{version:"1.11.1",options:{content:function(){var t=n(this).attr("title")||"";return n("<a>").text(t).html()},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_addDescribedBy:function(t,i){var r=(t.attr("aria-describedby")||"").split(/\s+/);r.push(i);t.data("ui-tooltip-id",i).attr("aria-describedby",n.trim(r.join(" ")))},_removeDescribedBy:function(t){var u=t.data("ui-tooltip-id"),i=(t.attr("aria-describedby")||"").split(/\s+/),r=n.inArray(u,i);-1!==r&&i.splice(r,1);t.removeData("ui-tooltip-id");i=n.trim(i.join(" "));i?t.attr("aria-describedby",i):t.removeAttr("aria-describedby")},_create:function(){this._on({mouseover:"open",focusin:"open"});this.tooltips={};this.parents={};this.options.disabled&&this._disable();this.liveRegion=n("<div>").attr({role:"log","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body)},_setOption:function(t,i){var r=this;return"disabled"===t?(this[i?"_disable":"_enable"](),this.options[t]=i,void 0):(this._super(t,i),"content"===t&&n.each(this.tooltips,function(n,t){r._updateContent(t)}),void 0)},_disable:function(){var t=this;n.each(this.tooltips,function(i,r){var u=n.Event("blur");u.target=u.currentTarget=r[0];t.close(u,!0)});this.element.find(this.options.items).addBack().each(function(){var t=n(this);t.is("[title]")&&t.data("ui-tooltip-title",t.attr("title")).removeAttr("title")})},_enable:function(){this.element.find(this.options.items).addBack().each(function(){var t=n(this);t.data("ui-tooltip-title")&&t.attr("title",t.data("ui-tooltip-title"))})},open:function(t){var r=this,i=n(t?t.target:this.element).closest(this.options.items);i.length&&!i.data("ui-tooltip-id")&&(i.attr("title")&&i.data("ui-tooltip-title",i.attr("title")),i.data("ui-tooltip-open",!0),t&&"mouseover"===t.type&&i.parents().each(function(){var i,t=n(this);t.data("ui-tooltip-open")&&(i=n.Event("blur"),i.target=i.currentTarget=this,r.close(i,!0));t.attr("title")&&(t.uniqueId(),r.parents[this.id]={element:this,title:t.attr("title")},t.attr("title",""))}),this._updateContent(i,t))},_updateContent:function(n,t){var i,r=this.options.content,u=this,f=t?t.type:null;return"string"==typeof r?this._open(t,n,r):(i=r.call(n[0],function(i){n.data("ui-tooltip-open")&&u._delay(function(){t&&(t.type=f);this._open(t,n,i)})}),i&&this._open(t,n,i),void 0)},_open:function(t,i,r){function o(n){s.of=n;u.is(":hidden")||u.position(s)}var u,f,h,e,s=n.extend({},this.options.position);if(r){if(u=this._find(i),u.length)return u.find(".ui-tooltip-content").html(r),void 0;i.is("[title]")&&(t&&"mouseover"===t.type?i.attr("title",""):i.removeAttr("title"));u=this._tooltip(i);this._addDescribedBy(i,u.attr("id"));u.find(".ui-tooltip-content").html(r);this.liveRegion.children().hide();r.clone?(e=r.clone(),e.removeAttr("id").find("[id]").removeAttr("id")):e=r;n("<div>").html(e).appendTo(this.liveRegion);this.options.track&&t&&/^mouse/.test(t.type)?(this._on(this.document,{mousemove:o}),o(t)):u.position(n.extend({of:i},this.options.position));this.hiding=!1;this.closing=!1;u.hide();this._show(u,this.options.show);this.options.show&&this.options.show.delay&&(h=this.delayedShow=setInterval(function(){u.is(":visible")&&(o(s.of),clearInterval(h))},n.fx.interval));this._trigger("open",t,{tooltip:u});f={keyup:function(t){if(t.keyCode===n.ui.keyCode.ESCAPE){var r=n.Event(t);r.currentTarget=i[0];this.close(r,!0)}}};i[0]!==this.element[0]&&(f.remove=function(){this._removeTooltip(u)});t&&"mouseover"!==t.type||(f.mouseleave="close");t&&"focusin"!==t.type||(f.focusout="close");this._on(!0,i,f)}},close:function(t){var u=this,i=n(t?t.currentTarget:this.element),r=this._find(i);this.closing||(clearInterval(this.delayedShow),i.data("ui-tooltip-title")&&!i.attr("title")&&i.attr("title",i.data("ui-tooltip-title")),this._removeDescribedBy(i),this.hiding=!0,r.stop(!0),this._hide(r,this.options.hide,function(){u._removeTooltip(n(this));this.hiding=!1;this.closing=!1}),i.removeData("ui-tooltip-open"),this._off(i,"mouseleave focusout keyup"),i[0]!==this.element[0]&&this._off(i,"remove"),this._off(this.document,"mousemove"),t&&"mouseleave"===t.type&&n.each(this.parents,function(t,i){n(i.element).attr("title",i.title);delete u.parents[t]}),this.closing=!0,this._trigger("close",t,{tooltip:r}),this.hiding||(this.closing=!1))},_tooltip:function(t){var i=n("<div>").attr("role","tooltip").addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||"")),r=i.uniqueId().attr("id");return n("<div>").addClass("ui-tooltip-content").appendTo(i),i.appendTo(this.document[0].body),this.tooltips[r]=t,i},_find:function(t){var i=t.data("ui-tooltip-id");return i?n("#"+i):n()},_removeTooltip:function(n){n.remove();delete this.tooltips[n.attr("id")]},_destroy:function(){var t=this;n.each(this.tooltips,function(i,r){var u=n.Event("blur");u.target=u.currentTarget=r[0];t.close(u,!0);n("#"+i).remove();r.data("ui-tooltip-title")&&(r.attr("title")||r.attr("title",r.data("ui-tooltip-title")),r.removeData("ui-tooltip-title"))});this.liveRegion.remove()}})}),function(n){typeof define=="function"&&define.amd?define(["jquery"],n):n(jQuery)}(function(n){"use strict";var t={},i=Math.max,r=Math.min;t.c={};t.c.d=n(document);t.c.t=function(n){return n.originalEvent.touches.length-1};t.o=function(){var i=this;this.o=null;this.$=null;this.i=null;this.g=null;this.v=null;this.cv=null;this.x=0;this.y=0;this.w=0;this.h=0;this.$c=null;this.c=null;this.t=0;this.isInit=!1;this.fgColor=null;this.pColor=null;this.dH=null;this.cH=null;this.eH=null;this.rH=null;this.scale=1;this.relative=!1;this.relativeWidth=!1;this.relativeHeight=!1;this.$div=null;this.run=function(){var t=function(n,t){var r;for(r in t)i.o[r]=t[r];i._carve().init();i._configure()._draw()};if(!this.$.data("kontroled")){if(this.$.data("kontroled",!0),this.extend(),this.o=n.extend({min:this.$.data("min")!==undefined?this.$.data("min"):0,max:this.$.data("max")!==undefined?this.$.data("max"):100,stopper:!0,readOnly:this.$.data("readonly")||this.$.attr("readonly")==="readonly",cursor:this.$.data("cursor")===!0&&30||this.$.data("cursor")||0,thickness:this.$.data("thickness")&&Math.max(Math.min(this.$.data("thickness"),1),.01)||.35,lineCap:this.$.data("linecap")||"butt",width:this.$.data("width")||200,height:this.$.data("height")||200,displayInput:this.$.data("displayinput")==null||this.$.data("displayinput"),displayPrevious:this.$.data("displayprevious"),fgColor:this.$.data("fgcolor")||"#87CEEB",inputColor:this.$.data("inputcolor"),font:this.$.data("font")||"Arial",fontWeight:this.$.data("font-weight")||"bold",inline:!1,step:this.$.data("step")||1,rotation:this.$.data("rotation"),draw:null,change:null,cancel:null,release:null,format:function(n){return n},parse:function(n){return parseFloat(n)}},this.o),this.o.flip=this.o.rotation==="anticlockwise"||this.o.rotation==="acw",this.o.inputColor||(this.o.inputColor=this.o.fgColor),this.$.is("fieldset")?(this.v={},this.i=this.$.find("input"),this.i.each(function(t){var r=n(this);i.i[t]=r;i.v[t]=i.o.parse(r.val());r.bind("change blur",function(){var n={};n[t]=r.val();i.val(i._validate(n))})}),this.$.find("legend").remove()):(this.i=this.$,this.v=this.o.parse(this.$.val()),this.v===""&&(this.v=this.o.min),this.$.bind("change blur",function(){i.val(i._validate(i.o.parse(i.$.val())))})),this.o.displayInput||this.$.hide(),this.$c=n(document.createElement("canvas")).attr({width:this.o.width,height:this.o.height}),this.$div=n('<div style="'+(this.o.inline?"display:inline;":"")+"width:"+this.o.width+"px;height:"+this.o.height+'px;"><\/div>'),this.$.wrap(this.$div).before(this.$c),this.$div=this.$.parent(),typeof G_vmlCanvasManager!="undefined"&&G_vmlCanvasManager.initElement(this.$c[0]),this.c=this.$c[0].getContext?this.$c[0].getContext("2d"):null,!this.c)throw{name:"CanvasNotSupportedException",message:"Canvas not supported. Please use excanvas on IE8.0.",toString:function(){return this.name+": "+this.message}};return this.scale=(window.devicePixelRatio||1)/(this.c.webkitBackingStorePixelRatio||this.c.mozBackingStorePixelRatio||this.c.msBackingStorePixelRatio||this.c.oBackingStorePixelRatio||this.c.backingStorePixelRatio||1),this.relativeWidth=this.o.width%1!=0&&this.o.width.indexOf("%"),this.relativeHeight=this.o.height%1!=0&&this.o.height.indexOf("%"),this.relative=this.relativeWidth||this.relativeHeight,this._carve(),this.v instanceof Object?(this.cv={},this.copy(this.v,this.cv)):this.cv=this.v,this.$.bind("configure",t).parent().bind("configure",t),this._listen()._configure()._xy().init(),this.isInit=!0,this.$.val(this.o.format(this.v)),this._draw(),this}};this._carve=function(){if(this.relative){var n=this.relativeWidth?this.$div.parent().width()*parseInt(this.o.width)/100:this.$div.parent().width(),t=this.relativeHeight?this.$div.parent().height()*parseInt(this.o.height)/100:this.$div.parent().height();this.w=this.h=Math.min(n,t)}else this.w=this.o.width,this.h=this.o.height;return this.$div.css({width:this.w+"px",height:this.h+"px"}),this.$c.attr({width:this.w,height:this.h}),this.scale!==1&&(this.$c[0].width=this.$c[0].width*this.scale,this.$c[0].height=this.$c[0].height*this.scale,this.$c.width(this.w),this.$c.height(this.h)),this};this._draw=function(){var n=!0;i.g=i.c;i.clear();i.dH&&(n=i.dH());n!==!1&&i.draw()};this._touch=function(n){var r=function(n){var t=i.xy2val(n.originalEvent.touches[i.t].pageX,n.originalEvent.touches[i.t].pageY);t!=i.cv&&(i.cH&&i.cH(t)===!1||(i.change(i._validate(t)),i._draw()))};return this.t=t.c.t(n),r(n),t.c.d.bind("touchmove.k",r).bind("touchend.k",function(){t.c.d.unbind("touchmove.k touchend.k");i.val(i.cv)}),this};this._mouse=function(n){var r=function(n){var t=i.xy2val(n.pageX,n.pageY);t!=i.cv&&(i.cH&&i.cH(t)===!1||(i.change(i._validate(t)),i._draw()))};return r(n),t.c.d.bind("mousemove.k",r).bind("keyup.k",function(n){if(n.keyCode===27){if(t.c.d.unbind("mouseup.k mousemove.k keyup.k"),i.eH&&i.eH()===!1)return;i.cancel()}}).bind("mouseup.k",function(){t.c.d.unbind("mousemove.k mouseup.k keyup.k");i.val(i.cv)}),this};this._xy=function(){var n=this.$c.offset();return this.x=n.left,this.y=n.top,this};this._listen=function(){return this.o.readOnly?this.$.attr("readonly","readonly"):(this.$c.bind("mousedown",function(n){n.preventDefault();i._xy()._mouse(n)}).bind("touchstart",function(n){n.preventDefault();i._xy()._touch(n)}),this.listen()),this.relative&&n(window).resize(function(){i._carve().init();i._draw()}),this};this._configure=function(){return this.o.draw&&(this.dH=this.o.draw),this.o.change&&(this.cH=this.o.change),this.o.cancel&&(this.eH=this.o.cancel),this.o.release&&(this.rH=this.o.release),this.o.displayPrevious?(this.pColor=this.h2rgba(this.o.fgColor,"0.4"),this.fgColor=this.h2rgba(this.o.fgColor,"0.6")):this.fgColor=this.o.fgColor,this};this._clear=function(){this.$c[0].width=this.$c[0].width};this._validate=function(n){var t=~~((n<0?-.5:.5)+n/this.o.step)*this.o.step;return Math.round(t*100)/100};this.listen=function(){};this.extend=function(){};this.init=function(){};this.change=function(){};this.val=function(){};this.xy2val=function(){};this.draw=function(){};this.clear=function(){this._clear()};this.h2rgba=function(n,t){var i;return n=n.substring(1,7),i=[parseInt(n.substring(0,2),16),parseInt(n.substring(2,4),16),parseInt(n.substring(4,6),16)],"rgba("+i[0]+","+i[1]+","+i[2]+","+t+")"};this.copy=function(n,t){for(var i in n)t[i]=n[i]}};t.Dial=function(){t.o.call(this);this.startAngle=null;this.xy=null;this.radius=null;this.lineWidth=null;this.cursorExt=null;this.w2=null;this.PI2=2*Math.PI;this.extend=function(){this.o=n.extend({bgColor:this.$.data("bgcolor")||"#EEEEEE",angleOffset:this.$.data("angleoffset")||0,angleArc:this.$.data("anglearc")||360,inline:!0},this.o)};this.val=function(n,t){if(null!=n){if(n=this.o.parse(n),t!==!1&&n!=this.v&&this.rH&&this.rH(n)===!1)return;this.cv=this.o.stopper?i(r(n,this.o.max),this.o.min):n;this.v=this.cv;this.$.val(this.o.format(this.v));this._draw()}else return this.v};this.xy2val=function(n,t){var u,f;return u=Math.atan2(n-(this.x+this.w2),-(t-this.y-this.w2))-this.angleOffset,this.o.flip&&(u=this.angleArc-u-this.PI2),this.angleArc!=this.PI2&&u<0&&u>-.5?u=0:u<0&&(u+=this.PI2),f=u*(this.o.max-this.o.min)/this.angleArc+this.o.min,this.o.stopper&&(f=i(r(f,this.o.max),this.o.min)),f};this.listen=function(){var t=this,u,e,h=function(n){n.preventDefault();var o=n.originalEvent,s=o.detail||o.wheelDeltaX,h=o.detail||o.wheelDeltaY,f=t._validate(t.o.parse(t.$.val()))+(s>0||h>0?t.o.step:s<0||h<0?-t.o.step:0);f=i(r(f,t.o.max),t.o.min);t.val(f,!1);t.rH&&(clearTimeout(u),u=setTimeout(function(){t.rH(f);u=null},100),e||(e=setTimeout(function(){u&&t.rH(f);e=null},200)))},o,f,s=1,c={37:-t.o.step,38:t.o.step,39:t.o.step,40:-t.o.step};this.$.bind("keydown",function(u){var e=u.keyCode,h;e>=96&&e<=105&&(e=u.keyCode=e-48);o=parseInt(String.fromCharCode(e));isNaN(o)&&(e!==13&&e!==8&&e!==9&&e!==189&&(e!==190||t.$.val().match(/\./))&&u.preventDefault(),n.inArray(e,[37,38,39,40])>-1&&(u.preventDefault(),h=t.o.parse(t.$.val())+c[e]*s,t.o.stopper&&(h=i(r(h,t.o.max),t.o.min)),t.change(t._validate(h)),t._draw(),f=window.setTimeout(function(){s*=2},30)))}).bind("keyup",function(){isNaN(o)?f&&(window.clearTimeout(f),f=null,s=1,t.val(t.$.val())):t.$.val()>t.o.max&&t.$.val(t.o.max)||t.$.val()<t.o.min&&t.$.val(t.o.min)});this.$c.bind("mousewheel DOMMouseScroll",h);this.$.bind("mousewheel DOMMouseScroll",h)};this.init=function(){(this.v<this.o.min||this.v>this.o.max)&&(this.v=this.o.min);this.$.val(this.v);this.w2=this.w/2;this.cursorExt=this.o.cursor/100;this.xy=this.w2*this.scale;this.lineWidth=this.xy*this.o.thickness;this.lineCap=this.o.lineCap;this.radius=this.xy-this.lineWidth/2;this.o.angleOffset&&(this.o.angleOffset=isNaN(this.o.angleOffset)?0:this.o.angleOffset);this.o.angleArc&&(this.o.angleArc=isNaN(this.o.angleArc)?this.PI2:this.o.angleArc);this.angleOffset=this.o.angleOffset*Math.PI/180;this.angleArc=this.o.angleArc*Math.PI/180;this.startAngle=1.5*Math.PI+this.angleOffset;this.endAngle=1.5*Math.PI+this.angleOffset+this.angleArc;var n=i(String(Math.abs(this.o.max)).length,String(Math.abs(this.o.min)).length,2)+2;this.o.displayInput&&this.i.css({width:(this.w/2+4>>0)+"px",height:(this.w/3>>0)+"px",position:"absolute","vertical-align":"middle","margin-top":(this.w/3>>0)+"px","margin-left":"-"+(this.w*3/4+2>>0)+"px",border:0,background:"none",font:this.o.fontWeight+" "+(this.w/n>>0)+"px "+this.o.font,"text-align":"center",color:this.o.inputColor||this.o.fgColor,padding:"0px","-webkit-appearance":"none"})||this.i.css({width:"0px",visibility:"hidden"})};this.change=function(n){this.cv=n;this.$.val(this.o.format(n))};this.angle=function(n){return(n-this.o.min)*this.angleArc/(this.o.max-this.o.min)};this.arc=function(n){var t,i;return n=this.angle(n),this.o.flip?(t=this.endAngle+1e-5,i=t-n-1e-5):(t=this.startAngle-1e-5,i=t+n+1e-5),this.o.cursor&&(t=i-this.cursorExt)&&(i=i+this.cursorExt),{s:t,e:i,d:this.o.flip&&!this.o.cursor}};this.draw=function(){var n=this.g,i=this.arc(this.cv),t,r=1;n.lineWidth=this.lineWidth;n.lineCap=this.lineCap;this.o.bgColor!=="none"&&(n.beginPath(),n.strokeStyle=this.o.bgColor,n.arc(this.xy,this.xy,this.radius,this.endAngle-1e-5,this.startAngle+1e-5,!0),n.stroke());this.o.displayPrevious&&(t=this.arc(this.v),n.beginPath(),n.strokeStyle=this.pColor,n.arc(this.xy,this.xy,this.radius,t.s,t.e,t.d),n.stroke(),r=this.cv==this.v);n.beginPath();n.strokeStyle=r?this.o.fgColor:this.fgColor;n.arc(this.xy,this.xy,this.radius,i.s,i.e,i.d);n.stroke()};this.cancel=function(){this.val(this.v)}};n.fn.dial=n.fn.knob=function(i){return this.each(function(){var r=new t.Dial;r.o=i;r.$=n(this);r.run()}).parent()}}),function(){function r(n){"use strict";var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Specify a prefix to generated header ids",type:"string"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,description:"Tries to smartly fix identation in es6 strings",type:"boolean"}},r,i;if(n===!1)return JSON.parse(JSON.stringify(t));r={};for(i in t)t.hasOwnProperty(i)&&(r[i]=t[i].defaultValue);return r}function f(t,i){"use strict";var h=i?"Error in "+i+" extension->":"Error in unnamed extension",r={valid:!0,error:""},o,f,u,e,s;for(n.helper.isArray(t)||(t=[t]),o=0;o<t.length;++o){if(f=h+" sub-extension "+o+": ",u=t[o],typeof u!="object")return r.valid=!1,r.error=f+"must be an object, but "+typeof u+" given",r;if(!n.helper.isString(u.type))return r.valid=!1,r.error=f+'property "type" must be a string, but '+typeof u.type+" given",r;if(e=u.type=u.type.toLowerCase(),e==="language"&&(e=u.type="lang"),e==="html"&&(e=u.type="output"),e!=="lang"&&e!=="output"&&e!=="listener")return r.valid=!1,r.error=f+"type "+e+' is not recognized. Valid values: "lang/language", "output/html" or "listener"',r;if(e==="listener"){if(n.helper.isUndefined(u.listeners))return r.valid=!1,r.error=f+'. Extensions of type "listener" must have a property called "listeners"',r}else if(n.helper.isUndefined(u.filter)&&n.helper.isUndefined(u.regex))return r.valid=!1,r.error=f+e+' extensions must define either a "regex" property or a "filter" method',r;if(u.listeners){if(typeof u.listeners!="object")return r.valid=!1,r.error=f+'"listeners" property must be an object but '+typeof u.listeners+" given",r;for(s in u.listeners)if(u.listeners.hasOwnProperty(s)&&typeof u.listeners[s]!="function")return r.valid=!1,r.error=f+'"listeners" property must be an hash of [event name]: [callback]. listeners.'+s+" must be a function but "+typeof u.listeners[s]+" given",r}if(u.filter){if(typeof u.filter!="function")return r.valid=!1,r.error=f+'"filter" must be a function, but '+typeof u.filter+" given",r}else if(u.regex){if(n.helper.isString(u.regex)&&(u.regex=new RegExp(u.regex,"g")),!u.regex instanceof RegExp)return r.valid=!1,r.error=f+'"regex" property must either be a string or a RegExp object, but '+typeof u.regex+" given",r;if(n.helper.isUndefined(u.replace))return r.valid=!1,r.error=f+'"regex" extensions must implement a replace string or function',r}}return r}function s(n,t){"use strict";var i=t.charCodeAt(0);return"~E"+i+"E"}var n={},e={},t={},i=r(!0),u={github:{omitExtraWLInCodeBlocks:!0,prefixHeaderId:"user-content-",simplifiedAutoLink:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0},vanilla:r(!0)},o,h;n.helper={};n.extensions={};n.setOption=function(n,t){"use strict";return i[n]=t,this};n.getOption=function(n){"use strict";return i[n]};n.getOptions=function(){"use strict";return i};n.resetOptions=function(){"use strict";i=r(!0)};n.setFlavor=function(n){"use strict";var t,r;if(u.hasOwnProperty(n)){t=u[n];for(r in t)t.hasOwnProperty(r)&&(i[r]=t[r])}};n.getDefaultOptions=function(n){"use strict";return r(n)};n.subParser=function(t,i){"use strict";if(n.helper.isString(t))if(typeof i!="undefined")e[t]=i;else{if(e.hasOwnProperty(t))return e[t];throw Error("SubParser named "+t+" not registered!");}};n.extension=function(i,r){"use strict";if(!n.helper.isString(i))throw Error("Extension 'name' must be a string");if(i=n.helper.stdExtName(i),n.helper.isUndefined(r)){if(!t.hasOwnProperty(i))throw Error("Extension named "+i+" is not registered!");return t[i]}typeof r=="function"&&(r=r());n.helper.isArray(r)||(r=[r]);var u=f(r,i);if(u.valid)t[i]=r;else throw Error(u.error);};n.getAllExtensions=function(){"use strict";return t};n.removeExtension=function(n){"use strict";delete t[n]};n.resetExtensions=function(){"use strict";t={}};n.validateExtension=function(n){"use strict";var t=f(n,null);return t.valid?!0:(console.warn(t.error),!1)};n.hasOwnProperty("helper")||(n.helper={});n.helper.isString=function(n){"use strict";return typeof n=="string"||n instanceof String};n.helper.isFunction=function(n){"use strict";return n&&{}.toString.call(n)==="[object Function]"};n.helper.forEach=function(n,t){"use strict";if(typeof n.forEach=="function")n.forEach(t);else for(var i=0;i<n.length;i++)t(n[i],i,n)};n.helper.isArray=function(n){"use strict";return n.constructor===Array};n.helper.isUndefined=function(n){"use strict";return typeof n=="undefined"};n.helper.stdExtName=function(n){"use strict";return n.replace(/[_-]||\s/g,"").toLowerCase()};n.helper.escapeCharactersCallback=s;n.helper.escapeCharacters=function(n,t,i){"use strict";var r="(["+t.replace(/([\[\]\\])/g,"\\$1")+"])",u;return i&&(r="\\\\"+r),u=new RegExp(r,"g"),n.replace(u,s)};o=function(n,t,i,r){"use strict";var o=r||"",v=o.indexOf("g")>-1,s=new RegExp(t+"|"+i,"g"+o.replace(/g/g,"")),y=new RegExp(t,o.replace(/g/g,"")),h=[],f,e,u,c,l,a;do for(f=0;u=s.exec(n);)if(y.test(u[0]))f++||(e=s.lastIndex,c=e-u[0].length);else if(f&&!--f&&(l=u.index+u[0].length,a={left:{start:c,end:e},match:{start:e,end:u.index},right:{start:u.index,end:l},wholeMatch:{start:c,end:l}},h.push(a),!v))return h;while(f&&(s.lastIndex=e));return h};n.helper.matchRecursiveRegExp=function(n,t,i,r){"use strict";for(var f=o(n,t,i,r),e=[],u=0;u<f.length;++u)e.push([n.slice(f[u].wholeMatch.start,f[u].wholeMatch.end),n.slice(f[u].match.start,f[u].match.end),n.slice(f[u].left.start,f[u].left.end),n.slice(f[u].right.start,f[u].right.end)]);return e};n.helper.replaceRecursiveRegExp=function(t,i,r,u,f){"use strict";var l,h,s;n.helper.isFunction(i)||(l=i,i=function(){return l});var e=o(t,r,u,f),a=t,c=e.length;if(c>0){for(h=[],e[0].wholeMatch.start!==0&&h.push(t.slice(0,e[0].wholeMatch.start)),s=0;s<c;++s)h.push(i(t.slice(e[s].wholeMatch.start,e[s].wholeMatch.end),t.slice(e[s].match.start,e[s].match.end),t.slice(e[s].left.start,e[s].left.end),t.slice(e[s].right.start,e[s].right.end))),s<c-1&&h.push(t.slice(e[s].wholeMatch.end,e[s+1].wholeMatch.start));e[c-1].wholeMatch.end<t.length&&h.push(t.slice(e[c-1].wholeMatch.end));a=h.join("")}return a};n.helper.isUndefined(console)&&(console={warn:function(n){"use strict";alert(n)},log:function(n){"use strict";alert(n)},error:function(n){"use strict";throw n;}});n.Converter=function(r){"use strict";function a(){var t,u;r=r||{};for(t in i)i.hasOwnProperty(t)&&(e[t]=i[t]);if(typeof r=="object")for(u in r)r.hasOwnProperty(u)&&(e[u]=r[u]);else throw Error("Converter expects the passed parameter to be an object, but "+typeof r+" was passed instead.");e.extensions&&n.helper.forEach(e.extensions,c)}function c(i,r){var c,u,e;if(r=r||null,n.helper.isString(i)){if(i=n.helper.stdExtName(i),r=i,n.extensions[i]){console.warn("DEPRECATION WARNING: "+i+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!");v(n.extensions[i],i);return}if(n.helper.isUndefined(t[i]))throw Error('Extension "'+i+'" could not be loaded. It was either not found or is not a valid extension.');else i=t[i]}if(typeof i=="function"&&(i=i()),n.helper.isArray(i)||(i=[i]),c=f(i,r),!c.valid)throw Error(c.error);for(u=0;u<i.length;++u){switch(i[u].type){case"lang":o.push(i[u]);break;case"output":s.push(i[u])}if(i[u].hasOwnProperty(h))for(e in i[u].listeners)i[u].listeners.hasOwnProperty(e)&&l(e,i[u].listeners[e])}}function v(t,i){var u,r;if(typeof t=="function"&&(t=t(new n.Converter)),n.helper.isArray(t)||(t=[t]),u=f(t,i),!u.valid)throw Error(u.error);for(r=0;r<t.length;++r)switch(t[r].type){case"lang":o.push(t[r]);break;case"output":s.push(t[r]);break;default:throw Error("Extension loader error: Type unrecognized!!!");}}function l(t,i){if(!n.helper.isString(t))throw Error("Invalid argument in converter.listen() method: name must be a string, but "+typeof t+" given");if(typeof i!="function")throw Error("Invalid argument in converter.listen() method: callback must be a function, but "+typeof i+" given");h.hasOwnProperty(t)||(h[t]=[]);h[t].push(i)}function y(n){var t=n.match(/^\s*/)[0].length,i=new RegExp("^\\s{0,"+t+"}","gm");return n.replace(i,"")}var e={},o=[],s=[],h={};a();this._dispatch=function(n,t,i,r){var u,f;if(h.hasOwnProperty(n))for(u=0;u<h[n].length;++u)f=h[n][u](n,t,this,i,r),f&&typeof f!="undefined"&&(t=f);return t};this.listen=function(n,t){return l(n,t),this};this.makeHtml=function(t){if(!t)return t;var i={gHtmlBlocks:[],gHtmlMdBlocks:[],gHtmlSpans:[],gUrls:{},gTitles:{},gDimensions:{},gListLevel:0,hashLinkCounts:{},langExtensions:o,outputModifiers:s,converter:this,ghCodeBlocks:[]};return t=t.replace(/~/g,"~T"),t=t.replace(/\$/g,"~D"),t=t.replace(/\r\n/g,"\n"),t=t.replace(/\r/g,"\n"),e.smartIndentationFix&&(t=y(t)),t="\n\n"+t+"\n\n",t=n.subParser("detab")(t,e,i),t=n.subParser("stripBlankLines")(t,e,i),n.helper.forEach(o,function(r){t=n.subParser("runExtension")(r,t,e,i)}),t=n.subParser("hashPreCodeTags")(t,e,i),t=n.subParser("githubCodeBlocks")(t,e,i),t=n.subParser("hashHTMLBlocks")(t,e,i),t=n.subParser("hashHTMLSpans")(t,e,i),t=n.subParser("stripLinkDefinitions")(t,e,i),t=n.subParser("blockGamut")(t,e,i),t=n.subParser("unhashHTMLSpans")(t,e,i),t=n.subParser("unescapeSpecialChars")(t,e,i),t=t.replace(/~D/g,"$$"),t=t.replace(/~T/g,"~"),n.helper.forEach(s,function(r){t=n.subParser("runExtension")(r,t,e,i)}),t};this.setOption=function(n,t){e[n]=t};this.getOption=function(n){return e[n]};this.getOptions=function(){return e};this.addExtension=function(n,t){t=t||null;c(n,t)};this.useExtension=function(n){c(n)};this.setFlavor=function(n){var t,i;if(u.hasOwnProperty(n)){t=u[n];for(i in t)t.hasOwnProperty(i)&&(e[i]=t[i])}};this.removeExtension=function(t){var r,f,i,u;for(n.helper.isArray(t)||(t=[t]),r=0;r<t.length;++r){for(f=t[r],i=0;i<o.length;++i)o[i]===f&&o[i].splice(i,1);for(u=0;u<s.length;++i)s[u]===f&&s[u].splice(i,1)}};this.getAllExtensions=function(){return{language:o,output:s}}};n.subParser("anchors",function(t,i,r){"use strict";t=r.converter._dispatch("anchors.before",t,i,r);var u=function(t,i,u,f,e,o,s,h){var v;n.helper.isUndefined(h)&&(h="");t=i;var y=u,l=f.toLowerCase(),a=e,c=h;if(!a)if(l||(l=y.toLowerCase().replace(/ ?\n/g," ")),a="#"+l,n.helper.isUndefined(r.gUrls[l]))if(t.search(/\(\s*\)$/m)>-1)a="";else return t;else a=r.gUrls[l],n.helper.isUndefined(r.gTitles[l])||(c=r.gTitles[l]);return a=n.helper.escapeCharacters(a,"*_",!1),v='<a href="'+a+'"',c!==""&&c!==null&&(c=c.replace(/"/g,"&quot;"),c=n.helper.escapeCharacters(c,"*_",!1),v+=' title="'+c+'"'),v+(">"+y+"<\/a>")};return t=t.replace(/(\[((?:\[[^\]]*]|[^\[\]])*)][ ]?(?:\n[ ]*)?\[(.*?)])()()()()/g,u),t=t.replace(/(\[((?:\[[^\]]*]|[^\[\]])*)]\([ \t]*()<?(.*?(?:\(.*?\).*?)?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,u),t=t.replace(/(\[([^\[\]]+)])()()()()()/g,u),r.converter._dispatch("anchors.after",t,i,r)});n.subParser("autoLinks",function(t,i,r){"use strict";function u(t,i){var r=n.subParser("unescapeSpecialChars")(i);return n.subParser("encodeEmailAddress")(r)}t=r.converter._dispatch("autoLinks.before",t,i,r);return t=t.replace(/<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)>/gi,'<a href="$1">$1<\/a>'),t=t.replace(/<(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,u),i.simplifiedAutoLink&&(t=t.replace(/\b(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+)(?=\s|$)(?!["<>])/gi,'<a href="$1">$1<\/a>'),t=t.replace(/(?:^|[ \n\t])([A-Za-z0-9!#$%&'*+-/=?^_`\{|}~\.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?:$|[ \n\t])/gi,u)),r.converter._dispatch("autoLinks.after",t,i,r)});n.subParser("blockGamut",function(t,i,r){"use strict";t=r.converter._dispatch("blockGamut.before",t,i,r);t=n.subParser("blockQuotes")(t,i,r);t=n.subParser("headers")(t,i,r);var u=n.subParser("hashBlock")("<hr />",i,r);return t=t.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,u),t=t.replace(/^[ ]{0,2}([ ]?\-[ ]?){3,}[ \t]*$/gm,u),t=t.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \t]*$/gm,u),t=n.subParser("lists")(t,i,r),t=n.subParser("codeBlocks")(t,i,r),t=n.subParser("tables")(t,i,r),t=n.subParser("hashHTMLBlocks")(t,i,r),t=n.subParser("paragraphs")(t,i,r),r.converter._dispatch("blockGamut.after",t,i,r)});n.subParser("blockQuotes",function(t,i,r){"use strict";return t=r.converter._dispatch("blockQuotes.before",t,i,r),t=t.replace(/((^[ \t]{0,3}>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(t,u){var f=u;return f=f.replace(/^[ \t]*>[ \t]?/gm,"~0"),f=f.replace(/~0/g,""),f=f.replace(/^[ \t]+$/gm,""),f=n.subParser("githubCodeBlocks")(f,i,r),f=n.subParser("blockGamut")(f,i,r),f=f.replace(/(^|\n)/g,"$1  "),f=f.replace(/(\s*<pre>[^\r]+?<\/pre>)/gm,function(n,t){var i=t;return i=i.replace(/^  /mg,"~0"),i.replace(/~0/g,"")}),n.subParser("hashBlock")("<blockquote>\n"+f+"\n<\/blockquote>",i,r)}),r.converter._dispatch("blockQuotes.after",t,i,r)});n.subParser("codeBlocks",function(t,i,r){"use strict";t=r.converter._dispatch("codeBlocks.before",t,i,r)+"~0";return t=t.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,function(t,u,f){var e=u,s=f,o="\n";return e=n.subParser("outdent")(e),e=n.subParser("encodeCode")(e),e=n.subParser("detab")(e),e=e.replace(/^\n+/g,""),e=e.replace(/\n+$/g,""),i.omitExtraWLInCodeBlocks&&(o=""),e="<pre><code>"+e+o+"<\/code><\/pre>",n.subParser("hashBlock")(e,i,r)+s}),t=t.replace(/~0/,""),r.converter._dispatch("codeBlocks.after",t,i,r)});n.subParser("codeSpans",function(t,i,r){"use strict";return t=r.converter._dispatch("codeSpans.before",t,i,r),typeof t=="undefined"&&(t=""),t=t.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(t,i,r,u){var f=u;return f=f.replace(/^([ \t]*)/g,""),f=f.replace(/[ \t]*$/g,""),f=n.subParser("encodeCode")(f),i+"<code>"+f+"<\/code>"}),r.converter._dispatch("codeSpans.after",t,i,r)});n.subParser("detab",function(n){"use strict";return n=n.replace(/\t(?=\t)/g,"    "),n=n.replace(/\t/g,"~A~B"),n=n.replace(/~B(.+?)~A/g,function(n,t){for(var i=t,u=4-i.length%4,r=0;r<u;r++)i+=" ";return i}),n=n.replace(/~A/g,"    "),n.replace(/~B/g,"")});n.subParser("encodeAmpsAndAngles",function(n){"use strict";return n=n.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&amp;"),n.replace(/<(?![a-z\/?\$!])/gi,"&lt;")});n.subParser("encodeBackslashEscapes",function(t){"use strict";return t=t.replace(/\\(\\)/g,n.helper.escapeCharactersCallback),t.replace(/\\([`*_{}\[\]()>#+-.!])/g,n.helper.escapeCharactersCallback)});n.subParser("encodeCode",function(t){"use strict";return t=t.replace(/&/g,"&amp;"),t=t.replace(/</g,"&lt;"),t=t.replace(/>/g,"&gt;"),n.helper.escapeCharacters(t,"*_{}[]\\",!1)});n.subParser("encodeEmailAddress",function(n){"use strict";var t=[function(n){return"&#"+n.charCodeAt(0)+";"},function(n){return"&#x"+n.charCodeAt(0).toString(16)+";"},function(n){return n}];return n="mailto:"+n,n=n.replace(/./g,function(n){if(n==="@")n=t[Math.floor(Math.random()*2)](n);else if(n!==":"){var i=Math.random();n=i>.9?t[2](n):i>.45?t[1](n):t[0](n)}return n}),n='<a href="'+n+'">'+n+"<\/a>",n.replace(/">.+:/g,'">')});n.subParser("escapeSpecialCharsWithinTagAttributes",function(t){"use strict";return t.replace(/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|<!(--.*?--\s*)+>)/gi,function(t){var i=t.replace(/(.)<\/?code>(?=.)/g,"$1`");return n.helper.escapeCharacters(i,"\\`*_",!1)})});n.subParser("githubCodeBlocks",function(t,i,r){"use strict";return i.ghCodeBlocks?(t=r.converter._dispatch("githubCodeBlocks.before",t,i,r),t+="~0",t=t.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g,function(t,u,f){var e=i.omitExtraWLInCodeBlocks?"":"\n";return f=n.subParser("encodeCode")(f),f=n.subParser("detab")(f),f=f.replace(/^\n+/g,""),f=f.replace(/\n+$/g,""),f="<pre><code"+(u?' class="'+u+" language-"+u+'"':"")+">"+f+e+"<\/code><\/pre>",f=n.subParser("hashBlock")(f,i,r),"\n\n~G"+(r.ghCodeBlocks.push({text:t,codeblock:f})-1)+"G\n\n"}),t=t.replace(/~0/,""),r.converter._dispatch("githubCodeBlocks.after",t,i,r)):t});n.subParser("hashBlock",function(n,t,i){"use strict";return n=n.replace(/(^\n+|\n+$)/g,""),"\n\n~K"+(i.gHtmlBlocks.push(n)-1)+"K\n\n"});n.subParser("hashElement",function(n,t,i){"use strict";return function(n,t){var r=t;return r=r.replace(/\n\n/g,"\n"),r=r.replace(/^\n/,""),r=r.replace(/\n+$/g,""),"\n\n~K"+(i.gHtmlBlocks.push(r)-1)+"K\n\n"}});n.subParser("hashHTMLBlocks",function(t,i,r){"use strict";for(var f=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],e=function(n,t,i,u){var f=n;return i.search(/\bmarkdown\b/)!==-1&&(f=i+r.converter.makeHtml(t)+u),"\n\n~K"+(r.gHtmlBlocks.push(f)-1)+"K\n\n"},u=0;u<f.length;++u)t=n.helper.replaceRecursiveRegExp(t,e,"^(?: |\\t){0,3}<"+f[u]+"\\b[^>]*>","<\/"+f[u]+">","gim");return t=t.replace(/(\n[ ]{0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(t,i,r)),t=t.replace(/(<!--[\s\S]*?-->)/g,n.subParser("hashElement")(t,i,r)),t.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(t,i,r))});n.subParser("hashHTMLSpans",function(t,i,r){"use strict";for(var f=n.helper.matchRecursiveRegExp(t,"<code\\b[^>]*>","<\/code>","gi"),u=0;u<f.length;++u)t=t.replace(f[u][0],"~L"+(r.gHtmlSpans.push(f[u][0])-1)+"L");return t});n.subParser("unhashHTMLSpans",function(n,t,i){"use strict";for(var r=0;r<i.gHtmlSpans.length;++r)n=n.replace("~L"+r+"L",i.gHtmlSpans[r]);return n});n.subParser("hashPreCodeTags",function(t,i,r){"use strict";var u=function(t,i,u,f){var e=u+n.subParser("encodeCode")(i)+f;return"\n\n~G"+(r.ghCodeBlocks.push({text:t,codeblock:e})-1)+"G\n\n"};return n.helper.replaceRecursiveRegExp(t,u,"^(?: |\\t){0,3}<pre\\b[^>]*>\\s*<code\\b[^>]*>","^(?: |\\t){0,3}<\/code>\\s*<\/pre>","gim")});n.subParser("headers",function(t,i,r){"use strict";function e(t){var f,i=t.replace(/[^\w]/g,"").toLowerCase();return(r.hashLinkCounts[i]?f=i+"-"+r.hashLinkCounts[i]++:(f=i,r.hashLinkCounts[i]=1),u===!0&&(u="section"),n.helper.isString(u))?u+f:f}t=r.converter._dispatch("headers.before",t,i,r);var u=i.prefixHeaderId,f=isNaN(parseInt(i.headerLevelStart))?1:parseInt(i.headerLevelStart),o=i.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,s=i.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;return t=t.replace(o,function(t,u){var s=n.subParser("spanGamut")(u,i,r),h=i.noHeaderId?"":' id="'+e(u)+'"',o=f,c="<h"+o+h+">"+s+"<\/h"+o+">";return n.subParser("hashBlock")(c,i,r)}),t=t.replace(s,function(t,u){var s=n.subParser("spanGamut")(u,i,r),h=i.noHeaderId?"":' id="'+e(u)+'"',o=f+1,c="<h"+o+h+">"+s+"<\/h"+o+">";return n.subParser("hashBlock")(c,i,r)}),t=t.replace(/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm,function(t,u,o){var h=n.subParser("spanGamut")(o,i,r),c=i.noHeaderId?"":' id="'+e(o)+'"',s=f-1+u.length,l="<h"+s+c+">"+h+"<\/h"+s+">";return n.subParser("hashBlock")(l,i,r)}),r.converter._dispatch("headers.after",t,i,r)});n.subParser("images",function(t,i,r){"use strict";function u(t,i,u,f,e,o,s,h){var a=r.gUrls,v=r.gTitles,l=r.gDimensions,c;if(u=u.toLowerCase(),h||(h=""),f===""||f===null){if((u===""||u===null)&&(u=i.toLowerCase().replace(/ ?\n/g," ")),f="#"+u,n.helper.isUndefined(a[u]))return t;f=a[u];n.helper.isUndefined(v[u])||(h=v[u]);n.helper.isUndefined(l[u])||(e=l[u].width,o=l[u].height)}return i=i.replace(/"/g,"&quot;"),i=n.helper.escapeCharacters(i,"*_",!1),f=n.helper.escapeCharacters(f,"*_",!1),c='<img src="'+f+'" alt="'+i+'"',h&&(h=h.replace(/"/g,"&quot;"),h=n.helper.escapeCharacters(h,"*_",!1),c+=' title="'+h+'"'),e&&o&&(e=e==="*"?"auto":e,o=o==="*"?"auto":o,c+=' width="'+e+'"',c+=' height="'+o+'"'),c+" />"}t=r.converter._dispatch("images.before",t,i,r);return t=t.replace(/!\[([^\]]*?)] ?(?:\n *)?\[(.*?)]()()()()()/g,u),t=t.replace(/!\[(.*?)]\s?\([ \t]*()<?(\S+?)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(['"])(.*?)\6[ \t]*)?\)/g,u),r.converter._dispatch("images.after",t,i,r)});n.subParser("italicsAndBold",function(n,t,i){"use strict";return n=i.converter._dispatch("italicsAndBold.before",n,t,i),t.literalMidWordUnderscores?(n=n.replace(/(^|\s|>|\b)__(?=\S)([\s\S]+?)__(?=\b|<|\s|$)/gm,"$1<strong>$2<\/strong>"),n=n.replace(/(^|\s|>|\b)_(?=\S)([\s\S]+?)_(?=\b|<|\s|$)/gm,"$1<em>$2<\/em>"),n=n.replace(/(\*\*)(?=\S)([^\r]*?\S[*]*)\1/g,"<strong>$2<\/strong>"),n=n.replace(/(\*)(?=\S)([^\r]*?\S)\1/g,"<em>$2<\/em>")):(n=n.replace(/(\*\*|__)(?=\S)([^\r]*?\S[*_]*)\1/g,"<strong>$2<\/strong>"),n=n.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g,"<em>$2<\/em>")),i.converter._dispatch("italicsAndBold.after",n,t,i)});n.subParser("lists",function(t,i,r){"use strict";function u(t,u){r.gListLevel++;t=t.replace(/\n{2,}$/,"\n")+"~0";var f=/\n[ \t]*\n(?!~0)/.test(t);return t=t.replace(/(\n)?(^[ \t]*)([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(~0|\2([*+-]|\d+[.])[ \t]+))/gm,function(t,u,e,o,s,h,c){c=c&&c.trim()!=="";var l=n.subParser("outdent")(s,i,r),a="";return h&&i.tasklists&&(a=' class="task-list-item" style="list-style-type: none;"',l=l.replace(/^[ \t]*\[(x|X| )?]/m,function(){var n='<input type="checkbox" disabled style="margin: 0px 0.35em 0.25em -1.6em; vertical-align: middle;"';return c&&(n+=" checked"),n+">"})),u||l.search(/\n{2,}/)>-1?(l=n.subParser("githubCodeBlocks")(l,i,r),l=n.subParser("blockGamut")(l,i,r)):(l=n.subParser("lists")(l,i,r),l=l.replace(/\n$/,""),l=f?n.subParser("paragraphs")(l,i,r):n.subParser("spanGamut")(l,i,r)),"\n<li"+a+">"+l+"<\/li>\n"}),t=t.replace(/~0/g,""),r.gListLevel--,u&&(t=t.replace(/\s+$/,"")),t}function e(n,t,i){var f=t==="ul"?/^ {0,2}\d+\.[ \t]/gm:/^ {0,2}[*+-][ \t]/gm,o=[],r="",e;if(n.search(f)!==-1)for(function s(n){var e=n.search(f);e!==-1?(r+="\n\n<"+t+">"+u(n.slice(0,e),!!i)+"<\/"+t+">\n\n",t=t==="ul"?"ol":"ul",f=t==="ul"?/^ {0,2}\d+\.[ \t]/gm:/^ {0,2}[*+-][ \t]/gm,s(n.slice(e))):r+="\n\n<"+t+">"+u(n,!!i)+"<\/"+t+">\n\n"}(n),e=0;e<o.length;++e);else r="\n\n<"+t+">"+u(n,!!i)+"<\/"+t+">\n\n";return r}t=r.converter._dispatch("lists.before",t,i,r)+"~0";var f=/^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm;return r.gListLevel?t=t.replace(f,function(n,t,i){var r=i.search(/[*+-]/g)>-1?"ul":"ol";return e(t,r,!0)}):(f=/(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,t=t.replace(f,function(n,t,i,r){var u=r.search(/[*+-]/g)>-1?"ul":"ol";return e(i,u)})),t=t.replace(/~0/,""),r.converter._dispatch("lists.after",t,i,r)});n.subParser("outdent",function(n){"use strict";return n=n.replace(/^(\t|[ ]{1,4})/gm,"~0"),n.replace(/~0/g,"")});n.subParser("paragraphs",function(t,i,r){"use strict";var u,f,v,h;t=r.converter._dispatch("paragraphs.before",t,i,r);t=t.replace(/^\n+/g,"");t=t.replace(/\n+$/g,"");var l=t.split(/\n{2,}/g),e=[],c=l.length;for(u=0;u<c;u++)f=l[u],f.search(/~(K|G)(\d+)\1/g)>=0?e.push(f):(f=n.subParser("spanGamut")(f,i,r),f=f.replace(/^([ \t]*)/g,"<p>"),f+="<\/p>",e.push(f));for(c=e.length,u=0;u<c;u++){for(var s="",o=e[u],a=!1;o.search(/~(K|G)(\d+)\1/)>=0;)v=RegExp.$1,h=RegExp.$2,s=v==="K"?r.gHtmlBlocks[h]:a?n.subParser("encodeCode")(r.ghCodeBlocks[h].text):r.ghCodeBlocks[h].codeblock,s=s.replace(/\$/g,"$$$$"),o=o.replace(/(\n\n)?~(K|G)\d+\2(\n\n)?/,s),/^<pre\b[^>]*>\s*<code\b[^>]*>/.test(o)&&(a=!0);e[u]=o}return t=e.join("\n\n"),t=t.replace(/^\n+/g,""),t=t.replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",t,i,r)});n.subParser("runExtension",function(n,t,i,r){"use strict";if(n.filter)t=n.filter(t,r.converter,i);else if(n.regex){var u=n.regex;!u instanceof RegExp&&(u=new RegExp(u,"g"));t=t.replace(u,n.replace)}return t});n.subParser("spanGamut",function(t,i,r){"use strict";return t=r.converter._dispatch("spanGamut.before",t,i,r),t=n.subParser("codeSpans")(t,i,r),t=n.subParser("escapeSpecialCharsWithinTagAttributes")(t,i,r),t=n.subParser("encodeBackslashEscapes")(t,i,r),t=n.subParser("images")(t,i,r),t=n.subParser("anchors")(t,i,r),t=n.subParser("autoLinks")(t,i,r),t=n.subParser("encodeAmpsAndAngles")(t,i,r),t=n.subParser("italicsAndBold")(t,i,r),t=n.subParser("strikethrough")(t,i,r),t=t.replace(/  +\n/g," <br />\n"),r.converter._dispatch("spanGamut.after",t,i,r)});n.subParser("strikethrough",function(n,t,i){"use strict";return t.strikethrough&&(n=i.converter._dispatch("strikethrough.before",n,t,i),n=n.replace(/(?:~T){2}([\s\S]+?)(?:~T){2}/g,"<del>$1<\/del>"),n=i.converter._dispatch("strikethrough.after",n,t,i)),n});n.subParser("stripBlankLines",function(n){"use strict";return n.replace(/^[ \t]+$/mg,"")});n.subParser("stripLinkDefinitions",function(t,i,r){"use strict";return t+="~0",t=t.replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*<?(\S+?)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=~0))/gm,function(t,u,f,e,o,s,h){return(u=u.toLowerCase(),r.gUrls[u]=n.subParser("encodeAmpsAndAngles")(f),s)?s+h:(h&&(r.gTitles[u]=h.replace(/"|'/g,"&quot;")),i.parseImgDimensions&&e&&o&&(r.gDimensions[u]={width:e,height:o}),"")}),t.replace(/~0/,"")});n.subParser("tables",function(t,i,r){"use strict";function u(n){return/^:[ \t]*--*$/.test(n)?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(n)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(n)?' style="text-align:center;"':""}function f(t,u){var f="";return t=t.trim(),i.tableHeaderId&&(f=' id="'+t.replace(/ /g,"_").toLowerCase()+'"'),t=n.subParser("spanGamut")(t,i,r),"<th"+f+u+">"+t+"<\/th>\n"}function e(t,u){var f=n.subParser("spanGamut")(t,i,r);return"<td"+u+">"+f+"<\/td>\n"}function o(n,t){for(var r='<table class="table">\n<thead>\n<tr>\n',f=n.length,u,i=0;i<f;++i)r+=n[i];for(r+="<\/tr>\n<\/thead>\n<tbody>\n",i=0;i<t.length;++i){for(r+="<tr>\n",u=0;u<f;++u)r+=t[i][u];r+="<\/tr>\n"}return r+"<\/tbody>\n<\/table>\n"}if(!i.tables)return t;return t=r.converter._dispatch("tables.before",t,i,r),t=t.replace(/^[ \t]{0,3}\|?.+\|.+\n[ \t]{0,3}\|?[ \t]*:?[ \t]*(?:-|=){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:-|=){2,}[\s\S]+?(?:\n\n|~0)/gm,function(t){for(var r=t.split("\n"),y,s,i=0;i<r.length;++i)/^[ \t]{0,3}\|/.test(r[i])&&(r[i]=r[i].replace(/^[ \t]{0,3}\|/,"")),/\|[ \t]*$/.test(r[i])&&(r[i]=r[i].replace(/\|[ \t]*$/,""));var l=r[0].split("|").map(function(n){return n.trim()}),a=r[1].split("|").map(function(n){return n.trim()}),c=[],v=[],h=[],p=[];for(r.shift(),r.shift(),i=0;i<r.length;++i)r[i].trim()!==""&&c.push(r[i].split("|").map(function(n){return n.trim()}));if(l.length<a.length)return t;for(i=0;i<a.length;++i)h.push(u(a[i]));for(i=0;i<l.length;++i)n.helper.isUndefined(h[i])&&(h[i]=""),v.push(f(l[i],h[i]));for(i=0;i<c.length;++i){for(y=[],s=0;s<v.length;++s)n.helper.isUndefined(c[i][s]),y.push(e(c[i][s],h[s]));p.push(y)}return o(v,p)}),r.converter._dispatch("tables.after",t,i,r)});n.subParser("unescapeSpecialChars",function(n){"use strict";return n.replace(/~E(\d+)E/g,function(n,t){var i=parseInt(t);return String.fromCharCode(i)})});h=this;typeof module!="undefined"&&module.exports?module.exports=n:typeof define=="function"&&define.amd?define(function(){"use strict";return n}):h.showdown=n}.call(this),function(n,t,i){function v(t,i){var u,f;if(n.isArray(t)){for(u=t.length-1;u>=0;u--)f=t[u],n.type(f)==="string"&&r.transports[f]||(i.log("Invalid transport: "+f+", removing it from the transports list."),t.splice(u,1));t.length===0&&(i.log("No transports remain within the specified transport array."),t=null)}else if(r.transports[t]||t==="auto"){if(t==="auto"&&r._.ieVersion<=8)return["longPolling"]}else i.log("Invalid transport: "+t.toString()+"."),t=null;return t}function y(n){return n==="http:"?80:n==="https:"?443:void 0}function h(n,t){return t.match(/:\d+$/)?t:t+":"+y(n)}function p(t,i){var u=this,r=[];u.tryBuffer=function(i){return t.state===n.signalR.connectionState.connecting?(r.push(i),!0):!1};u.drain=function(){if(t.state===n.signalR.connectionState.connected)while(r.length>0)i(r.shift())};u.clear=function(){r=[]}}var f={nojQuery:"jQuery was not found. Please ensure jQuery is referenced before the SignalR client JavaScript file.",noTransportOnInit:"No transport could be initialized successfully. Try specifying a different transport or none at all for auto initialization.",errorOnNegotiate:"Error during negotiation request.",stoppedWhileLoading:"The connection was stopped during page load.",stoppedWhileNegotiating:"The connection was stopped during the negotiate request.",errorParsingNegotiateResponse:"Error parsing negotiate response.",errorDuringStartRequest:"Error during start request. Stopping the connection.",stoppedDuringStartRequest:"The connection was stopped during the start request.",errorParsingStartResponse:"Error parsing start response: '{0}'. Stopping the connection.",invalidStartResponse:"Invalid start response: '{0}'. Stopping the connection.",protocolIncompatible:"You are using a version of the client that isn't compatible with the server. Client version {0}, server version {1}.",sendFailed:"Send failed.",parseFailed:"Failed at parsing response: {0}",longPollFailed:"Long polling request failed.",eventSourceFailedToConnect:"EventSource failed to connect.",eventSourceError:"Error raised by EventSource",webSocketClosed:"WebSocket closed.",pingServerFailedInvalidResponse:"Invalid ping response when pinging server: '{0}'.",pingServerFailed:"Failed to ping server.",pingServerFailedStatusCode:"Failed to ping server.  Server responded with status code {0}, stopping the connection.",pingServerFailedParse:"Failed to parse ping server response, stopping the connection.",noConnectionTransport:"Connection is in an invalid state, there is no transport active.",webSocketsInvalidState:"The Web Socket transport is in an invalid state, transitioning into reconnecting.",reconnectTimeout:"Couldn't reconnect within the configured timeout of {0} ms, disconnecting.",reconnectWindowTimeout:"The client has been inactive since {0} and it has exceeded the inactivity timeout of {1} ms. Stopping the connection."};if(typeof n!="function")throw new Error(f.nojQuery);var r,c,s=t.document.readyState==="complete",e=n(t),l="__Negotiate Aborted__",u={onStart:"onStart",onStarting:"onStarting",onReceived:"onReceived",onError:"onError",onConnectionSlow:"onConnectionSlow",onReconnecting:"onReconnecting",onReconnect:"onReconnect",onStateChanged:"onStateChanged",onDisconnect:"onDisconnect"},w=function(n,i){if(i!==!1){var r;typeof t.console!="undefined"&&(r="["+(new Date).toTimeString()+"] SignalR: "+n,t.console.debug?t.console.debug(r):t.console.log&&t.console.log(r))}},o=function(t,i,r){return i===t.state?(t.state=r,n(t).triggerHandler(u.onStateChanged,[{oldState:i,newState:r}]),!0):!1},b=function(n){return n.state===r.connectionState.disconnected},a=function(n){return n._.keepAliveData.activated&&n.transport.supportsKeepAlive(n)},k=function(i){var f,e;i._.configuredStopReconnectingTimeout||(e=function(t){var i=r._.format(r.resources.reconnectTimeout,t.disconnectTimeout);t.log(i);n(t).triggerHandler(u.onError,[r._.error(i,"TimeoutException")]);t.stop(!1,!1)},i.reconnecting(function(){var n=this;n.state===r.connectionState.reconnecting&&(f=t.setTimeout(function(){e(n)},n.disconnectTimeout))}),i.stateChanged(function(n){n.oldState===r.connectionState.reconnecting&&t.clearTimeout(f)}),i._.configuredStopReconnectingTimeout=!0)};r=function(n,t,i){return new r.fn.init(n,t,i)};r._={defaultContentType:"application/x-www-form-urlencoded; charset=UTF-8",ieVersion:function(){var i,n;return t.navigator.appName==="Microsoft Internet Explorer"&&(n=/MSIE ([0-9]+\.[0-9]+)/.exec(t.navigator.userAgent),n&&(i=t.parseFloat(n[1]))),i}(),error:function(n,t,i){var r=new Error(n);return r.source=t,typeof i!="undefined"&&(r.context=i),r},transportError:function(n,t,r,u){var f=this.error(n,r,u);return f.transport=t?t.name:i,f},format:function(){for(var t=arguments[0],n=0;n<arguments.length-1;n++)t=t.replace("{"+n+"}",arguments[n+1]);return t},firefoxMajorVersion:function(n){var t=n.match(/Firefox\/(\d+)/);return!t||!t.length||t.length<2?0:parseInt(t[1],10)},configurePingInterval:function(i){var f=i._.config,e=function(t){n(i).triggerHandler(u.onError,[t])};f&&!i._.pingIntervalId&&f.pingInterval&&(i._.pingIntervalId=t.setInterval(function(){r.transports._logic.pingServer(i).fail(e)},f.pingInterval))}};r.events=u;r.resources=f;r.ajaxDefaults={processData:!0,timeout:null,async:!0,global:!1,cache:!1};r.changeState=o;r.isDisconnecting=b;r.connectionState={connecting:0,connected:1,reconnecting:2,disconnected:4};r.hub={start:function(){throw new Error("SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/js'><\/script>.");}};e.load(function(){s=!0});r.fn=r.prototype={init:function(t,i,r){var f=n(this);this.url=t;this.qs=i;this.lastError=null;this._={keepAliveData:{},connectingMessageBuffer:new p(this,function(n){f.triggerHandler(u.onReceived,[n])}),lastMessageAt:(new Date).getTime(),lastActiveAt:(new Date).getTime(),beatInterval:5e3,beatHandle:null,totalTransportConnectTimeout:0};typeof r=="boolean"&&(this.logging=r)},_parseResponse:function(n){var t=this;return n?typeof n=="string"?t.json.parse(n):n:n},_originalJson:t.JSON,json:t.JSON,isCrossDomain:function(i,r){var u;return(i=n.trim(i),r=r||t.location,i.indexOf("http")!==0)?!1:(u=t.document.createElement("a"),u.href=i,u.protocol+h(u.protocol,u.host)!==r.protocol+h(r.protocol,r.host))},ajaxDataType:"text",contentType:"application/json; charset=UTF-8",logging:!1,state:r.connectionState.disconnected,clientProtocol:"1.5",reconnectDelay:2e3,transportConnectTimeout:0,disconnectTimeout:3e4,reconnectWindow:3e4,keepAliveWarnAt:2/3,start:function(i,h){var c=this,y={pingInterval:3e5,waitForPageLoad:!0,transport:"auto",jsonp:!1},d,p=c._deferral||n.Deferred(),w=t.document.createElement("a"),b,g;if(c.lastError=null,c._deferral=p,!c.json)throw new Error("SignalR: No JSON parser found. Please ensure json2.js is referenced before the SignalR.js file if you need to support clients without native JSON parsing support, e.g. IE<8.");if(n.type(i)==="function"?h=i:n.type(i)==="object"&&(n.extend(y,i),n.type(y.callback)==="function"&&(h=y.callback)),y.transport=v(y.transport,c),!y.transport)throw new Error("SignalR: Invalid transport(s) specified, aborting start.");return(c._.config=y,!s&&y.waitForPageLoad===!0)?(c._.deferredStartHandler=function(){c.start(i,h)},e.bind("load",c._.deferredStartHandler),p.promise()):c.state===r.connectionState.connecting?p.promise():o(c,r.connectionState.disconnected,r.connectionState.connecting)===!1?(p.resolve(c),p.promise()):(k(c),w.href=c.url,w.protocol&&w.protocol!==":"?(c.protocol=w.protocol,c.host=w.host):(c.protocol=t.document.location.protocol,c.host=w.host||t.document.location.host),c.baseUrl=c.protocol+"//"+c.host,c.wsProtocol=c.protocol==="https:"?"wss://":"ws://",y.transport==="auto"&&y.jsonp===!0&&(y.transport="longPolling"),c.url.indexOf("//")===0&&(c.url=t.location.protocol+c.url,c.log("Protocol relative URL detected, normalizing it to '"+c.url+"'.")),this.isCrossDomain(c.url)&&(c.log("Auto detected cross domain url."),y.transport==="auto"&&(y.transport=["webSockets","serverSentEvents","longPolling"]),typeof y.withCredentials=="undefined"&&(y.withCredentials=!0),y.jsonp||(y.jsonp=!n.support.cors,y.jsonp&&c.log("Using jsonp because this browser doesn't support CORS.")),c.contentType=r._.defaultContentType),c.withCredentials=y.withCredentials,c.ajaxDataType=y.jsonp?"jsonp":"text",n(c).bind(u.onStart,function(){n.type(h)==="function"&&h.call(c);p.resolve(c)}),c._.initHandler=r.transports._logic.initHandler(c),d=function(i,s){var l=r._.error(f.noTransportOnInit);if(s=s||0,s>=i.length){s===0?c.log("No transports supported by the server were selected."):s===1?c.log("No fallback transports were selected."):c.log("Fallback transports exhausted.");n(c).triggerHandler(u.onError,[l]);p.reject(l);c.stop();return}if(c.state!==r.connectionState.disconnected){var y=i[s],h=r.transports[y],v=function(){d(i,s+1)};c.transport=h;try{c._.initHandler.start(h,function(){var i=r._.firefoxMajorVersion(t.navigator.userAgent)>=11,f=!!c.withCredentials&&i;c.log("The start request succeeded. Transitioning to the connected state.");a(c)&&r.transports._logic.monitorKeepAlive(c);r.transports._logic.startHeartbeat(c);r._.configurePingInterval(c);o(c,r.connectionState.connecting,r.connectionState.connected)||c.log("WARNING! The connection was not in the connecting state.");c._.connectingMessageBuffer.drain();n(c).triggerHandler(u.onStart);e.bind("unload",function(){c.log("Window unloading, stopping the connection.");c.stop(f)});i&&e.bind("beforeunload",function(){t.setTimeout(function(){c.stop(f)},0)})},v)}catch(w){c.log(h.name+" transport threw '"+w.message+"' when attempting to start.");v()}}},b=c.url+"/negotiate",g=function(t,i){var e=r._.error(f.errorOnNegotiate,t,i._.negotiateRequest);n(i).triggerHandler(u.onError,e);p.reject(e);i.stop()},n(c).triggerHandler(u.onStarting),b=r.transports._logic.prepareQueryString(c,b),c.log("Negotiating with '"+b+"'."),c._.negotiateRequest=r.transports._logic.ajax(c,{url:b,error:function(n,t){t!==l?g(n,c):p.reject(r._.error(f.stoppedWhileNegotiating,null,c._.negotiateRequest))},success:function(t){var i,e,h,o=[],s=[];try{i=c._parseResponse(t)}catch(l){g(r._.error(f.errorParsingNegotiateResponse,l),c);return}if(e=c._.keepAliveData,c.appRelativeUrl=i.Url,c.id=i.ConnectionId,c.token=i.ConnectionToken,c.webSocketServerUrl=i.WebSocketServerUrl,c._.pollTimeout=i.ConnectionTimeout*1e3+1e4,c.disconnectTimeout=i.DisconnectTimeout*1e3,c._.totalTransportConnectTimeout=c.transportConnectTimeout+i.TransportConnectTimeout*1e3,i.KeepAliveTimeout?(e.activated=!0,e.timeout=i.KeepAliveTimeout*1e3,e.timeoutWarning=e.timeout*c.keepAliveWarnAt,c._.beatInterval=(e.timeout-e.timeoutWarning)/3):e.activated=!1,c.reconnectWindow=c.disconnectTimeout+(e.timeout||0),!i.ProtocolVersion||i.ProtocolVersion!==c.clientProtocol){h=r._.error(r._.format(f.protocolIncompatible,c.clientProtocol,i.ProtocolVersion));n(c).triggerHandler(u.onError,[h]);p.reject(h);return}n.each(r.transports,function(n){if(n.indexOf("_")===0||n==="webSockets"&&!i.TryWebSockets)return!0;s.push(n)});n.isArray(y.transport)?n.each(y.transport,function(t,i){n.inArray(i,s)>=0&&o.push(i)}):y.transport==="auto"?o=s:n.inArray(y.transport,s)>=0&&o.push(y.transport);d(o)}}),p.promise())},starting:function(t){var i=this;return n(i).bind(u.onStarting,function(){t.call(i)}),i},send:function(n){var t=this;if(t.state===r.connectionState.disconnected)throw new Error("SignalR: Connection must be started before data can be sent. Call .start() before .send()");if(t.state===r.connectionState.connecting)throw new Error("SignalR: Connection has not been fully initialized. Use .start().done() or .start().fail() to run logic after the connection has started.");return t.transport.send(t,n),t},received:function(t){var i=this;return n(i).bind(u.onReceived,function(n,r){t.call(i,r)}),i},stateChanged:function(t){var i=this;return n(i).bind(u.onStateChanged,function(n,r){t.call(i,r)}),i},error:function(t){var i=this;return n(i).bind(u.onError,function(n,r,u){i.lastError=r;t.call(i,r,u)}),i},disconnected:function(t){var i=this;return n(i).bind(u.onDisconnect,function(){t.call(i)}),i},connectionSlow:function(t){var i=this;return n(i).bind(u.onConnectionSlow,function(){t.call(i)}),i},reconnecting:function(t){var i=this;return n(i).bind(u.onReconnecting,function(){t.call(i)}),i},reconnected:function(t){var i=this;return n(i).bind(u.onReconnect,function(){t.call(i)}),i},stop:function(i,h){var c=this,v=c._deferral;if(c._.deferredStartHandler&&e.unbind("load",c._.deferredStartHandler),delete c._.config,delete c._.deferredStartHandler,!s&&(!c._.config||c._.config.waitForPageLoad===!0)){c.log("Stopping connection prior to negotiate.");v&&v.reject(r._.error(f.stoppedWhileLoading));return}if(c.state!==r.connectionState.disconnected)return c.log("Stopping connection."),o(c,c.state,r.connectionState.disconnected),t.clearTimeout(c._.beatHandle),t.clearInterval(c._.pingIntervalId),c.transport&&(c.transport.stop(c),h!==!1&&c.transport.abort(c,i),a(c)&&r.transports._logic.stopMonitoringKeepAlive(c),c.transport=null),c._.negotiateRequest&&(c._.negotiateRequest.abort(l),delete c._.negotiateRequest),c._.initHandler&&c._.initHandler.stop(),n(c).triggerHandler(u.onDisconnect),delete c._deferral,delete c.messageId,delete c.groupsToken,delete c.id,delete c._.pingIntervalId,delete c._.lastMessageAt,delete c._.lastActiveAt,c._.connectingMessageBuffer.clear(),c},log:function(n){w(n,this.logging)}};r.fn.init.prototype=r.fn;r.noConflict=function(){return n.connection===r&&(n.connection=c),r};n.connection&&(c=n.connection);n.connection=n.signalR=r}(window.jQuery,window),function(n,t,i){function o(n){n._.keepAliveData.monitoring&&c(n);u.markActive(n)&&(n._.beatHandle=t.setTimeout(function(){o(n)},n._.beatInterval))}function c(t){var i=t._.keepAliveData,u;t.state===r.connectionState.connected&&(u=(new Date).getTime()-t._.lastMessageAt,u>=i.timeout?(t.log("Keep alive timed out.  Notifying transport that connection has been lost."),t.transport.lostConnection(t)):u>=i.timeoutWarning?i.userNotified||(t.log("Keep alive has been missed, connection may be dead/slow."),n(t).triggerHandler(f.onConnectionSlow),i.userNotified=!0):i.userNotified=!1)}function e(n,t){var i=n.url+t;return n.transport&&(i+="?transport="+n.transport.name),u.prepareQueryString(n,i)}function s(n){this.connection=n;this.startRequested=!1;this.startCompleted=!1;this.connectionStopped=!1}var r=n.signalR,f=n.signalR.events,l=n.signalR.changeState,h="__Start Aborted__",u;r.transports={};s.prototype={start:function(n,r,u){var f=this,e=f.connection,o=!1;if(f.startRequested||f.connectionStopped){e.log("WARNING! "+n.name+" transport cannot be started. Initialization ongoing or completed.");return}e.log(n.name+" transport starting.");f.transportTimeoutHandle=t.setTimeout(function(){o||(o=!0,e.log(n.name+" transport timed out when trying to connect."),f.transportFailed(n,i,u))},e._.totalTransportConnectTimeout);n.start(e,function(){o||f.initReceived(n,r)},function(t){return o||(o=!0,f.transportFailed(n,t,u)),!f.startCompleted||f.connectionStopped})},stop:function(){this.connectionStopped=!0;t.clearTimeout(this.transportTimeoutHandle);r.transports._logic.tryAbortStartRequest(this.connection)},initReceived:function(n,i){var u=this,f=u.connection;if(u.startRequested){f.log("WARNING! The client received multiple init messages.");return}u.connectionStopped||(u.startRequested=!0,t.clearTimeout(u.transportTimeoutHandle),f.log(n.name+" transport connected. Initiating start request."),r.transports._logic.ajaxStart(f,function(){u.startCompleted=!0;i()}))},transportFailed:function(i,u,e){var o=this.connection,h=o._deferral,s;this.connectionStopped||(t.clearTimeout(this.transportTimeoutHandle),this.startRequested?this.startCompleted||(s=r._.error(r.resources.errorDuringStartRequest,u),o.log(i.name+" transport failed during the start request. Stopping the connection."),n(o).triggerHandler(f.onError,[s]),h&&h.reject(s),o.stop()):(i.stop(o),o.log(i.name+" transport failed to connect. Attempting to fall back."),e()))}};u=r.transports._logic={ajax:function(t,i){return n.ajax(n.extend(!0,{},n.signalR.ajaxDefaults,{type:"GET",data:{},xhrFields:{withCredentials:t.withCredentials},contentType:t.contentType,dataType:t.ajaxDataType},i))},pingServer:function(t){var e,f,i=n.Deferred();return t.transport?(e=t.url+"/ping",e=u.addQs(e,t.qs),f=u.ajax(t,{url:e,success:function(n){var u;try{u=t._parseResponse(n)}catch(e){i.reject(r._.transportError(r.resources.pingServerFailedParse,t.transport,e,f));t.stop();return}u.Response==="pong"?i.resolve():i.reject(r._.transportError(r._.format(r.resources.pingServerFailedInvalidResponse,n),t.transport,null,f))},error:function(n){n.status===401||n.status===403?(i.reject(r._.transportError(r._.format(r.resources.pingServerFailedStatusCode,n.status),t.transport,n,f)),t.stop()):i.reject(r._.transportError(r.resources.pingServerFailed,t.transport,n,f))}})):i.reject(r._.transportError(r.resources.noConnectionTransport,t.transport)),i.promise()},prepareQueryString:function(n,i){var r;return r=u.addQs(i,"clientProtocol="+n.clientProtocol),r=u.addQs(r,n.qs),n.token&&(r+="&connectionToken="+t.encodeURIComponent(n.token)),n.data&&(r+="&connectionData="+t.encodeURIComponent(n.data)),r},addQs:function(t,i){var r=t.indexOf("?")!==-1?"&":"?",u;if(!i)return t;if(typeof i=="object")return t+r+n.param(i);if(typeof i=="string")return u=i.charAt(0),(u==="?"||u==="&")&&(r=""),t+r+i;throw new Error("Query string property must be either a string or object.");},getUrl:function(n,i,r,f,e){var h=i==="webSockets"?"":n.baseUrl,o=h+n.appRelativeUrl,s="transport="+i;return!e&&n.groupsToken&&(s+="&groupsToken="+t.encodeURIComponent(n.groupsToken)),r?(o+=f?"/poll":"/reconnect",!e&&n.messageId&&(s+="&messageId="+t.encodeURIComponent(n.messageId))):o+="/connect",o+="?"+s,o=u.prepareQueryString(n,o),e||(o+="&tid="+Math.floor(Math.random()*11)),o},maximizePersistentResponse:function(n){return{MessageId:n.C,Messages:n.M,Initialized:typeof n.S!="undefined"?!0:!1,ShouldReconnect:typeof n.T!="undefined"?!0:!1,LongPollDelay:n.L,GroupsToken:n.G}},updateGroups:function(n,t){t&&(n.groupsToken=t)},stringifySend:function(n,t){return typeof t=="string"||typeof t=="undefined"||t===null?t:n.json.stringify(t)},ajaxSend:function(t,i){var h=u.stringifySend(t,i),c=e(t,"/send"),o,s=function(t,u){n(u).triggerHandler(f.onError,[r._.transportError(r.resources.sendFailed,u.transport,t,o),i])};return o=u.ajax(t,{url:c,type:t.ajaxDataType==="jsonp"?"GET":"POST",contentType:r._.defaultContentType,data:{data:h},success:function(n){var i;if(n){try{i=t._parseResponse(n)}catch(r){s(r,t);t.stop();return}u.triggerReceived(t,i)}},error:function(n,i){i!=="abort"&&i!=="parsererror"&&s(n,t)}})},ajaxAbort:function(n,t){if(typeof n.transport!="undefined"){t=typeof t=="undefined"?!0:t;var i=e(n,"/abort");u.ajax(n,{url:i,async:t,timeout:1e3,type:"POST"});n.log("Fired ajax abort async = "+t+".")}},ajaxStart:function(t,i){var s=function(n){var i=t._deferral;i&&i.reject(n)},o=function(i){t.log("The start request failed. Stopping the connection.");n(t).triggerHandler(f.onError,[i]);s(i);t.stop()};t._.startRequest=u.ajax(t,{url:e(t,"/start"),success:function(n,u,f){var e;try{e=t._parseResponse(n)}catch(s){o(r._.error(r._.format(r.resources.errorParsingStartResponse,n),s,f));return}e.Response==="started"?i():o(r._.error(r._.format(r.resources.invalidStartResponse,n),null,f))},error:function(n,i,u){i!==h?o(r._.error(r.resources.errorDuringStartRequest,u,n)):(t.log("The start request aborted because connection.stop() was called."),s(r._.error(r.resources.stoppedDuringStartRequest,null,n)))}})},tryAbortStartRequest:function(n){n._.startRequest&&(n._.startRequest.abort(h),delete n._.startRequest)},tryInitialize:function(n,t){n.Initialized&&t()},triggerReceived:function(t,i){t._.connectingMessageBuffer.tryBuffer(i)||n(t).triggerHandler(f.onReceived,[i])},processMessages:function(t,i,r){var f;u.markLastMessage(t);i&&(f=u.maximizePersistentResponse(i),u.updateGroups(t,f.GroupsToken),f.MessageId&&(t.messageId=f.MessageId),f.Messages&&(n.each(f.Messages,function(n,i){u.triggerReceived(t,i)}),u.tryInitialize(f,r)))},monitorKeepAlive:function(t){var i=t._.keepAliveData;i.monitoring?t.log("Tried to monitor keep alive but it's already being monitored."):(i.monitoring=!0,u.markLastMessage(t),t._.keepAliveData.reconnectKeepAliveUpdate=function(){u.markLastMessage(t)},n(t).bind(f.onReconnect,t._.keepAliveData.reconnectKeepAliveUpdate),t.log("Now monitoring keep alive with a warning timeout of "+i.timeoutWarning+", keep alive timeout of "+i.timeout+" and disconnecting timeout of "+t.disconnectTimeout))},stopMonitoringKeepAlive:function(t){var i=t._.keepAliveData;i.monitoring&&(i.monitoring=!1,n(t).unbind(f.onReconnect,t._.keepAliveData.reconnectKeepAliveUpdate),t._.keepAliveData={},t.log("Stopping the monitoring of the keep alive."))},startHeartbeat:function(n){n._.lastActiveAt=(new Date).getTime();o(n)},markLastMessage:function(n){n._.lastMessageAt=(new Date).getTime()},markActive:function(n){return u.verifyLastActive(n)?(n._.lastActiveAt=(new Date).getTime(),!0):!1},isConnectedOrReconnecting:function(n){return n.state===r.connectionState.connected||n.state===r.connectionState.reconnecting},ensureReconnectingState:function(t){return l(t,r.connectionState.connected,r.connectionState.reconnecting)===!0&&n(t).triggerHandler(f.onReconnecting),t.state===r.connectionState.reconnecting},clearReconnectTimeout:function(n){n&&n._.reconnectTimeout&&(t.clearTimeout(n._.reconnectTimeout),delete n._.reconnectTimeout)},verifyLastActive:function(t){if((new Date).getTime()-t._.lastActiveAt>=t.reconnectWindow){var i=r._.format(r.resources.reconnectWindowTimeout,new Date(t._.lastActiveAt),t.reconnectWindow);return t.log(i),n(t).triggerHandler(f.onError,[r._.error(i,"TimeoutException")]),t.stop(!1,!1),!1}return!0},reconnect:function(n,i){var f=r.transports[i];if(u.isConnectedOrReconnecting(n)&&!n._.reconnectTimeout){if(!u.verifyLastActive(n))return;n._.reconnectTimeout=t.setTimeout(function(){u.verifyLastActive(n)&&(f.stop(n),u.ensureReconnectingState(n)&&(n.log(i+" reconnecting."),f.start(n)))},n.reconnectDelay)}},handleParseFailure:function(t,i,u,e,o){var s=r._.transportError(r._.format(r.resources.parseFailed,i),t.transport,u,o);e&&e(s)?t.log("Failed to parse server response while attempting to connect."):(n(t).triggerHandler(f.onError,[s]),t.stop())},initHandler:function(n){return new s(n)},foreverFrame:{count:0,connections:{}}}}(window.jQuery,window),function(n,t){var r=n.signalR,u=n.signalR.events,f=n.signalR.changeState,i=r.transports._logic;r.transports.webSockets={name:"webSockets",supportsKeepAlive:function(){return!0},send:function(t,f){var e=i.stringifySend(t,f);try{t.socket.send(e)}catch(o){n(t).triggerHandler(u.onError,[r._.transportError(r.resources.webSocketsInvalidState,t.transport,o,t.socket),f])}},start:function(e,o,s){var h,c=!1,l=this,a=!o,v=n(e);if(!t.WebSocket){s();return}e.socket||(h=e.webSocketServerUrl?e.webSocketServerUrl:e.wsProtocol+e.host,h+=i.getUrl(e,this.name,a),e.log("Connecting to websocket endpoint '"+h+"'."),e.socket=new t.WebSocket(h),e.socket.onopen=function(){c=!0;e.log("Websocket opened.");i.clearReconnectTimeout(e);f(e,r.connectionState.reconnecting,r.connectionState.connected)===!0&&v.triggerHandler(u.onReconnect)},e.socket.onclose=function(t){var i;this===e.socket&&(c&&typeof t.wasClean!="undefined"&&t.wasClean===!1?(i=r._.transportError(r.resources.webSocketClosed,e.transport,t),e.log("Unclean disconnect from websocket: "+(t.reason||"[no reason given]."))):e.log("Websocket closed."),s&&s(i)||(i&&n(e).triggerHandler(u.onError,[i]),l.reconnect(e)))},e.socket.onmessage=function(t){var r;try{r=e._parseResponse(t.data)}catch(u){i.handleParseFailure(e,t.data,u,s,t);return}r&&(n.isEmptyObject(r)||r.M?i.processMessages(e,r,o):i.triggerReceived(e,r))})},reconnect:function(n){i.reconnect(n,this.name)},lostConnection:function(n){this.reconnect(n)},stop:function(n){i.clearReconnectTimeout(n);n.socket&&(n.log("Closing the Websocket."),n.socket.close(),n.socket=null)},abort:function(n,t){i.ajaxAbort(n,t)}}}(window.jQuery,window),function(n,t){var i=n.signalR,u=n.signalR.events,e=n.signalR.changeState,r=i.transports._logic,f=function(n){t.clearTimeout(n._.reconnectAttemptTimeoutHandle);delete n._.reconnectAttemptTimeoutHandle};i.transports.serverSentEvents={name:"serverSentEvents",supportsKeepAlive:function(){return!0},timeOut:3e3,start:function(o,s,h){var c=this,l=!1,a=n(o),v=!s,y;if(o.eventSource&&(o.log("The connection already has an event source. Stopping it."),o.stop()),!t.EventSource){h&&(o.log("This browser doesn't support SSE."),h());return}y=r.getUrl(o,this.name,v);try{o.log("Attempting to connect to SSE endpoint '"+y+"'.");o.eventSource=new t.EventSource(y,{withCredentials:o.withCredentials})}catch(p){o.log("EventSource failed trying to connect with error "+p.Message+".");h?h():(a.triggerHandler(u.onError,[i._.transportError(i.resources.eventSourceFailedToConnect,o.transport,p)]),v&&c.reconnect(o));return}v&&(o._.reconnectAttemptTimeoutHandle=t.setTimeout(function(){l===!1&&o.eventSource.readyState!==t.EventSource.OPEN&&c.reconnect(o)},c.timeOut));o.eventSource.addEventListener("open",function(){o.log("EventSource connected.");f(o);r.clearReconnectTimeout(o);l===!1&&(l=!0,e(o,i.connectionState.reconnecting,i.connectionState.connected)===!0&&a.triggerHandler(u.onReconnect))},!1);o.eventSource.addEventListener("message",function(n){var t;if(n.data!=="initialized"){try{t=o._parseResponse(n.data)}catch(i){r.handleParseFailure(o,n.data,i,h,n);return}r.processMessages(o,t,s)}},!1);o.eventSource.addEventListener("error",function(n){var r=i._.transportError(i.resources.eventSourceError,o.transport,n);this===o.eventSource&&(h&&h(r)||(o.log("EventSource readyState: "+o.eventSource.readyState+"."),n.eventPhase===t.EventSource.CLOSED?(o.log("EventSource reconnecting due to the server connection ending."),c.reconnect(o)):(o.log("EventSource error."),a.triggerHandler(u.onError,[r]))))},!1)},reconnect:function(n){r.reconnect(n,this.name)},lostConnection:function(n){this.reconnect(n)},send:function(n,t){r.ajaxSend(n,t)},stop:function(n){f(n);r.clearReconnectTimeout(n);n&&n.eventSource&&(n.log("EventSource calling close()."),n.eventSource.close(),n.eventSource=null,delete n.eventSource)},abort:function(n,t){r.ajaxAbort(n,t)}}}(window.jQuery,window),function(n,t){var r=n.signalR,e=n.signalR.events,o=n.signalR.changeState,i=r.transports._logic,u=function(){var n=t.document.createElement("iframe");return n.setAttribute("style","position:absolute;top:0;left:0;width:0;height:0;visibility:hidden;"),n},f=function(){var i=null,f=1e3,n=0;return{prevent:function(){r._.ieVersion<=8&&(n===0&&(i=t.setInterval(function(){var n=u();t.document.body.appendChild(n);t.document.body.removeChild(n);n=null},f)),n++)},cancel:function(){n===1&&t.clearInterval(i);n>0&&n--}}}();r.transports.foreverFrame={name:"foreverFrame",supportsKeepAlive:function(){return!0},iframeClearThreshold:50,start:function(n,r,e){var l=this,s=i.foreverFrame.count+=1,h,o=u(),c=function(){n.log("Forever frame iframe finished loading and is no longer receiving messages.");e&&e()||l.reconnect(n)};if(t.EventSource){e&&(n.log("Forever Frame is not supported by SignalR on browsers with SSE support."),e());return}o.setAttribute("data-signalr-connection-id",n.id);f.prevent();h=i.getUrl(n,this.name);h+="&frameId="+s;t.document.documentElement.appendChild(o);n.log("Binding to iframe's load event.");o.addEventListener?o.addEventListener("load",c,!1):o.attachEvent&&o.attachEvent("onload",c);o.src=h;i.foreverFrame.connections[s]=n;n.frame=o;n.frameId=s;r&&(n.onSuccess=function(){n.log("Iframe transport started.");r()})},reconnect:function(n){var r=this;i.isConnectedOrReconnecting(n)&&i.verifyLastActive(n)&&t.setTimeout(function(){if(i.verifyLastActive(n)&&n.frame&&i.ensureReconnectingState(n)){var u=n.frame,t=i.getUrl(n,r.name,!0)+"&frameId="+n.frameId;n.log("Updating iframe src to '"+t+"'.");u.src=t}},n.reconnectDelay)},lostConnection:function(n){this.reconnect(n)},send:function(n,t){i.ajaxSend(n,t)},receive:function(t,u){var f,e,o;if(t.json!==t._originalJson&&(u=t._originalJson.stringify(u)),o=t._parseResponse(u),i.processMessages(t,o,t.onSuccess),t.state===n.signalR.connectionState.connected&&(t.frameMessageCount=(t.frameMessageCount||0)+1,t.frameMessageCount>r.transports.foreverFrame.iframeClearThreshold&&(t.frameMessageCount=0,f=t.frame.contentWindow||t.frame.contentDocument,f&&f.document&&f.document.body)))for(e=f.document.body;e.firstChild;)e.removeChild(e.firstChild)},stop:function(n){var r=null;if(f.cancel(),n.frame){if(n.frame.stop)n.frame.stop();else try{r=n.frame.contentWindow||n.frame.contentDocument;r.document&&r.document.execCommand&&r.document.execCommand("Stop")}catch(u){n.log("Error occured when stopping foreverFrame transport. Message = "+u.message+".")}n.frame.parentNode===t.document.body&&t.document.body.removeChild(n.frame);delete i.foreverFrame.connections[n.frameId];n.frame=null;n.frameId=null;delete n.frame;delete n.frameId;delete n.onSuccess;delete n.frameMessageCount;n.log("Stopping forever frame.")}},abort:function(n,t){i.ajaxAbort(n,t)},getConnection:function(n){return i.foreverFrame.connections[n]},started:function(t){o(t,r.connectionState.reconnecting,r.connectionState.connected)===!0&&n(t).triggerHandler(e.onReconnect)}}}(window.jQuery,window),function(n,t){var r=n.signalR,u=n.signalR.events,e=n.signalR.changeState,f=n.signalR.isDisconnecting,i=r.transports._logic;r.transports.longPolling={name:"longPolling",supportsKeepAlive:function(){return!1},reconnectDelay:3e3,start:function(o,s,h){var a=this,v=function(){v=n.noop;o.log("LongPolling connected.");s()},y=function(n){return h(n)?(o.log("LongPolling failed to connect."),!0):!1},c=o._,l=0,p=function(i){t.clearTimeout(c.reconnectTimeoutId);c.reconnectTimeoutId=null;e(i,r.connectionState.reconnecting,r.connectionState.connected)===!0&&(i.log("Raising the reconnect event"),n(i).triggerHandler(u.onReconnect))},w=36e5;o.pollXhr&&(o.log("Polling xhr requests already exists, aborting."),o.stop());o.messageId=null;c.reconnectTimeoutId=null;c.pollTimeoutId=t.setTimeout(function(){(function e(s,h){var g=s.messageId,nt=g===null,k=!nt,tt=!h,d=i.getUrl(s,a.name,k,tt,!0),b={};(s.messageId&&(b.messageId=s.messageId),s.groupsToken&&(b.groupsToken=s.groupsToken),f(s)!==!0)&&(o.log("Opening long polling request to '"+d+"'."),s.pollXhr=i.ajax(o,{xhrFields:{onprogress:function(){i.markLastMessage(o)}},url:d,type:"POST",contentType:r._.defaultContentType,data:b,timeout:o._.pollTimeout,success:function(r){var h,w=0,u,a;o.log("Long poll complete.");l=0;try{h=o._parseResponse(r)}catch(b){i.handleParseFailure(s,r,b,y,s.pollXhr);return}(c.reconnectTimeoutId!==null&&p(s),h&&(u=i.maximizePersistentResponse(h)),i.processMessages(s,h,v),u&&n.type(u.LongPollDelay)==="number"&&(w=u.LongPollDelay),f(s)!==!0)&&(a=u&&u.ShouldReconnect,!a||i.ensureReconnectingState(s))&&(w>0?c.pollTimeoutId=t.setTimeout(function(){e(s,a)},w):e(s,a))},error:function(f,h){var v=r._.transportError(r.resources.longPollFailed,o.transport,f,s.pollXhr);if(t.clearTimeout(c.reconnectTimeoutId),c.reconnectTimeoutId=null,h==="abort"){o.log("Aborted xhr request.");return}if(!y(v)){if(l++,o.state!==r.connectionState.reconnecting&&(o.log("An error occurred using longPolling. Status = "+h+".  Response = "+f.responseText+"."),n(s).triggerHandler(u.onError,[v])),(o.state===r.connectionState.connected||o.state===r.connectionState.reconnecting)&&!i.verifyLastActive(o))return;if(!i.ensureReconnectingState(s))return;c.pollTimeoutId=t.setTimeout(function(){e(s,!0)},a.reconnectDelay)}}}),k&&h===!0&&(c.reconnectTimeoutId=t.setTimeout(function(){p(s)},Math.min(1e3*(Math.pow(2,l)-1),w))))})(o)},250)},lostConnection:function(n){n.pollXhr&&n.pollXhr.abort("lostConnection")},send:function(n,t){i.ajaxSend(n,t)},stop:function(n){t.clearTimeout(n._.pollTimeoutId);t.clearTimeout(n._.reconnectTimeoutId);delete n._.pollTimeoutId;delete n._.reconnectTimeoutId;n.pollXhr&&(n.pollXhr.abort(),n.pollXhr=null,delete n.pollXhr)},abort:function(n,t){i.ajaxAbort(n,t)}}}(window.jQuery,window),function(n){function r(n){return n+s}function e(n,t,i){for(var f=n.length,u=[],r=0;r<f;r+=1)n.hasOwnProperty(r)&&(u[r]=t.call(i,n[r],r,n));return u}function o(t){return n.isFunction(t)?null:n.type(t)==="undefined"?null:t}function u(n){for(var t in n)if(n.hasOwnProperty(t))return!0;return!1}function f(n,t){var i=n._.invocationCallbacks,r,f;u(i)&&n.log("Clearing hub invocation callbacks with error: "+t+".");n._.invocationCallbackId=0;delete n._.invocationCallbacks;n._.invocationCallbacks={};for(f in i)r=i[f],r.method.call(r.scope,{E:t})}function i(n,t){return new i.fn.init(n,t)}function t(i,r){var u={qs:null,logging:!1,useDefaultPath:!0};return n.extend(u,r),(!i||u.useDefaultPath)&&(i=(i||"")+"/signalr"),new t.fn.init(i,u)}var s=".hubProxy",h=n.signalR;i.fn=i.prototype={init:function(n,t){this.state={};this.connection=n;this.hubName=t;this._={callbackMap:{}}},constructor:i,hasSubscriptions:function(){return u(this._.callbackMap)},on:function(t,i){var u=this,f=u._.callbackMap;return t=t.toLowerCase(),f[t]||(f[t]={}),f[t][i]=function(n,t){i.apply(u,t)},n(u).bind(r(t),f[t][i]),u},off:function(t,i){var e=this,o=e._.callbackMap,f;return t=t.toLowerCase(),f=o[t],f&&(f[i]?(n(e).unbind(r(t),f[i]),delete f[i],u(f)||delete o[t]):i||(n(e).unbind(r(t)),delete o[t])),e},invoke:function(t){var i=this,r=i.connection,s=n.makeArray(arguments).slice(1),c=e(s,o),f={H:i.hubName,M:t,A:c,I:r._.invocationCallbackId},u=n.Deferred(),l=function(f){var e=i._maximizeHubResponse(f),s,o;n.extend(i.state,e.State);e.Progress?u.notifyWith?u.notifyWith(i,[e.Progress.Data]):r._.progressjQueryVersionLogged||(r.log("A hub method invocation progress update was received but the version of jQuery in use ("+n.prototype.jquery+") does not support progress updates. Upgrade to jQuery 1.7+ to receive progress notifications."),r._.progressjQueryVersionLogged=!0):e.Error?(e.StackTrace&&r.log(e.Error+"\n"+e.StackTrace+"."),s=e.IsHubException?"HubException":"Exception",o=h._.error(e.Error,s),o.data=e.ErrorData,r.log(i.hubName+"."+t+" failed to execute. Error: "+o.message),u.rejectWith(i,[o])):(r.log("Invoked "+i.hubName+"."+t),u.resolveWith(i,[e.Result]))};return r._.invocationCallbacks[r._.invocationCallbackId.toString()]={scope:i,method:l},r._.invocationCallbackId+=1,n.isEmptyObject(i.state)||(f.S=i.state),r.log("Invoking "+i.hubName+"."+t),r.send(f),u.promise()},_maximizeHubResponse:function(n){return{State:n.S,Result:n.R,Progress:n.P?{Id:n.P.I,Data:n.P.D}:null,Id:n.I,IsHubException:n.H,Error:n.E,StackTrace:n.T,ErrorData:n.D}}};i.fn.init.prototype=i.fn;t.fn=t.prototype=n.connection();t.fn.init=function(t,i){var e={qs:null,logging:!1,useDefaultPath:!0},u=this;n.extend(e,i);n.signalR.fn.init.call(u,t,e.qs,e.logging);u.proxies={};u._.invocationCallbackId=0;u._.invocationCallbacks={};u.received(function(t){var f,o,e,i,s,h;t&&(typeof t.P!="undefined"?(e=t.P.I.toString(),i=u._.invocationCallbacks[e],i&&i.method.call(i.scope,t)):typeof t.I!="undefined"?(e=t.I.toString(),i=u._.invocationCallbacks[e],i&&(u._.invocationCallbacks[e]=null,delete u._.invocationCallbacks[e],i.method.call(i.scope,t))):(f=this._maximizeClientHubInvocation(t),u.log("Triggering client hub event '"+f.Method+"' on hub '"+f.Hub+"'."),s=f.Hub.toLowerCase(),h=f.Method.toLowerCase(),o=this.proxies[s],n.extend(o.state,f.State),n(o).triggerHandler(r(h),[f.Args])))});u.error(function(n,t){var i,r;t&&(i=t.I,r=u._.invocationCallbacks[i],r&&(u._.invocationCallbacks[i]=null,delete u._.invocationCallbacks[i],r.method.call(r.scope,{E:n})))});u.reconnecting(function(){u.transport&&u.transport.name==="webSockets"&&f(u,"Connection started reconnecting before invocation result was received.")});u.disconnected(function(){f(u,"Connection was disconnected before invocation result was received.")})};t.fn._maximizeClientHubInvocation=function(n){return{Hub:n.H,Method:n.M,Args:n.A,State:n.S}};t.fn._registerSubscribedHubs=function(){var t=this;t._subscribedToHubs||(t._subscribedToHubs=!0,t.starting(function(){var i=[];n.each(t.proxies,function(n){this.hasSubscriptions()&&(i.push({name:n}),t.log("Client subscribed to hub '"+n+"'."))});i.length===0&&t.log("No hubs have been subscribed to.  The client will not receive data from hubs.  To fix, declare at least one client side function prior to connection start for each hub you wish to subscribe to.");t.data=t.json.stringify(i)}))};t.fn.createHubProxy=function(n){n=n.toLowerCase();var t=this.proxies[n];return t||(t=i(this,n),this.proxies[n]=t),this._registerSubscribedHubs(),t};t.fn.init.prototype=t.fn;n.hubConnection=t}(window.jQuery,window),function(n){n.signalR.version="2.2.0"}(window.jQuery),function(){"undefined"==typeof Math.sgn&&(Math.sgn=function(n){return 0==n?0:n>0?1:-1});var n={subtract:function(n,t){return{x:n.x-t.x,y:n.y-t.y}},dotProduct:function(n,t){return n.x*t.x+n.y*t.y},square:function(n){return Math.sqrt(n.x*n.x+n.y*n.y)},scale:function(n,t){return{x:n.x*t,y:n.y*t}}},e=64,l=Math.pow(2,-e-1),o=function(t,i){for(var f,h=[],a=v(t,i),c=i.length-1,y=2*c-1,p=r(a,y,h,0),e=n.subtract(t,i[0]),o=n.square(e),l=0,s=0;p>s;s++)e=n.subtract(t,u(i,c,h[s],null,null)),f=n.square(e),o>f&&(o=f,l=h[s]);return e=n.subtract(t,i[c]),f=n.square(e),o>f&&(o=f,l=1),{location:l,distance:o}},a=function(n,t){var i=o(n,t);return{point:u(t,t.length-1,i.location,null,null),location:i.location}},v=function(t,i){for(var f,o,p,w,u=i.length-1,l=2*u-1,a=[],h=[],c=[],e=[],b=[[1,.6,.3,.1],[.4,.6,.6,.4],[.1,.3,.6,1]],r=0;u>=r;r++)a[r]=n.subtract(i[r],t);for(r=0;u-1>=r;r++)h[r]=n.subtract(i[r+1],i[r]),h[r]=n.scale(h[r],3);for(f=0;u-1>=f;f++)for(o=0;u>=o;o++)c[f]||(c[f]=[]),c[f][o]=n.dotProduct(h[f],a[o]);for(r=0;l>=r;r++)e[r]||(e[r]=[]),e[r].y=0,e[r].x=parseFloat(r)/l;for(var v=u,y=u-1,s=0;v+y>=s;s++)for(p=Math.max(0,s-y),w=Math.min(s,v),r=p;w>=r;r++)j=s-r,e[r+j].y+=c[j][r]*b[j][r];return e},r=function(n,t,i,f){var s,h,c=[],l=[],a=[],v=[],o;switch(y(n,t)){case 0:return 0;case 1:if(f>=e)return i[0]=(n[0].x+n[t].x)/2,1;if(p(n,t))return i[0]=w(n,t),1}for(u(n,t,.5,c,l),s=r(c,t,a,f+1),h=r(l,t,v,f+1),o=0;s>o;o++)i[o]=a[o];for(o=0;h>o;o++)i[o+s]=v[o];return s+h},y=function(n,t){for(var u,f=0,i=u=Math.sgn(n[0].y),r=1;t>=r;r++)i=Math.sgn(n[r].y),i!=u&&f++,u=i;return f},p=function(n,t){var d,p,w,g,nt,e,o,s,h,c,b,r,k,a,i,v,y,u,f;for(e=n[0].y-n[t].y,o=n[t].x-n[0].x,s=n[0].x*n[t].y-n[t].x*n[0].y,y=max_distance_below=0,u=1;t>u;u++)f=e*n[u].x+o*n[u].y+s,f>y?y=f:max_distance_below>f&&(max_distance_below=f);return b=0,r=1,k=0,a=e,i=o,v=s-y,h=b*i-a*r,c=1/h,p=(r*v-i*k)*c,a=e,i=o,v=s-max_distance_below,h=b*i-a*r,c=1/h,w=(r*v-i*k)*c,g=Math.min(p,w),nt=Math.max(p,w),d=nt-g,l>d?1:0},w=function(n,t){var i=1,r=n[t].x-n[0].x,u=n[t].y-n[0].y,f=n[0].x-0,e=n[0].y-0,o=r*0-u*i,s=1/o,h=(r*e-u*f)*s;return 0+i*h},u=function(n,t,i,r,u){for(var o,e=[[]],f=0;t>=f;f++)e[0][f]=n[f];for(o=1;t>=o;o++)for(f=0;t-o>=f;f++)e[o]||(e[o]=[]),e[o][f]||(e[o][f]={}),e[o][f].x=(1-i)*e[o-1][f].x+i*e[o-1][f+1].x,e[o][f].y=(1-i)*e[o-1][f].y+i*e[o-1][f+1].y;if(null!=r)for(f=0;t>=f;f++)r[f]=e[f][0];if(null!=u)for(f=0;t>=f;f++)u[f]=e[t-f][f];return e[t][0]},s={},b=function(n){var t=s[n],r,u,i;if(!t){t=[];var f=function(){return function(t){return Math.pow(t,n)}},e=function(){return function(t){return Math.pow(1-t,n)}},o=function(n){return function(){return n}},h=function(){return function(n){return n}},c=function(){return function(n){return 1-n}},l=function(n){return function(t){for(var r=1,i=0;i<n.length;i++)r*=n[i](t);return r}};for(t.push(new f),r=1;n>r;r++){for(u=[new o(n)],i=0;n-r>i;i++)u.push(new h);for(i=0;r>i;i++)u.push(new c);t.push(new l(u))}t.push(new e);s[n]=t}return t},t=function(n,t){for(var r=b(n.length-1),u=0,f=0,i=0;i<n.length;i++)u+=n[i].x*r[i](t),f+=n[i].y*r[i](t);return{x:u,y:f}},h=function(n,t){return Math.sqrt(Math.pow(n.x-t.x,2)+Math.pow(n.y-t.y,2))},c=function(n){return n[0].x==n[1].x&&n[0].y==n[1].y},i=function(n,i,r){if(c(n))return{point:n[0],location:i};for(var e=t(n,i),o=0,f=i,s=r>0?1:-1,u=null;o<Math.abs(r);)f+=.005*s,u=t(n,f),o+=h(u,e),e=u;return{point:u,location:f}},k=function(n){if(c(n))return 0;for(var u=t(n,0),f=0,i=0,r=null;1>i;)i+=.005*1,r=t(n,i),f+=h(r,u),u=r;return f},d=function(n,t,r){return i(n,t,r).point},g=function(n,t,r){return i(n,t,r).location},f=function(n,i){var r=t(n,i),u=t(n.slice(0,n.length-1),i),f=u.y-r.y,e=u.x-r.x;return 0==f?1/0:Math.atan(f/e)},nt=function(n,t,r){var u=i(n,t,r);return u.location>1&&(u.location=1),u.location<0&&(u.location=0),f(n,u.location)},tt=function(n,t,r,u){u=null==u?0:u;var e=i(n,t,u),c=f(n,e.location),o=Math.atan(-1/c),s=r/2*Math.sin(o),h=r/2*Math.cos(o);return[{x:e.point.x+h,y:e.point.y+s},{x:e.point.x-h,y:e.point.y-s}]};this.jsBezier={distanceFromCurve:o,gradientAtPoint:f,gradientAtPointAlongCurveFrom:nt,nearestPointOnCurve:a,pointOnCurve:t,pointAlongCurveFrom:d,perpendicularToCurveAt:tt,locationAlongCurveFrom:g,getLength:k}}.call("undefined"!=typeof window?window:this),function(){"use strict";var f=this,n=f.Biltong={},r=function(n){return"[object Array]"===Object.prototype.toString.call(n)},t=function(n,t,i){return n=r(n)?n:[n.x,n.y],t=r(t)?t:[t.x,t.y],i(n,t)},i=n.gradient=function(n,i){return t(n,i,function(n,t){return t[0]==n[0]?t[1]>n[1]?1/0:-1/0:t[1]==n[1]?t[0]>n[0]?0:-0:(t[1]-n[1])/(t[0]-n[0])})},u=(n.normal=function(n,t){return-1/i(n,t)},n.lineLength=function(n,i){return t(n,i,function(n,t){return Math.sqrt(Math.pow(t[1]-n[1],2)+Math.pow(t[0]-n[0],2))})},n.quadrant=function(n,i){return t(n,i,function(n,t){return t[0]>n[0]?t[1]>n[1]?2:1:t[0]==n[0]?t[1]>n[1]?2:1:t[1]>n[1]?3:4})}),e=(n.theta=function(n,r){return t(n,r,function(n,t){var e=i(n,t),r=Math.atan(e),f=u(n,t);return(4==f||3==f)&&(r+=Math.PI),0>r&&(r+=2*Math.PI),r})},n.intersects=function(n,t){var i=n.x,s=n.x+n.w,u=n.y,f=n.y+n.h,r=t.x,h=t.x+t.w,e=t.y,o=t.y+t.h;return r>=i&&s>=r&&e>=u&&f>=e||h>=i&&s>=h&&e>=u&&f>=e||r>=i&&s>=r&&o>=u&&f>=o||h>=i&&s>=r&&o>=u&&f>=o||i>=r&&h>=i&&u>=e&&o>=u||s>=r&&h>=s&&u>=e&&o>=u||i>=r&&h>=i&&f>=e&&o>=f||s>=r&&h>=i&&f>=e&&o>=f},n.encloses=function(n,t,i){var u=n.x,f=n.x+n.w,e=n.y,o=n.y+n.h,s=t.x,h=t.x+t.w,c=t.y,l=t.y+t.h,r=function(n,t,r,u){return i?t>=n&&r>=u:t>n&&r>u};return r(u,s,f,h)&&r(e,c,o,l)},[null,[1,-1],[1,1],[-1,1],[-1,-1]]),o=[null,[-1,-1],[-1,1],[1,1],[1,-1]];n.pointOnLine=function(n,t,r){var c=i(n,t),f=u(n,t),s=r>0?e[f]:o[f],h=Math.atan(c),l=Math.abs(r*Math.sin(h))*s[1],a=Math.abs(r*Math.cos(h))*s[0];return{x:n.x+a,y:n.y+l}};n.perpendicularLineTo=function(n,t,r){var o=i(n,t),u=Math.atan(-1/o),f=r/2*Math.sin(u),e=r/2*Math.cos(u);return[{x:t.x+e,y:t.y+f},{x:t.x-e,y:t.y-f}]}}.call("undefined"!=typeof window?window:this),function(){"use strict";var u=this,w={android:navigator.userAgent.toLowerCase().indexOf("android")>-1},f=function(n,t,i){i=i||n.parentNode;for(var u=i.querySelectorAll(t),r=0;r<u.length;r++)if(u[r]===n)return!0;return!1},o=function(n){return"string"==typeof n||n.constructor===String?document.getElementById(n):n},i=function(n){return n.srcElement||n.target},v=function(n,t,i,r){if(r){if("undefined"!=typeof n.path)return{path:n.path,end:n.path.indexOf(i)};var u={path:[],end:-1},f=function(n){u.path.push(n);n===i?u.end=u.path.length-1:null!=n.parentNode&&f(n.parentNode)};return f(t),u}return{path:[t],end:1}},b=function(n,t){for(var i=0,r=n.length;r>i&&n[i]!=t;i++);i<n.length&&n.splice(i,1)},tt=1,k=function(n,t,i){var r=tt++;return n.__ta=n.__ta||{},n.__ta[t]=n.__ta[t]||{},n.__ta[t][r]=i,i.__tauid=r,r},it=function(n,t,i){if(n.__ta&&n.__ta[t]&&delete n.__ta[t][i.__tauid],i.__taExtra){for(var r=0;r<i.__taExtra.length;r++)l(n,i.__taExtra[r][0],i.__taExtra[r][1]);i.__taExtra.length=0}i.__taUnstore&&i.__taUnstore()},s=function(n,t,r,u){if(null==n)return r;var o=n.split(","),e=function(u){var s,h;e.__tauid=r.__tauid;var a=i(u),c=a,l=v(u,a,t,null!=n);if(-1!=l.end)for(s=0;s<l.end;s++)for(c=l.path[s],h=0;h<o.length;h++)f(c,o[h],t)&&r.apply(c,arguments)};return rt(r,u,e),e},rt=function(n,t,i){n.__taExtra=n.__taExtra||[];n.__taExtra.push([t,i])},t=function(t,i,u,f){if(r&&n[i]){var e=s(f,t,u,n[i]);c(t,n[i],e,u)}"focus"===i&&null==t.getAttribute("tabindex")&&t.setAttribute("tabindex","1");c(t,i,s(f,t,u,i),u)},ut=function(n,r,u,f){if(null==n.__taSmartClicks){var e=function(t){n.__tad=h(t)},o=function(t){n.__tau=h(t)},s=function(t){if(n.__tad&&n.__tau&&n.__tad[0]===n.__tau[0]&&n.__tad[1]===n.__tau[1])for(var r=0;r<n.__taSmartClicks.length;r++)n.__taSmartClicks[r].apply(i(t),[t])};t(n,"mousedown",e,f);t(n,"mouseup",o,f);t(n,"click",s,f);n.__taSmartClicks=[]}n.__taSmartClicks.push(u);u.__taUnstore=function(){b(n.__taSmartClicks,u)}},y={tap:{touches:1,taps:1},dbltap:{touches:1,taps:2},contextmenu:{touches:2,taps:1}},ft=function(n,r){return function(u,o,s,h){if("contextmenu"==o&&e)t(u,o,s,h);else{if(null==u.__taTapHandler){var c=u.__taTapHandler={tap:[],dbltap:[],contextmenu:[],down:!1,taps:0,downSelectors:[]},l=function(t){for(var e,o=i(t),l=v(t,o,u,null!=h),a=!1,s=0;s<l.end;s++){if(a)return;for(o=l.path[s],e=0;e<c.downSelectors.length;e++)if(null==c.downSelectors[e]||f(o,c.downSelectors[e],u)){c.down=!0;setTimeout(p,n);setTimeout(w,r);a=!0;break}}},a=function(n){var s,h,l,a,t,e,r,o;if(c.down){l=i(n);c.taps++;a=lt(n);for(t in y)if(y.hasOwnProperty(t)&&(e=y[t],e.touches===a&&(1===e.taps||e.taps===c.taps)))for(r=0;r<c[t].length;r++)for(h=v(n,l,u,null!=c[t][r][1]),o=0;o<h.end;o++)if(s=h.path[o],null==c[t][r][1]||f(s,c[t][r][1],u)){c[t][r][0].apply(s,[n]);break}}},p=function(){c.down=!1},w=function(){c.taps=0};t(u,"mousedown",l);t(u,"mouseup",a)}u.__taTapHandler.downSelectors.push(h);u.__taTapHandler[o].push([s,h]);s.__taUnstore=function(){b(u.__taTapHandler[o],s)}}}},d=function(n,t,i,r){for(var u in i.__tamee[n])i.__tamee[n].hasOwnProperty(u)&&i.__tamee[n][u].apply(r,[t])},et=function(){var n=[];return function(t,r,u,e){if(!t.__tamee){t.__tamee={over:!1,mouseenter:[],mouseexit:[]};var o=function(r){var u=i(r);(null!=e||u!=t||t.__tamee.over)&&(!f(u,e,t)||null!=u.__tamee&&u.__tamee.over)||(d("mouseenter",r,t,u),u.__tamee=u.__tamee||{},u.__tamee.over=!0,n.push(u))},h=function(r){for(var u=i(r),e=0;e<n.length;e++)u!=n[e]||f(r.relatedTarget||r.toElement,"*",u)||(u.__tamee.over=!1,n.splice(e,1),d("mouseexit",r,t,u))};c(t,"mouseover",s(e,t,o,"mouseover"),o);c(t,"mouseout",s(e,t,h,"mouseout"),h)}u.__taUnstore=function(){delete t.__tamee[r][u.__tauid]};k(t,r,u);t.__tamee[r][u.__tauid]=u}},r="ontouchstart"in document.documentElement,e="onmousedown"in document.documentElement,n={mousedown:"touchstart",mouseup:"touchend",mousemove:"touchmove"},g=function(){var n=-1,t,i;return"Microsoft Internet Explorer"==navigator.appName&&(t=navigator.userAgent,i=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),null!=i.exec(t)&&(n=parseFloat(RegExp.$1))),n}(),ot=g>-1&&9>g,p=function(n,t){if(null==n)return[0,0];var r=nt(n),i=ct(r,0);return[i[t+"X"],i[t+"Y"]]},h=function(n){return null==n?[0,0]:ot?[n.clientX+document.documentElement.scrollLeft,n.clientY+document.documentElement.scrollTop]:p(n,"page")},st=function(n){return p(n,"screen")},ht=function(n){return p(n,"client")},ct=function(n,t){return n.item?n.item(t):n[t]},nt=function(n){return n.touches&&n.touches.length>0?n.touches:n.changedTouches&&n.changedTouches.length>0?n.changedTouches:n.targetTouches&&n.targetTouches.length>0?n.targetTouches:[n]},lt=function(n){return nt(n).length},c=function(n,t,i,r){if(k(n,t,i),r.__tauid=i.__tauid,n.addEventListener)n.addEventListener(t,i,!1);else if(n.attachEvent){var u=t+i.__tauid;n["e"+u]=i;n[u]=function(){n["e"+u]&&n["e"+u](window.event)};n.attachEvent("on"+t,n[u])}},l=function(t,i,u){null!=u&&a(t,function(){var f=o(this),e;(it(f,i,u),null!=u.__tauid)&&(f.removeEventListener?(f.removeEventListener(i,u,!1),r&&n[i]&&f.removeEventListener(n[i],u,!1)):this.detachEvent&&(e=i+u.__tauid,f[e]&&f.detachEvent("on"+i,f[e]),f[e]=null,f["e"+e]=null));u.__taTouchProxy&&l(t,u.__taTouchProxy[1],u.__taTouchProxy[0])})},a=function(n,t){if(null!=n){n="undefined"!=typeof Window&&"unknown"!=typeof n.top&&n==n.top?[n]:"string"!=typeof n&&null==n.tagName&&null!=n.length?n:"string"==typeof n?document.querySelectorAll(n):[n];for(var i=0;i<n.length;i++)t.apply(n[i])}};u.Mottle=function(i){i=i||{};var u=i.clickThreshold||250,f=i.dblClickThreshold||450,s=new et,c=new ft(u,f),v=i.smartClicks,y=function(n,i,r,u){null!=r&&a(n,function(){var n=o(this);v&&"click"===i?ut(n,i,r,u):"tap"===i||"dbltap"===i||"contextmenu"===i?c(n,i,r,u):"mouseenter"===i||"mouseexit"==i?s(n,i,r,u):t(n,i,r,u)})};this.remove=function(n){return a(n,function(){var n=o(this),t,i;if(n.__ta)for(t in n.__ta)if(n.__ta.hasOwnProperty(t))for(i in n.__ta[t])n.__ta[t].hasOwnProperty(i)&&l(n,t,n.__ta[t][i]);n.parentNode&&n.parentNode.removeChild(n)}),this};this.on=function(){var n=arguments[0],t=4==arguments.length?arguments[2]:null,i=arguments[1],r=arguments[arguments.length-1];return y(n,i,r,t),this};this.off=function(n,t,i){return l(n,t,i),this};this.trigger=function(t,i,u,f){var y=e&&("undefined"==typeof MouseEvent||null==u||u.constructor===MouseEvent),l=r&&!e&&n[i]?n[i]:i,p=!(r&&!e&&n[i]),v=h(u),s=st(u),c=ht(u);return a(t,function(){var t,e=o(this),h,b,k,a;u=u||{screenX:s[0],screenY:s[1],clientX:c[0],clientY:c[1]};h=function(n){f&&(n.payload=f)};b={TouchEvent:function(n){var t=document.createTouch(window,e,0,v[0],v[1],s[0],s[1],c[0],c[1],0,0,0,0),i=document.createTouchList(t),r=document.createTouchList(t),u=document.createTouchList(t);n.initTouchEvent(l,!0,!0,window,null,s[0],s[1],c[0],c[1],!1,!1,!1,!1,i,r,u,1,0)},MouseEvents:function(n){if(n.initMouseEvent(l,!0,!0,window,0,s[0],s[1],c[0],c[1],!1,!1,!1,!1,1,e),w.android){var t=document.createTouch(window,e,0,v[0],v[1],s[0],s[1],c[0],c[1],0,0,0,0);n.touches=n.targetTouches=n.changedTouches=document.createTouchList(t)}}};document.createEvent?(k=!p&&!y&&r&&n[i]&&!w.android,a=k?"TouchEvent":"MouseEvents",t=document.createEvent(a),b[a](t),h(t),e.dispatchEvent(t)):document.createEventObject&&(t=document.createEventObject(),t.eventType=t.eventName=l,t.screenX=s[0],t.screenY=s[1],t.clientX=c[0],t.clientY=c[1],h(t),e.fireEvent("on"+l,t))}),this}};u.Mottle.consume=function(n,t){n.stopPropagation?n.stopPropagation():n.returnValue=!1;!t&&n.preventDefault&&n.preventDefault()};u.Mottle.pageLocation=h;u.Mottle.setForceTouchEvents=function(n){r=n};u.Mottle.setForceMouseEvents=function(n){e=n}}.call("undefined"==typeof window?this:window),function(){"use strict";var d=this,h=function(n,t,i){return-1===n.indexOf(t)?(i?n.unshift(t):n.push(t),!0):!1},f=function(n,t){var i=n.indexOf(t);-1!=i&&n.splice(i,1)},g=function(n,t){for(var r=[],i=0;i<n.length;i++)-1==t.indexOf(n[i])&&r.push(n[i]);return r},u=function(n){return null==n?!1:"string"==typeof n||n.constructor==String},nt=function(n){var r=n.getBoundingClientRect(),t=document.body,i=document.documentElement,u=window.pageYOffset||i.scrollTop||t.scrollTop,f=window.pageXOffset||i.scrollLeft||t.scrollLeft,e=i.clientTop||t.clientTop||0,o=i.clientLeft||t.clientLeft||0,s=r.top+u-e,h=r.left+f-o;return{top:Math.round(s),left:Math.round(h)}},c=function(n,t,i){i=i||n.parentNode;for(var u=i.querySelectorAll(t),r=0;r<u.length;r++)if(u[r]===n)return!0;return!1},e=function(){var n=-1,t,i;return"Microsoft Internet Explorer"==navigator.appName&&(t=navigator.userAgent,i=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),null!=i.exec(t)&&(n=parseFloat(RegExp.$1))),n}(),tt=50,it=50,rt=e>-1&&9>e,ut=9==e,l=function(n){if(rt)return[n.clientX+document.documentElement.scrollLeft,n.clientY+document.documentElement.scrollTop];var i=et(n),t=ft(i,0);return ut?[t.pageX||t.clientX,t.pageY||t.clientY]:[t.pageX,t.pageY]},ft=function(n,t){return n.item?n.item(t):n[t]},et=function(n){return n.touches&&n.touches.length>0?n.touches:n.changedTouches&&n.changedTouches.length>0?n.changedTouches:n.targetTouches&&n.targetTouches.length>0?n.targetTouches:[n]},o={draggable:"katavorio-draggable",droppable:"katavorio-droppable",drag:"katavorio-drag",selected:"katavorio-drag-selected",active:"katavorio-drag-active",hover:"katavorio-drag-hover",noSelect:"katavorio-drag-no-select",ghostProxy:"katavorio-ghost-proxy"},ot="katavorio-drag-scope",i=["stop","start","drag","drop","over","out","beforeStart"],st=function(){},ht=function(){return!0},t=function(n,t,i){for(var r=0;r<n.length;r++)n[r]!=i&&t(n[r])},a=function(n,i,r,u){t(n,function(n){n.setActive(i);i&&n.updatePosition();r&&n.setHover(u,i)})},n=function(n,t){if(null!=n){n=u(n)||null!=n.tagName||null==n.length?[n]:n;for(var i=0;i<n.length;i++)t.apply(n[i],[n[i]])}},v=function(n){n.stopPropagation?(n.stopPropagation(),n.preventDefault()):n.returnValue=!1},ct="input,textarea,select,button,option",lt=function(n,t,i){var r=n.srcElement||n.target;return!c(r,i.getInputFilterSelector(),t)},y=function(t,i,r,u){this.params=i||{};this.el=t;this.params.addClass(this.el,this._class);this.uuid=s();var f=!0;return this.setEnabled=function(n){f=n},this.isEnabled=function(){return f},this.toggleEnabled=function(){f=!f},this.setScope=function(n){this.scopes=n?n.split(/\s+/):[u]},this.addScope=function(t){var i={},r;n(this.scopes,function(n){i[n]=!0});n(t?t.split(/\s+/):[],function(n){i[n]=!0});this.scopes=[];for(r in i)this.scopes.push(r)},this.removeScope=function(t){var i={},r;n(this.scopes,function(n){i[n]=!0});n(t?t.split(/\s+/):[],function(n){delete i[n]});this.scopes=[];for(r in i)this.scopes.push(r)},this.toggleScope=function(t){var i={},r;n(this.scopes,function(n){i[n]=!0});n(t?t.split(/\s+/):[],function(n){i[n]?delete i[n]:i[n]=!0});this.scopes=[];for(r in i)this.scopes.push(r)},this.setScope(i.scope),this.k=i.katavorio,i.katavorio},p=function(){return!0},w=function(){return!1},b=function(n,t,i){var h,gt,at,vt,yt,wt,f,d,e,g,ft;this._class=i.draggable;h=y.apply(this,arguments);this.rightButtonCanDrag=this.params.rightButtonCanDrag;var b=[0,0],k=null,ot=null,st=[0,0],et=!1,ni=this.params.consumeStartEvent!==!1,r=this.el,bt=this.params.clone,ti=(this.params.scroll,t.multipleDrop!==!1),rt=!1,ct=t.ghostProxy===!0?p:t.ghostProxy&&"function"==typeof t.ghostProxy?t.ghostProxy:w,ii=function(n){return n.cloneNode(!0)},kt=t.snapThreshold||5,dt=function(n,t,i,r,u){r=r||kt;u=u||kt;var h=Math.floor(n[0]/t),f=t*h,o=f+t,c=Math.abs(n[0]-f)<=r?f:Math.abs(o-n[0])<=r?o:n[0],l=Math.floor(n[1]/i),e=i*l,s=e+i,a=Math.abs(n[1]-e)<=u?e:Math.abs(s-n[1])<=u?s:n[1];return[c,a]};this.posses=[];this.posseRoles={};this.toGrid=function(n){return null==this.params.grid?n:dt(n,this.params.grid[0],this.params.grid[1])};this.snap=function(n,t){if(null!=r){n=n||(this.params.grid?this.params.grid[0]:tt);t=t||(this.params.grid?this.params.grid[1]:it);var i=this.params.getPosition(r);this.params.setPosition(r,dt(i,n,t,n,t))}};this.setUseGhostProxy=function(n){ct=n?p:w};at=function(n){return t.allowNegative===!1?[Math.max(0,n[0]),Math.max(0,n[1])]:n};vt=function(n){gt="function"==typeof n?n:n?function(n){return at([Math.max(0,Math.min(wt.w-this.size[0],n[0])),Math.max(0,Math.min(wt.h-this.size[1],n[1]))])}.bind(this):function(n){return at(n)}}.bind(this);vt("function"==typeof this.params.constrain?this.params.constrain:this.params.constrain||this.params.containment);this.setConstrain=function(n){vt(n)};this.setRevert=function(n){yt=n};var ri=function(n){return"function"==typeof n?(n._katavorioId=s(),n._katavorioId):n},ut={},ui=function(n){var r,i,t;for(r in ut)if(i=ut[r],t=i[0](n),i[1]&&(t=!t),!t)return!1;return!0},pt=this.setFilter=function(t,i){if(t){var r=ri(t);ut[r]=[function(i){var r,f=i.srcElement||i.target;return u(t)?r=c(f,t,n):"function"==typeof t&&(r=t(i,n)),r},i!==!1]}};this.addFilter=pt;this.removeFilter=function(n){var t="function"==typeof n?n._katavorioId:n;delete ut[t]};this.clearAllFilters=function(){ut={}};this.canDrag=this.params.canDrag||ht;f=[];d=[];this.downListener=function(n){var f=this.rightButtonCanDrag||3!==n.which&&2!==n.button,u,t;f&&this.isEnabled()&&this.canDrag()&&(u=ui(n)&&lt(n,this.el,this.k),u?(bt?(r=this.el.cloneNode(!0),r.setAttribute("id",null),r.style.position="absolute",t=nt(this.el),r.style.left=t.left+"px",r.style.top=t.top+"px",document.body.appendChild(r)):r=this.el,ni&&v(n),b=l(n),this.params.bind(document,"mousemove",this.moveListener),this.params.bind(document,"mouseup",this.upListener),h.markSelection(this),h.markPosses(this),this.params.addClass(document.body,i.noSelect),g("beforeStart",{el:this.el,pos:k,e:n,drag:this})):this.params.consumeFilteredEvents&&v(n))}.bind(this);this.moveListener=function(n){var r;if(b){if(!et&&(r=g("start",{el:this.el,pos:k,e:n,drag:this}),r!==!1)){if(!b)return;this.mark(!0);et=!0}if(b){d.length=0;var u=l(n),t=u[0]-b[0],i=u[1]-b[1],f=this.params.ignoreZoom?1:h.getZoom();t/=f;i/=f;this.moveBy(t,i,n);h.updateSelection(t,i,this);h.updatePosses(t,i,this)}}}.bind(this);this.upListener=function(n){b&&(b=null,this.params.unbind(document,"mousemove",this.moveListener),this.params.unbind(document,"mouseup",this.upListener),this.params.removeClass(document.body,i.noSelect),this.unmark(n),h.unmarkSelection(this,n),h.unmarkPosses(this,n),this.stop(n),h.notifySelectionDragStop(this,n),h.notifyPosseDragStop(this,n),et=!1,bt&&(r&&r.parentNode&&r.parentNode.removeChild(r),r=null),yt&&yt(this.el,this.params.getPosition(this.el))===!0&&(this.params.setPosition(this.el,k),g("revert",this.el)))}.bind(this);this.getFilters=function(){return ut};this.abort=function(){null!=b&&this.upListener()};this.getDragElement=function(){return r||this.el};e={start:[],drag:[],stop:[],over:[],out:[],beforeStart:[],revert:[]};t.events.start&&e.start.push(t.events.start);t.events.beforeStart&&e.beforeStart.push(t.events.beforeStart);t.events.stop&&e.stop.push(t.events.stop);t.events.drag&&e.drag.push(t.events.drag);t.events.revert&&e.revert.push(t.events.revert);this.on=function(n,t){e[n]&&e[n].push(t)};this.off=function(n,t){if(e[n]){for(var r=[],i=0;i<e[n].length;i++)e[n][i]!==t&&r.push(e[n][i]);e[n]=r}};g=function(n,t){if(e[n])for(var i=0;i<e[n].length;i++)try{e[n][i](t)}catch(r){}};this.notifyStart=function(n){g("start",{el:this.el,pos:this.params.getPosition(r),e:n,drag:this})};this.stop=function(n,t){var i,o;if(t||et){var e=[],u=h.getSelection(),f=this.params.getPosition(r);if(u.length>1)for(i=0;i<u.length;i++)o=this.params.getPosition(u[i].el),e.push([u[i].el,{left:o[0],top:o[1]},u[i]]);else e.push([r,{left:f[0],top:f[1]},this]);g("stop",{el:r,pos:ft||f,finalPos:f,e:n,drag:this,selection:e})}};this.mark=function(n){k=this.params.getPosition(r);ot=this.params.getPosition(r,!0);st=[ot[0]-k[0],ot[1]-k[1]];this.size=this.params.getSize(r);f=h.getMatchingDroppables(this);a(f,!0,!1,this);this.params.addClass(r,this.params.dragClass||i.drag);var t=this.params.getSize(r.parentNode);wt={w:t[0],h:t[1]};n&&h.notifySelectionDragStart(this)};this.unmark=function(n,u){var e,o;if(a(f,!1,!0,this),rt&&ct(this.el)?(ft=[r.offsetLeft,r.offsetTop],this.el.parentNode.removeChild(r),r=this.el):ft=null,this.params.removeClass(r,this.params.dragClass||i.drag),f.length=0,rt=!1,!u)for(d.length>0&&ft&&t.setPosition(this.el,ft),e=0;e<d.length;e++)if(o=d[e].drop(this,n),o===!0)break};this.moveBy=function(n,i,u){var h,s,c,e,v;d.length=0;h=this.toGrid([k[0]+n,k[1]+i]);s=gt(h,r);ct(this.el)&&(h[0]!=s[0]||h[1]!=s[1]?(rt||(c=ii(this.el),t.addClass(c,o.ghostProxy),this.el.parentNode.appendChild(c),r=c,rt=!0),s=h):rt&&(this.el.parentNode.removeChild(r),r=this.el,rt=!1));var l={x:s[0],y:s[1],w:this.size[0],h:this.size[1]},y={x:l.x+st[0],y:l.y+st[1],w:l.w,h:l.h},a=null;for(this.params.setPosition(r,s),e=0;e<f.length;e++)v={x:f[e].pagePosition[0],y:f[e].pagePosition[1],w:f[e].size[0],h:f[e].size[1]},this.params.intersects(y,v)&&(ti||null==a||a==f[e].el)&&f[e].canDrop(this)?(a||(a=f[e].el),d.push(f[e]),f[e].setHover(this,!0,u)):f[e].isHover()&&f[e].setHover(this,!1,u);g("drag",{el:this.el,pos:s,e:u,drag:this})};this.destroy=function(){this.params.unbind(this.el,"mousedown",this.downListener);this.params.unbind(document,"mousemove",this.moveListener);this.params.unbind(document,"mouseup",this.upListener);this.downListener=null;this.upListener=null;this.moveListener=null};this.params.bind(this.el,"mousedown",this.downListener);this.params.handle?pt(this.params.handle,!1):pt(this.params.filter,this.params.filterExclude)},k=function(n,t,i){this._class=i.droppable;this.params=t||{};this._activeClass=this.params.activeClass||i.active;this._hoverClass=this.params.hoverClass||i.hover;y.apply(this,arguments);var r=!1;this.allowLoopback=this.params.allowLoopback!==!1;this.setActive=function(n){this.params[n?"addClass":"removeClass"](this.el,this._activeClass)};this.updatePosition=function(){this.position=this.params.getPosition(this.el);this.pagePosition=this.params.getPosition(this.el,!0);this.size=this.params.getSize(this.el)};this.canDrop=this.params.canDrop||function(){return!0};this.isHover=function(){return r};this.setHover=function(n,t,i){(t||null==this.el._katavorioDragHover||this.el._katavorioDragHover==n.el._katavorio)&&(this.params[t?"addClass":"removeClass"](this.el,this._hoverClass),this.el._katavorioDragHover=t?n.el._katavorio:null,r!==t&&this.params.events[t?"over":"out"]({el:this.el,e:i,drag:n,drop:this}),r=t)};this.drop=function(n,t){return this.params.events.drop({drag:n,e:t,drop:this})};this.destroy=function(){this._class=null;this._activeClass=null;this._hoverClass=null;r=null}},s=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(n){var t=0|16*Math.random(),i="x"==n?t:8|3&t;return i.toString(16)})},r=function(n){return null==n?null:(n="string"==typeof n||n.constructor==String?document.getElementById(n):n,null==n?null:(n._katavorio=n._katavorio||s(),n))};d.Katavorio=function(e){var s=[],a={},v,w,d,y,nt,c,tt;this._dragsByScope={};this._dropsByScope={};var it=1,p=function(t,i){n(t,function(n){for(var t=0;t<n.scopes.length;t++)i[n.scopes[t]]=i[n.scopes[t]]||[],i[n.scopes[t]].push(n)})},rt=function(t,i){var r=0;return n(t,function(n){for(var u,t=0;t<n.scopes.length;t++)i[n.scopes[t]]&&(u=e.indexOf(i[n.scopes[t]],n),-1!=u&&(i[n.scopes[t]].splice(u,1),r++))}),r>0},ut=(this.getMatchingDroppables=function(n){for(var t,i,u=[],f={},r=0;r<n.scopes.length;r++)if(t=this._dropsByScope[n.scopes[r]],t)for(i=0;i<t.length;i++)t[i].canDrop(n)&&!f[t[i].uuid]&&(t[i].allowLoopback||t[i].el!==n.el)&&(f[t[i].uuid]=!0,u.push(t[i]));return u},function(n){n=n||{};var t,r={events:{}};for(t in e)r[t]=e[t];for(t in n)r[t]=n[t];for(t=0;t<i.length;t++)r.events[i[t]]=n[i[t]]||st;return r.katavorio=this,r}.bind(this)),ht=function(n,t){for(var r=0;r<i.length;r++)t[i[r]]&&n.on(i[r],t[i[r]])}.bind(this),l={},ft=e.css||{},et=e.scope||ot;for(v in o)l[v]=o[v];for(v in ft)l[v]=ft[v];w=e.inputFilterSelector||ct;this.getInputFilterSelector=function(){return w};this.setInputFilterSelector=function(n){return w=n,this};this.draggable=function(t,i){var u=[];return n(t,function(n){if(n=r(n),null!=n)if(null==n._katavorioDrag){var t=ut(i);n._katavorioDrag=new b(n,t,l,et);p(n._katavorioDrag,this._dragsByScope);u.push(n._katavorioDrag);e.addClass(n,l.draggable)}else ht(n._katavorioDrag,i)}.bind(this)),u};this.droppable=function(t,i){var u=[];return n(t,function(n){if(n=r(n),null!=n){var t=new k(n,ut(i),l,et);n._katavorioDrop=n._katavorioDrop||[];n._katavorioDrop.push(t);p(t,this._dropsByScope);u.push(t);e.addClass(n,l.droppable)}}.bind(this)),u};this.select=function(t){return n(t,function(){var n=r(this);n&&n._katavorioDrag&&(a[n._katavorio]||(s.push(n._katavorioDrag),a[n._katavorio]=[n,s.length-1],e.addClass(n,l.selected)))}),this};this.deselect=function(t){return n(t,function(){var n=r(this),u,i,t;if(n&&n._katavorio&&(u=a[n._katavorio],u)){for(i=[],t=0;t<s.length;t++)s[t].el!==n&&i.push(s[t]);s=i;delete a[n._katavorio];e.removeClass(n,l.selected)}}),this};this.deselectAll=function(){var n,t;for(n in a)t=a[n],e.removeClass(t[0],l.selected);s.length=0;a={}};this.markSelection=function(n){t(s,function(n){n.mark()},n)};this.markPosses=function(i){i.posses&&n(i.posses,function(n){i.posseRoles[n]&&c[n]&&t(c[n].members,function(n){n.mark()},i)})};this.unmarkSelection=function(n,i){t(s,function(n){n.unmark(i)},n)};this.unmarkPosses=function(i,r){i.posses&&n(i.posses,function(n){i.posseRoles[n]&&c[n]&&t(c[n].members,function(n){n.unmark(r,!0)},i)})};this.getSelection=function(){return s.slice(0)};this.updateSelection=function(n,i,r){t(s,function(t){t.moveBy(n,i)},r)};d=function(i,r){r.posses&&n(r.posses,function(n){r.posseRoles[n]&&c[n]&&t(c[n].members,function(n){i(n)},r)})};this.updatePosses=function(n,t,i){d(function(i){i.moveBy(n,t)},i)};this.notifyPosseDragStop=function(n,t){d(function(n){n.stop(t,!0)},n)};this.notifySelectionDragStop=function(n,i){t(s,function(n){n.stop(i,!0)},n)};this.notifySelectionDragStart=function(n,i){t(s,function(n){n.notifyStart(i)},n)};this.setZoom=function(n){it=n};this.getZoom=function(){return it};y=function(t,i,r,u){n(t,function(n){rt(n,r);n[u](i);p(n,r)})};n(["set","add","remove","toggle"],function(n){this[n+"Scope"]=function(t,i){y(t._katavorioDrag,i,this._dragsByScope,n+"Scope");y(t._katavorioDrop,i,this._dropsByScope,n+"Scope")}.bind(this);this[n+"DragScope"]=function(t,i){y(t.constructor===b?t:t._katavorioDrag,i,this._dragsByScope,n+"Scope")}.bind(this);this[n+"DropScope"]=function(t,i){y(t.constructor===k?t:t._katavorioDrop,i,this._dropsByScope,n+"Scope")}.bind(this)}.bind(this));this.snapToGrid=function(n,i){for(var r in this._dragsByScope)t(this._dragsByScope[r],function(t){t.snap(n,i)})};this.getDragsForScope=function(n){return this._dragsByScope[n]};this.getDropsForScope=function(n){return this._dropsByScope[n]};nt=function(t,i,u){t=r(t);t[i]&&(rt(t[i],u)&&n(t[i],function(n){n.destroy()}),delete t[i])};this.elementRemoved=function(n){this.destroyDraggable(n);this.destroyDroppable(n)};this.destroyDraggable=function(n){nt(n,"_katavorioDrag",this._dragsByScope)};this.destroyDroppable=function(n){nt(n,"_katavorioDrop",this._dropsByScope)};this.reset=function(){this._dragsByScope={};this._dropsByScope={};s=[];a={};c={}};c={};tt=function(t,i,r){var e=u(i)?i:i.id,o=u(i)?!0:i.active!==!1,f=c[e]||function(){var n={name:e,members:[]};return c[e]=n,n}();return n(t,function(n){if(n._katavorioDrag){if(r&&null!=n._katavorioDrag.posseRoles[f.name])return;h(f.members,n._katavorioDrag);h(n._katavorioDrag.posses,f.name);n._katavorioDrag.posseRoles[f.name]=o}}),f};this.addToPosse=function(n){for(var t=[],i=1;i<arguments.length;i++)t.push(tt(n,arguments[i]));return 1==t.length?t[0]:t};this.setPosse=function(t){for(var i=[],r=1;r<arguments.length;r++)i.push(tt(t,arguments[r],!0).name);return n(t,function(n){var r,u,t;if(n._katavorioDrag)for(r=g(n._katavorioDrag.posses,i),u=[],Array.prototype.push.apply(u,n._katavorioDrag.posses),t=0;t<r.length;t++)this.removeFromPosse(n,r[t])}.bind(this)),1==i.length?i[0]:i};this.removeFromPosse=function(t,i){if(arguments.length<2)throw new TypeError("No posse id provided for remove operation");for(var r=1;r<arguments.length;r++)i=arguments[r],n(t,function(t){if(t._katavorioDrag&&t._katavorioDrag.posses){var r=t._katavorioDrag;n(i,function(n){f(c[n].members,r);f(r.posses,n);delete r.posseRoles[n]})}})};this.removeFromAllPosses=function(t){n(t,function(t){if(t._katavorioDrag&&t._katavorioDrag.posses){var i=t._katavorioDrag;n(i.posses,function(n){f(c[n].members,i)});i.posses.length=0;i.posseRoles={}}})};this.setPosseState=function(t,i,r){var u=c[i];u&&n(t,function(n){n._katavorioDrag&&n._katavorioDrag.posses&&(n._katavorioDrag.posseRoles[u.name]=r)})}}}.call("undefined"!=typeof window?window:this),function(){var t=function(n){return"[object Array]"===Object.prototype.toString.call(n)},s=function(n){return"[object Number]"===Object.prototype.toString.call(n)},r=function(n){return"string"==typeof n},u=function(n){return"boolean"==typeof n},h=function(n){return null==n},i=function(n){return null==n?!1:"[object Object]"===Object.prototype.toString.call(n)},o=function(n){return"[object Date]"===Object.prototype.toString.call(n)},f=function(n){return"[object Function]"===Object.prototype.toString.call(n)},c=function(n){for(var t in n)if(n.hasOwnProperty(t))return!1;return!0},e=this,n=e.jsPlumbUtil={isArray:t,isString:r,isBoolean:u,isNull:h,isObject:i,isDate:o,isFunction:f,isEmpty:c,isNumber:s,clone:function(n){var s,e,h,c;if(r(n))return""+n;if(u(n))return!!n;if(o(n))return new Date(n.getTime());if(f(n))return n;if(t(n)){for(s=[],e=0;e<n.length;e++)s.push(this.clone(n[e]));return s}if(i(n)){h={};for(c in n)h[c]=this.clone(n[c]);return h}return n},merge:function(n,f,e){var h,o,l={},s,c;for(e=e||[],o=0;o<e.length;o++)l[e[o]]=!0;s=this.clone(n);for(o in f)if(null==s[o])s[o]=f[o];else if(r(f[o])||u(f[o]))l[o]?(h=[],h.push.apply(h,t(s[o])?s[o]:[s[o]]),h.push.apply(h,t(f[o])?f[o]:[f[o]]),s[o]=h):s[o]=f[o];else if(t(f[o]))h=[],t(s[o])&&h.push.apply(h,s[o]),h.push.apply(h,f[o]),s[o]=h;else if(i(f[o])){i(s[o])||(s[o]={});for(c in f[o])s[o][c]=f[o][c]}return s},replace:function(n,t,i){if(null!=n){var u=n,r=u;return t.replace(/([^\.])+/g,function(n,t,u,f){var e=n.match(/([^\[0-9]+){1}(\[)([0-9+])/),h=u+n.length>=f.length,s=function(){return r[e[1]]||function(){return r[e[1]]=[],r[e[1]]}()},o;h?e?s()[e[3]]=i:r[n]=i:e?(o=s(),r=o[e[3]]||function(){return o[e[3]]={},o[e[3]]}()):r=r[n]||function(){return r[n]={},r[n]}()}),n}},functionChain:function(n,t,i){for(var u,r=0;r<i.length;r++)if(u=i[r][0][i[r][1]].apply(i[r][0],i[r][2]),u===t)return u;return n},populate:function(n,u,e){var s=function(n){var i=n.match(/(\${.*?})/g),t,r;if(null!=i)for(t=0;t<i.length;t++)r=u[i[t].substring(2,i[t].length-1)]||"",null!=r&&(n=n.replace(i[t],r));return n},o=function(n){var c,h,l,a;if(null!=n){if(r(n))return s(n);if(!f(n)||null!=e&&0!==(n.name||"").indexOf(e)){if(t(n)){for(c=[],h=0;h<n.length;h++)c.push(o(n[h]));return c}if(i(n)){l={};for(a in n)l[a]=o(n[a]);return l}return n}return n(u)}};return o(n)},findWithFunction:function(n,t){if(n)for(var i=0;i<n.length;i++)if(t(n[i]))return i;return-1},removeWithFunction:function(t,i){var r=n.findWithFunction(t,i);return r>-1&&t.splice(r,1),-1!=r},remove:function(n,t){var i=n.indexOf(t);return i>-1&&n.splice(i,1),-1!=i},addWithFunction:function(t,i,r){-1==n.findWithFunction(t,r)&&t.push(i)},addToList:function(n,t,i,r){var u=n[t];return null==u&&(u=[],n[t]=u),u[r?"unshift":"push"](i),u},suggest:function(n,t,i){return-1===n.indexOf(t)?(i?n.unshift(t):n.push(t),!0):!1},extend:function(n,i){var r,u,f,e;for(i=t(i)?i:[i],r=0;r<i.length;r++)for(u in i[r].prototype)i[r].prototype.hasOwnProperty(u)&&(n.prototype[u]=i[r].prototype[u]);if(f=function(n,t){return function(){for(r=0;r<i.length;r++)i[r].prototype[n]&&i[r].prototype[n].apply(this,arguments);return t.apply(this,arguments)}},e=function(t){for(var i in t)n.prototype[i]=f(i,t[i])},arguments.length>2)for(r=2;r<arguments.length;r++)e(arguments[r]);return n},uuid:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(n){var t=0|16*Math.random(),i="x"==n?t:8|3&t;return i.toString(16)})},logEnabled:!0,log:function(){if(n.logEnabled&&"undefined"!=typeof console)try{var t=arguments[arguments.length-1];console.log(t)}catch(i){}},wrap:function(t,i,r){return t=t||function(){},i=i||function(){},function(){var u=null;try{u=i.apply(this,arguments)}catch(f){n.log("jsPlumb function failed : "+f)}if(null==r||u!==r)try{u=t.apply(this,arguments)}catch(f){n.log("wrapped function failed : "+f)}return u}}};n.EventGenerator=function(){var t={},i=!1,r={ready:!0};this.bind=function(i,r,u){var o=function(i){n.addToList(t,i,r,u);r.__jsPlumb=r.__jsPlumb||{};r.__jsPlumb[e.jsPlumbUtil.uuid()]=i},f;if("string"==typeof i)o(i);else if(null!=i.length)for(f=0;f<i.length;f++)o(i[f]);return this};this.fire=function(u,f,e){if(!i&&t[u]){var c=t[u].length,o=0,s=!1,h=null;if(!this.shouldFireEvent||this.shouldFireEvent(u,f,e))for(;!s&&c>o&&h!==!1;){if(r[u])t[u][o].apply(this,[f,e]);else try{h=t[u][o].apply(this,[f,e])}catch(l){n.log("jsPlumb: fire failed for event "+u+" : "+l)}o++;(null==t||null==t[u])&&(s=!0)}}return this};this.unbind=function(i,r){var u,f;if(0===arguments.length)t={};else if(1===arguments.length){if("string"==typeof i)delete t[i];else if(i.__jsPlumb)for(f in i.__jsPlumb)u=i.__jsPlumb[f],n.remove(t[u]||[],i)}else 2===arguments.length&&n.remove(t[i]||[],r);return this};this.getListener=function(n){return t[n]};this.setSuspendEvents=function(n){i=n};this.isSuspendEvents=function(){return i};this.silently=function(n){this.setSuspendEvents(!0);try{n()}catch(t){e.jsPlumbUtil.log("Cannot execute silent function "+t)}this.setSuspendEvents(!1)};this.cleanupListeners=function(){for(var n in t)t[n]=null}};n.EventGenerator.prototype={cleanup:function(){this.cleanupListeners()}}}.call("undefined"!=typeof window?window:this),function(){"use strict";var t=this,n=t.jsPlumbUtil;n.matchesSelector=function(n,t,i){i=i||n.parentNode;for(var u=i.querySelectorAll(t),r=0;r<u.length;r++)if(u[r]===n)return!0;return!1};n.consume=function(n,t){n.stopPropagation?n.stopPropagation():n.returnValue=!1;!t&&n.preventDefault&&n.preventDefault()};n.sizeElement=function(n,t,i,r,u){n&&(n.style.height=u+"px",n.height=u,n.style.width=r+"px",n.width=r,n.style.left=t+"px",n.style.top=i+"px")}}.call("undefined"!=typeof window?window:this),function(){"use strict";var o,i=this,f=[],n=i.jsPlumbUtil,u=function(){return""+(new Date).getTime()},h=function(n){if(n._jsPlumb.paintStyle&&n._jsPlumb.hoverPaintStyle){var i={};t.extend(i,n._jsPlumb.paintStyle);t.extend(i,n._jsPlumb.hoverPaintStyle);delete n._jsPlumb.hoverPaintStyle;i.gradient&&n._jsPlumb.paintStyle.fillStyle&&delete i.gradient;n._jsPlumb.hoverPaintStyle=i}},c=["tap","dbltap","click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","contextmenu"],w=function(n,t,i,r){var f=n.getAttachedElements(),u,e;if(f)for(u=0,e=f.length;e>u;u++)r&&r==f[u]||f[u].setHover(t,!0,i)},e=function(n){return null==n?null:n.split(" ")},l=function(n,t,i){for(var r in t)n[r]=i},a=function(t,i){i=n.isArray(i)||null!=i.length&&!n.isString(i)?i:[i];for(var r=0;r<i.length;r++)try{t.apply(i[r],[i[r]])}catch(u){n.log(".each iteration failed : "+u)}},r=function(t,i,r){var f,c,e,o;if(t.getDefaultType){var a=t.getTypeDescriptor(),s={},h=t.getDefaultType(),u=n.merge({},h);for(l(s,h,"__default"),f=0,c=t._jsPlumb.types.length;c>f;f++)e=t._jsPlumb.types[f],"__default"!==e&&(o=t._jsPlumb.instance.getType(e,a),null!=o&&(u=n.merge(u,o,["cssClass"]),l(s,o,e)));i&&(u=n.populate(u,i,"_"));t.applyType(u,r,s);r||t.repaint()}},v=i.jsPlumbUIComponent=function(i){var u,f,r,e,o,s;n.EventGenerator.apply(this,arguments);var h=this,c=arguments,l=h.idPrefix,a=l+(new Date).getTime();if(this._jsPlumb={instance:i._jsPlumb,parameters:i.parameters||{},paintStyle:null,hoverPaintStyle:null,paintStyleInUse:null,hover:!1,beforeDetach:i.beforeDetach,beforeDrop:i.beforeDrop,overlayPlacements:[],hoverClass:i.hoverClass||i._jsPlumb.Defaults.HoverClass,types:[],typeCache:{}},this.cacheTypeItem=function(n,t,i){this._jsPlumb.typeCache[i]=this._jsPlumb.typeCache[i]||{};this._jsPlumb.typeCache[i][n]=t},this.getCachedTypeItem=function(n,t){return this._jsPlumb.typeCache[t]?this._jsPlumb.typeCache[t][n]:null},this.getId=function(){return a},u=i.overlays||[],f={},this.defaultOverlayKeys){for(r=0;r<this.defaultOverlayKeys.length;r++)Array.prototype.push.apply(u,this._jsPlumb.instance.Defaults[this.defaultOverlayKeys[r]]||[]);for(r=0;r<u.length;r++)e=t.convertToFullOverlaySpec(u[r]),f[e[1].id]=e}if(o={overlays:f,parameters:i.parameters||{},scope:i.scope||this._jsPlumb.instance.getDefaultScope()},this.getDefaultType=function(){return o},this.appendToDefaultType=function(n){for(var t in n)o[t]=n[t]},i.events)for(r in i.events)h.bind(r,i.events[r]);this.clone=function(){var n=Object.create(this.constructor.prototype);return this.constructor.apply(n,c),n}.bind(this);this.isDetachAllowed=function(t){var i=!0;if(this._jsPlumb.beforeDetach)try{i=this._jsPlumb.beforeDetach(t)}catch(r){n.log("jsPlumb: beforeDetach callback failed",r)}return i};this.isDropAllowed=function(t,i,r,u,f,e,o){var s=this._jsPlumb.instance.checkCondition("beforeDrop",{sourceId:t,targetId:i,scope:r,connection:u,dropEndpoint:f,source:e,target:o});if(this._jsPlumb.beforeDrop)try{s=this._jsPlumb.beforeDrop({sourceId:t,targetId:i,scope:r,connection:u,dropEndpoint:f,source:e,target:o})}catch(h){n.log("jsPlumb: beforeDrop callback failed",h)}return s};s=[];this.setListenerComponent=function(n){for(var t=0;t<s.length;t++)s[t][3]=n}},s=function(n,t){var r=n._jsPlumb.types[t],i=n._jsPlumb.instance.getType(r,n.getTypeDescriptor());null!=i&&i.cssClass&&n.canvas&&n._jsPlumb.instance.removeClass(n.canvas,i.cssClass)},t;n.extend(i.jsPlumbUIComponent,n.EventGenerator,{getParameter:function(n){return this._jsPlumb.parameters[n]},setParameter:function(n,t){this._jsPlumb.parameters[n]=t},getParameters:function(){return this._jsPlumb.parameters},setParameters:function(n){this._jsPlumb.parameters=n},getClass:function(){return t.getClass(this.canvas)},hasClass:function(n){return t.hasClass(this.canvas,n)},addClass:function(n){t.addClass(this.canvas,n)},removeClass:function(n){t.removeClass(this.canvas,n)},updateClasses:function(n,i){t.updateClasses(this.canvas,n,i)},setType:function(n,t,i){this.clearTypes();this._jsPlumb.types=e(n)||[];r(this,t,i)},getType:function(){return this._jsPlumb.types},reapplyTypes:function(n,t){r(this,n,t)},hasType:function(n){return-1!=this._jsPlumb.types.indexOf(n)},addType:function(n,t,i){var f=e(n),o=!1,u,s;if(null!=f){for(u=0,s=f.length;s>u;u++)this.hasType(f[u])||(this._jsPlumb.types.push(f[u]),o=!0);o&&r(this,t,i)}},removeType:function(n,t,i){var f=e(n),o=!1,c=function(n){var t=this._jsPlumb.types.indexOf(n);return-1!=t?(s(this,t),this._jsPlumb.types.splice(t,1),!0):!1}.bind(this),u,h;if(null!=f){for(u=0,h=f.length;h>u;u++)o=c(f[u])||o;o&&r(this,t,i)}},clearTypes:function(n,t){for(var u=this._jsPlumb.types.length,i=0;u>i;i++)s(this,0),this._jsPlumb.types.splice(0,1);r(this,n,t)},toggleType:function(n,t,i){var f=e(n),u,h,o;if(null!=f){for(u=0,h=f.length;h>u;u++)o=this._jsPlumb.types.indexOf(f[u]),-1!=o?(s(this,o),this._jsPlumb.types.splice(o,1)):this._jsPlumb.types.push(f[u]);r(this,t,i)}},applyType:function(n,t){if(this.setPaintStyle(n.paintStyle,t),this.setHoverPaintStyle(n.hoverPaintStyle,t),n.parameters)for(var i in n.parameters)this.setParameter(i,n.parameters[i]);this._jsPlumb.paintStyleInUse=this.getPaintStyle()},setPaintStyle:function(n,t){this._jsPlumb.paintStyle=n;this._jsPlumb.paintStyleInUse=this._jsPlumb.paintStyle;h(this);t||this.repaint()},getPaintStyle:function(){return this._jsPlumb.paintStyle},setHoverPaintStyle:function(n,t){this._jsPlumb.hoverPaintStyle=n;h(this);t||this.repaint()},getHoverPaintStyle:function(){return this._jsPlumb.hoverPaintStyle},destroy:function(n){(n||null==this.typeId)&&(this.cleanupListeners(),this.clone=null,this._jsPlumb=null)},isHover:function(){return this._jsPlumb.hover},setHover:function(n,t,i){if(this._jsPlumb&&!this._jsPlumb.instance.currentlyDragging&&!this._jsPlumb.instance.isHoverSuspended()){if(this._jsPlumb.hover=n,null!=this.canvas){if(null!=this._jsPlumb.instance.hoverClass){var r=n?"addClass":"removeClass";this._jsPlumb.instance[r](this.canvas,this._jsPlumb.instance.hoverClass)}null!=this._jsPlumb.hoverClass&&this._jsPlumb.instance[r](this.canvas,this._jsPlumb.hoverClass)}null!=this._jsPlumb.hoverPaintStyle&&(this._jsPlumb.paintStyleInUse=n?this._jsPlumb.hoverPaintStyle:this._jsPlumb.paintStyle,this._jsPlumb.instance.isSuspendDrawing()||(i=i||u(),this.repaint({timestamp:i,recalc:!1})));this.getAttachedElements&&!t&&w(this,n,u(),this)}}});var y=0,b=function(){var n=y+1;return y++,n},p=i.jsPlumbInstance=function(r){var ni,k,d,nr,fi,ei,tr,bt,si,rr,hi,gt,ci,lt,at,li,ai,vi;this.Defaults={Anchor:"Bottom",Anchors:[null,null],ConnectionsDetachable:!0,ConnectionOverlays:[],Connector:"Bezier",Container:null,DoNotThrowErrors:!1,DragOptions:{},DropOptions:{},Endpoint:"Dot",EndpointOverlays:[],Endpoints:[null,null],EndpointStyle:{fillStyle:"#456"},EndpointStyles:[null,null],EndpointHoverStyle:null,EndpointHoverStyles:[null,null],HoverPaintStyle:null,LabelStyle:{color:"black"},LogEnabled:!1,Overlays:[],MaxConnections:1,PaintStyle:{lineWidth:4,strokeStyle:"#456"},ReattachConnections:!1,RenderMode:"svg",Scope:"jsPlumb_DefaultScope"};r&&t.extend(this.Defaults,r);this.logEnabled=this.Defaults.LogEnabled;this._connectionTypes={};this._endpointTypes={};n.EventGenerator.apply(this);var e=this,yi=b(),ur=e.bind,pi={},vt=1,l=function(t){if(null==t)return null;if(3==t.nodeType||8==t.nodeType)return{el:t,text:!0};var i=e.getElement(t);return{el:i,id:n.isString(t)&&null==i?t:p(i)}};this.getInstanceIndex=function(){return yi};this.setZoom=function(n,t){return vt=n,e.fire("zoom",vt),t&&e.repaintEverything(),!0};this.getZoom=function(){return vt};for(ni in this.Defaults)pi[ni]=this.Defaults[ni];d=[];this.unbindContainer=function(){if(null!=k&&d.length>0)for(var n=0;n<d.length;n++)e.off(k,d[n][0],d[n][1])};this.setContainer=function(n){var i,o,t;this.unbindContainer();n=this.getElement(n);this.select().each(function(t){t.moveParent(n)});this.selectEndpoints().each(function(t){t.moveParent(n)});i=k;k=n;d.length=0;for(var s={endpointclick:"endpointClick",endpointdblclick:"endpointDblClick"},r=function(n,t,i){var r=t.srcElement||t.target,u=(r&&r.parentNode?r.parentNode._jsPlumb:null)||(r?r._jsPlumb:null)||(r&&r.parentNode&&r.parentNode.parentNode?r.parentNode.parentNode._jsPlumb:null),f;u&&(u.fire(n,u,t),f=i?s[i+n]||n:n,e.fire(f,u.component||u,t))},u=function(n,t,i){d.push([n,i]);e.on(k,n,t,i)},h=function(n){u(n,".jsplumb-connector",function(t){r(n,t)});u(n,".jsplumb-endpoint",function(t){r(n,t,"endpoint")});u(n,".jsplumb-overlay",function(t){r(n,t)})},f=0;f<c.length;f++)h(c[f]);for(o in y)t=y[o].el,t.parentNode===i&&(i.removeChild(t),k.appendChild(t))};this.getContainer=function(){return k};this.bind=function(n,t){"ready"===n&&ti?t():ur.apply(e,[n,t])};e.importDefaults=function(n){for(var t in n)e.Defaults[t]=n[t];return n.Container&&e.setContainer(n.Container),e};e.restoreDefaults=function(){return e.Defaults=t.extend({},pi),e};var wi=null,ti=!1,g=[],s={},nt={},y={},h={},yt={},rt={},bi=!1,w=[],ut=!1,ft=null,ki=this.Defaults.Scope,fr=1,ot=function(){return""+fr++},er=function(n,t){k?k.appendChild(n):t?this.getElement(t).appendChild(n):this.appendToRoot(n)}.bind(this),st=function(n,i,r,f){var s,o,c,h,l;if(!t.headless&&!ut){if(s=p(n),o=e.getDragManager().getElementsForDraggable(s),null==r&&(r=u()),c=dt({elId:s,offset:i,recalc:!1,timestamp:r}),o)for(h in o)dt({elId:o[h].id,offset:{left:c.o.left+o[h].offset.left,top:c.o.top+o[h].offset.top},recalc:!1,timestamp:r});if(e.anchorManager.redraw(s,i,r,null,f),o)for(l in o)e.anchorManager.redraw(o[l].id,i,r,o[l].offset,f,!0)}},ht=function(n){return nt[n]},or=function(i,r,u,f,o){var a,s,c,l;if(!t.headless&&(a=null==r?!1:r,a&&t.isDragSupported(i,e)))if(s=u||e.Defaults.DragOptions,s=t.extend({},s),t.isAlreadyDraggable(i,e))u.force&&e.initDraggable(i,s);else{var v=t.dragEvents.drag,y=t.dragEvents.stop,w=t.dragEvents.start,h=!1;oi(f,i);s[w]=n.wrap(s[w],function(){return e.setHoverSuspended(!0),e.select({source:i}).addClass(e.elementDraggingClass+" "+e.sourceElementDraggingClass,!0),e.select({target:i}).addClass(e.elementDraggingClass+" "+e.targetElementDraggingClass,!0),e.setConnectionBeingDragged(!0),s.canDrag?u.canDrag():void 0},!1);s[v]=n.wrap(s[v],function(){var n=e.getUIPosition(arguments,e.getZoom());null!=n&&(st(i,n,null,!0),h&&e.addClass(i,"jsplumb-dragged"),h=!0)});s[y]=n.wrap(s[y],function(){for(var t,i=arguments[0].selection,r=function(n){null!=n[1]&&(t=e.getUIPosition([{el:n[2].el,pos:[n[1].left,n[1].top]}]),st(n[2].el,t));e.removeClass(n[0],"jsplumb-dragged");e.select({source:n[2].el}).removeClass(e.elementDraggingClass+" "+e.sourceElementDraggingClass,!0);e.select({target:n[2].el}).removeClass(e.elementDraggingClass+" "+e.targetElementDraggingClass,!0);e.getDragManager().dragEnded(n[2].el)},n=0;n<i.length;n++)r(i[n]);h=!1;e.setHoverSuspended(!1);e.setConnectionBeingDragged(!1)});c=p(i);rt[c]=!0;l=rt[c];s.disabled=null==l?!1:!l;e.initDraggable(i,s);e.getDragManager().register(i);o&&e.fire("elementDraggable",{el:i,options:s})}},sr=function(n,t){for(var i,u=n.scope.split(/\s/),f=t.scope.split(/\s/),r=0;r<u.length;r++)for(i=0;i<f.length;i++)if(f[i]==u[r])return!0;return!1},hr=function(i,r){var u=t.extend({},i),f,o;if(r&&t.extend(u,r),u.source&&(u.source.endpoint?u.sourceEndpoint=u.source:u.source=e.getElement(u.source)),u.target&&(u.target.endpoint?u.targetEndpoint=u.target:u.target=e.getElement(u.target)),i.uuids&&(u.sourceEndpoint=ht(i.uuids[0]),u.targetEndpoint=ht(i.uuids[1])),u.sourceEndpoint&&u.sourceEndpoint.isFull())return n.log(e,"could not add connection; source endpoint is full"),void 0;if(u.targetEndpoint&&u.targetEndpoint.isFull())return n.log(e,"could not add connection; target endpoint is full"),void 0;if(!u.type&&u.sourceEndpoint&&(u.type=u.sourceEndpoint.connectionType),u.sourceEndpoint&&u.sourceEndpoint.connectorOverlays)for(u.overlays=u.overlays||[],f=0,o=u.sourceEndpoint.connectorOverlays.length;o>f;f++)u.overlays.push(u.sourceEndpoint.connectorOverlays[f]);u.sourceEndpoint&&u.sourceEndpoint.scope&&(u.scope=u.sourceEndpoint.scope);!u["pointer-events"]&&u.sourceEndpoint&&u.sourceEndpoint.connectorPointerEvents&&(u["pointer-events"]=u.sourceEndpoint.connectorPointerEvents);var h=function(n,i){var u=t.extend({},n),r;for(r in i)i[r]&&(u[r]=i[r]);return u},c=function(n,t,i){return e.addEndpoint(n,h(t,{anchor:u.anchors?u.anchors[i]:u.anchor,endpoint:u.endpoints?u.endpoints[i]:u.endpoint,paintStyle:u.endpointStyles?u.endpointStyles[i]:u.endpointStyle,hoverPaintStyle:u.endpointHoverStyles?u.endpointHoverStyles[i]:u.endpointHoverStyle}))},s=function(n,t,i,r){var o,f,e;if(u[n]&&!u[n].endpoint&&!u[n+"Endpoint"]&&!u.newConnection&&(o=p(u[n]),f=i[o],f=f?f[r]:null)){if(!f.enabled||(e=null!=f.endpoint&&f.endpoint._jsPlumb?f.endpoint:c(u[n],f.def,t),e.isFull()))return!1;u[n+"Endpoint"]=e;e._doNotDeleteOnDetach=!1;e._deleteOnDetach=!0;f.uniqueEndpoint&&(f.endpoint?e.finalEndpoint=f.endpoint:(f.endpoint=e,e._deleteOnDetach=!1,e._doNotDeleteOnDetach=!0))}};if(s("source",0,this.sourceEndpointDefinitions,u.type||"default")!==!1&&s("target",1,this.targetEndpointDefinitions,u.type||"default")!==!1)return(u.sourceEndpoint&&u.targetEndpoint&&(sr(u.sourceEndpoint,u.targetEndpoint)||(u=null)),u)}.bind(e),ii=function(n){var i=e.Defaults.ConnectionType||e.getDefaultConnectionType(),t;return n._jsPlumb=e,n.newConnection=ii,n.newEndpoint=ri,n.endpointsByUUID=nt,n.endpointsByElement=s,n.finaliseConnection=di,n.id="con_"+ot(),t=new i(n),t.isDetachable()&&(t.endpoints[0].initDraggable("_jsPlumbSource"),t.endpoints[1].initDraggable("_jsPlumbTarget")),t},di=e.finaliseConnection=function(n,t,i,r){if(t=t||{},n.suspendedEndpoint||g.push(n),n.pending=null,n.endpoints[0].isTemporarySource=!1,r!==!1&&e.anchorManager.newConnection(n),st(n.source),!t.doNotFireConnectionEvent&&t.fireEvent!==!1){var u={connection:n,source:n.source,target:n.target,sourceId:n.sourceId,targetId:n.targetId,sourceEndpoint:n.endpoints[0],targetEndpoint:n.endpoints[1]};e.fire("connection",u,i)}},ri=function(n,i){var f=e.Defaults.EndpointType||t.Endpoint,r=t.extend({},n),u;return r._jsPlumb=e,r.newConnection=ii,r.newEndpoint=ri,r.endpointsByUUID=nt,r.endpointsByElement=s,r.fireDetachEvent=ei,r.elementId=i||p(r.source),u=new f(r),u.id="ep_"+ot(),oi(r.elementId,r.source),t.headless||e.getDragManager().endpointAdded(r.source,i),u},ui=function(n,t,i){var r=s[n],u,e,f,o,h;if(r&&r.length)for(u=0,e=r.length;e>u;u++){for(f=0,o=r[u].connections.length;o>f;f++)if(h=t(r[u].connections[f]),h)return;i&&i(r[u])}},cr=function(n,i){return t.each(n,function(n){e.isDragSupported(n)&&(rt[e.getAttribute(n,"id")]=i,e.setElementDraggable(n,i))})},gi=function(n,t,i){var r,u;t="block"===t;r=null;i&&(r=function(n){n.setVisible(t,!0,!0)});u=l(n);ui(u.id,function(n){if(t&&i){var r=n.sourceId===u.id?1:0;n.endpoints[r].isVisible()&&n.setVisible(!0)}else n.setVisible(t)},r)},lr=function(n){var i;return t.each(n,function(n){var t=e.getAttribute(n,"id");return i=null==rt[t]?!1:rt[t],i=!i,rt[t]=i,e.setDraggable(n,i),i}.bind(this)),i},ar=function(n,t){var i=null;t&&(i=function(n){var t=n.isVisible();n.setVisible(!t)});ui(n,function(n){var t=n.isVisible();n.setVisible(!t)},i)},vr=function(n){var t=h[n];return t?{o:t,s:w[n]}:dt({elId:n})},p=function(t,i,r){if(n.isString(t))return t;if(null==t)return null;var u=e.getAttribute(t,"id");return u&&"undefined"!==u||(2==arguments.length&&void 0!==arguments[1]?u=i:(1==arguments.length||3==arguments.length&&!arguments[2])&&(u="jsPlumb_"+yi+"_"+ot()),r||e.setAttribute(t,"id",u)),u};this.setConnectionBeingDragged=function(n){bi=n};this.isConnectionBeingDragged=function(){return bi};this.getManagedElements=function(){return y};this.getRenderMode=function(){return"svg"};this.connectorClass="jsplumb-connector";this.connectorOutlineClass="jsplumb-connector-outline";this.editableConnectorClass="jsplumb-connector-editable";this.connectedClass="jsplumb-connected";this.hoverClass="jsplumb-hover";this.endpointClass="jsplumb-endpoint";this.endpointConnectedClass="jsplumb-endpoint-connected";this.endpointFullClass="jsplumb-endpoint-full";this.endpointDropAllowedClass="jsplumb-endpoint-drop-allowed";this.endpointDropForbiddenClass="jsplumb-endpoint-drop-forbidden";this.overlayClass="jsplumb-overlay";this.draggingClass="jsplumb-dragging";this.elementDraggingClass="jsplumb-element-dragging";this.sourceElementDraggingClass="jsplumb-source-element-dragging";this.targetElementDraggingClass="jsplumb-target-element-dragging";this.endpointAnchorClassPrefix="jsplumb-endpoint-anchor";this.hoverSourceClass="jsplumb-source-hover";this.hoverTargetClass="jsplumb-target-hover";this.dragSelectClass="jsplumb-drag-select";this.Anchors={};this.Connectors={svg:{}};this.Endpoints={svg:{}};this.Overlays={svg:{}};this.ConnectorRenderers={};this.SVG="svg";this.addEndpoint=function(i,r,u){var f;u=u||{};f=t.extend({},u);t.extend(f,r);f.endpoint=f.endpoint||e.Defaults.Endpoint;f.paintStyle=f.paintStyle||e.Defaults.EndpointStyle;for(var h=[],a=n.isArray(i)||null!=i.length&&!n.isString(i)?i:[i],l=0,y=a.length;y>l;l++){f.source=e.getElement(a[l]);kt(f.source);var c=p(f.source),o=ri(f,c),v=oi(c,f.source).info.o;n.addToList(s,c,o);ut||o.paint({anchorLoc:o.anchor.compute({xy:[v.left,v.top],wh:w[c],element:o,timestamp:ft}),timestamp:ft});h.push(o);o._doNotDeleteOnDetach=!0}return 1==h.length?h[0]:h};this.addEndpoints=function(t,i,r){for(var u,f=[],o=0,s=i.length;s>o;o++)u=e.addEndpoint(t,i[o],r),n.isArray(u)?Array.prototype.push.apply(f,u):f.push(u);return f};this.animate=function(i,r,u){if(!this.animationSupported)return!1;u=u||{};var f=e.getElement(i),o=p(f),s=t.animEvents.step,h=t.animEvents.complete;u[s]=n.wrap(u[s],function(){e.revalidate(o)});u[h]=n.wrap(u[h],function(){e.revalidate(o)});e.doAnimate(f,r,u)};this.checkCondition=function(t){var i=e.getListener(t),u=!0,f,r,o;if(i&&i.length>0){f=Array.prototype.slice.call(arguments,1);try{for(r=0,o=i.length;o>r;r++)u=u&&i[r].apply(i[r],f)}catch(s){n.log(e,"cannot check condition ["+t+"]"+s)}}return u};this.connect=function(t,i){var u,r=hr(t,i);if(r){if(null==r.source&&null==r.sourceEndpoint)return n.log("Cannot establish connection - source does not exist"),void 0;if(null==r.target&&null==r.targetEndpoint)return n.log("Cannot establish connection - target does not exist"),void 0;kt(r.source);u=ii(r);di(u,r)}return u};nr=[{el:"source",elId:"sourceId",epDefs:"sourceEndpointDefinitions"},{el:"target",elId:"targetId",epDefs:"targetEndpointDefinitions"}];fi=function(n,i,r,u){var f,h,e,s=nr[r],l=n[s.elId],a=(n[s.el],n.endpoints[r]),c={index:r,originalSourceId:0===r?l:n.sourceId,newSourceId:n.sourceId,originalTargetId:1==r?l:n.targetId,newTargetId:n.targetId,connection:n},o;if(i.constructor==t.Endpoint)f=i,f.addConnection(n),i=f.element;else if(h=p(i),e=this[s.epDefs][h],h===n[s.elId])f=null;else if(e)for(o in e){if(!e[o].enabled)return;f=null!=e[o].endpoint&&e[o].endpoint._jsPlumb?e[o].endpoint:this.addEndpoint(i,e[o].def);e[o].uniqueEndpoint&&(e[o].endpoint=f);f._doNotDeleteOnDetach=!1;f._deleteOnDetach=!0;f.addConnection(n)}else f=n.makeEndpoint(0===r,i,h),f._doNotDeleteOnDetach=!1,f._deleteOnDetach=!0;return null!=f&&(a.detachFromConnection(n),n.endpoints[r]=f,n[s.el]=f.element,n[s.elId]=f.elementId,c[0===r?"newSourceId":"newTargetId"]=f.elementId,tr(c),u||n.repaint()),c.element=i,c}.bind(this);this.setSource=function(n,t,i){var r=fi(n,t,0,i);this.anchorManager.sourceChanged(r.originalSourceId,r.newSourceId,n,r.el)};this.setTarget=function(n,t,i){var r=fi(n,t,1,i);this.anchorManager.updateOtherEndpoint(r.originalSourceId,r.originalTargetId,r.newTargetId,n)};this.deleteEndpoint=function(n,t,i){var r="string"==typeof n?nt[n]:n;return r&&e.deleteObject({endpoint:r,dontUpdateHover:t,deleteAttachedObjects:i}),e};this.deleteEveryEndpoint=function(){var u=e.setSuspendDrawing(!0),i,n,t,r;for(i in s)if(n=s[i],n&&n.length)for(t=0,r=n.length;r>t;t++)e.deleteEndpoint(n[t],!0);return s={},y={},nt={},h={},yt={},e.anchorManager.reset(),e.getDragManager().reset(),u||e.setSuspendDrawing(!1),e};ei=function(n,t,i){var u=e.Defaults.ConnectionType||e.getDefaultConnectionType(),f=n.constructor==u,r=f?{connection:n,source:n.source,target:n.target,sourceId:n.sourceId,targetId:n.targetId,sourceEndpoint:n.endpoints[0],targetEndpoint:n.endpoints[1]}:n;t&&e.fire("connectionDetached",r,i);e.anchorManager.connectionDetached(r)};tr=e.fireMoveEvent=function(n,t){e.fire("connectionMoved",n,t)};this.unregisterEndpoint=function(n){var t,i;n._jsPlumb.uuid&&(nt[n._jsPlumb.uuid]=null);e.anchorManager.deleteEndpoint(n);for(t in s){if(i=s[t],i){for(var u=[],r=0,f=i.length;f>r;r++)i[r]!=n&&u.push(i[r]);s[t]=u}s[t].length<1&&delete s[t]}};this.detach=function(){var r,f,h;if(0!==arguments.length){var c=e.Defaults.ConnectionType||e.getDefaultConnectionType(),o=arguments[0].constructor==c,u=2==arguments.length?o?arguments[1]||{}:arguments[0]:arguments[0],s=u.fireEvent!==!1,l=u.forceDetach,i=o?arguments[0]:u.connection,a=o?null:u.deleteAttachedObjects;i?(l||n.functionChain(!0,!1,[[i.endpoints[0],"isDetachAllowed",[i]],[i.endpoints[1],"isDetachAllowed",[i]],[i,"isDetachAllowed",[i]],[e,"checkCondition",["beforeDetach",i]]]))&&i.endpoints[0].detach({connection:i,ignoreTarget:!1,forceDetach:!0,fireEvent:s,deleteAttachedObjects:a}):(r=t.extend({},u),r.uuids?ht(r.uuids[0]).detachFrom(ht(r.uuids[1]),s):r.sourceEndpoint&&r.targetEndpoint?r.sourceEndpoint.detachFrom(r.targetEndpoint):(f=p(e.getElement(r.source)),h=p(e.getElement(r.target)),ui(f,function(n){(n.sourceId==f&&n.targetId==h||n.targetId==f&&n.sourceId==h)&&e.checkCondition("beforeDetach",n)&&n.endpoints[0].detach({connection:n,ignoreTarget:!1,forceDetach:!0,fireEvent:s})})))}};this.detachAllConnections=function(n,t){var u,i,r,f;if(t=t||{},n=e.getElement(n),u=p(n),i=s[u],i&&i.length)for(r=0,f=i.length;f>r;r++)i[r].detachAll(t.fireEvent!==!1,t.forceDetach);return e};this.detachEveryConnection=function(n){return n=n||{},e.batch(function(){var r,t,i,u;for(r in s)if(t=s[r],t&&t.length)for(i=0,u=t.length;u>i;i++)t[i].detachAll(n.fireEvent!==!1,n.forceDetach);g.length=0}),e};this.deleteObject=function(t){var i={endpoints:{},connections:{},endpointCount:0,connectionCount:0},o=(t.fireEvent!==!1,t.deleteAttachedObjects!==!1),s=function(n){if(null!=n&&null==i.connections[n.id]&&(t.dontUpdateHover||null==n._jsPlumb||n.setHover(!1),i.connections[n.id]=n,i.connectionCount++,o))for(var r=0;r<n.endpoints.length;r++)n.endpoints[r]._deleteOnDetach&&h(n.endpoints[r])},h=function(n){var r,u;if(null!=n&&null==i.endpoints[n.id]&&(t.dontUpdateHover||null==n._jsPlumb||n.setHover(!1),i.endpoints[n.id]=n,i.endpointCount++,o))for(r=0;r<n.connections.length;r++)u=n.connections[r],s(u)},c,r,f,l,u;t.connection?s(t.connection):h(t.endpoint);for(c in i.connections)r=i.connections[c],r._jsPlumb&&(n.removeWithFunction(g,function(n){return r.id==n.id}),ei(r,t.fireEvent===!1?!1:!r.pending,t.originalEvent),f=null==t.deleteAttachedObjects?null:!t.deleteAttachedObjects,r.endpoints[0].detachFromConnection(r,null,f),r.endpoints[1].detachFromConnection(r,null,f),r.cleanup(!0),r.destroy(!0));for(l in i.endpoints)u=i.endpoints[l],u._jsPlumb&&(e.unregisterEndpoint(u),u.cleanup(!0),u.destroy(!0));return i};this.draggable=function(n,t){var i;return a(function(n){i=l(n);i.el&&or(i.el,!0,t,i.id,!0)},n),e};this.droppable=function(n,t){var i;return t=t||{},t.allowLoopback=!1,a(function(n){i=l(n);i.el&&e.initDroppable(i.el,t)},n),e};var yr=function(n,t,i,r){for(var u=0,f=n.length;f>u;u++)n[u][t].apply(n[u],i);return r(n)},pr=function(n,t,i){for(var u=[],r=0,f=n.length;f>r;r++)u.push([n[r][t].apply(n[r],i),n[r]]);return u},et=function(n,t,i){return function(){return yr(n,t,arguments,i)}},pt=function(n,t){return function(){return pr(n,t,arguments)}},tt=function(n,t){var i=[],r,u;if(n)if("string"==typeof n){if("*"===n)return n;i.push(n)}else if(t)i=n;else if(n.length)for(r=0,u=n.length;u>r;r++)i.push(l(n[r]).id);else i.push(l(n).id);return i},it=function(n,t,i){return"*"===n?!0:n.length>0?-1!=n.indexOf(t):!i};this.getConnections=function(n,t){n?n.constructor==String&&(n={scope:n}):n={};for(var o=n.scope||e.getDefaultScope(),u=tt(o,!0),s=tt(n.source),h=tt(n.target),r=!t&&u.length>1?{}:[],c=function(n,i){if(!t&&u.length>1){var f=r[n];null==f&&(f=r[n]=[]);f.push(i)}else r.push(i)},f=0,l=g.length;l>f;f++){var i=g[f],a=i.proxies&&i.proxies[0]?i.proxies[0].originalEp.elementId:i.sourceId,v=i.proxies&&i.proxies[1]?i.proxies[1].originalEp.elementId:i.targetId;it(u,i.scope)&&it(s,a)&&it(h,v)&&c(i.scope,i)}return r};var wr=function(n,t){return function(i){for(var r=0,u=n.length;u>r;r++)i(n[r]);return t(n)}},br=function(n){return function(t){return n[t]}},ir=function(n,t){for(var u={length:n.length,each:wr(n,t),get:br(n)},f=["setHover","removeAllOverlays","setLabel","addClass","addOverlay","removeOverlay","removeOverlays","showOverlay","hideOverlay","showOverlays","hideOverlays","setPaintStyle","setHoverPaintStyle","setSuspendEvents","setParameter","setParameters","setVisible","repaint","addType","toggleType","removeType","removeClass","setType","bind","unbind"],e=["getLabel","getOverlay","isHover","getParameter","getParameters","getPaintStyle","getHoverPaintStyle","isVisible","hasType","getType","isSuspendEvents"],i=0,r=f.length;r>i;i++)u[f[i]]=et(n,f[i],t);for(i=0,r=e.length;r>i;i++)u[e[i]]=pt(n,e[i]);return u},ct=function(n){var i=ir(n,ct);return t.extend(i,{setDetachable:et(n,"setDetachable",ct),setReattach:et(n,"setReattach",ct),setConnector:et(n,"setConnector",ct),detach:function(){for(var t=0,i=n.length;i>t;t++)e.detach(n[t])},isDetachable:pt(n,"isDetachable"),isReattach:pt(n,"isReattach")})},wt=function(n){var i=ir(n,wt);return t.extend(i,{setEnabled:et(n,"setEnabled",wt),setAnchor:et(n,"setAnchor",wt),isEnabled:pt(n,"isEnabled"),detachAll:function(){for(var t=0,i=n.length;i>t;t++)n[t].detachAll()},remove:function(){for(var t=0,i=n.length;i>t;t++)e.deleteObject({endpoint:n[t]})}})};this.select=function(n){return n=n||{},n.scope=n.scope||"*",ct(n.connections||e.getConnections(n,!0))};this.selectEndpoints=function(n){var t,r,h,i,c,l;n=n||{};n.scope=n.scope||"*";var u=!n.element&&!n.source&&!n.target,a=u?"*":tt(n.element),f=u?"*":tt(n.source),e=u?"*":tt(n.target),v=tt(n.scope,!0),o=[];for(t in s){var y=it(a,t,!0),p=it(f,t,!0),w="*"!=f,b=it(e,t,!0),k="*"!=e;if(y||p||b)n:for(r=0,h=s[t].length;h>r;r++)if(i=s[t][r],it(v,i.scope,!0)){if(c=w&&f.length>0&&!i.isSource,l=k&&e.length>0&&!i.isTarget,c||l)continue n;o.push(i)}}return wt(o)};this.getAllConnections=function(){return g};this.getDefaultScope=function(){return ki};this.getEndpoint=ht;this.getEndpoints=function(n){return s[l(n).id]};this.getDefaultEndpointType=function(){return t.Endpoint};this.getDefaultConnectionType=function(){return t.Connection};this.getId=p;this.appendElement=er;bt=!1;this.isHoverSuspended=function(){return bt};this.setHoverSuspended=function(n){bt=n};this.hide=function(n,t){return gi(n,"none",t),e};this.idstamp=ot;this.connectorsInitialized=!1;this.registerConnectorType=function(n,t){f.push([n,t])};var kt=function(n){if(!k&&n){var t=e.getElement(n);t.offsetParent&&e.setContainer(t.offsetParent)}},kr=function(){e.Defaults.Container&&e.setContainer(e.Defaults.Container)},oi=e.manage=function(n,t,i){return y[n]||(y[n]={el:t,endpoints:[],connections:[]},y[n].info=dt({elId:n,timestamp:ft}),i||e.fire("manageElement",{id:n,info:y[n].info,el:t})),y[n]},dt=this.updateOffset=function(n){var i,r=n.timestamp,u=n.recalc,f=n.offset,t=n.elId;return ut&&!r&&(r=ft),!u&&r&&r===yt[t]?{o:n.offset||h[t],s:w[t]}:(u||!f&&null==h[t]?(i=y[t]?y[t].el:null,null!=i&&(w[t]=e.getSize(i),h[t]=e.getOffset(i),yt[t]=r)):(h[t]=f||h[t],null==w[t]&&(i=y[t].el,null!=i&&(w[t]=e.getSize(i))),yt[t]=r),h[t]&&!h[t].right&&(h[t].right=h[t].left+w[t][0],h[t].bottom=h[t].top+w[t][1],h[t].width=w[t][0],h[t].height=w[t][1],h[t].centerx=h[t].left+h[t].width/2,h[t].centery=h[t].top+h[t].height/2),{o:h[t],s:w[t]})};this.init=function(){var u,t,r;if(o=i.jsPlumb.getRenderModes(),u=function(t,r,u){i.jsPlumb.Connectors[t][r]=function(){u.apply(this,arguments);i.jsPlumb.ConnectorRenderers[t].apply(this,arguments)};n.extend(i.jsPlumb.Connectors[t][r],[u,i.jsPlumb.ConnectorRenderers[t]])},!i.jsPlumb.connectorsInitialized){for(t=0;t<f.length;t++)for(r=0;r<o.length;r++)u(o[r],f[t][1],f[t][0]);i.jsPlumb.connectorsInitialized=!0}ti||(kr(),e.anchorManager=new i.jsPlumb.AnchorManager({jsPlumbInstance:e}),ti=!0,e.fire("ready",e))}.bind(this);this.log=wi;this.jsPlumbUIComponent=v;this.makeAnchor=function(){var o,h=function(n,t){if(i.jsPlumb.Anchors[n])return new i.jsPlumb.Anchors[n](t);if(!e.Defaults.DoNotThrowErrors)throw{msg:"jsPlumb: unknown anchor type '"+n+"'"};},s;if(0===arguments.length)return null;var r=arguments[0],f=arguments[1],u=(arguments[2],null);return r.compute&&r.getOrientation?r:("string"==typeof r?u=h(arguments[0],{elementId:f,jsPlumbInstance:e}):n.isArray(r)&&(n.isArray(r[0])||n.isString(r[0])?2==r.length&&n.isObject(r[1])?n.isString(r[0])?(o=i.jsPlumb.extend({elementId:f,jsPlumbInstance:e},r[1]),u=h(r[0],o)):(o=i.jsPlumb.extend({elementId:f,jsPlumbInstance:e,anchors:r[0]},r[1]),u=new i.jsPlumb.DynamicAnchor(o)):u=new t.DynamicAnchor({anchors:r,selector:null,elementId:f,jsPlumbInstance:e}):(s={x:r[0],y:r[1],orientation:r.length>=4?[r[2],r[3]]:[0,0],offsets:r.length>=6?[r[4],r[5]]:[0,0],elementId:f,jsPlumbInstance:e,cssClass:7==r.length?r[6]:null},u=new i.jsPlumb.Anchor(s),u.clone=function(){return new i.jsPlumb.Anchor(s)})),u.id||(u.id="anchor_"+ot()),u)};this.makeAnchors=function(t,r,u){for(var o=[],f=0,s=t.length;s>f;f++)"string"==typeof t[f]?o.push(i.jsPlumb.Anchors[t[f]]({elementId:r,jsPlumbInstance:u})):n.isArray(t[f])&&o.push(e.makeAnchor(t[f],r,u));return o};this.makeDynamicAnchor=function(n,t){return new i.jsPlumb.DynamicAnchor({anchors:n,selector:t,elementId:null,jsPlumbInstance:e})};this.targetEndpointDefinitions={};si=function(){};this.sourceEndpointDefinitions={};rr=function(n,t,i,r,u){for(var s=n.target||n.srcElement,f=!1,o=r.getSelector(t,i),e=0;e<o.length;e++)if(o[e]==s){f=!0;break}return u?!f:f};hi=function(t,r,u,f,o){var s=new v(r),h=r._jsPlumb.EndpointDropHandler({jsPlumb:e,enabled:function(){return t.def.enabled},isFull:function(){var n=e.select({target:t.id}).length;return t.def.maxConnections>0&&n>=t.def.maxConnections},element:t.el,elementId:t.id,isSource:f,isTarget:o,addClass:function(n){e.addClass(t.el,n)},removeClass:function(n){e.removeClass(t.el,n)},onDrop:function(n){var t=n.endpoints[0];t.anchor.locked=!1},isDropAllowed:function(){return s.isDropAllowed.apply(s,arguments)},isRedrop:function(n){return null!=n.suspendedElement&&null!=n.suspendedEndpoint&&n.suspendedEndpoint.element===t.el},getEndpoint:function(n){var u=t.def.endpoint,f,o;if((null==u||null==u._jsPlumb)&&(f=e.deriveEndpointAndAnchorSpec(n.getType().join(" "),!0),o=f.endpoints?i.jsPlumb.extend(r,{endpoint:t.def.def.endpoint||f.endpoints[1]}):r,f.anchors&&(o=i.jsPlumb.extend(o,{anchor:t.def.def.anchor||f.anchors[1]})),u=e.addEndpoint(t.el,o),u._mtNew=!0),r.uniqueEndpoint&&(t.def.endpoint=u),u._doNotDeleteOnDetach=!1,u._deleteOnDetach=!0,n.isDetachable()&&u.initDraggable(),null!=u.anchor.positionFinder){var s=e.getUIPosition(arguments,e.getZoom()),c=e.getOffset(t.el),l=e.getSize(t.el),h=null==s?[0,0]:u.anchor.positionFinder(s,c,l,u.anchor.constructorParams);u.anchor.x=h[0];u.anchor.y=h[1]}return u},maybeCleanup:function(n){n._mtNew&&0===n.connections.length?e.deleteObject({endpoint:n}):delete n._mtNew}}),c=i.jsPlumb.dragEvents.drop;return u.scope=u.scope||r.scope||e.Defaults.Scope,u[c]=n.wrap(u[c],h,!0),o&&(u[i.jsPlumb.dragEvents.over]=function(){return!0}),r.allowLoopback===!1&&(u.canDrop=function(n){var i=n.getDragElement()._jsPlumbRelatedElement;return i!=t.el}),e.initDroppable(t.el,u,"internal"),h};this.makeTarget=function(n,t,r){var u=i.jsPlumb.extend({_jsPlumb:this},r);i.jsPlumb.extend(u,t);si(u,1,this);for(var o=(!(u.deleteEndpointsOnDetach===!1),u.maxConnections||-1),s=function(n){var t=l(n),r=t.id,e=i.jsPlumb.extend({},u.dropOptions||{}),f;this.targetEndpointDefinitions[r]=this.targetEndpointDefinitions[r]||{};kt(r);f={def:i.jsPlumb.extend({},u),uniqueEndpoint:u.uniqueEndpoint,maxConnections:o,enabled:!0};t.def=f;this.targetEndpointDefinitions[r]["default"]=f;hi(t,u,e,u.isSource===!0,!0);t.el._katavorioDrop[t.el._katavorioDrop.length-1].targetDef=f}.bind(this),e=n.length&&n.constructor!=String?n:[n],f=0,h=e.length;h>f;f++)s(e[f]);return this};this.unmakeTarget=function(n,t){var i=l(n);return e.destroyDroppable(i.el,"internal"),t||delete this.targetEndpointDefinitions[i.id],this};this.makeSource=function(t,r,u){var f=i.jsPlumb.extend({_jsPlumb:this},u),o,s;i.jsPlumb.extend(f,r);o=f.connectionType||"default";s=e.deriveEndpointAndAnchorSpec(o);f.endpoint=f.endpoint||s.endpoints[0];f.anchor=f.anchor||s.anchors[0];si(f,0,this);for(var c=f.maxConnections||-1,a=f.onMaxConnections,y=function(t){var u=t.id,d=this.getElement(t.el),h,v,k;this.sourceEndpointDefinitions[u]=this.sourceEndpointDefinitions[u]||{};kt(u);h={def:i.jsPlumb.extend({},f),uniqueEndpoint:f.uniqueEndpoint,maxConnections:c,enabled:!0};this.sourceEndpointDefinitions[u][o]=h;t.def=h;var y=i.jsPlumb.dragEvents.stop,p=i.jsPlumb.dragEvents.drag,s=i.jsPlumb.extend({},f.dragOptions||{}),w=s.drag,b=s.stop,r=null,l=!1;s.scope=s.scope||f.scope;s[p]=n.wrap(s[p],function(){w&&w.apply(this,arguments);l=!1});s[y]=n.wrap(s[y],function(){if(b&&b.apply(this,arguments),this.currentlyDragging=!1,null!=r._jsPlumb){var l=f.anchor||this.Defaults.Anchor,o=r.anchor,s=r.connections[0],n=this.makeAnchor(l,u,this),h=r.element;if(null!=n.positionFinder){var t=e.getOffset(h),i=this.getSize(h),a={left:t.left+o.x*i[0],top:t.top+o.y*i[1]},c=n.positionFinder(a,t,i,n.constructorParams);n.x=c[0];n.y=c[1]}r.setAnchor(n,!0);r.repaint();this.repaint(r.elementId);null!=s&&this.repaint(s.targetId)}}.bind(this));v=function(h){var v,nt,tt,w,y,p,b,k,g;if(3!==h.which&&2!==h.button&&(v=this.sourceEndpointDefinitions[u][o],v.enabled)){if((u=this.getId(this.getElement(t.el)),f.filter)&&(nt=n.isString(f.filter)?rr(h,t.el,f.filter,this,f.filterExclude):f.filter(h,t.el),nt===!1))return;if(tt=this.select({source:u}).length,v.maxConnections>=0&&tt>=v.maxConnections)return a&&a({element:t.el,maxConnections:c},h),!1;if(w=i.jsPlumb.getPositionOnElement(h,d,vt),y={},i.jsPlumb.extend(y,f),y.isTemporarySource=!0,y.anchor=[w[0],w[1],0,0],y.dragOptions=s,v.def.scope&&(y.scope=v.def.scope),r=this.addEndpoint(u,y),l=!0,r._doNotDeleteOnDetach=!1,r._deleteOnDetach=!0,v.uniqueEndpoint&&(v.endpoint?r.finalEndpoint=v.endpoint:(v.endpoint=r,r._deleteOnDetach=!1,r._doNotDeleteOnDetach=!0)),p=function(){e.off(r.canvas,"mouseup",p);e.off(t.el,"mouseup",p);l&&(l=!1,e.deleteEndpoint(r))},e.on(r.canvas,"mouseup",p),e.on(t.el,"mouseup",p),b={},v.def.extract)for(k in v.def.extract)g=(h.srcElement||h.target).getAttribute(k),g&&(b[v.def.extract[k]]=g);e.trigger(r.canvas,"mousedown",h,b);n.consume(h)}}.bind(this);this.on(t.el,"mousedown",v);h.trigger=v;f.filter&&(n.isString(f.filter)||n.isFunction(f.filter))&&e.setDragFilter(t.el,f.filter);k=i.jsPlumb.extend({},f.dropOptions||{});hi(t,f,k,!0,f.isTarget===!0)}.bind(this),v=t.length&&t.constructor!=String?t:[t],h=0,p=v.length;p>h;h++)y(l(v[h]));return this};this.unmakeSource=function(n,t,i){var r=l(n),u,f,o;if(e.destroyDroppable(r.el,"internal"),u=this.sourceEndpointDefinitions[r.id],u)for(f in u)(null==t||t===f)&&(o=u[f].trigger,o&&e.off(r.el,"mousedown",o),i||delete this.sourceEndpointDefinitions[r.id][f]);return this};this.unmakeEverySource=function(){for(var n in this.sourceEndpointDefinitions)e.unmakeSource(n,null,!0);return this.sourceEndpointDefinitions={},this};gt=function(t,i,r){var e,u,f;for(i=n.isArray(i)?i:[i],e=p(t),r=r||"default",u=0;u<i.length;u++)if(f=this[i[u]][e],f&&f[r])return f[r].def.scope||this.Defaults.Scope}.bind(this);ci=function(t,i,r,u){var o,f,e;for(r=n.isArray(r)?r:[r],o=p(t),u=u||"default",f=0;f<r.length;f++)e=this[r[f]][o],e&&e[u]&&(e[u].def.scope=i)}.bind(this);this.getScope=function(n){return gt(n,["sourceEndpointDefinitions","targetEndpointDefinitions"])};this.getSourceScope=function(n){return gt(n,"sourceEndpointDefinitions")};this.getTargetScope=function(n){return gt(n,"targetEndpointDefinitions")};this.setScope=function(n,t,i){this.setSourceScope(n,t,i);this.setTargetScope(n,t,i)};this.setSourceScope=function(n,t,i){ci(n,t,"sourceEndpointDefinitions",i);this.setDragScope(n,t)};this.setTargetScope=function(n,t,i){ci(n,t,"targetEndpointDefinitions",i);this.setDropScope(n,t)};this.unmakeEveryTarget=function(){for(var n in this.targetEndpointDefinitions)e.unmakeTarget(n,!0);return this.targetEndpointDefinitions={},this};lt=function(t,i,r,u,f){var h,o,c,s="source"==t?this.sourceEndpointDefinitions:this.targetEndpointDefinitions,a,y,v;if(f=f||"default",i.length&&!n.isString(i))for(h=[],a=0,y=i.length;y>a;a++)o=l(i[a]),s[o.id]&&s[o.id][f]&&(h[a]=s[o.id][f].enabled,c=u?!h[a]:r,s[o.id][f].enabled=c,e[c?"removeClass":"addClass"](o.el,"jtk-"+t+"-disabled"));else o=l(i),v=o.id,s[v]&&s[v][f]&&(h=s[v][f].enabled,c=u?!h:r,s[v][f].enabled=c,e[c?"removeClass":"addClass"](o.el,"jtk-"+t+"-disabled"));return h}.bind(this);at=function(t,i){return n.isString(t)||!t.length?i.apply(this,[t]):t.length?i.apply(this,[t[0]]):void 0}.bind(this);this.toggleSourceEnabled=function(n,t){return lt("source",n,null,!0,t),this.isSourceEnabled(n,t)};this.setSourceEnabled=function(n,t,i){return lt("source",n,t,null,i)};this.isSource=function(n,t){return t=t||"default",at(n,function(n){var i=this.sourceEndpointDefinitions[l(n).id];return null!=i&&null!=i[t]}.bind(this))};this.isSourceEnabled=function(n,t){return t=t||"default",at(n,function(n){var i=this.sourceEndpointDefinitions[l(n).id];return i&&i[t]&&i[t].enabled===!0}.bind(this))};this.toggleTargetEnabled=function(n,t){return lt("target",n,null,!0,t),this.isTargetEnabled(n,t)};this.isTarget=function(n,t){return t=t||"default",at(n,function(n){var i=this.targetEndpointDefinitions[l(n).id];return null!=i&&null!=i[t]}.bind(this))};this.isTargetEnabled=function(n,t){return t=t||"default",at(n,function(n){var i=this.targetEndpointDefinitions[l(n).id];return i&&i[t]&&i[t].enabled===!0}.bind(this))};this.setTargetEnabled=function(n,t,i){return lt("target",n,t,null,i)};this.ready=function(n){e.bind("ready",n)};li=function(n,t){if("object"==typeof n&&n.length)for(var i=0,r=n.length;r>i;i++)t(n[i]);else t(n);return e};this.repaint=function(n,t,i){return li(n,function(n){st(n,t,i)})};this.revalidate=function(n,t,i){return li(n,function(n){var r=i?n:e.getId(n);e.updateOffset({elId:r,recalc:!0,timestamp:t});e.repaint(n)})};this.repaintEverything=function(){var n,t=u();for(n in s)e.updateOffset({elId:n,recalc:!0,timestamp:t});for(n in s)st(n,null,t);return this};this.removeAllEndpoints=function(n,t,i){i=i||[];var r=function(n){var u,o,f=l(n),h=s[f.id];if(h)for(i.push(f),u=0,o=h.length;o>u;u++)e.deleteEndpoint(h[u],!1);if(delete s[f.id],t&&f.el&&3!=f.el.nodeType&&8!=f.el.nodeType)for(u=0,o=f.el.childNodes.length;o>u;u++)r(f.el.childNodes[u])};return r(n),this};ai=function(n,t){e.removeAllEndpoints(n.id,!0,t);for(var r=function(n){e.getDragManager().elementRemoved(n.id);e.anchorManager.clearFor(n.id);e.anchorManager.removeFloatingConnection(n.id);e.isSource(n.el)&&e.unmakeSource(n.el);e.isTarget(n.el)&&e.unmakeTarget(n.el);e.destroyDraggable(n.el);e.destroyDroppable(n.el);delete e.floatingConnections[n.id];delete y[n.id];delete h[n.id];n.el&&(e.removeElement(n.el),n.el._jsPlumb=null)},i=1;i<t.length;i++)r(t[i]);r(n)};this.remove=function(n,t){var i=l(n),r=[];return i.text?i.el.parentNode.removeChild(i.el):i.id&&e.batch(function(){ai(i,r)},t===!1),e};this.empty=function(n,t){var r=[],i=function(n,t){var u=l(n);if(u.text)u.el.parentNode.removeChild(u.el);else if(u.el){for(;u.el.childNodes.length>0;)i(u.el.childNodes[0]);t||ai(u,r)}};return e.batch(function(){i(n,!0)},t===!1),e};this.reset=function(){e.silently(function(){bt=!1;e.removeAllGroups();e.removeGroupManager();e.deleteEveryEndpoint();e.unbind();this.targetEndpointDefinitions={};this.sourceEndpointDefinitions={};g.length=0;this.doReset&&this.doReset()}.bind(this))};vi=function(n){n.canvas&&n.canvas.parentNode&&n.canvas.parentNode.removeChild(n.canvas);n.cleanup();n.destroy()};this.clear=function(){e.select().each(vi);e.selectEndpoints().each(vi);s={};nt={}};this.setDefaultScope=function(n){return ki=n,e};this.setDraggable=cr;this.deriveEndpointAndAnchorSpec=function(n,t){for(var i,h=((t?"":"default ")+n).split(/[\s]/),r=null,u=null,f=null,o=null,s=0;s<h.length;s++)i=e.getType(h[s],"connection"),i&&(i.endpoints&&(r=i.endpoints),i.endpoint&&(u=i.endpoint),i.anchors&&(o=i.anchors),i.anchor&&(f=i.anchor));return{endpoints:r?r:[u,u],anchors:o?o:[f,f]}};this.setId=function(t,i,r){var u,o,h,f,c,e;for(n.isString(t)?u=t:(t=this.getElement(t),u=this.getId(t)),o=this.getConnections({source:u,scope:"*"},!0),h=this.getConnections({target:u,scope:"*"},!0),i=""+i,r?t=this.getElement(i):(t=this.getElement(u),this.setAttribute(t,"id",i)),s[i]=s[u]||[],f=0,c=s[i].length;c>f;f++)s[i][f].setElementId(i),s[i][f].setReferenceElement(t);delete s[u];this.sourceEndpointDefinitions[i]=this.sourceEndpointDefinitions[u];delete this.sourceEndpointDefinitions[u];this.targetEndpointDefinitions[i]=this.targetEndpointDefinitions[u];delete this.targetEndpointDefinitions[u];this.anchorManager.changeId(u,i);this.getDragManager().changeId(u,i);y[i]=y[u];delete y[u];e=function(n,r,u){for(var f=0,e=n.length;e>f;f++)n[f].endpoints[r].setElementId(i),n[f].endpoints[r].setReferenceElement(t),n[f][u+"Id"]=i,n[f][u]=t};e(o,0,"source");e(h,1,"target");this.repaint(i)};this.setDebugLog=function(n){wi=n};this.setSuspendDrawing=function(n,t){var i=ut;return ut=n,ft=n?(new Date).getTime():null,t&&this.repaintEverything(),i};this.isSuspendDrawing=function(){return ut};this.getSuspendedAt=function(){return ft};this.batch=function(t,i){var r=this.isSuspendDrawing();r||this.setSuspendDrawing(!0);try{t()}catch(u){n.log("Function run while suspended failed",u)}r||this.setSuspendDrawing(!1,!i)};this.doWhileSuspended=this.batch;this.getCachedData=vr;this.timestamp=u;this.show=function(n,t){return gi(n,"block",t),e};this.toggleVisible=ar;this.toggleDraggable=lr;this.addListener=this.bind};n.extend(i.jsPlumbInstance,n.EventGenerator,{setAttribute:function(n,t,i){this.setAttribute(n,t,i)},getAttribute:function(n,t){return this.getAttribute(i.jsPlumb.getElement(n),t)},convertToFullOverlaySpec:function(t){return n.isString(t)&&(t=[t,{}]),t[1].id=t[1].id||n.uuid(),t},registerConnectionType:function(n,t){var u,r,f;if(this._connectionTypes[n]=i.jsPlumb.extend({},t),t.overlays){for(u={},r=0;r<t.overlays.length;r++)f=this.convertToFullOverlaySpec(t.overlays[r]),u[f[1].id]=f;this._connectionTypes[n].overlays=u}},registerConnectionTypes:function(n){for(var t in n)this.registerConnectionType(t,n[t])},registerEndpointType:function(n,t){var u,r,f;if(this._endpointTypes[n]=i.jsPlumb.extend({},t),t.overlays){for(u={},r=0;r<t.overlays.length;r++)f=this.convertToFullOverlaySpec(t.overlays[r]),u[f[1].id]=f;this._endpointTypes[n].overlays=u}},registerEndpointTypes:function(n){for(var t in n)this.registerEndpointType(t,n[t])},getType:function(n,t){return"connection"===t?this._connectionTypes[n]:this._endpointTypes[n]},setIdChanged:function(n,t){this.setId(n,t,!0)},setParent:function(n,t){var i=this.getElement(n),u=this.getId(i),r=this.getElement(t),f=this.getId(r);i.parentNode.removeChild(i);r.appendChild(i);this.getDragManager().setParent(i,u,r,f)},extend:function(n,t,i){var r;if(i)for(r=0;r<i.length;r++)n[i[r]]=t[i[r]];else for(r in t)n[r]=t[r];return n},floatingConnections:{},getFloatingAnchorIndex:function(n){return n.endpoints[0].isFloating()?0:n.endpoints[1].isFloating()?1:-1}});t=new p;i.jsPlumb=t;t.getInstance=function(n){var t=new p(n);return t.init(),t};t.each=function(n,i){if(null!=n)if("string"==typeof n)i(t.getElement(n));else if(null!=n.length)for(var r=0;r<n.length;r++)i(t.getElement(n[r]));else i(n)};"function"==typeof define&&(define("jsplumb",[],function(){return t}),define("jsplumbinstance",[],function(){return t.getInstance()}));"undefined"!=typeof exports&&(exports.jsPlumb=t);"undefined"!=typeof module&&(module.exports=t)}.call("undefined"!=typeof window?window:this),function(){var n=this,u=n.jsPlumbUtil,t=function(n,t){if(null==t)return[0,0];var r=c(t),i=h(r,0);return[i[n+"X"],i[n+"Y"]]},e=t.bind(this,"page"),o=t.bind(this,"screen"),s=t.bind(this,"client"),h=function(n,t){return n.item?n.item(t):n[t]},c=function(n){return n.touches&&n.touches.length>0?n.touches:n.changedTouches&&n.changedTouches.length>0?n.changedTouches:n.targetTouches&&n.targetTouches.length>0?n.targetTouches:[n]},l=function(n){var u={},f=[],t={},r={},i={};this.register=function(e){var o=n.getId(e),h=n.getOffset(e),s;u[o]||(u[o]=e,f.push(e),t[o]={});s=function(u){var f,l,e,c;if(u)for(f=0;f<u.childNodes.length;f++)3!=u.childNodes[f].nodeType&&8!=u.childNodes[f].nodeType&&(l=jsPlumb.getElement(u.childNodes[f]),e=n.getId(u.childNodes[f],null,!0),e&&r[e]&&r[e]>0&&(c=n.getOffset(l),t[o][e]={id:e,offset:{left:c.left-h.left,top:c.top-h.top}},i[e]=o),s(u.childNodes[f]))};s(e)};this.updateOffsets=function(r,u){var f,s,h;if(null!=r){u=u||{};var c=jsPlumb.getElement(r),e=n.getId(c),o=t[e],l=n.getOffset(c);if(o)for(f in o)if(o.hasOwnProperty(f)){if(s=jsPlumb.getElement(f),h=u[f]||n.getOffset(s),null==s.offsetParent&&null!=t[e][f])continue;t[e][f]={id:f,offset:{left:h.left-l.left,top:h.top-l.top}};i[f]=e}}};this.endpointAdded=function(f,e){var l,o,s,h,c;for(e=e||n.getId(f),l=document.body,o=f.parentNode,r[e]=r[e]?r[e]+1:1;null!=o&&o!=l;){if(s=n.getId(o,null,!0),s&&u[s]){h=n.getOffset(o);null==t[s][e]&&(c=n.getOffset(f),t[s][e]={id:e,offset:{left:c.left-h.left,top:c.top-h.top}},i[e]=s);break}o=o.parentNode}};this.endpointDeleted=function(n){if(r[n.elementId]&&(r[n.elementId]--,r[n.elementId]<=0))for(var u in t)t.hasOwnProperty(u)&&t[u]&&(delete t[u][n.elementId],delete i[n.elementId])};this.changeId=function(n,r){t[r]=t[n];t[n]={};i[r]=i[n];i[n]=null};this.getElementsForDraggable=function(n){return t[n]};this.elementRemoved=function(n){var r=i[n];r&&(delete t[r][n],delete i[n])};this.reset=function(){u={};f=[];t={};r={}};this.dragEnded=function(t){if(null!=t.offsetParent){var u=n.getId(t),r=i[u];r&&this.updateOffsets(r)}};this.setParent=function(r,u,f,e,o){var c=i[u],s,h;t[e]||(t[e]={});s=n.getOffset(f);h=o||n.getOffset(r);c&&delete t[c][u];t[e][u]={id:u,offset:{left:h.left-s.left,top:h.top-s.top}};i[u]=e};this.clearParent=function(n,r){var u=i[r];u&&(delete t[u][r],delete i[r])};this.revalidateParent=function(t,r,u){var f=i[r],e;f&&(e={},e[r]=u,this.updateOffsets(f,e),n.revalidate(f))};this.getDragAncestor=function(t){var u=jsPlumb.getElement(t),f=n.getId(u),r=i[f];return r?jsPlumb.getElement(r):null}},a=function(n){return null==n?null:n.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},f=function(n,t){t=a(t);"undefined"!=typeof n.className.baseVal?n.className.baseVal=t:n.className=t},i=function(n){return"undefined"==typeof n.className.baseVal?n.className:n.className.baseVal},r=function(n,t,r){t=null==t?[]:u.isArray(t)?t:t.split(/\s+/);r=null==r?[]:u.isArray(r)?r:r.split(/\s+/);var s=i(n),e=s.split(/\s+/),o=function(n,t){for(var r,i=0;i<t.length;i++)n?-1==e.indexOf(t[i])&&e.push(t[i]):(r=e.indexOf(t[i]),-1!=r&&e.splice(r,1))};o(!0,t);o(!1,r);f(n,e.join(" "))};n.jsPlumb.extend(n.jsPlumbInstance.prototype,{headless:!1,pageLocation:e,screenLocation:o,clientLocation:s,getDragManager:function(){return null==this.dragManager&&(this.dragManager=new l(this)),this.dragManager},recalculateOffsets:function(n){this.getDragManager().updateOffsets(n)},createElement:function(n,t,i,r){return this.createElementNS(null,n,t,i,r)},createElementNS:function(n,t,i,r,u){var f,e=null==n?document.createElement(t):document.createElementNS(n,t);i=i||{};for(f in i)e.style[f]=i[f];r&&(e.className=r);u=u||{};for(f in u)e.setAttribute(f,""+u[f]);return e},getAttribute:function(n,t){return null!=n.getAttribute?n.getAttribute(t):null},setAttribute:function(n,t,i){null!=n.setAttribute&&n.setAttribute(t,i)},setAttributes:function(n,t){for(var i in t)t.hasOwnProperty(i)&&n.setAttribute(i,t[i])},appendToRoot:function(n){document.body.appendChild(n)},getRenderModes:function(){return["svg"]},getClass:i,addClass:function(n,t){jsPlumb.each(n,function(n){r(n,t)})},hasClass:function(n,t){return n=jsPlumb.getElement(n),n.classList?n.classList.contains(t):-1!=i(n).indexOf(t)},removeClass:function(n,t){jsPlumb.each(n,function(n){r(n,null,t)})},updateClasses:function(n,t,i){jsPlumb.each(n,function(n){r(n,t,i)})},setClass:function(n,t){jsPlumb.each(n,function(n){f(n,t)})},setPosition:function(n,t){n.style.left=t.left+"px";n.style.top=t.top+"px"},getPosition:function(n){var t=function(t){var i=n.style[t];return i?i.substring(0,i.length-2):0};return{left:t("left"),top:t("top")}},getStyle:function(n,t){return"undefined"!=typeof window.getComputedStyle?getComputedStyle(n,null).getPropertyValue(t):n.currentStyle[t]},getSelector:function(n,t){return 1==arguments.length?null!=n.nodeType?n:document.querySelectorAll(n):n.querySelectorAll(t)},getOffset:function(n,t,i){var f,e;n=jsPlumb.getElement(n);i=i||this.getContainer();for(var u={left:n.offsetLeft,top:n.offsetTop},r=t||null!=i&&n!=i&&n.offsetParent!=i?n.offsetParent:null,o=function(n){null!=n&&n!==document.body&&(n.scrollTop>0||n.scrollLeft>0)&&(u.left-=n.scrollLeft,u.top-=n.scrollTop)}.bind(this);null!=r;)u.left+=r.offsetLeft,u.top+=r.offsetTop,o(r),r=t?r.offsetParent:r.offsetParent==i?null:r.offsetParent;return null!=i&&!t&&(i.scrollTop>0||i.scrollLeft>0)&&(f=null!=n.offsetParent?this.getStyle(n.offsetParent,"position"):"static",e=this.getStyle(n,"position"),"absolute"!==e&&"fixed"!==e&&"absolute"!==f&&"fixed"!=f&&(u.left-=i.scrollLeft,u.top-=i.scrollTop)),u},getPositionOnElement:function(n,t,i){var r="undefined"!=typeof t.getBoundingClientRect?t.getBoundingClientRect():{left:0,top:0,width:0,height:0},u=document.body,f=document.documentElement,o=window.pageYOffset||f.scrollTop||u.scrollTop,s=window.pageXOffset||f.scrollLeft||u.scrollLeft,h=f.clientTop||u.clientTop||0,c=f.clientLeft||u.clientLeft||0,l=r.top+o-h+0*i,a=r.left+s-c+0*i,e=jsPlumb.pageLocation(n),v=r.width||t.offsetWidth*i,y=r.height||t.offsetHeight*i,p=(e[0]-a)/v,w=(e[1]-l)/y;return[p,w]},getAbsolutePosition:function(n){var t=function(t){var i=n.style[t];if(i)return parseFloat(i.substring(0,i.length-2))};return[t("left"),t("top")]},setAbsolutePosition:function(n,t,i,r){i?this.animate(n,{left:"+="+(t[0]-i[0]),top:"+="+(t[1]-i[1])},r):(n.style.left=t[0]+"px",n.style.top=t[1]+"px")},getSize:function(n){return[n.offsetWidth,n.offsetHeight]},getWidth:function(n){return n.offsetWidth},getHeight:function(n){return n.offsetHeight}})}.call("undefined"!=typeof window?window:this),function(){"use strict";var i=this,n=i.jsPlumb,r=i.jsPlumbUtil,t="__label",u=function(i,r){var u={cssClass:r.cssClass,labelStyle:i.labelStyle,id:t,component:i,_jsPlumb:i._jsPlumb.instance},f=n.extend(u,r);return new n.Overlays[i._jsPlumb.instance.getRenderMode()].Label(f)},f=function(t,i){var u=null,e,f;return r.isArray(i)?(e=i[0],f=n.extend({component:t,_jsPlumb:t._jsPlumb.instance},i[1]),3==i.length&&n.extend(f,i[2]),u=new n.Overlays[t._jsPlumb.instance.getRenderMode()][e](f)):u=i.constructor==String?new n.Overlays[t._jsPlumb.instance.getRenderMode()][i]({component:t,_jsPlumb:t._jsPlumb.instance}):i,u.id=u.id||r.uuid(),t.cacheTypeItem("overlay",u,u.id),t._jsPlumb.overlays[u.id]=u,u};n.OverlayCapableJsPlumbUIComponent=function(n){i.jsPlumbUIComponent.apply(this,arguments);this._jsPlumb.overlays={};this._jsPlumb.overlayPositions={};n.label&&(this.getDefaultType().overlays[t]=["Label",{label:n.label,location:n.labelLocation||this.defaultLabelLocation||.5,labelStyle:n.labelStyle||this._jsPlumb.instance.Defaults.LabelStyle,id:t}]);this.setListenerComponent=function(n){if(this._jsPlumb)for(var t in this._jsPlumb.overlays)this._jsPlumb.overlays[t].setListenerComponent(n)}};n.OverlayCapableJsPlumbUIComponent.applyType=function(n,t){var i,u,f,r;if(t.overlays){u={};for(i in t.overlays)f=n._jsPlumb.overlays[t.overlays[i][1].id],f?(f.updateFrom(t.overlays[i][1]),u[t.overlays[i][1].id]=!0):(r=n.getCachedTypeItem("overlay",t.overlays[i][1].id),null!=r?(r.reattach(n._jsPlumb.instance),r.setVisible(!0),r.updateFrom(t.overlays[i][1]),n._jsPlumb.overlays[r.id]=r):r=n.addOverlay(t.overlays[i],!0),u[r.id]=!0);for(i in n._jsPlumb.overlays)null==u[n._jsPlumb.overlays[i].id]&&n.removeOverlay(n._jsPlumb.overlays[i].id,!0)}};r.extend(n.OverlayCapableJsPlumbUIComponent,i.jsPlumbUIComponent,{setHover:function(n){if(this._jsPlumb&&!this._jsPlumb.instance.isConnectionBeingDragged())for(var t in this._jsPlumb.overlays)this._jsPlumb.overlays[t][n?"addClass":"removeClass"](this._jsPlumb.instance.hoverClass)},addOverlay:function(n,t){var i=f(this,n);return t||this.repaint(),i},getOverlay:function(n){return this._jsPlumb.overlays[n]},getOverlays:function(){return this._jsPlumb.overlays},hideOverlay:function(n){var t=this.getOverlay(n);t&&t.hide()},hideOverlays:function(){for(var n in this._jsPlumb.overlays)this._jsPlumb.overlays[n].hide()},showOverlay:function(n){var t=this.getOverlay(n);t&&t.show()},showOverlays:function(){for(var n in this._jsPlumb.overlays)this._jsPlumb.overlays[n].show()},removeAllOverlays:function(n){for(var t in this._jsPlumb.overlays)this._jsPlumb.overlays[t].cleanup&&this._jsPlumb.overlays[t].cleanup();this._jsPlumb.overlays={};this._jsPlumb.overlayPositions=null;n||this.repaint()},removeOverlay:function(n,t){var i=this._jsPlumb.overlays[n];i&&(i.setVisible(!1),!t&&i.cleanup&&i.cleanup(),delete this._jsPlumb.overlays[n],this._jsPlumb.overlayPositions&&delete this._jsPlumb.overlayPositions[n])},removeOverlays:function(){for(var n=0,t=arguments.length;t>n;n++)this.removeOverlay(arguments[n])},moveParent:function(n){var i,t;if(this.bgCanvas&&(this.bgCanvas.parentNode.removeChild(this.bgCanvas),n.appendChild(this.bgCanvas)),this.canvas&&this.canvas.parentNode){this.canvas.parentNode.removeChild(this.canvas);n.appendChild(this.canvas);for(i in this._jsPlumb.overlays)this._jsPlumb.overlays[i].isAppendedAtTopLevel&&(t=this._jsPlumb.overlays[i].getElement(),t.parentNode.removeChild(t),n.appendChild(t))}},getLabel:function(){var n=this.getOverlay(t);return null!=n?n.getLabel():null},getLabelOverlay:function(){return this.getOverlay(t)},setLabel:function(n){var i=this.getOverlay(t),r;i?n.constructor==String||n.constructor==Function?i.setLabel(n):(n.label&&i.setLabel(n.label),n.location&&i.setLocation(n.location)):(r=n.constructor==String||n.constructor==Function?{label:n}:n,i=u(this,r),this._jsPlumb.overlays[t]=i);this._jsPlumb.instance.isSuspendDrawing()||this.repaint()},cleanup:function(n){for(var t in this._jsPlumb.overlays)this._jsPlumb.overlays[t].cleanup(n),this._jsPlumb.overlays[t].destroy(n);n&&(this._jsPlumb.overlays={},this._jsPlumb.overlayPositions=null)},setVisible:function(n){this[n?"showOverlays":"hideOverlays"]()},setAbsoluteOverlayPosition:function(n,t){this._jsPlumb.overlayPositions[n.id]=t},getAbsoluteOverlayPosition:function(n){return this._jsPlumb.overlayPositions?this._jsPlumb.overlayPositions[n.id]:null},_clazzManip:function(n,t,i){if(!i)for(var r in this._jsPlumb.overlays)this._jsPlumb.overlays[r][n+"Class"](t)},addClass:function(n,t){this._clazzManip("add",n,t)},removeClass:function(n,t){this._clazzManip("remove",n,t)}})}.call("undefined"!=typeof window?window:this),function(){"use strict";var i=this,n=i.jsPlumb,t=i.jsPlumbUtil,u=function(n,t,i){var r=!1;return{drag:function(){if(r)return r=!1,!0;if(t.element){var u=i.getUIPosition(arguments,i.getZoom());null!=u&&jsPlumb.setPosition(t.element,u);i.repaint(t.element,u);n.paint({anchorPoint:n.anchor.getCurrentLocation({element:n})})}},stopDrag:function(){r=!0}}},f=function(n,t,i,r){var u=jsPlumb.createElement("div",{position:"absolute"}),f;t.appendElement(u);f=t.getId(u);jsPlumb.setPosition(u,i);u.style.width=r[0]+"px";u.style.height=r[1]+"px";t.manage(f,u,!0);n.id=f;n.element=u},e=function(t,i,r,u,f,e,o,s){var h=new n.FloatingAnchor({reference:i,referenceCanvas:u,jsPlumbInstance:e});return o({paintStyle:t,endpoint:r,anchor:h,source:f,scope:s})},r=["connectorStyle","connectorHoverStyle","connectorOverlays","connector","connectionType","connectorClass","connectorHoverClass"],o=function(n,t){var r=0,i;if(null!=t)for(i=0;i<n.connections.length;i++)if(n.connections[i].sourceId==t||n.connections[i].targetId==t){r=i;break}return n.connections[r]};n.Endpoint=function(i){var s=i._jsPlumb,k=i.newConnection,v=i.newEndpoint,h,c,l,a,y,p,w,b;return this.idPrefix="_jsplumb_e_",this.defaultLabelLocation=[.5,.5],this.defaultOverlayKeys=["Overlays","EndpointOverlays"],n.OverlayCapableJsPlumbUIComponent.apply(this,arguments),this.appendToDefaultType({connectionType:i.connectionType,maxConnections:null==i.maxConnections?this._jsPlumb.instance.Defaults.MaxConnections:i.maxConnections,paintStyle:i.endpointStyle||i.paintStyle||i.style||this._jsPlumb.instance.Defaults.EndpointStyle||n.Defaults.EndpointStyle,hoverPaintStyle:i.endpointHoverStyle||i.hoverPaintStyle||this._jsPlumb.instance.Defaults.EndpointHoverStyle||n.Defaults.EndpointHoverStyle,connectorStyle:i.connectorStyle,connectorHoverStyle:i.connectorHoverStyle,connectorClass:i.connectorClass,connectorHoverClass:i.connectorHoverClass,connectorOverlays:i.connectorOverlays,connector:i.connector,connectorTooltip:i.connectorTooltip}),this._jsPlumb.enabled=!(i.enabled===!1),this._jsPlumb.visible=!0,this.element=n.getElement(i.source),this._jsPlumb.uuid=i.uuid,this._jsPlumb.floatingEndpoint=null,h=null,this._jsPlumb.uuid&&(i.endpointsByUUID[this._jsPlumb.uuid]=this),this.elementId=i.elementId,this.dragProxy=i.dragProxy,this._jsPlumb.connectionCost=i.connectionCost,this._jsPlumb.connectionsDirected=i.connectionsDirected,this._jsPlumb.currentAnchorClass="",this._jsPlumb.events={},c=function(){var t=s.endpointAnchorClassPrefix+"-"+this._jsPlumb.currentAnchorClass,n;this._jsPlumb.currentAnchorClass=this.anchor.getCssClass();n=s.endpointAnchorClassPrefix+(this._jsPlumb.currentAnchorClass?"-"+this._jsPlumb.currentAnchorClass:"");this.removeClass(t);this.addClass(n);jsPlumb.updateClasses(this.element,n,t)}.bind(this),this.prepareAnchor=function(n){var t=this._jsPlumb.instance.makeAnchor(n,this.elementId,s);return t.bind("anchorChanged",function(n){this.fire("anchorChanged",{endpoint:this,anchor:n});c()}.bind(this)),t},this.setPreparedAnchor=function(n,t){return this._jsPlumb.instance.continuousAnchorFactory.clear(this.elementId),this.anchor=n,c(),t||this._jsPlumb.instance.repaint(this.elementId),this},this.setAnchor=function(n,t){var i=this.prepareAnchor(n);return this.setPreparedAnchor(i,t),this},l=function(n){if(this.connections.length>0)for(var t=0;t<this.connections.length;t++)this.connections[t].setHover(n,!1);else this.setHover(n)}.bind(this),this.bind("mouseover",function(){l(!0)}),this.bind("mouseout",function(){l(!1)}),i._transient||this._jsPlumb.instance.anchorManager.add(this,this.elementId),this.prepareEndpoint=function(r,u){var e,o=function(t,i){var r=s.getRenderMode();if(n.Endpoints[r][t])return new n.Endpoints[r][t](i);if(!s.Defaults.DoNotThrowErrors)throw{msg:"jsPlumb: unknown endpoint type '"+t+"'"};},f={_jsPlumb:this._jsPlumb.instance,cssClass:i.cssClass,container:i.container,tooltip:i.tooltip,connectorTooltip:i.connectorTooltip,endpoint:this};return t.isString(r)?e=o(r,f):t.isArray(r)?(f=t.merge(r[1],f),e=o(r[0],f)):e=r.clone(),e.clone=function(){return t.isString(r)?o(r,f):t.isArray(r)?(f=t.merge(r[1],f),o(r[0],f)):void 0}.bind(this),e.typeId=u,e},this.setEndpoint=function(n){var t=this.prepareEndpoint(n);this.setPreparedEndpoint(t,!0)},this.setPreparedEndpoint=function(n){null!=this.endpoint&&(this.endpoint.cleanup(),this.endpoint.destroy());this.endpoint=n;this.type=this.endpoint.type;this.canvas=this.endpoint.canvas},n.extend(this,i,r),this.isSource=i.isSource||!1,this.isTemporarySource=i.isTemporarySource||!1,this.isTarget=i.isTarget||!1,this.connections=i.connections||[],this.connectorPointerEvents=i["connector-pointer-events"],this.scope=i.scope||s.getDefaultScope(),this.timestamp=null,this.reattachConnections=i.reattach||s.Defaults.ReattachConnections,this.connectionsDetachable=s.Defaults.ConnectionsDetachable,(i.connectionsDetachable===!1||i.detachable===!1)&&(this.connectionsDetachable=!1),this.dragAllowedWhenFull=i.dragAllowedWhenFull!==!1,i.onMaxConnections&&this.bind("maxConnections",i.onMaxConnections),this.addConnection=function(n){this.connections.push(n);this[(this.connections.length>0?"add":"remove")+"Class"](s.endpointConnectedClass);this[(this.isFull()?"add":"remove")+"Class"](s.endpointFullClass)},this.detachFromConnection=function(n,t,i){t=null==t?this.connections.indexOf(n):t;t>=0&&(this.connections.splice(t,1),this[(this.connections.length>0?"add":"remove")+"Class"](s.endpointConnectedClass),this[(this.isFull()?"add":"remove")+"Class"](s.endpointFullClass));(this._forceDeleteOnDetach||!i&&this._deleteOnDetach)&&0===this.connections.length&&s.deleteObject({endpoint:this,fireEvent:!1,deleteAttachedObjects:i!==!0})},this.detach=function(n){var r=n.connectionIndex,t=n.connection,f=n.ignoreTarget,i=n.fireEvent,e=n.originalEvent,o=n.endpointBeingDeleted,h=n.forceDetach,c=null==r?this.connections.indexOf(t):r,u=!1;return i=i!==!1,c>=0&&(h||t._forceDetach||t.isDetachable()&&t.isDetachAllowed(t)&&this.isDetachAllowed(t)&&s.checkCondition("beforeDetach",t,o))&&(s.deleteObject({connection:t,fireEvent:!f&&i,originalEvent:e,deleteAttachedObjects:n.deleteAttachedObjects}),u=!0),u},this.detachAll=function(n,t){for(var r,i=[];this.connections.length>0;)r=this.detach({connection:this.connections[0],ignoreTarget:!1,forceDetach:t===!0,fireEvent:n!==!1,originalEvent:null,endpointBeingDeleted:this,connectionIndex:0}),r||(i.push(this.connections[0]),this.connections.splice(0,1));return this.connections=i,this},this.detachFrom=function(n,t,i){for(var f,u=[],r=0;r<this.connections.length;r++)(this.connections[r].endpoints[1]==n||this.connections[r].endpoints[0]==n)&&u.push(this.connections[r]);for(f=0;f<u.length;f++)this.detach({connection:u[f],ignoreTarget:!1,forceDetach:!0,fireEvent:t,originalEvent:i});return this},this.getElement=function(){return this.element},this.setElement=function(n){var r=this._jsPlumb.instance.getId(n),u=this.elementId;return t.removeWithFunction(i.endpointsByElement[this.elementId],function(n){return n.id==this.id}.bind(this)),this.element=jsPlumb.getElement(n),this.elementId=s.getId(this.element),s.anchorManager.rehomeEndpoint(this,u,this.element),s.dragManager.endpointAdded(this.element),t.addToList(i.endpointsByElement,r,this),this},this.makeInPlaceCopy=function(){var n=this.anchor.getCurrentLocation({element:this}),t=this.anchor.getOrientation(this),r=this.anchor.getCssClass(),u={bind:function(){},compute:function(){return[n[0],n[1]]},getCurrentLocation:function(){return[n[0],n[1]]},getOrientation:function(){return t},getCssClass:function(){return r}};return v({dropOptions:i.dropOptions,anchor:u,source:this.element,paintStyle:this.getPaintStyle(),endpoint:i.hideOnDrag?"Blank":this.endpoint,_transient:!0,scope:this.scope,reference:this})},this.connectorSelector=function(){var n=this.connections[0];return n?n:this.connections.length<this._jsPlumb.maxConnections||-1==this._jsPlumb.maxConnections?null:n},this.setStyle=this.setPaintStyle,this.paint=function(n){var t,l,c,u,f,a,v,i,r,h;if(n=n||{},t=n.timestamp,l=!(n.recalc===!1),(!t||this.timestamp!==t)&&(c=s.updateOffset({elId:this.elementId,timestamp:t}),u=n.offset?n.offset.o:c.o,null!=u)){if(f=n.anchorPoint,a=n.connectorPaintStyle,null==f){if(v=n.dimensions||c.s,i={xy:[u.left,u.top],wh:v,element:this,timestamp:t},l&&this.anchor.isDynamic&&this.connections.length>0){var e=o(this,n.elementWithPrecedence),y=e.endpoints[0]==this?1:0,b=0===y?e.sourceId:e.targetId,p=s.getCachedData(b),w=p.o,k=p.s;i.txy=[w.left,w.top];i.twh=k;i.tElement=e.endpoints[y]}f=this.anchor.compute(i)}this.endpoint.compute(f,this.anchor.getOrientation(this),this._jsPlumb.paintStyleInUse,a||this.paintStyleInUse);this.endpoint.paint(this._jsPlumb.paintStyleInUse,this.anchor);this.timestamp=t;for(r in this._jsPlumb.overlays)this._jsPlumb.overlays.hasOwnProperty(r)&&(h=this._jsPlumb.overlays[r],h.isVisible()&&(this._jsPlumb.overlayPlacements[r]=h.draw(this.endpoint,this._jsPlumb.paintStyleInUse),h.paint(this._jsPlumb.overlayPlacements[r])))}},this.getTypeDescriptor=function(){return"endpoint"},this.isVisible=function(){return this._jsPlumb.visible},this.repaint=this.paint,a=!1,this.initDraggable=function(){if(!a&&n.isDragSupported(this.element)){var y,c={id:null,element:null},r=null,p=!1,l=null,w=u(this,c,s),o=i.dragOptions||{},b=n.dragEvents.start,d=n.dragEvents.stop,g=n.dragEvents.drag,nt=n.dragEvents.beforeStart,tt=function(n){y=n.e.payload||{}},it=function(){var u,o,h,d,g,nt,tt,n,a;if(r=this.connectorSelector(),u=!0,this.isEnabled()||(u=!1),null!=r||this.isSource||this.isTemporarySource||(u=!1),!this.isSource||!this.isFull()||null!=r&&this.dragAllowedWhenFull||(u=!1),null==r||r.isDetachable(this)||(u=!1),o=s.checkCondition(null==r?"beforeDrag":"beforeStartDetach",{endpoint:this,source:this.element,sourceId:this.elementId,connection:r}),o===!1?u=!1:"object"==typeof o?jsPlumb.extend(o,y||{}):o=y||{},u===!1)return s.stopDrag&&s.stopDrag(this.canvas),w.stopDrag(),!1;for(h=0;h<this.connections.length;h++)this.connections[h].setHover(!1);this.addClass("endpointDrag");s.setConnectionBeingDragged(!0);r&&!this.isFull()&&this.isSource&&(r=null);s.updateOffset({elId:this.elementId});var it=this._jsPlumb.instance.getOffset(this.canvas),b=this.canvas,rt=this._jsPlumb.instance.getSize(this.canvas);f(c,s,it,rt);s.setAttributes(this.canvas,{dragId:c.id,elId:this.elementId});d=this.dragProxy||this.endpoint;null==this.dragProxy&&null!=this.connectionType&&(g=this._jsPlumb.instance.deriveEndpointAndAnchorSpec(this.connectionType),g.endpoints[1]&&(d=g.endpoints[1]));nt=this._jsPlumb.instance.makeAnchor("Center");nt.isFloating=!0;this._jsPlumb.floatingEndpoint=e(this.getPaintStyle(),nt,d,this.canvas,c.element,s,v,this.scope);tt=this._jsPlumb.floatingEndpoint.anchor;null==r?(this.setHover(!1,!1),r=k({sourceEndpoint:this,targetEndpoint:this._jsPlumb.floatingEndpoint,source:this.element,target:c.element,anchors:[this.anchor,this._jsPlumb.floatingEndpoint.anchor],paintStyle:i.connectorStyle,hoverPaintStyle:i.connectorHoverStyle,connector:i.connector,overlays:i.connectorOverlays,type:this.connectionType,cssClass:this.connectorClass,hoverClass:this.connectorHoverClass,scope:i.scope,data:o}),r.pending=!0,r.addClass(s.draggingClass),this._jsPlumb.floatingEndpoint.addClass(s.draggingClass),this._jsPlumb.floatingEndpoint.anchor=tt,s.fire("connectionDrag",r),s.anchorManager.newConnection(r)):(p=!0,r.setHover(!1),n=r.endpoints[0].id==this.id?0:1,this.detachFromConnection(r,null,!0),a=s.getDragScope(b),s.setAttribute(this.canvas,"originalScope",a),s.fire("connectionDrag",r),0===n?(l=[r.source,r.sourceId,b,a],s.anchorManager.sourceChanged(r.endpoints[n].elementId,c.id,r,c.element)):(l=[r.target,r.targetId,b,a],r.target=c.element,r.targetId=c.id,s.anchorManager.updateOtherEndpoint(r.sourceId,r.endpoints[n].elementId,r.targetId,r)),r.suspendedEndpoint=r.endpoints[n],r.suspendedElement=r.endpoints[n].getElement(),r.suspendedElementId=r.endpoints[n].elementId,r.suspendedElementType=0===n?"source":"target",r.suspendedEndpoint.setHover(!1),this._jsPlumb.floatingEndpoint.referenceEndpoint=r.suspendedEndpoint,r.endpoints[n]=this._jsPlumb.floatingEndpoint,r.addClass(s.draggingClass),this._jsPlumb.floatingEndpoint.addClass(s.draggingClass));s.floatingConnections[c.id]=r;t.addToList(i.endpointsByElement,c.id,this._jsPlumb.floatingEndpoint);s.currentlyDragging=!0}.bind(this),rt=function(){var t,n,i;(s.setConnectionBeingDragged(!1),r&&null!=r.endpoints)&&(t=s.getDropEvent(arguments),n=s.getFloatingAnchorIndex(r),(r.endpoints[0===n?1:0].anchor.locked=!1,r.removeClass(s.draggingClass),this._jsPlumb&&(r.deleteConnectionNow||r.endpoints[n]==this._jsPlumb.floatingEndpoint)&&p&&r.suspendedEndpoint)&&(0===n?(r.floatingElement=r.source,r.floatingId=r.sourceId,r.floatingEndpoint=r.endpoints[0],r.floatingIndex=0,r.source=l[0],r.sourceId=l[1]):(r.floatingElement=r.target,r.floatingId=r.targetId,r.floatingEndpoint=r.endpoints[1],r.floatingIndex=1,r.target=l[0],r.targetId=l[1]),i=this._jsPlumb.floatingEndpoint,s.setDragScope(l[2],l[3]),r.endpoints[n]=r.suspendedEndpoint,r.isReattach()||r._forceReattach||r._forceDetach||!r.endpoints[0===n?1:0].detach({connection:r,ignoreTarget:!1,forceDetach:!1,fireEvent:!0,originalEvent:t,endpointBeingDeleted:!0})?(r.setHover(!1),r._forceDetach=null,r._forceReattach=null,this._jsPlumb.floatingEndpoint.detachFromConnection(r),r.suspendedEndpoint.addConnection(r),1==n?s.anchorManager.updateOtherEndpoint(r.sourceId,r.floatingId,r.targetId,r):s.anchorManager.sourceChanged(r.floatingId,r.sourceId,r,r.source),s.repaint(l[1])):s.deleteObject({endpoint:i})),this.deleteAfterDragStop?s.deleteObject({endpoint:this}):this._jsPlumb&&this.paint({recalc:!1}),s.fire("connectionDragStop",r,t),r.pending&&s.fire("connectionAborted",r,t),s.currentlyDragging=!1,r.suspendedElement=null,r.suspendedEndpoint=null,r=null);c&&c.element&&s.remove(c.element,!1,!1);h&&s.deleteObject({endpoint:h});this._jsPlumb&&(this.canvas.style.visibility="visible",this.anchor.locked=!1,this._jsPlumb.floatingEndpoint=null)}.bind(this);o=n.extend({},o);o.scope=this.scope||o.scope;o[nt]=t.wrap(o[nt],tt,!1);o[b]=t.wrap(o[b],it,!1);o[g]=t.wrap(o[g],w.drag);o[d]=t.wrap(o[d],rt);o.multipleDrop=!1;o.canDrag=function(){return this.isSource||this.isTemporarySource||this.connections.length>0}.bind(this);s.initDraggable(this.canvas,o,"internal");this.canvas._jsPlumbRelatedElement=this.element;a=!0}},y=i.endpoint||this._jsPlumb.instance.Defaults.Endpoint||n.Defaults.Endpoint,this.setEndpoint(y,!0),p=i.anchor?i.anchor:i.anchors?i.anchors:s.Defaults.Anchor||"Top",this.setAnchor(p,!0),w=["default",i.type||""].join(" "),this.addType(w,i.data,!0),this.canvas=this.endpoint.canvas,this.canvas._jsPlumb=this,this.initDraggable(),b=function(r,u,f,e){var o;if(n.isDropSupported(this.element)){o=i.dropOptions||s.Defaults.DropOptions||n.Defaults.DropOptions;o=n.extend({},o);o.scope=o.scope||this.scope;var c=n.dragEvents.drop,l=n.dragEvents.over,a=n.dragEvents.out,h=this,v=s.EndpointDropHandler({getEndpoint:function(){return h},jsPlumb:s,enabled:function(){return null!=f?f.isEnabled():!0},isFull:function(){return f.isFull()},element:this.element,elementId:this.elementId,isSource:this.isSource,isTarget:this.isTarget,addClass:function(n){h.addClass(n)},removeClass:function(n){h.removeClass(n)},isDropAllowed:function(){return h.isDropAllowed.apply(h,arguments)},reference:e,isRedrop:function(n,t){return n.suspendedEndpoint&&t.reference&&n.suspendedEndpoint.id===t.reference.id}});o[c]=t.wrap(o[c],v,!0);o[l]=t.wrap(o[l],function(){var f=n.getDragObject(arguments),e=s.getAttribute(n.getElement(f),"dragId"),t=s.floatingConnections[e],i,u,r;null!=t&&(i=s.getFloatingAnchorIndex(t),u=this.isTarget&&0!==i||t.suspendedEndpoint&&this.referenceEndpoint&&this.referenceEndpoint.id==t.suspendedEndpoint.id,u&&(r=s.checkCondition("checkDropAllowed",{sourceEndpoint:t.endpoints[i],targetEndpoint:this,connection:t}),this[(r?"add":"remove")+"Class"](s.endpointDropAllowedClass),this[(r?"remove":"add")+"Class"](s.endpointDropForbiddenClass),t.endpoints[i].anchor.over(this.anchor,this)))}.bind(this));o[a]=t.wrap(o[a],function(){var r=n.getDragObject(arguments),u=null==r?null:s.getAttribute(n.getElement(r),"dragId"),t=u?s.floatingConnections[u]:null,i,f;null!=t&&(i=s.getFloatingAnchorIndex(t),f=this.isTarget&&0!==i||t.suspendedEndpoint&&this.referenceEndpoint&&this.referenceEndpoint.id==t.suspendedEndpoint.id,f&&(this.removeClass(s.endpointDropAllowedClass),this.removeClass(s.endpointDropForbiddenClass),t.endpoints[i].anchor.out()))}.bind(this));s.initDroppable(r,o,"internal",u)}}.bind(this),this.anchor.isFloating||b(this.canvas,!(i._transient||this.anchor.isFloating),this,i.reference),this};t.extend(n.Endpoint,n.OverlayCapableJsPlumbUIComponent,{setVisible:function(n,t,i){var r,u;if(this._jsPlumb.visible=n,this.canvas&&(this.canvas.style.display=n?"block":"none"),this[n?"showOverlays":"hideOverlays"](),!t)for(r=0;r<this.connections.length;r++)(this.connections[r].setVisible(n),i)||(u=this===this.connections[r].endpoints[0]?1:0,1==this.connections[r].endpoints[u].connections.length&&this.connections[r].endpoints[u].setVisible(n,!0,!0))},getAttachedElements:function(){return this.connections},applyType:function(t,i){this.setPaintStyle(t.endpointStyle||t.paintStyle,i);this.setHoverPaintStyle(t.endpointHoverStyle||t.hoverPaintStyle,i);null!=t.maxConnections&&(this._jsPlumb.maxConnections=t.maxConnections);t.scope&&(this.scope=t.scope);n.extend(this,t,r);null!=t.cssClass&&this.canvas&&this._jsPlumb.instance.addClass(this.canvas,t.cssClass);n.OverlayCapableJsPlumbUIComponent.applyType(this,t)},isEnabled:function(){return this._jsPlumb.enabled},setEnabled:function(n){this._jsPlumb.enabled=n},cleanup:function(){var n=this._jsPlumb.instance.endpointAnchorClassPrefix+(this._jsPlumb.currentAnchorClass?"-"+this._jsPlumb.currentAnchorClass:"");jsPlumb.removeClass(this.element,n);this.anchor=null;this.endpoint.cleanup(!0);this.endpoint.destroy();this.endpoint=null;this._jsPlumb.instance.destroyDraggable(this.canvas,"internal");this._jsPlumb.instance.destroyDroppable(this.canvas,"internal")},setHover:function(n){this.endpoint&&this._jsPlumb&&!this._jsPlumb.instance.isConnectionBeingDragged()&&this.endpoint.setHover(n)},isFull:function(){return 0===this._jsPlumb.maxConnections?!0:!(this.isFloating()||this._jsPlumb.maxConnections<0||this.connections.length<this._jsPlumb.maxConnections)},isFloating:function(){return null!=this.anchor&&this.anchor.isFloating},isConnectedTo:function(n){var i=!1,t;if(n)for(t=0;t<this.connections.length;t++)if(this.connections[t].endpoints[1]==n||this.connections[t].endpoints[0]==n){i=!0;break}return i},getConnectionCost:function(){return this._jsPlumb.connectionCost},setConnectionCost:function(n){this._jsPlumb.connectionCost=n},areConnectionsDirected:function(){return this._jsPlumb.connectionsDirected},setConnectionsDirected:function(n){this._jsPlumb.connectionsDirected=n},setElementId:function(n){this.elementId=n;this.anchor.elementId=n},setReferenceElement:function(t){this.element=n.getElement(t)},setDragAllowedWhenFull:function(n){this.dragAllowedWhenFull=n},equals:function(n){return this.anchor.equals(n.anchor)},getUuid:function(){return this._jsPlumb.uuid},computeAnchor:function(n){return this.anchor.compute(n)}});i.jsPlumbInstance.prototype.EndpointDropHandler=function(n){return function(i){var u=n.jsPlumb,h,e,f,l,o,v,y;n.removeClass(u.endpointDropAllowedClass);n.removeClass(u.endpointDropForbiddenClass);var c=u.getDropEvent(arguments),s=u.getDragObject(arguments),p=u.getAttribute(s,"dragId"),a=(u.getAttribute(s,"elId"),u.getAttribute(s,"originalScope")),r=u.floatingConnections[p];if(null!=r&&(h=null!=r.suspendedEndpoint,(!h||null!=r.suspendedEndpoint._jsPlumb)&&(e=n.getEndpoint(r),null!=e))){if(n.isRedrop(r,n))return r._forceReattach=!0,r.setHover(!1),n.maybeCleanup&&n.maybeCleanup(e),void 0;if(f=u.getFloatingAnchorIndex(r),0===f&&!n.isSource||1===f&&!n.isTarget)return n.maybeCleanup&&n.maybeCleanup(e),void 0;if(n.onDrop&&n.onDrop(r),a&&u.setDragScope(s,a),l=n.isFull(i),l&&e.fire("maxConnections",{endpoint:this,connection:r,maxConnections:e._jsPlumb.maxConnections},c),!l&&n.enabled()){if(o=!0,0===f?(r.floatingElement=r.source,r.floatingId=r.sourceId,r.floatingEndpoint=r.endpoints[0],r.floatingIndex=0,r.source=n.element,r.sourceId=n.elementId):(r.floatingElement=r.target,r.floatingId=r.targetId,r.floatingEndpoint=r.endpoints[1],r.floatingIndex=1,r.target=n.element,r.targetId=n.elementId),h&&r.suspendedEndpoint.id!=e.id&&(r.isDetachAllowed(r)&&r.endpoints[f].isDetachAllowed(r)&&r.suspendedEndpoint.isDetachAllowed(r)&&u.checkCondition("beforeDetach",r)||(o=!1)),v=function(n){var i,o,s,l;r.endpoints[f].detachFromConnection(r);r.suspendedEndpoint&&r.suspendedEndpoint.detachFromConnection(r);r.endpoints[f]=e;e.addConnection(r);i=e.getParameters();for(o in i)r.setParameter(o,i[o]);h?(s=r.suspendedEndpoint.elementId,u.fireMoveEvent({index:f,originalSourceId:0===f?s:r.sourceId,newSourceId:0===f?e.elementId:r.sourceId,originalTargetId:1==f?s:r.targetId,newTargetId:1==f?e.elementId:r.targetId,originalSourceEndpoint:0===f?r.suspendedEndpoint:r.endpoints[0],newSourceEndpoint:0===f?e:r.endpoints[0],originalTargetEndpoint:1==f?r.suspendedEndpoint:r.endpoints[1],newTargetEndpoint:1==f?e:r.endpoints[1],connection:r},c)):i.draggable&&u.initDraggable(this.element,dragOptions,"internal",u);(1==f?u.anchorManager.updateOtherEndpoint(r.sourceId,r.floatingId,r.targetId,r):u.anchorManager.sourceChanged(r.floatingId,r.sourceId,r,r.source),r.endpoints[0].finalEndpoint)&&(l=r.endpoints[0],l.detachFromConnection(r),r.endpoints[0]=r.endpoints[0].finalEndpoint,r.endpoints[0].addConnection(r));t.isObject(n)&&r.mergeData(n);u.finaliseConnection(r,null,c,!1);r.setHover(!1)}.bind(this),y=function(){r.suspendedEndpoint&&(r.endpoints[f]=r.suspendedEndpoint,r.setHover(!1),r._forceDetach=!0,0===f?(r.source=r.suspendedEndpoint.element,r.sourceId=r.suspendedEndpoint.elementId):(r.target=r.suspendedEndpoint.element,r.targetId=r.suspendedEndpoint.elementId),r.suspendedEndpoint.addConnection(r),1==f?u.anchorManager.updateOtherEndpoint(r.sourceId,r.floatingId,r.targetId,r):u.anchorManager.sourceChanged(r.floatingId,r.sourceId,r,r.source),u.repaint(r.sourceId),r._forceDetach=!1)},o=o&&n.isDropAllowed(r.sourceId,r.targetId,r.scope,r,e))return v(o),!0;y()}n.maybeCleanup&&n.maybeCleanup(e);u.currentlyDragging=!1}}}}.call("undefined"!=typeof window?window:this),function(){"use strict";var i=this,n=i.jsPlumb,t=i.jsPlumbUtil,u=function(t,i,r,u,f){if(!t.Defaults.DoNotThrowErrors&&null==jsPlumb.Connectors[i][r])throw{msg:"jsPlumb: unknown connector type '"+r+"'"};return new n.Connectors[i][r](u,f)},r=function(n,t,i){return n?i.makeAnchor(n,t,i):null},f=function(n,i,r,u){null!=i&&(i._jsPlumbConnections=i._jsPlumbConnections||{},u?delete i._jsPlumbConnections[n.id]:i._jsPlumbConnections[n.id]=!0,t.isEmpty(i._jsPlumbConnections)?r.removeClass(i,r.connectedClass):r.addClass(i,r.connectedClass))};n.Connection=function(i){var g=i.newEndpoint,r,c,l,u,y,p,h,f,v;if(this.id=i.id,this.connector=null,this.idPrefix="_jsplumb_c_",this.defaultLabelLocation=.5,this.defaultOverlayKeys=["Overlays","ConnectionOverlays"],this.previousConnection=i.previousConnection,this.source=n.getElement(i.source),this.target=n.getElement(i.target),i.sourceEndpoint&&(this.source=i.sourceEndpoint.getElement()),i.targetEndpoint&&(this.target=i.targetEndpoint.getElement()),n.OverlayCapableJsPlumbUIComponent.apply(this,arguments),this.sourceId=this._jsPlumb.instance.getId(this.source),this.targetId=this._jsPlumb.instance.getId(this.target),this.scope=i.scope,this.endpoints=[],this.endpointStyles=[],r=this._jsPlumb.instance,r.manage(this.sourceId,this.source),r.manage(this.targetId,this.target),this._jsPlumb.visible=!0,this._jsPlumb.editable=i.editable===!0,this._jsPlumb.params={cssClass:i.cssClass,container:i.container,"pointer-events":i["pointer-events"],editorParams:i.editorParams,overlays:i.overlays},this._jsPlumb.lastPaintedAt=null,this.bind("mouseover",function(){this.setHover(!0)}.bind(this)),this.bind("mouseout",function(){this.setHover(!1)}.bind(this)),this.editableRequested=i.editable!==!1,this.setEditable=function(n){return this.connector?this.connector.setEditable(n):!1},this.isEditable=function(){return this.connector?this.connector.isEditable():!1},this.isEditing=function(){return this.connector?this.connector.isEditing():!1},this.makeEndpoint=function(n,t,u,f){return u=u||this._jsPlumb.instance.getId(t),this.prepareEndpoint(r,g,this,f,n?0:1,i,t,u)},i.type&&(i.endpoints=this._jsPlumb.instance.deriveEndpointAndAnchorSpec(i.type).endpoints),c=this.makeEndpoint(!0,this.source,this.sourceId,i.sourceEndpoint),l=this.makeEndpoint(!1,this.target,this.targetId,i.targetEndpoint),c&&t.addToList(i.endpointsByElement,this.sourceId,c),l&&t.addToList(i.endpointsByElement,this.targetId,l),this.scope||(this.scope=this.endpoints[0].scope),null!=i.deleteEndpointsOnDetach?(this.endpoints[0]._deleteOnDetach=i.deleteEndpointsOnDetach,this.endpoints[1]._deleteOnDetach=i.deleteEndpointsOnDetach):(this.endpoints[0]._doNotDeleteOnDetach||(this.endpoints[0]._deleteOnDetach=!0),this.endpoints[1]._doNotDeleteOnDetach||(this.endpoints[1]._deleteOnDetach=!0)),u=r.Defaults.ConnectionsDetachable,i.detachable===!1&&(u=!1),this.endpoints[0].connectionsDetachable===!1&&(u=!1),this.endpoints[1].connectionsDetachable===!1&&(u=!1),y=i.reattach||this.endpoints[0].reattachConnections||this.endpoints[1].reattachConnections||r.Defaults.ReattachConnections,this.appendToDefaultType({detachable:u,reattach:y,paintStyle:this.endpoints[0].connectorStyle||this.endpoints[1].connectorStyle||i.paintStyle||r.Defaults.PaintStyle||jsPlumb.Defaults.PaintStyle,hoverPaintStyle:this.endpoints[0].connectorHoverStyle||this.endpoints[1].connectorHoverStyle||i.hoverPaintStyle||r.Defaults.HoverPaintStyle||jsPlumb.Defaults.HoverPaintStyle}),p=r.getSuspendedAt(),!r.isSuspendDrawing()){var w=r.getCachedData(this.sourceId),e=w.o,b=w.s,k=r.getCachedData(this.targetId),o=k.o,d=k.s,s=p||r.timestamp(),a=this.endpoints[0].anchor.compute({xy:[e.left,e.top],wh:b,element:this.endpoints[0],elementId:this.endpoints[0].elementId,txy:[o.left,o.top],twh:d,tElement:this.endpoints[1],timestamp:s});this.endpoints[0].paint({anchorLoc:a,timestamp:s});a=this.endpoints[1].anchor.compute({xy:[o.left,o.top],wh:d,element:this.endpoints[1],elementId:this.endpoints[1].elementId,txy:[e.left,e.top],twh:b,tElement:this.endpoints[0],timestamp:s});this.endpoints[1].paint({anchorLoc:a,timestamp:s})}this.getTypeDescriptor=function(){return"connection"};this.getAttachedElements=function(){return this.endpoints};this.isDetachable=function(){return this._jsPlumb.detachable===!0};this.setDetachable=function(n){this._jsPlumb.detachable=n===!0};this.isReattach=function(){return this._jsPlumb.reattach===!0||this.endpoints[0].reattachConnections===!0||this.endpoints[1].reattachConnections===!0};this.setReattach=function(n){this._jsPlumb.reattach=n===!0};this._jsPlumb.cost=i.cost||this.endpoints[0].getConnectionCost();this._jsPlumb.directed=i.directed;null==i.directed&&(this._jsPlumb.directed=this.endpoints[0].areConnectionsDirected());h=jsPlumb.extend({},this.endpoints[1].getParameters());n.extend(h,this.endpoints[0].getParameters());n.extend(h,this.getParameters());this.setParameters(h);this.setConnector(this.endpoints[0].connector||this.endpoints[1].connector||i.connector||r.Defaults.Connector||n.Defaults.Connector,!0);i.geometry&&this.connector.setGeometry(i.geometry);f=null!=i.data&&t.isObject(i.data)?i.data:{};this.getData=function(){return f};this.setData=function(n){f=n||{}};this.mergeData=function(n){f=jsPlumb.extend(f,n)};v=["default",this.endpoints[0].connectionType,this.endpoints[1].connectionType,i.type].join(" ");/[^\s]/.test(v)&&this.addType(v,i.data,!0);this.updateConnectedClass()};t.extend(n.Connection,n.OverlayCapableJsPlumbUIComponent,{applyType:function(t,i,r){null!=t.detachable&&this.setDetachable(t.detachable);null!=t.reattach&&this.setReattach(t.reattach);t.scope&&(this.scope=t.scope);null!=t.cssClass&&this.canvas&&this._jsPlumb.instance.addClass(this.canvas,t.cssClass);var u=null;t.anchor?(u=this.getCachedTypeItem("anchors",r.anchor),null==u&&(u=[this._jsPlumb.instance.makeAnchor(t.anchor),this._jsPlumb.instance.makeAnchor(t.anchor)],this.cacheTypeItem("anchors",u,r.anchor))):t.anchors&&(u=this.getCachedTypeItem("anchors",r.anchors),null==u&&(u=[this._jsPlumb.instance.makeAnchor(t.anchors[0]),this._jsPlumb.instance.makeAnchor(t.anchors[1])],this.cacheTypeItem("anchors",u,r.anchors)));null!=u&&(this.endpoints[0].anchor=u[0],this.endpoints[1].anchor=u[1],this.endpoints[1].anchor.isDynamic&&this._jsPlumb.instance.repaint(this.endpoints[1].elementId));n.OverlayCapableJsPlumbUIComponent.applyType(this,t)},addClass:function(n,t){t&&(this.endpoints[0].addClass(n),this.endpoints[1].addClass(n),this.suspendedEndpoint&&this.suspendedEndpoint.addClass(n));this.connector&&this.connector.addClass(n)},removeClass:function(n,t){t&&(this.endpoints[0].removeClass(n),this.endpoints[1].removeClass(n),this.suspendedEndpoint&&this.suspendedEndpoint.removeClass(n));this.connector&&this.connector.removeClass(n)},isVisible:function(){return this._jsPlumb.visible},setVisible:function(n){this._jsPlumb.visible=n;this.connector&&this.connector.setVisible(n);this.repaint()},cleanup:function(){this.updateConnectedClass(!0);this.endpoints=null;this.source=null;this.target=null;null!=this.connector&&(this.connector.cleanup(!0),this.connector.destroy(!0));this.connector=null},updateConnectedClass:function(n){this._jsPlumb&&(f(this,this.source,this._jsPlumb.instance,n),f(this,this.target,this._jsPlumb.instance,n))},setHover:function(n){this.connector&&this._jsPlumb&&!this._jsPlumb.instance.isConnectionBeingDragged()&&(this.connector.setHover(n),i.jsPlumb[n?"addClass":"removeClass"](this.source,this._jsPlumb.instance.hoverSourceClass),i.jsPlumb[n?"addClass":"removeClass"](this.target,this._jsPlumb.instance.hoverTargetClass))},getUuids:function(){return[this.endpoints[0].getUuid(),this.endpoints[1].getUuid()]},getCost:function(){return this._jsPlumb?this._jsPlumb.cost:-1/0},setCost:function(n){this._jsPlumb.cost=n},isDirected:function(){return this._jsPlumb.directed===!0},getConnector:function(){return this.connector},getGeometry:function(){return this.connector?this.connector.getGeometry():null},setGeometry:function(n){this.connector&&this.connector.setGeometry(n)},prepareConnector:function(n,i){var r,f={_jsPlumb:this._jsPlumb.instance,cssClass:(this._jsPlumb.params.cssClass||"")+(this.isEditable()?this._jsPlumb.instance.editableConnectorClass:""),container:this._jsPlumb.params.container,"pointer-events":this._jsPlumb.params["pointer-events"],editable:this.editableRequested},e=this._jsPlumb.instance.getRenderMode();return t.isString(n)?r=u(this._jsPlumb.instance,e,n,f,this):t.isArray(n)&&(r=1==n.length?u(this._jsPlumb.instance,e,n[0],f,this):u(this._jsPlumb.instance,e,n[0],t.merge(n[1],f),this)),null!=i&&(r.typeId=i),r},setPreparedConnector:function(n,t,i,r){var e,o="",f,u;if(null!=this.connector&&(e=this.connector,o=e.getClass(),this.connector.cleanup(),this.connector.destroy()),this.connector=n,r&&this.cacheTypeItem("connector",n,r),this.canvas=this.connector.canvas,this.bgCanvas=this.connector.bgCanvas,this.addClass(o),this.canvas&&(this.canvas._jsPlumb=this),this.bgCanvas&&(this.bgCanvas._jsPlumb=this),null!=e)for(f=this.getOverlays(),u=0;u<f.length;u++)f[u].transfer&&f[u].transfer(this.connector);i||this.setListenerComponent(this.connector);t||this.repaint()},setConnector:function(n,t,i,r){var u=this.prepareConnector(n,r);this.setPreparedConnector(u,t,i,r)},paint:function(n){var t,i,o,c,l;if(!this._jsPlumb.instance.isSuspendDrawing()&&this._jsPlumb.visible){n=n||{};var r=n.timestamp,e=!1,b=e?this.sourceId:this.targetId,k=e?this.targetId:this.sourceId,a=e?0:1,v=e?1:0;if(null==r||r!=this._jsPlumb.lastPaintedAt){var u=this._jsPlumb.instance.updateOffset({elId:k}).o,f=this._jsPlumb.instance.updateOffset({elId:b}).o,y=this.endpoints[v],p=this.endpoints[a],d=y.anchor.getCurrentLocation({xy:[u.left,u.top],wh:[u.width,u.height],element:y,timestamp:r}),g=p.anchor.getCurrentLocation({xy:[f.left,f.top],wh:[f.width,f.height],element:p,timestamp:r});this.connector.resetBounds();this.connector.compute({sourcePos:d,targetPos:g,sourceEndpoint:this.endpoints[v],targetEndpoint:this.endpoints[a],lineWidth:this._jsPlumb.paintStyleInUse.lineWidth,sourceInfo:u,targetInfo:f});t={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};for(i in this._jsPlumb.overlays)this._jsPlumb.overlays.hasOwnProperty(i)&&(o=this._jsPlumb.overlays[i],o.isVisible()&&(this._jsPlumb.overlayPlacements[i]=o.draw(this.connector,this._jsPlumb.paintStyleInUse,this.getAbsoluteOverlayPosition(o)),t.minX=Math.min(t.minX,this._jsPlumb.overlayPlacements[i].minX),t.maxX=Math.max(t.maxX,this._jsPlumb.overlayPlacements[i].maxX),t.minY=Math.min(t.minY,this._jsPlumb.overlayPlacements[i].minY),t.maxY=Math.max(t.maxY,this._jsPlumb.overlayPlacements[i].maxY)));var s=parseFloat(this._jsPlumb.paintStyleInUse.lineWidth||1)/2,h=parseFloat(this._jsPlumb.paintStyleInUse.lineWidth||0),w={xmin:Math.min(this.connector.bounds.minX-(s+h),t.minX),ymin:Math.min(this.connector.bounds.minY-(s+h),t.minY),xmax:Math.max(this.connector.bounds.maxX+(s+h),t.maxX),ymax:Math.max(this.connector.bounds.maxY+(s+h),t.maxY)};this.connector.paint(this._jsPlumb.paintStyleInUse,null,w);for(c in this._jsPlumb.overlays)this._jsPlumb.overlays.hasOwnProperty(c)&&(l=this._jsPlumb.overlays[c],l.isVisible()&&l.paint(this._jsPlumb.overlayPlacements[c],w))}this._jsPlumb.lastPaintedAt=r}},repaint:function(n){n=n||{};this.paint({elId:this.sourceId,recalc:!(n.recalc===!1),timestamp:n.timestamp})},prepareEndpoint:function(t,i,u,f,e,o,s,h){var a,v,c,l,y,p;return f?(u.endpoints[e]=f,f.addConnection(u)):(o.endpoints||(o.endpoints=[null,null]),v=o.endpoints[e]||o.endpoint||t.Defaults.Endpoints[e]||jsPlumb.Defaults.Endpoints[e]||t.Defaults.Endpoint||jsPlumb.Defaults.Endpoint,o.endpointStyles||(o.endpointStyles=[null,null]),o.endpointHoverStyles||(o.endpointHoverStyles=[null,null]),c=o.endpointStyles[e]||o.endpointStyle||t.Defaults.EndpointStyles[e]||jsPlumb.Defaults.EndpointStyles[e]||t.Defaults.EndpointStyle||jsPlumb.Defaults.EndpointStyle,null==c.fillStyle&&null!=o.paintStyle&&(c.fillStyle=o.paintStyle.strokeStyle),null==c.outlineColor&&null!=o.paintStyle&&(c.outlineColor=o.paintStyle.outlineColor),null==c.outlineWidth&&null!=o.paintStyle&&(c.outlineWidth=o.paintStyle.outlineWidth),l=o.endpointHoverStyles[e]||o.endpointHoverStyle||t.Defaults.EndpointHoverStyles[e]||jsPlumb.Defaults.EndpointHoverStyles[e]||t.Defaults.EndpointHoverStyle||jsPlumb.Defaults.EndpointHoverStyle,null!=o.hoverPaintStyle&&(null==l&&(l={}),null==l.fillStyle&&(l.fillStyle=o.hoverPaintStyle.strokeStyle)),y=o.anchors?o.anchors[e]:o.anchor?o.anchor:r(t.Defaults.Anchors[e],h,t)||r(n.Defaults.Anchors[e],h,t)||r(t.Defaults.Anchor,h,t)||r(n.Defaults.Anchor,h,t),p=o.uuids?o.uuids[e]:null,a=i({paintStyle:c,hoverPaintStyle:l,endpoint:v,connections:[u],uuid:p,anchor:y,source:s,scope:o.scope,reattach:o.reattach||t.Defaults.ReattachConnections,detachable:o.detachable||t.Defaults.ConnectionsDetachable}),u.endpoints[e]=a,o.drawEndpoints===!1&&a.setVisible(!1,!0,!0)),a}})}.call("undefined"!=typeof window?window:this),function(){"use strict";var u=this,n=u.jsPlumbUtil,t=u.jsPlumb,f,i,r;t.AnchorManager=function(i){var f={},a={},h={},y={},b={HORIZONTAL:"horizontal",VERTICAL:"vertical",DIAGONAL:"diagonal",IDENTITY:"identity"},o=["left","top","right","bottom"],r={},c=this,u={},e=i.jsPlumbInstance,v={},k=function(n,t,i,r,u,f){var h,c;if(n===t)return{orientation:b.IDENTITY,a:["top","top"]};var y=Math.atan2(r.centery-i.centery,r.centerx-i.centerx),p=Math.atan2(i.centery-r.centery,i.centerx-r.centerx),e=[],l={};for(!function(n,t){for(var i=0;i<n.length;i++)l[n[i]]={left:[t[i].left,t[i].centery],right:[t[i].right,t[i].centery],top:[t[i].centerx,t[i].top],bottom:[t[i].centerx,t[i].bottom]}}(["source","target"],[i,r]),h=0;h<o.length;h++)for(c=0;c<o.length;c++)e.push({source:o[h],target:o[c],dist:Biltong.lineLength(l.source[o[h]],l.target[o[c]])});e.sort(function(n,t){return n.dist<t.dist?-1:n.dist>t.dist?1:0});for(var a=e[0].source,v=e[0].target,s=0;s<e.length&&(a=!u.isContinuous||u.isEdgeSupported(e[s].source)?e[s].source:null,v=!f.isContinuous||f.isEdgeSupported(e[s].target)?e[s].target:null,null==a||null==v);s++);return{a:[a,v],theta:y,theta2:p}},d=function(n,t,i,r,u,f,e){for(var s,h,c=[],v=t[u?0:1]/(r.length+1),o=0;o<r.length;o++){s=(o+1)*v;h=f*t[u?1:0];e&&(s=t[u?0:1]-s);var l=u?s:h,y=i[0]+l,p=l/t[0],a=u?h:s,w=i[1]+a,b=a/t[1];c.push([y,w,p,b,r[o][1],r[o][2]])}return c},p=function(n){return function(t,i){var r=!0;return r=n?t[0][0]<i[0][0]:t[0][0]>i[0][0],r===!1?-1:1}},g=function(n,t){var i=n[0][0]<0?-Math.PI-n[0][0]:Math.PI-n[0][0],r=t[0][0]<0?-Math.PI-t[0][0]:Math.PI-t[0][0];return i>r?1:n[0][1]>t[0][1]?1:-1},nt={top:function(n,t){return n[0]>t[0]?1:-1},right:p(!0),bottom:p(!0),left:g},tt=function(n,t){return n.sort(t)},it=function(n,t){var f=e.getCachedData(n),r=f.s,i=f.o,u=function(t,i,r,u,f,e,o){if(u.length>0)for(var v=tt(u,nt[t]),p="right"===t||"top"===t,h=d(t,i,r,v,f,e,p),l=function(n,t){a[n.id]=[t[0],t[1],t[2],t[3]];y[n.id]=o},s=0;s<h.length;s++){var c=h[s][4],w=c.endpoints[0].elementId===n,b=c.endpoints[1].elementId===n;w&&l(c.endpoints[0],h[s]);b&&l(c.endpoints[1],h[s])}};u("bottom",r,[i.left,i.top],t.bottom,!0,1,[0,1]);u("top",r,[i.left,i.top],t.top,!0,0,[0,-1]);u("left",r,[i.left,i.top],t.left,!1,0,[-1,0]);u("right",r,[i.left,i.top],t.right,!1,1,[1,0])},l,s,w;this.reset=function(){f={};r={};u={}};this.addFloatingConnection=function(n,t){v[n]=t};this.removeFloatingConnection=function(n){delete v[n]};this.newConnection=function(i){var f=i.sourceId,e=i.targetId,u=i.endpoints,o=!0,s=function(s,h,c,l,a){f==e&&c.isContinuous&&(i._jsPlumb.instance.removeElement(u[1].canvas),o=!1);n.addToList(r,l,[a,h,c.constructor==t.DynamicAnchor])};s(0,u[0],u[0].anchor,e,i);o&&s(1,u[1],u[1].anchor,f,i)};l=function(t){!function(t,i){if(t){var r=function(n){return n[4]==i};n.removeWithFunction(t.top,r);n.removeWithFunction(t.left,r);n.removeWithFunction(t.bottom,r);n.removeWithFunction(t.right,r)}}(u[t.elementId],t.id)};this.connectionDetached=function(t,i){var u=t.connection||t,o=t.sourceId,s=t.targetId,f=u.endpoints,e=function(t,i,u,f,e){n.removeWithFunction(r[f],function(n){return n[0].id==e.id})};e(1,f[1],f[1].anchor,o,u);e(0,f[0],f[0].anchor,s,u);u.floatingId&&(e(u.floatingIndex,u.floatingEndpoint,u.floatingEndpoint.anchor,u.floatingId,u),l(u.floatingEndpoint));l(u.endpoints[0]);l(u.endpoints[1]);i||(c.redraw(u.sourceId),u.targetId!==u.sourceId&&c.redraw(u.targetId))};this.add=function(t,i){n.addToList(f,i,t)};this.changeId=function(n,t){r[t]=r[n];f[t]=f[n];delete r[n];delete f[n]};this.getConnectionsFor=function(n){return r[n]||[]};this.getEndpointsFor=function(n){return f[n]||[]};this.deleteEndpoint=function(t){n.removeWithFunction(f[t.elementId],function(n){return n.id==t.id});l(t)};this.clearFor=function(n){delete f[n];f[n]=[]};s=function(t,r,u,f,e,o,s,h,c,l,a,v){var y,p,tt=-1,k=-1,d=f.endpoints[s],it=d.id,g=[1,0][s],rt=[[r,u],f,e,o,it],w=t[c],b=d._continuousAnchorEdge?t[d._continuousAnchorEdge]:null,nt,ut;if(b&&(nt=n.findWithFunction(b,function(n){return n[4]==it}),-1!=nt))for(b.splice(nt,1),y=0;y<b.length;y++)p=b[y][1],n.addWithFunction(a,p,function(n){return n.id==p.id}),n.addWithFunction(v,b[y][1].endpoints[s],function(n){return n.id==p.endpoints[s].id}),n.addWithFunction(v,b[y][1].endpoints[g],function(n){return n.id==p.endpoints[g].id});for(y=0;y<w.length;y++)p=w[y][1],1==i.idx&&w[y][3]===o&&-1==k&&(k=y),n.addWithFunction(a,p,function(n){return n.id==p.id}),n.addWithFunction(v,w[y][1].endpoints[s],function(n){return n.id==p.endpoints[s].id}),n.addWithFunction(v,w[y][1].endpoints[g],function(n){return n.id==p.endpoints[g].id});-1!=tt?w[tt]=rt:(ut=h?-1!=k?k:0:w.length,w.splice(ut,0,rt));d._continuousAnchorEdge=c};this.updateOtherEndpoint=function(i,u,f,e){var o=n.findWithFunction(r[i],function(n){return n[0].id===e.id}),s=n.findWithFunction(r[u],function(n){return n[0].id===e.id});-1!=o&&(r[i][o][0]=e,r[i][o][1]=e.endpoints[1],r[i][o][2]=e.endpoints[1].anchor.constructor==t.DynamicAnchor);s>-1&&(r[u].splice(s,1),n.addToList(r,f,[e,e.endpoints[0],e.endpoints[0].anchor.constructor==t.DynamicAnchor]));e.updateConnectedClass()};this.sourceChanged=function(i,u,f,e){if(i!==u){f.sourceId=u;f.source=e;n.removeWithFunction(r[i],function(n){return n[0].id===f.id});var o=n.findWithFunction(r[f.targetId],function(n){return n[0].id===f.id});o>-1&&(r[f.targetId][o][0]=f,r[f.targetId][o][1]=f.endpoints[0],r[f.targetId][o][2]=f.endpoints[0].anchor.constructor==t.DynamicAnchor);n.addToList(r,u,[f,f.endpoints[1],f.endpoints[1].anchor.constructor==t.DynamicAnchor]);f.endpoints[1].anchor.isContinuous&&(f.source===f.target?f._jsPlumb.instance.removeElement(f.endpoints[1].canvas):null==f.endpoints[1].canvas.parentNode&&f._jsPlumb.instance.appendElement(f.endpoints[1].canvas));f.updateConnectedClass()}};this.rehomeEndpoint=function(n,t,i){var o=f[t]||[],s=e.getId(i),u,h,r;for(s!==t&&(u=o.indexOf(n),u>-1&&(h=o.splice(u,1)[0],c.add(h,s))),r=0;r<n.connections.length;r++)n.connections[r].sourceId==t?c.sourceChanged(t,n.elementId,n.connections[r],n.element):n.connections[r].targetId==t&&(n.connections[r].targetId=n.elementId,n.connections[r].target=n.element,c.updateOtherEndpoint(n.connections[r].sourceId,t,n.elementId,n.connections[r]))};this.redraw=function(i,o,h,c,l,a){var pt,wt,ct,rt,st,lt;if(!e.isSuspendDrawing()){var tt=f[i]||[],g=r[i]||[],d=[],nt=[],ft=[];h=h||e.timestamp();c=c||{left:0,top:0};o&&(o={left:o.left+c.left,top:o.top+c.top});for(var at=e.updateOffset({elId:i,offset:o,recalc:!1,timestamp:h}),vt={},y=0;y<g.length;y++){var b=g[y][0],p=b.sourceId,w=b.targetId,et=b.endpoints[0].anchor.isContinuous,ot=b.endpoints[1].anchor.isContinuous;if(et||ot){var yt=p+"_"+w,ut=vt[yt],ht=b.sourceId==i?1:0;et&&!u[p]&&(u[p]={top:[],right:[],bottom:[],left:[]});ot&&!u[w]&&(u[w]={top:[],right:[],bottom:[],left:[]});i!=w&&e.updateOffset({elId:w,timestamp:h});i!=p&&e.updateOffset({elId:p,timestamp:h});pt=e.getCachedData(w);wt=e.getCachedData(p);w==p&&(et||ot)?(s(u[p],-Math.PI/2,0,b,!1,w,0,!1,"top",p,d,nt),s(u[w],-Math.PI/2,0,b,!1,p,1,!1,"top",w,d,nt)):(ut||(ut=k(p,w,wt.o,pt.o,b.endpoints[0].anchor,b.endpoints[1].anchor),vt[yt]=ut),et&&s(u[p],ut.theta,0,b,!1,w,0,!1,ut.a[0],p,d,nt),ot&&s(u[w],ut.theta2,-1,b,!0,p,1,!0,ut.a[1],w,d,nt));et&&n.addWithFunction(ft,p,function(n){return n===p});ot&&n.addWithFunction(ft,w,function(n){return n===w});n.addWithFunction(d,b,function(n){return n.id==b.id});(et&&0===ht||ot&&1===ht)&&n.addWithFunction(nt,b.endpoints[ht],function(n){return n.id==b.endpoints[ht].id})}}for(y=0;y<tt.length;y++)0===tt[y].connections.length&&tt[y].anchor.isContinuous&&(u[i]||(u[i]={top:[],right:[],bottom:[],left:[]}),s(u[i],-Math.PI/2,0,{endpoints:[tt[y],tt[y]],paint:function(){}},!1,i,0,!1,tt[y].anchor.getDefaultFace(),i,d,nt),n.addWithFunction(ft,i,function(n){return n===i}));for(y=0;y<ft.length;y++)it(ft[y],u[ft[y]]);for(y=0;y<tt.length;y++)tt[y].paint({timestamp:h,offset:at,dimensions:at.s,recalc:a!==!0});for(y=0;y<nt.length;y++)ct=e.getCachedData(nt[y].elementId),nt[y].paint({timestamp:h,offset:ct,dimensions:ct.s});for(y=0;y<g.length;y++)if(rt=g[y][1],rt.anchor.constructor==t.DynamicAnchor)for(rt.paint({elementWithPrecedence:i,timestamp:h}),n.addWithFunction(d,g[y][0],function(n){return n.id==g[y][0].id}),st=0;st<rt.connections.length;st++)rt.connections[st]!==g[y][0]&&n.addWithFunction(d,rt.connections[st],function(n){return n.id==rt.connections[st].id});else rt.anchor.constructor==t.Anchor&&n.addWithFunction(d,g[y][0],function(n){return n.id==g[y][0].id});for(lt=v[i],lt&&lt.paint({timestamp:h,recalc:!1,elId:i}),y=0;y<d.length;y++)d[y].paint({elId:i,timestamp:h,recalc:!1,clearEdits:l})}};w=function(t){n.EventGenerator.apply(this);this.type="Continuous";this.isDynamic=!0;this.isContinuous=!0;for(var r=t.faces||["top","right","bottom","left"],f=!(t.clockwise===!1),i={},e={top:"bottom",right:"left",left:"right",bottom:"top"},o={top:"right",right:"bottom",left:"top",bottom:"left"},s={top:"left",right:"top",left:"bottom",bottom:"right"},c=f?o:s,l=f?s:o,v=t.cssClass||"",u=0;u<r.length;u++)i[r[u]]=!0;this.getDefaultFace=function(){return 0===r.length?"top":r[0]};this.verifyEdge=function(n){return i[n]?n:i[e[n]]?e[n]:i[c[n]]?c[n]:i[l[n]]?l[n]:n};this.isEdgeSupported=function(n){return i[n]===!0};this.compute=function(n){return h[n.element.id]||a[n.element.id]||[0,0]};this.getCurrentLocation=function(n){return h[n.element.id]||a[n.element.id]||[0,0]};this.getOrientation=function(n){return y[n.id]||[0,0]};this.clearUserDefinedLocation=function(){delete h[t.elementId]};this.setUserDefinedLocation=function(n){h[t.elementId]=n};this.getCssClass=function(){return v}};e.continuousAnchorFactory={get:function(n){return new w(n)},clear:function(n){delete h[n];delete a[n]}}};t.Anchor=function(t){this.x=t.x||0;this.y=t.y||0;this.elementId=t.elementId;this.cssClass=t.cssClass||"";this.userDefinedLocation=null;this.orientation=t.orientation||[0,0];this.lastReturnValue=null;this.offsets=t.offsets||[0,0];this.timestamp=null;n.EventGenerator.apply(this);this.compute=function(n){var i=n.xy,r=n.wh,t=n.timestamp;return n.clearUserDefinedLocation&&(this.userDefinedLocation=null),t&&t===self.timestamp?this.lastReturnValue:(this.lastReturnValue=null!=this.userDefinedLocation?this.userDefinedLocation:[i[0]+this.x*r[0]+this.offsets[0],i[1]+this.y*r[1]+this.offsets[1]],this.timestamp=t,this.lastReturnValue)};this.getCurrentLocation=function(n){return n=n||{},null==this.lastReturnValue||null!=n.timestamp&&this.timestamp!=n.timestamp?this.compute(n):this.lastReturnValue}};n.extend(t.Anchor,n.EventGenerator,{equals:function(n){if(!n)return!1;var t=n.getOrientation(),i=this.getOrientation();return this.x==n.x&&this.y==n.y&&this.offsets[0]==n.offsets[0]&&this.offsets[1]==n.offsets[1]&&i[0]==t[0]&&i[1]==t[1]},getUserDefinedLocation:function(){return this.userDefinedLocation},setUserDefinedLocation:function(n){this.userDefinedLocation=n},clearUserDefinedLocation:function(){this.userDefinedLocation=null},getOrientation:function(){return this.orientation},getCssClass:function(){return this.cssClass}});t.FloatingAnchor=function(n){t.Anchor.apply(this,arguments);var f=n.reference,e=n.referenceCanvas,u=t.getSize(e),o=0,s=0,i=null,r=null;this.orientation=null;this.x=0;this.y=0;this.isFloating=!0;this.compute=function(n){var t=n.xy,i=[t[0]+u[0]/2,t[1]+u[1]/2];return r=i,i};this.getOrientation=function(n){if(i)return i;var t=f.getOrientation(n);return[-1*Math.abs(t[0])*o,-1*Math.abs(t[1])*s]};this.over=function(n,t){i=n.getOrientation(t)};this.out=function(){i=null};this.getCurrentLocation=function(n){return null==r?this.compute(n):r}};n.extend(t.FloatingAnchor,t.Anchor);f=function(n,i,r){return n.constructor==t.Anchor?n:i.makeAnchor(n,r,i)};t.DynamicAnchor=function(n){var r;for(t.Anchor.apply(this,arguments),this.isDynamic=!0,this.anchors=[],this.elementId=n.elementId,this.jsPlumbInstance=n.jsPlumbInstance,r=0;r<n.anchors.length;r++)this.anchors[r]=f(n.anchors[r],this.jsPlumbInstance,this.elementId);this.getAnchors=function(){return this.anchors};this.locked=!1;var i=this.anchors.length>0?this.anchors[0]:null,u=i,e=this,o=function(n,t,i,r,u){var f=r[0]+n.x*u[0],e=r[1]+n.y*u[1],o=r[0]+u[0]/2,s=r[1]+u[1]/2;return Math.sqrt(Math.pow(t-f,2)+Math.pow(i-e,2))+Math.sqrt(Math.pow(o-f,2)+Math.pow(s-e,2))},s=n.selector||function(n,t,i,r,u){for(var e,c=i[0]+r[0]/2,l=i[1]+r[1]/2,s=-1,h=1/0,f=0;f<u.length;f++)e=o(u[f],c,l,n,t),h>e&&(s=f+0,h=e);return u[s]};this.compute=function(n){var o=n.xy,h=n.wh,r=n.txy,f=n.twh,t;return this.timestamp=n.timestamp,t=e.getUserDefinedLocation(),null!=t?t:this.locked||null==r||null==f?i.compute(n):(n.timestamp=null,i=s(o,h,r,f,this.anchors),this.x=i.x,this.y=i.y,i!=u&&this.fire("anchorChanged",i),u=i,i.compute(n))};this.getCurrentLocation=function(n){return this.getUserDefinedLocation()||(null!=i?i.getCurrentLocation(n):null)};this.getOrientation=function(n){return null!=i?i.getOrientation(n):[0,0]};this.over=function(n,t){null!=i&&i.over(n,t)};this.out=function(){null!=i&&i.out()};this.getCssClass=function(){return i&&i.getCssClass()||""}};n.extend(t.DynamicAnchor,t.Anchor);i=function(n,i,r,u,f,e){t.Anchors[f]=function(t){var o=t.jsPlumbInstance.makeAnchor([n,i,r,u,0,0],t.elementId,t.jsPlumbInstance);return o.type=f,e&&e(o,t),o}};i(.5,0,0,-1,"TopCenter");i(.5,1,0,1,"BottomCenter");i(0,.5,-1,0,"LeftMiddle");i(1,.5,1,0,"RightMiddle");i(.5,0,0,-1,"Top");i(.5,1,0,1,"Bottom");i(0,.5,-1,0,"Left");i(1,.5,1,0,"Right");i(.5,.5,0,0,"Center");i(1,0,0,-1,"TopRight");i(1,1,0,1,"BottomRight");i(0,0,0,-1,"TopLeft");i(0,1,0,1,"BottomLeft");t.Defaults.DynamicAnchors=function(n){return n.jsPlumbInstance.makeAnchors(["TopCenter","RightMiddle","BottomCenter","LeftMiddle"],n.elementId,n.jsPlumbInstance)};t.Anchors.AutoDefault=function(n){var i=n.jsPlumbInstance.makeDynamicAnchor(t.Defaults.DynamicAnchors(n));return i.type="AutoDefault",i};r=function(n,i){t.Anchors[n]=function(t){var r=t.jsPlumbInstance.makeAnchor(["Continuous",{faces:i}],t.elementId,t.jsPlumbInstance);return r.type=n,r}};t.Anchors.Continuous=function(n){return n.jsPlumbInstance.continuousAnchorFactory.get(n)};r("ContinuousLeft",["left"]);r("ContinuousTop",["top"]);r("ContinuousBottom",["bottom"]);r("ContinuousRight",["right"]);i(0,0,0,0,"Assign",function(n,t){var i=t.position||"Fixed";n.positionFinder=i.constructor==String?t.jsPlumbInstance.AnchorPositionFinders[i]:i;n.constructorParams=t});u.jsPlumbInstance.prototype.AnchorPositionFinders={Fixed:function(n,t,i){return[(n.left-t.left)/i[0],(n.top-t.top)/i[1]]},Grid:function(n,t,i,r){var e=n.left-t.left,o=n.top-t.top,u=i[0]/r.grid[0],f=i[1]/r.grid[1],s=Math.floor(e/u),h=Math.floor(o/f);return[(s*u+u/2)/i[0],(h*f+f/2)/i[1]]}};t.Anchors.Perimeter=function(n){var t,i,r,f;if(n=n||{},t=n.anchorCount||60,i=n.shape,!i)throw new Error("no shape supplied to Perimeter Anchor type");var e=function(){for(var f,e,n=.5,o=2*Math.PI/t,i=0,r=[],u=0;t>u;u++)f=n+n*Math.sin(i),e=n+n*Math.cos(i),r.push([f,e,0,0]),i+=o;return r},o=function(n){for(var i=t/n.length,u=[],f=function(n,r,f,e,o){i=t*o;for(var h=(f-n)/i,c=(e-r)/i,s=0;i>s;s++)u.push([n+h*s,r+c*s,0,0])},r=0;r<n.length;r++)f.apply(null,n[r]);return u},u=function(n){for(var i=[],t=0;t<n.length;t++)i.push([n[t][0],n[t][1],n[t][2],n[t][3],1/n.length]);return o(i)},s=function(){return u([[0,0,1,0],[1,0,1,1],[1,1,0,1],[0,1,0,0]])},h={Circle:e,Ellipse:e,Diamond:function(){return u([[.5,0,1,.5],[1,.5,.5,1],[.5,1,0,.5],[0,.5,.5,0]])},Rectangle:s,Square:s,Triangle:function(){return u([[.5,0,1,1],[1,1,0,1],[0,1,.5,0]])},Path:function(n){for(var f,u,i=n.points,r=[],e=0,t=0;t<i.length-1;t++)f=Math.sqrt(Math.pow(i[t][2]-i[t][0])+Math.pow(i[t][3]-i[t][1])),e+=f,r.push([i[t][0],i[t][1],i[t+1][0],i[t+1][1],f]);for(u=0;u<r.length;u++)r[u][4]=r[u][4]/e;return o(r)}},c=function(n,t){for(var u,f,e=[],r=t/180*Math.PI,i=0;i<n.length;i++)u=n[i][0]-.5,f=n[i][1]-.5,e.push([.5+(u*Math.cos(r)-f*Math.sin(r)),.5+(u*Math.sin(r)+f*Math.cos(r)),n[i][2],n[i][3]]);return e};if(!h[i])throw new Error("Shape ["+i+"] is unknown by Perimeter Anchor type");return r=h[i](n),n.rotation&&(r=c(r,n.rotation)),f=n.jsPlumbInstance.makeDynamicAnchor(r),f.type="Perimeter",f}}.call("undefined"!=typeof window?window:this),function(){"use strict";var r=this,n=r.jsPlumb,t=r.jsPlumbUtil,i=r.Biltong,e,h,f,u,s,o;n.Segments={AbstractSegment:function(n){this.params=n;this.findClosestPointOnPath=function(){return{d:1/0,x:null,y:null,l:null}};this.getBounds=function(){return{minX:Math.min(n.x1,n.x2),minY:Math.min(n.y1,n.y2),maxX:Math.max(n.x1,n.x2),maxY:Math.max(n.y1,n.y2)}}},Straight:function(t){var s,o,l,r,f,u,e,a=(n.Segments.AbstractSegment.apply(this,arguments),function(){s=Math.sqrt(Math.pow(f-r,2)+Math.pow(e-u,2));o=i.gradient({x:r,y:u},{x:f,y:e});l=-1/o}),h,c;this.type="Straight";this.getLength=function(){return s};this.getGradient=function(){return o};this.getCoordinates=function(){return{x1:r,y1:u,x2:f,y2:e}};this.setCoordinates=function(n){r=n.x1;u=n.y1;f=n.x2;e=n.y2;a()};this.setCoordinates({x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2});this.getBounds=function(){return{minX:Math.min(r,f),minY:Math.min(u,e),maxX:Math.max(r,f),maxY:Math.max(u,e)}};this.pointOnPath=function(n,t){if(0!==n||t){if(1!=n||t){var o=t?n>0?n:s+n:n*s;return i.pointOnLine({x:r,y:u},{x:f,y:e},o)}return{x:f,y:e}}return{x:r,y:u}};this.gradientAtPoint=function(){return o};this.pointAlongPathFrom=function(n,t,o){var s=this.pointOnPath(n,o),h=0>=t?{x:r,y:u}:{x:f,y:e};return 0>=t&&Math.abs(t)>1&&(t*=-1),i.pointOnLine(s,h,t)};h=function(n,t,i){return i>=Math.min(n,t)&&i<=Math.max(n,t)};c=function(n,t,i){return Math.abs(i-n)<Math.abs(i-t)?n:t};this.findClosestPointOnPath=function(n,t){var a={d:1/0,x:null,y:null,l:null,x1:r,x2:f,y1:u,y2:e},w;if(0===o)a.y=u,a.x=h(r,f,n)?n:c(r,f,n);else if(1/0==o||o==-1/0)a.x=r,a.y=h(u,e,t)?t:c(u,e,t);else{var p=u-o*r,b=t-l*n,v=(b-p)/(o-l),y=o*v+p;a.x=h(r,f,v)?v:c(r,f,v);a.y=h(u,e,y)?y:c(u,e,y)}return w=i.lineLength([a.x,a.y],[r,u]),a.d=i.lineLength([n,t],[a.x,a.y]),a.l=w/s,a}},Arc:function(t){var e=(n.Segments.AbstractSegment.apply(this,arguments),function(n,r){return i.theta([t.cx,t.cy],[n,r])}),c=function(n,t){var i,u,f,e;return n.anticlockwise?(i=n.startAngle<n.endAngle?n.startAngle+r:n.startAngle,u=Math.abs(i-n.endAngle),i-u*t):(f=n.endAngle<n.startAngle?n.endAngle+r:n.endAngle,e=Math.abs(f-n.startAngle),n.startAngle+e*t)},r=2*Math.PI,o,u,f;this.radius=t.r;this.anticlockwise=t.ac;this.type="Arc";t.startAngle&&t.endAngle?(this.startAngle=t.startAngle,this.endAngle=t.endAngle,this.x1=t.cx+this.radius*Math.cos(t.startAngle),this.y1=t.cy+this.radius*Math.sin(t.startAngle),this.x2=t.cx+this.radius*Math.cos(t.endAngle),this.y2=t.cy+this.radius*Math.sin(t.endAngle)):(this.startAngle=e(t.x1,t.y1),this.endAngle=e(t.x2,t.y2),this.x1=t.x1,this.y1=t.y1,this.x2=t.x2,this.y2=t.y2);this.endAngle<0&&(this.endAngle+=r);this.startAngle<0&&(this.startAngle+=r);o=this.endAngle<this.startAngle?this.endAngle+r:this.endAngle;this.sweep=Math.abs(o-this.startAngle);this.anticlockwise&&(this.sweep=r-this.sweep);var s=2*Math.PI*this.radius,l=this.sweep/r,h=s*l;this.getLength=function(){return h};this.getBounds=function(){return{minX:t.cx-t.r,maxX:t.cx+t.r,minY:t.cy-t.r,maxY:t.cy+t.r}};u=1e-10;f=function(n){var t=Math.floor(n),i=Math.ceil(n);return u>n-t?t:u>i-n?i:n};this.pointOnPath=function(n,i){if(0===n)return{x:this.x1,y:this.y1,theta:this.startAngle};if(1==n)return{x:this.x2,y:this.y2,theta:this.endAngle};i&&(n/=h);var r=c(this,n),u=t.cx+t.r*Math.cos(r),e=t.cy+t.r*Math.sin(r);return{x:f(u),y:f(e),theta:r}};this.gradientAtPoint=function(n,r){var f=this.pointOnPath(n,r),u=i.normal([t.cx,t.cy],[f.x,f.y]);return this.anticlockwise||1/0!=u&&u!=-1/0||(u*=-1),u};this.pointAlongPathFrom=function(n,i,r){var f=this.pointOnPath(n,r),e=2*(i/s)*Math.PI,o=this.anticlockwise?-1:1,u=f.theta+o*e,h=t.cx+this.radius*Math.cos(u),c=t.cy+this.radius*Math.sin(u);return{x:h,y:c}}},Bezier:function(t){this.curve=[{x:t.x1,y:t.y1},{x:t.cp1x,y:t.cp1y},{x:t.cp2x,y:t.cp2y},{x:t.x2,y:t.y2}];n.Segments.AbstractSegment.apply(this,arguments);this.bounds={minX:Math.min(t.x1,t.x2,t.cp1x,t.cp2x),minY:Math.min(t.y1,t.y2,t.cp1y,t.cp2y),maxX:Math.max(t.x1,t.x2,t.cp1x,t.cp2x),maxY:Math.max(t.y1,t.y2,t.cp1y,t.cp2y)};this.type="Bezier";var i=function(n,t,i){return i&&(t=r.jsBezier.locationAlongCurveFrom(n,t>0?0:1,t)),t};this.pointOnPath=function(n,t){return n=i(this.curve,n,t),r.jsBezier.pointOnCurve(this.curve,n)};this.gradientAtPoint=function(n,t){return n=i(this.curve,n,t),r.jsBezier.gradientAtPoint(this.curve,n)};this.pointAlongPathFrom=function(n,t,u){return n=i(this.curve,n,u),r.jsBezier.pointAlongCurveFrom(this.curve,n,t)};this.getLength=function(){return r.jsBezier.getLength(this.curve)};this.getBounds=function(){return this.bounds}}};e=function(){this.resetBounds=function(){this.bounds={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}};this.resetBounds()};n.Connectors.AbstractConnector=function(r){var b;e.apply(this,arguments);var f=[],u=0,s=[],p=[],h=r.stub||0,c=t.isArray(h)?h[0]:h,l=t.isArray(h)?h[1]:h,a=r.gap||0,v=t.isArray(a)?a[0]:a,y=t.isArray(a)?a[1]:a,k=null,d=!1,o=null,g=null,nt=r.editable!==!1&&null!=jsPlumb.ConnectorEditors&&null!=jsPlumb.ConnectorEditors[this.type],tt=this.setGeometry=function(n,t){d=!t;g=n},it=this.getGeometry=function(){return g};this.hasBeenEdited=function(){return d};this.isEditing=function(){return null!=this.editor&&this.editor.isActive()};this.setEditable=function(n){return nt=n&&null!=jsPlumb.ConnectorEditors&&null!=jsPlumb.ConnectorEditors[this.type]&&(null==this.overrideSetEditable||this.overrideSetEditable())?n:!1};this.isEditable=function(){return nt};this.findSegmentForPoint=function(n,t){for(var r,i={d:1/0,s:null,x:null,y:null,l:null},u=0;u<f.length;u++)r=f[u].findClosestPointOnPath(n,t),r.d<i.d&&(i.d=r.d,i.l=r.l,i.x=r.x,i.y=r.y,i.s=f[u],i.x1=r.x1,i.x2=r.x2,i.y1=r.y1,i.y2=r.y2,i.index=u);return i};var rt=function(){for(var i,t=0,n=0;n<f.length;n++)i=f[n].getLength(),p[n]=i/u,s[n]=[t,t+=i/u]},w=function(n,t){t&&(n=n>0?n/u:(u+n)/u);for(var r=s.length-1,e=1,i=0;i<s.length;i++)if(s[i][1]>=n){r=i;e=1==n?1:0===n?0:(n-s[i][0])/p[i];break}return{segment:f[r],proportion:e,index:r}},ut=function(t,i,r){if(r.x1!=r.x2||r.y1!=r.y2){var e=new n.Segments[i](r);f.push(e);u+=e.getLength();t.updateBounds(e)}},ft=function(){u=f.length=s.length=p.length=0};return this.setSegments=function(n){k=[];u=0;for(var t=0;t<n.length;t++)k.push(n[t]),u+=n[t].getLength()},this.getLength=function(){return u},b=function(n){var u,k;this.lineWidth=n.lineWidth;var tt=i.quadrant(n.sourcePos,n.targetPos),w=n.targetPos[0]<n.sourcePos[0],b=n.targetPos[1]<n.sourcePos[1],it=n.lineWidth||1,t=n.sourceEndpoint.anchor.getOrientation(n.sourceEndpoint),r=n.targetEndpoint.anchor.getOrientation(n.targetEndpoint),g=w?n.targetPos[0]:n.sourcePos[0],nt=b?n.targetPos[1]:n.sourcePos[1],h=Math.abs(n.targetPos[0]-n.sourcePos[0]),a=Math.abs(n.targetPos[1]-n.sourcePos[1]);(0===t[0]&&0===t[1]||0===r[0]&&0===r[1])&&(u=h>a?0:1,k=[1,0][u],t=[],r=[],t[u]=n.sourcePos[u]>n.targetPos[u]?-1:1,r[u]=n.sourcePos[u]>n.targetPos[u]?1:-1,t[k]=0,r[k]=0);var f=w?h+v*t[0]:v*t[0],e=b?a+v*t[1]:v*t[1],o=w?y*r[0]:h+y*r[0],s=b?y*r[1]:a+y*r[1],d=t[0]*r[0]+t[1]*r[1],p={sx:f,sy:e,tx:o,ty:s,lw:it,xSpan:Math.abs(o-f),ySpan:Math.abs(s-e),mx:(f+o)/2,my:(e+s)/2,so:t,to:r,x:g,y:nt,w:h,h:a,segment:tt,startStubX:f+t[0]*c,startStubY:e+t[1]*c,endStubX:o+r[0]*l,endStubY:s+r[1]*l,isXGreaterThanStubTimes2:Math.abs(f-o)>c+l,isYGreaterThanStubTimes2:Math.abs(e-s)>c+l,opposite:-1==d,perpendicular:0===d,orthogonal:1==d,sourceAxis:0===t[0]?"y":"x",points:[g,nt,h,a,f,e,o,s]};return p.anchorOrientation=p.opposite?"opposite":p.orthogonal?"orthogonal":"perpendicular",p},this.getSegments=function(){return f},this.updateBounds=function(n){var t=n.getBounds();this.bounds.minX=Math.min(this.bounds.minX,t.minX);this.bounds.maxX=Math.max(this.bounds.maxX,t.maxX);this.bounds.minY=Math.min(this.bounds.minY,t.minY);this.bounds.maxY=Math.max(this.bounds.maxY,t.maxY)},this.pointOnPath=function(n,t){var i=w(n,t);return i.segment&&i.segment.pointOnPath(i.proportion,!1)||[0,0]},this.gradientAtPoint=function(n,t){var i=w(n,t);return i.segment&&i.segment.gradientAtPoint(i.proportion,!1)||0},this.pointAlongPathFrom=function(n,t,i){var r=w(n,i);return r.segment&&r.segment.pointAlongPathFrom(r.proportion,t,!1)||[0,0]},this.compute=function(n){o=b.call(this,n);ft();this._compute(o,n);this.x=o.points[0];this.y=o.points[1];this.w=o.points[2];this.h=o.points[3];this.segment=o.segment;rt()},{addSegment:ut,prepareCompute:b,sourceStub:c,targetStub:l,maxStub:Math.max(c,l),sourceGap:v,targetGap:y,maxGap:Math.max(v,y),setGeometry:tt,getGeometry:it}};t.extend(n.Connectors.AbstractConnector,e);h=n.Connectors.Straight=function(){this.type="Straight";var t=n.Connectors.AbstractConnector.apply(this,arguments);this._compute=function(n){t.addSegment(this,"Straight",{x1:n.sx,y1:n.sy,x2:n.startStubX,y2:n.startStubY});t.addSegment(this,"Straight",{x1:n.startStubX,y1:n.startStubY,x2:n.endStubX,y2:n.endStubY});t.addSegment(this,"Straight",{x1:n.endStubX,y1:n.endStubY,x2:n.tx,y2:n.ty})}};t.extend(n.Connectors.Straight,n.Connectors.AbstractConnector);n.registerConnectorType(h,"Straight");n.Endpoints.AbstractEndpoint=function(n){e.apply(this,arguments);var t=this.compute=function(){var n=this._compute.apply(this,arguments);return this.x=n[0],this.y=n[1],this.w=n[2],this.h=n[3],this.bounds.minX=this.x,this.bounds.minY=this.y,this.bounds.maxX=this.x+this.w,this.bounds.maxY=this.y+this.h,n};return{compute:t,cssClass:n.cssClass}};t.extend(n.Endpoints.AbstractEndpoint,e);n.Endpoints.Dot=function(t){this.type="Dot";n.Endpoints.AbstractEndpoint.apply(this,arguments);t=t||{};this.radius=t.radius||10;this.defaultOffset=.5*this.radius;this.defaultInnerRadius=this.radius/3;this._compute=function(n,t,i){var r;this.radius=i.radius||this.radius;var u=n[0]-this.radius,f=n[1]-this.radius,e=2*this.radius,o=2*this.radius;return i.strokeStyle&&(r=i.lineWidth||1,u-=r,f-=r,e+=2*r,o+=2*r),[u,f,e,o,this.radius]}};t.extend(n.Endpoints.Dot,n.Endpoints.AbstractEndpoint);n.Endpoints.Rectangle=function(t){this.type="Rectangle";n.Endpoints.AbstractEndpoint.apply(this,arguments);t=t||{};this.width=t.width||20;this.height=t.height||20;this._compute=function(n,t,i){var r=i.width||this.width,u=i.height||this.height,f=n[0]-r/2,e=n[1]-u/2;return[f,e,r,u]}};t.extend(n.Endpoints.Rectangle,n.Endpoints.AbstractEndpoint);f=function(){n.jsPlumbUIComponent.apply(this,arguments);this._jsPlumb.displayElements=[]};t.extend(f,n.jsPlumbUIComponent,{getDisplayElements:function(){return this._jsPlumb.displayElements},appendDisplayElement:function(n){this._jsPlumb.displayElements.push(n)}});n.Endpoints.Image=function(i){this.type="Image";f.apply(this,arguments);n.Endpoints.AbstractEndpoint.apply(this,arguments);var u=i.onload,e=i.src||i.url,o=i.cssClass?" "+i.cssClass:"";this._jsPlumb.img=new Image;this._jsPlumb.ready=!1;this._jsPlumb.initialized=!1;this._jsPlumb.deleted=!1;this._jsPlumb.widthToUse=i.width;this._jsPlumb.heightToUse=i.height;this._jsPlumb.endpoint=i.endpoint;this._jsPlumb.img.onload=function(){null!=this._jsPlumb&&(this._jsPlumb.ready=!0,this._jsPlumb.widthToUse=this._jsPlumb.widthToUse||this._jsPlumb.img.width,this._jsPlumb.heightToUse=this._jsPlumb.heightToUse||this._jsPlumb.img.height,u&&u(this))}.bind(this);this._jsPlumb.endpoint.setImage=function(n,t){var i=n.constructor==String?n:n.src;u=t;this._jsPlumb.img.src=i;null!=this.canvas&&this.canvas.setAttribute("src",this._jsPlumb.img.src)}.bind(this);this._jsPlumb.endpoint.setImage(e,u);this._compute=function(n){return this.anchorPoint=n,this._jsPlumb.ready?[n[0]-this._jsPlumb.widthToUse/2,n[1]-this._jsPlumb.heightToUse/2,this._jsPlumb.widthToUse,this._jsPlumb.heightToUse]:[0,0,0,0]};this.canvas=jsPlumb.createElement("img",{position:"absolute",margin:0,padding:0,outline:0},this._jsPlumb.instance.endpointClass+o);this._jsPlumb.widthToUse&&this.canvas.setAttribute("width",this._jsPlumb.widthToUse);this._jsPlumb.heightToUse&&this.canvas.setAttribute("height",this._jsPlumb.heightToUse);this._jsPlumb.instance.appendElement(this.canvas);this.actuallyPaint=function(){if(!this._jsPlumb.deleted){this._jsPlumb.initialized||(this.canvas.setAttribute("src",this._jsPlumb.img.src),this.appendDisplayElement(this.canvas),this._jsPlumb.initialized=!0);var n=this.anchorPoint[0]-this._jsPlumb.widthToUse/2,i=this.anchorPoint[1]-this._jsPlumb.heightToUse/2;t.sizeElement(this.canvas,n,i,this._jsPlumb.widthToUse,this._jsPlumb.heightToUse)}};this.paint=function(n,t){null!=this._jsPlumb&&(this._jsPlumb.ready?this.actuallyPaint(n,t):r.setTimeout(function(){this.paint(n,t)}.bind(this),200))}};t.extend(n.Endpoints.Image,[f,n.Endpoints.AbstractEndpoint],{cleanup:function(n){n&&(this._jsPlumb.deleted=!0,this.canvas&&this.canvas.parentNode.removeChild(this.canvas),this.canvas=null)}});n.Endpoints.Blank=function(i){n.Endpoints.AbstractEndpoint.apply(this,arguments);this.type="Blank";f.apply(this,arguments);this._compute=function(n){return[n[0],n[1],10,0]};var r=i.cssClass?" "+i.cssClass:"";this.canvas=jsPlumb.createElement("div",{display:"block",width:"1px",height:"1px",background:"transparent",position:"absolute"},this._jsPlumb.instance.endpointClass+r);this._jsPlumb.instance.appendElement(this.canvas);this.paint=function(){t.sizeElement(this.canvas,this.x,this.y,this.w,this.h)}};t.extend(n.Endpoints.Blank,[n.Endpoints.AbstractEndpoint,f],{cleanup:function(){this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas)}});n.Endpoints.Triangle=function(t){this.type="Triangle";n.Endpoints.AbstractEndpoint.apply(this,arguments);t=t||{};t.width=t.width||55;t.height=t.height||55;this.width=t.width;this.height=t.height;this._compute=function(n,t,i){var r=i.width||self.width,u=i.height||self.height,f=n[0]-r/2,e=n[1]-u/2;return[f,e,r,u]}};u=n.Overlays.AbstractOverlay=function(n){this.visible=!0;this.isAppendedAtTopLevel=!0;this.component=n.component;this.loc=null==n.location?.5:n.location;this.endpointLoc=null==n.endpointLocation?[.5,.5]:n.endpointLocation;this.visible=n.visible!==!1};u.prototype={cleanup:function(n){n&&(this.component=null,this.canvas=null,this.endpointLoc=null)},reattach:function(){},setVisible:function(n){this.visible=n;this.component.repaint()},isVisible:function(){return this.visible},hide:function(){this.setVisible(!1)},show:function(){this.setVisible(!0)},incrementLocation:function(n){this.loc+=n;this.component.repaint()},setLocation:function(n){this.loc=n;this.component.repaint()},getLocation:function(){return this.loc},updateFrom:function(){}};n.Overlays.Arrow=function(n){this.type="Arrow";u.apply(this,arguments);this.isAppendedAtTopLevel=!1;n=n||{};this.length=n.length||20;this.width=n.width||20;this.id=n.id;var r=(n.direction||1)<0?-1:1,f=n.paintStyle||{lineWidth:1},e=n.foldback||.623;this.computeMaxSize=function(){return 1.5*self.width};this.elementCreated=function(t){if(this.path=t,n.events)for(var i in n.events)jsPlumb.on(t,i,n.events[i])};this.draw=function(n,u){var o,c,s,h,v,l,a,y,p;if(n.pointAlongPathFrom){t.isString(this.loc)||this.loc>1||this.loc<0?(l=parseInt(this.loc,10),a=this.loc<0?1:0,o=n.pointAlongPathFrom(a,l,!1),c=n.pointAlongPathFrom(a,l-r*this.length/2,!1),s=i.pointOnLine(o,c,this.length)):1==this.loc?(o=n.pointOnPath(this.loc),c=n.pointAlongPathFrom(this.loc,-this.length),s=i.pointOnLine(o,c,this.length),-1==r)&&(y=s,s=o,o=y):0===this.loc?(s=n.pointOnPath(this.loc),c=n.pointAlongPathFrom(this.loc,this.length),o=i.pointOnLine(s,c,this.length),-1==r)&&(p=s,s=o,o=p):(o=n.pointAlongPathFrom(this.loc,r*this.length/2),c=n.pointOnPath(this.loc),s=i.pointOnLine(o,c,this.length));h=i.perpendicularLineTo(o,s,this.width);v=i.pointOnLine(o,s,e*this.length);var w={hxy:o,tail:h,cxy:v},b=f.strokeStyle||u.strokeStyle,k=f.fillStyle||u.strokeStyle,d=f.lineWidth||u.lineWidth;return{component:n,d:w,lineWidth:d,strokeStyle:b,fillStyle:k,minX:Math.min(o.x,h[0].x,h[1].x),maxX:Math.max(o.x,h[0].x,h[1].x),minY:Math.min(o.y,h[0].y,h[1].y),maxY:Math.max(o.y,h[0].y,h[1].y)}}return{component:n,minX:0,maxX:0,minY:0,maxY:0}}};t.extend(n.Overlays.Arrow,u,{updateFrom:function(n){this.length=n.length||this.length;this.width=n.width||this.width;this.direction=null!=n.direction?n.direction:this.direction;this.foldback=n.foldback||this.foldback}});n.Overlays.PlainArrow=function(t){t=t||{};var i=n.extend(t,{foldback:1});n.Overlays.Arrow.call(this,i);this.type="PlainArrow"};t.extend(n.Overlays.PlainArrow,n.Overlays.Arrow);n.Overlays.Diamond=function(t){t=t||{};var i=t.length||40,r=jsPlumb.extend(t,{length:i/2,foldback:2});n.Overlays.Arrow.call(this,r);this.type="Diamond"};t.extend(n.Overlays.Diamond,n.Overlays.Arrow);s=function(n,t){return(null==n._jsPlumb.cachedDimensions||t)&&(n._jsPlumb.cachedDimensions=n.getDimensions()),n._jsPlumb.cachedDimensions};o=function(i){n.jsPlumbUIComponent.apply(this,arguments);u.apply(this,arguments);var r=this.fire;this.fire=function(){r.apply(this,arguments);this.component&&this.component.fire.apply(this.component,arguments)};this.detached=!1;this.id=i.id;this._jsPlumb.div=null;this._jsPlumb.initialised=!1;this._jsPlumb.component=i.component;this._jsPlumb.cachedDimensions=null;this._jsPlumb.create=i.create;this._jsPlumb.initiallyInvisible=i.visible===!1;this.getElement=function(){var n,t;return null==this._jsPlumb.div&&(n=this._jsPlumb.div=jsPlumb.getElement(this._jsPlumb.create(this._jsPlumb.component)),n.style.position="absolute",n.className=this._jsPlumb.instance.overlayClass+" "+(this.cssClass?this.cssClass:i.cssClass?i.cssClass:""),this._jsPlumb.instance.appendElement(n),this._jsPlumb.instance.getId(n),this.canvas=n,t="translate(-50%, -50%)",n.style.webkitTransform=t,n.style.mozTransform=t,n.style.msTransform=t,n.style.oTransform=t,n.style.transform=t,n._jsPlumb=this,i.visible===!1&&(n.style.display="none")),this._jsPlumb.div};this.draw=function(n,i,r){var u=s(this),f,h,c,l,e,o;return null!=u&&2==u.length?(f={x:0,y:0},r?f={x:r[0],y:r[1]}:n.pointOnPath?(h=this.loc,c=!1,(t.isString(this.loc)||this.loc<0||this.loc>1)&&(h=parseInt(this.loc,10),c=!0),f=n.pointOnPath(h,c)):(l=this.loc.constructor==Array?this.loc:this.endpointLoc,f={x:l[0]*n.w,y:l[1]*n.h}),e=f.x-u[0]/2,o=f.y-u[1]/2,{component:n,d:{minx:e,miny:o,td:u,cxy:f},minX:e,maxX:e+u[0],minY:o,maxY:o+u[1]}):{minX:0,maxX:0,minY:0,maxY:0}}};t.extend(o,[n.jsPlumbUIComponent,u],{getDimensions:function(){return[1,1]},setVisible:function(n){this._jsPlumb.div&&(this._jsPlumb.div.style.display=n?"block":"none",n&&this._jsPlumb.initiallyInvisible&&(s(this,!0),this.component.repaint(),this._jsPlumb.initiallyInvisible=!1))},clearCachedDimensions:function(){this._jsPlumb.cachedDimensions=null},cleanup:function(n){n?null!=this._jsPlumb.div&&(this._jsPlumb.div._jsPlumb=null,this._jsPlumb.instance.removeElement(this._jsPlumb.div)):(this._jsPlumb&&this._jsPlumb.div&&this._jsPlumb.div.parentNode&&this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div),this.detached=!0)},reattach:function(n){null!=this._jsPlumb.div&&n.getContainer().appendChild(this._jsPlumb.div);this.detached=!1},computeMaxSize:function(){var n=s(this);return Math.max(n[0],n[1])},paint:function(n){this._jsPlumb.initialised||(this.getElement(),n.component.appendDisplayElement(this._jsPlumb.div),this._jsPlumb.initialised=!0,this.detached&&this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div));this._jsPlumb.div.style.left=n.component.x+n.d.minx+"px";this._jsPlumb.div.style.top=n.component.y+n.d.miny+"px"}});n.Overlays.Custom=function(){this.type="Custom";o.apply(this,arguments)};t.extend(n.Overlays.Custom,o);n.Overlays.GuideLines=function(){var t=this;t.length=50;t.lineWidth=5;this.type="GuideLines";u.apply(this,arguments);n.jsPlumbUIComponent.apply(this,arguments);this.draw=function(n){var u=n.pointAlongPathFrom(t.loc,t.length/2),e=n.pointOnPath(t.loc),f=i.pointOnLine(u,e,t.length),o=i.perpendicularLineTo(u,f,40),r=i.perpendicularLineTo(f,u,20);return{connector:n,head:u,tail:f,headLine:r,tailLine:o,minX:Math.min(u.x,f.x,r[0].x,r[1].x),minY:Math.min(u.y,f.y,r[0].y,r[1].y),maxX:Math.max(u.x,f.x,r[0].x,r[1].x),maxY:Math.max(u.y,f.y,r[0].y,r[1].y)}}};n.Overlays.Label=function(t){var r,i,u;this.labelStyle=t.labelStyle;this.cssClass=null!=this.labelStyle?this.labelStyle.cssClass:null;r=n.extend({create:function(){return jsPlumb.createElement("div")}},t);(n.Overlays.Custom.call(this,r),this.type="Label",this.label=t.label||"",this.labelText=null,this.labelStyle)&&(i=this.getElement(),(this.labelStyle.font=this.labelStyle.font||"12px sans-serif",i.style.font=this.labelStyle.font,i.style.color=this.labelStyle.color||"black",this.labelStyle.fillStyle&&(i.style.background=this.labelStyle.fillStyle),this.labelStyle.borderWidth>0)&&(u=this.labelStyle.borderStyle?this.labelStyle.borderStyle:"black",i.style.border=this.labelStyle.borderWidth+"px solid "+u),this.labelStyle.padding&&(i.style.padding=this.labelStyle.padding))};t.extend(n.Overlays.Label,n.Overlays.Custom,{cleanup:function(n){n&&(this.div=null,this.label=null,this.labelText=null,this.cssClass=null,this.labelStyle=null)},getLabel:function(){return this.label},setLabel:function(n){this.label=n;this.labelText=null;this.clearCachedDimensions();this.update();this.component.repaint()},getDimensions:function(){return this.update(),o.prototype.getDimensions.apply(this,arguments)},update:function(){if("function"==typeof this.label){var n=this.label(this);this.getElement().innerHTML=n.replace(/\r\n/g,"<br/>")}else null==this.labelText&&(this.labelText=this.label,this.getElement().innerHTML=this.labelText.replace(/\r\n/g,"<br/>"))},updateFrom:function(n){n.label&&this.setLabel(n.label)}})}.call("undefined"!=typeof window?window:this),function(){"use strict";var n=this,t=n.jsPlumb,i=function(t){var i=t._mottle;return i||(i=t._mottle=new n.Mottle),i};t.extend(n.jsPlumbInstance.prototype,{getEventManager:function(){return i(this)},on:function(){return this.getEventManager().on.apply(this,arguments),this},off:function(){return this.getEventManager().off.apply(this,arguments),this}})}.call("undefined"!=typeof window?window:this),function(){"use strict";var r=this,i=r.jsPlumbUtil,t=r.jsPlumbInstance,e="jsplumb-group-collapsed",u="jsplumb-group-expanded",c="[jsplumb-group-content]",l="elementDraggable",o="stop",s="revert",f="_groupManager",n="_jsPlumbGroup",a="_jsPlumbGroupDrag",h="group:addMember",v="group:removeMember",y="group:add",p="group:remove",w="group:expand",b="group:collapse",k=function(t){function a(n){delete n.proxies;var r,t=f[n.id];null!=t&&(r=function(t){return t.id===n.id},i.removeWithFunction(t.connections.source,r),i.removeWithFunction(t.connections.target,r),delete f[n.id]);t=o[n.id];null!=t&&(r=function(t){return t.id===n.id},i.removeWithFunction(t.connections.source,r),i.removeWithFunction(t.connections.target,r),delete o[n.id])}function h(n,i){for(var u=n.getMembers(),r=0;r<u.length;r++)t[i?"show":"hide"](u[r],!0)}function s(n){var r=n.getMembers(),e=t.getConnections({source:r},!0),s=t.getConnections({target:r},!0),u={},i;n.connections.source.length=0;n.connections.target.length=0;i=function(t){for(var i=0;i<t.length;i++)u[t[i].id]||(u[t[i].id]=!0,t[i].source._jsPlumbGroup===n?(t[i].target._jsPlumbGroup!==n&&n.connections.source.push(t[i]),f[t[i].id]=n):t[i].target._jsPlumbGroup===n&&(n.connections.target.push(t[i]),o[t[i].id]=n))};i(e);i(s)}var r={},f={},o={},c,l;t.bind("connection",function(t){null!=t.source[n]&&null!=t.target[n]&&t.source[n]===t.target[n]?(f[t.connection.id]=t.source[n],o[t.connection.id]=t.source[n]):(null!=t.source[n]&&(i.suggest(t.source[n].connections.source,t.connection),f[t.connection.id]=t.source[n]),null!=t.target[n]&&(i.suggest(t.target[n].connections.target,t.connection),o[t.connection.id]=t.target[n]))});t.bind("connectionDetached",function(n){a(n.connection)});t.bind("connectionMoved",function(n){var u=0===n.index?f:o,r=u[n.connection.id],t,i;r&&(t=r.connections[0===n.index?"source":"target"],i=t.indexOf(n.connection),-1!=i&&t.splice(i,1))});this.addGroup=function(n){t.addClass(n.el,u);r[n.id]=n;n.manager=this;s(n);t.fire(y,{group:n})};this.addToGroup=function(n,t,i){n=this.getGroup(n);n&&n.add(t,i)};this.removeFromGroup=function(n,t,i){n=this.getGroup(n);n&&n.remove(t,null,i)};this.getGroup=function(n){var t=n;if(i.isString(n)&&(t=r[n],null==t))throw new TypeError("No such group ["+n+"]");return t};this.getGroups=function(){var n=[],t;for(t in r)n.push(r[t]);return n};this.removeGroup=function(n,i){n=this.getGroup(n);this.expandGroup(n,!0);n[i?"removeAll":"orphanAll"]();t.remove(n.getEl());delete r[n.id];delete t._groups[n.id];t.fire(p,{group:n})};this.removeAllGroups=function(n){for(var t in r)this.removeGroup(r[t],n)};c=this.collapseConnection=function(i,r,u){var f,e=u.getEl(),o=t.getId(e),h=i.endpoints[r].elementId,s=i.endpoints[0===r?1:0].element;s[n]&&!s[n].shouldProxy()&&s[n].collapsed||(i.proxies=i.proxies||[],i.proxies[r]?f=i.proxies[r].ep:(f=t.addEndpoint(e,{endpoint:u.getEndpoint(i,r),anchor:u.getAnchor(i,r),parameters:{isProxyEndpoint:!0}}),f._forceDeleteOnDetach=!0),i.proxies[r]={ep:f,originalEp:i.endpoints[r]},0===r?t.anchorManager.sourceChanged(h,o,i,e):(t.anchorManager.updateOtherEndpoint(i.endpoints[0].elementId,h,o,i),i.target=e,i.targetId=o),i.proxies[r].originalEp.detachFromConnection(i,null,!0),f.connections=[i],i.endpoints[r]=f,i.setVisible(!0))};this.collapseGroup=function(n){var i,r;(n=this.getGroup(n),null==n||n.collapsed)||(i=n.getEl(),(h(n,!1),n.shouldProxy())&&(r=function(t,i){for(var u,r=0;r<t.length;r++)u=t[r],c(u,i,n)},r(n.connections.source,0),r(n.connections.target,1)),n.collapsed=!0,t.removeClass(i,u),t.addClass(i,e),t.revalidate(i),t.fire(b,{group:n}))};l=this.expandConnection=function(n,i,r){if(null!=n.proxies&&null!=n.proxies[i]){var f=t.getId(r.getEl()),e=n.proxies[i].originalEp.element,u=n.proxies[i].originalEp.elementId;n.endpoints[i]=n.proxies[i].originalEp;0===i?t.anchorManager.sourceChanged(f,u,n,e):(t.anchorManager.updateOtherEndpoint(n.endpoints[0].elementId,f,u,n),n.target=e,n.targetId=u);n.proxies[i].ep.detachFromConnection(n,null,!0);n.proxies[i].originalEp.addConnection(n);delete n.proxies[i]}};this.expandGroup=function(n,i){var r,f;(n=this.getGroup(n),null!=n&&n.collapsed)&&(r=n.getEl(),(h(n,!0),n.shouldProxy())&&(f=function(t,i){for(var u,r=0;r<t.length;r++)u=t[r],l(u,i,n)},f(n.connections.source,0),f(n.connections.target,1)),n.collapsed=!1,t.addClass(r,u),t.removeClass(r,e),t.revalidate(r),this.repaintGroup(n),i||t.fire(w,{group:n}))};this.repaintGroup=function(n){n=this.getGroup(n);for(var r=n.getMembers(),i=0;i<r.length;i++)t.revalidate(r[i])};this.updateConnectionsForGroup=s;this.refreshAllGroups=function(){for(var n in r)s(r[n]),t.dragManager.updateOffsets(t.getId(r[n].getEl()))}},d=function(t,u){function st(n){return n.offsetParent}function tt(n,i){var o=st(n),r=t.getSize(o),u=t.getSize(n),f=i[0],s=f+u[0],e=i[1],h=e+u[1];return s>0&&f<r[0]&&h>0&&e<r[1]}function it(n){var i=t.getId(n),r=t.getOffset(n);n.parentNode.removeChild(n);t.getContainer().appendChild(n);t.setPosition(n,r);delete n._jsPlumbGroup;ft(n);t.dragManager.clearParent(n,i)}function rt(n){tt(n.el,n.pos)||(n.el._jsPlumbGroup.remove(n.el),p?t.remove(n.el):it(n.el))}function ut(n){var i=t.getId(n);t.revalidate(n);t.dragManager.revalidateParent(n,i)}function ft(n){n._katavorioDrag&&((p||w)&&n._katavorioDrag.off(o,rt),p||w||!d||(n._katavorioDrag.off(s,ut),n._katavorioDrag.setRevert(null)))}function et(n){n._katavorioDrag&&((p||w)&&n._katavorioDrag.on(o,rt),ht&&n._katavorioDrag.setConstrain(!0),ot&&n._katavorioDrag.setUseGhostProxy(!0),p||w||!d||(n._katavorioDrag.on(s,ut),n._katavorioDrag.setRevert(function(n,t){return!tt(n,t)})))}var f=this,y=u.el,g,nt;this.getEl=function(){return y};this.id=u.id||i.uuid();y._isJsPlumbGroup=!0;var b=t.getSelector(y,c),k=b&&b.length>0?b[0]:y,ot=u.ghost===!0,ht=ot||u.constrain===!0,d=u.revert!==!1,w=u.orphan===!0,p=u.prune===!0,ct=u.dropOverride===!0,lt=u.proxied!==!1,e=[];(this.connections={source:[],target:[],internal:[]},this.getAnchor=function(){return u.anchor||"Continuous"},this.getEndpoint=function(){return u.endpoint||["Dot",{radius:10}]},this.collapsed=!1,u.draggable!==!1)&&(g={stop:function(n){t.fire("groupDragStop",jsPlumb.extend(n,{group:f}))},scope:a},u.dragOptions&&r.jsPlumb.extend(g,u.dragOptions),t.draggable(u.el,g));u.droppable!==!1&&t.droppable(u.el,{drop:function(n){var e=t.getGroupManager(),i=n.drag.el,r,u,o,s,c;if(!i._isJsPlumbGroup&&(r=i._jsPlumbGroup,r!==f)){if(u=t.getOffset(i,!0),o=f.collapsed?t.getOffset(y,!0):t.getOffset(k,!0),null!=r){if(r.overrideDrop(i,f))return;r.remove(i,!0);e.updateConnectionsForGroup(r)}f.add(i,!0);s=function(n,t){var i=0==t?1:0;n.each(function(n){n.setVisible(!1);n.endpoints[i].element._jsPlumbGroup===f?(n.endpoints[i].setVisible(!1),e.expandConnection(n,i,f)):(n.endpoints[t].setVisible(!1),e.collapseConnection(n,t,f))})};f.collapsed&&(s(t.select({source:i}),0),s(t.select({target:i}),1));c=t.getId(i);t.dragManager.setParent(i,c,y,t.getId(y),u);t.setPosition(i,{left:u.left-o.left,top:u.top-o.top});t.dragManager.revalidateParent(i,c,u);e.updateConnectionsForGroup(f);setTimeout(function(){t.fire(h,{group:f,el:i})},0)}}});nt=function(n,t){for(var r=null==n.nodeType?n:[n],i=0;i<r.length;i++)t(r[i])};this.overrideDrop=function(){return ct&&(d||p||w)};this.add=function(n,i){nt(n,function(n){n._jsPlumbGroup=f;e.push(n);t.isAlreadyDraggable(n)&&et(n);n.parentNode!=k&&k.appendChild(n);i||t.fire(h,{group:f,el:n})});t.getGroupManager().updateConnectionsForGroup(f)};this.remove=function(n,r,u,o){nt(n,function(n){if(delete n._jsPlumbGroup,i.removeWithFunction(e,function(t){return t===n}),r)try{f.getEl().removeChild(n)}catch(o){jsPlumbUtil.log("Could not remove element from Group "+o)}ft(n);u||t.fire(v,{group:f,el:n})});o||t.getGroupManager().updateConnectionsForGroup(f)};this.removeAll=function(n,i){for(var r=0,u=e.length;u>r;r++)f.remove(e[0],n,i,!0);e.length=0;t.getGroupManager().updateConnectionsForGroup(f)};this.orphanAll=function(){for(var n=0;n<e.length;n++)it(e[n]);e.length=0};this.getMembers=function(){return e};y[n]=this;t.bind(l,function(n){n.el._jsPlumbGroup==this&&et(n.el)}.bind(this));this.shouldProxy=function(){return lt};t.getGroupManager().addGroup(this)};t.prototype.addGroup=function(t){var i=this,r;if(i._groups=i._groups||{},null!=i._groups[t.id])throw new TypeError("cannot create Group ["+t.id+"]; a Group with that ID exists");if(null!=t.el[n])throw new TypeError("cannot create Group ["+t.id+"]; the given element is already a Group");return r=new d(i,t),i._groups[r.id]=r,r};t.prototype.addToGroup=function(n,t,i){this.getGroupManager().addToGroup(n,t,i)};t.prototype.removeFromGroup=function(n,t,i){this.getGroupManager().removeFromGroup(n,t,i)};t.prototype.removeGroup=function(n,t){this.getGroupManager().removeGroup(n,t)};t.prototype.removeAllGroups=function(n){this.getGroupManager().removeAllGroups(n)};t.prototype.getGroup=function(n){return this.getGroupManager().getGroup(n)};t.prototype.getGroups=function(){return this.getGroupManager().getGroups()};t.prototype.expandGroup=function(n){this.getGroupManager().expandGroup(n)};t.prototype.collapseGroup=function(n){this.getGroupManager().collapseGroup(n)};t.prototype.repaintGroup=function(n){this.getGroupManager().repaintGroup(n)};t.prototype.toggleGroup=function(n){n=this.getGroupManager().getGroup(n);null!=n&&this.getGroupManager()[n.collapsed?"expandGroup":"collapseGroup"](n)};t.prototype.getGroupManager=function(){var n=this[f];return null==n&&(n=this[f]=new k(this)),n};t.prototype.removeGroupManager=function(){delete this[f]};t.prototype.getGroupFor=function(t){return t=this.getElement(t),t?t[n]:void 0}}.call("undefined"!=typeof window?window:this),function(){"use strict";var t=this,n=t.jsPlumb,r=t.jsPlumbUtil,i=function(t){this.type="Flowchart";t=t||{};t.stub=null==t.stub?30:t.stub;var i,a,r=n.Connectors.AbstractConnector.apply(this,arguments),o=null==t.midpoint?.5:t.midpoint,v=t.alwaysRespectStubs===!0,u=null,f=null,s=null!=t.cornerRadius?t.cornerRadius:0,h=(t.loopbackRadius||25,function(n){return 0>n?-1:0===n?0:1}),e=function(n,t,i,r){if(u!=t||f!=i){var e=null==u?r.sx:u,o=null==f?r.sy:f,s=e==t?"v":"h",c=h(t-e),l=h(i-o);u=t;f=i;n.push([e,o,t,i,s,c,l])}},c=function(n){return Math.sqrt(Math.pow(n[0]-n[2],2)+Math.pow(n[1]-n[3],2))},l=function(n){var t=[];return t.push.apply(t,n),t},y=function(n,t,i){for(var f,e,v,y,u=null,o=0;o<t.length-1;o++){if(u=u||l(t[o]),f=l(t[o+1]),s>0&&u[4]!=f[4]){e=Math.min(s,c(u),c(f));u[2]-=u[5]*e;u[3]-=u[6]*e;f[0]+=f[5]*e;f[1]+=f[6]*e;var h=u[6]==f[5]&&1==f[5]||u[6]==f[5]&&0===f[5]&&u[5]!=f[6]||u[6]==f[5]&&-1==f[5],p=f[1]>u[3]?1:-1,w=f[0]>u[2]?1:-1,a=p==w,b=a&&h||!a&&!h?f[0]:u[2],k=a&&h||!a&&!h?u[3]:f[1];r.addSegment(n,"Straight",{x1:u[0],y1:u[1],x2:u[2],y2:u[3]});r.addSegment(n,"Arc",{r:e,x1:u[2],y1:u[3],x2:f[0],y2:f[1],cx:b,cy:k,ac:h})}else v=u[2]==u[0]?0:u[2]>u[0]?i.lw/2:-(i.lw/2),y=u[3]==u[1]?0:u[3]>u[1]?i.lw/2:-(i.lw/2),r.addSegment(n,"Straight",{x1:u[0]-v,y1:u[1]-y,x2:u[2]+v,y2:u[3]+y});u=f}null!=f&&r.addSegment(n,"Straight",{x1:f[0],y1:f[1],x2:f[2],y2:f[3]})};this._compute=function(n,t){var p;i=[];u=null;f=null;a=null;var b=function(){return[n.startStubX,n.startStubY,n.endStubX,n.endStubY]},g={perpendicular:b,orthogonal:b,opposite:function(t){var i=n,r="x"==t?0:1,u={x:function(){return 1==i.so[r]&&(i.startStubX>i.endStubX&&i.tx>i.startStubX||i.sx>i.endStubX&&i.tx>i.sx)||-1==i.so[r]&&(i.startStubX<i.endStubX&&i.tx<i.startStubX||i.sx<i.endStubX&&i.tx<i.sx)},y:function(){return 1==i.so[r]&&(i.startStubY>i.endStubY&&i.ty>i.startStubY||i.sy>i.endStubY&&i.ty>i.sy)||-1==i.so[r]&&(i.startStubY<i.endStubY&&i.ty<i.startStubY||i.sy<i.endStubY&&i.ty<i.sy)}};return!v&&u[t]()?{x:[(n.sx+n.tx)/2,n.startStubY,(n.sx+n.tx)/2,n.endStubY],y:[n.startStubX,(n.sy+n.ty)/2,n.endStubX,(n.sy+n.ty)/2]}[t]:[n.startStubX,n.startStubY,n.endStubX,n.endStubY]}},s=g[n.anchorOrientation](n.sourceAxis),l="x"==n.sourceAxis?0:1,k="x"==n.sourceAxis?1:0,nt=s[l],tt=s[k],it=s[l+2],rt=s[k+2];e(i,s[0],s[1],n);var h=n.startStubX+(n.endStubX-n.startStubX)*o,c=n.startStubY+(n.endStubY-n.startStubY)*o,d={x:[0,1],y:[1,0]},ut={perpendicular:function(t){var i=n,s={x:[[i.startStubX,i.endStubX],null,[i.endStubX,i.startStubX]],y:[[i.startStubY,i.endStubY],null,[i.endStubY,i.startStubY]]},v={x:[[h,i.startStubY],[h,i.endStubY]],y:[[i.startStubX,c],[i.endStubX,c]]},y={x:[[i.endStubX,i.startStubY]],y:[[i.startStubX,i.endStubY]]},p={x:[[i.startStubX,i.endStubY],[i.endStubX,i.endStubY]],y:[[i.endStubX,i.startStubY],[i.endStubX,i.endStubY]]},w={x:[[i.startStubX,c],[i.endStubX,c],[i.endStubX,i.endStubY]],y:[[h,i.startStubY],[h,i.endStubY],[i.endStubX,i.endStubY]]},u={x:[i.startStubY,i.endStubY],y:[i.startStubX,i.endStubX]},b=d[t][0],f=d[t][1],e=i.so[b]+1,k=i.to[f]+1,o=-1==i.to[f]&&u[t][1]<u[t][0]||1==i.to[f]&&u[t][1]>u[t][0],l=s[t][e][0],a=s[t][e][1],r={x:[[[1,2,3,4],null,[2,1,4,3]],null,[[4,3,2,1],null,[3,4,1,2]]],y:[[[3,2,1,4],null,[2,3,4,1]],null,[[4,1,2,3],null,[1,4,3,2]]]}[t][e][k];return i.segment==r[3]||i.segment==r[2]&&o?v[t]:i.segment==r[2]&&l>a?y[t]:i.segment==r[2]&&a>=l||i.segment==r[1]&&!o?w[t]:i.segment==r[0]||i.segment==r[1]&&o?p[t]:void 0},orthogonal:function(t,i,r,u,f){var o=n,e={x:-1==o.so[0]?Math.min(i,u):Math.max(i,u),y:-1==o.so[1]?Math.min(i,u):Math.max(i,u)}[t];return{x:[[e,r],[e,f],[u,f]],y:[[r,e],[f,e],[f,u]]}[t]},opposite:function(i,u,f,e){var o=n,a={x:"y",y:"x"}[i],v={x:"height",y:"width"}[i],y=o["is"+i.toUpperCase()+"GreaterThanStubTimes2"],s;return t.sourceEndpoint.elementId==t.targetEndpoint.elementId?(s=f+(1-t.sourceEndpoint.anchor[a])*t.sourceInfo[v]+r.maxStub,{x:[[u,s],[e,s]],y:[[s,u],[s,e]]}[i]):!y||1==o.so[l]&&u>e||-1==o.so[l]&&e>u?{x:[[u,c],[e,c]],y:[[h,u],[h,e]]}[i]:1==o.so[l]&&e>u||-1==o.so[l]&&u>e?{x:[[h,o.sy],[h,o.ty]],y:[[o.sx,c],[o.tx,c]]}[i]:void 0}},w=ut[n.anchorOrientation](n.sourceAxis,nt,tt,it,rt);if(w)for(p=0;p<w.length;p++)e(i,w[p][0],w[p][1],n);e(i,s[2],s[3],n);e(i,n.tx,n.ty,n);y(this,i,n)}};r.extend(i,n.Connectors.AbstractConnector);n.registerConnectorType(i,"Flowchart")}.call("undefined"!=typeof window?window:this),function(){"use strict";var i=this,n=i.jsPlumb,r=i.jsPlumbUtil,t;n.Connectors.AbstractBezierConnector=function(t){t=t||{};var u,f=t.showLoopback!==!1,e=(t.curviness||10,t.margin||5),o=(t.proximityLimit||80,t.orientation&&"clockwise"===t.orientation),i=t.loopbackRadius||25,r=!1;return this.overrideSetEditable=function(){return!r},this._compute=function(n,t){var c=t.sourcePos,l=t.targetPos,a=Math.abs(c[0]-l[0]),v=Math.abs(c[1]-l[1]);if(f&&t.sourceEndpoint.elementId===t.targetEndpoint.elementId){r=!0;var y=t.sourcePos[0],p=t.sourcePos[1]-e,w=y,b=p-i,s=w-i,h=b-i;a=2*i;v=2*i;n.points[0]=s;n.points[1]=h;n.points[2]=a;n.points[3]=v;u.addSegment(this,"Arc",{loopback:!0,x1:y-s+4,y1:p-h,startAngle:0,endAngle:2*Math.PI,r:i,ac:!o,x2:y-s-4,y2:p-h,cx:w-s,cy:b-h})}else r=!1,this._computeBezier(n,t,c,l,a,v)},u=n.Connectors.AbstractConnector.apply(this,arguments)};r.extend(n.Connectors.AbstractBezierConnector,n.Connectors.AbstractConnector);t=function(t){t=t||{};this.type="Bezier";var u=n.Connectors.AbstractBezierConnector.apply(this,arguments),r=t.curviness||150,i=10;this.getCurviness=function(){return r};this._findControlPoint=function(n,t,u,f,e,o,s){var c=o[0]!=s[0]||o[1]==s[1],h=[];return c?(0===s[0]?h.push(u[0]<t[0]?n[0]+i:n[0]-i):h.push(n[0]+r*s[0]),0===s[1]?h.push(u[1]<t[1]?n[1]+i:n[1]-i):h.push(n[1]+r*o[1])):(0===o[0]?h.push(t[0]<u[0]?n[0]+i:n[0]-i):h.push(n[0]-r*o[0]),0===o[1]?h.push(t[1]<u[1]?n[1]+i:n[1]-i):h.push(n[1]+r*s[1])),h};this._computeBezier=function(n,t,i,r,f,e){var s,h,o=this.getGeometry(),c=i[0]<r[0]?f:0,l=i[1]<r[1]?e:0,a=i[0]<r[0]?0:f,v=i[1]<r[1]?0:e;(this.hasBeenEdited()||this.isEditing())&&null!=o&&null!=o.controlPoints&&null!=o.controlPoints[0]&&null!=o.controlPoints[1]?(s=o.controlPoints[0],h=o.controlPoints[1]):(s=this._findControlPoint([c,l],i,r,t.sourceEndpoint,t.targetEndpoint,n.so,n.to),h=this._findControlPoint([a,v],r,i,t.targetEndpoint,t.sourceEndpoint,n.to,n.so));u.setGeometry({controlPoints:[s,h]},!0);u.addSegment(this,"Bezier",{x1:c,y1:l,x2:a,y2:v,cp1x:s[0],cp1y:s[1],cp2x:h[0],cp2y:h[1]})}};r.extend(t,n.Connectors.AbstractBezierConnector);n.registerConnectorType(t,"Bezier")}.call("undefined"!=typeof window?window:this),function(){"use strict";var t=this,n=t.jsPlumb,r=t.jsPlumbUtil,u=function(n,t,i,r){return i>=n&&t>=r?1:i>=n&&r>=t?2:n>=i&&r>=t?3:4},f=function(n,t,i,r,u,f,e,o,s){return s>=o?[n,t]:1===i?r[3]<=0&&u[3]>=1?[n+(r[2]<.5?-1*f:f),t]:r[2]>=1&&u[2]<=0?[n,t+(r[3]<.5?-1*e:e)]:[n+-1*f,t+-1*e]:2===i?r[3]>=1&&u[3]<=0?[n+(r[2]<.5?-1*f:f),t]:r[2]>=1&&u[2]<=0?[n,t+(r[3]<.5?-1*e:e)]:[n+f,t+-1*e]:3===i?r[3]>=1&&u[3]<=0?[n+(r[2]<.5?-1*f:f),t]:r[2]<=0&&u[2]>=1?[n,t+(r[3]<.5?-1*e:e)]:[n+-1*f,t+-1*e]:4===i?r[3]<=0&&u[3]>=1?[n+(r[2]<.5?-1*f:f),t]:r[2]<=0&&u[2]>=1?[n,t+(r[3]<.5?-1*e:e)]:[n+f,t+-1*e]:void 0},i=function(t){t=t||{};this.type="StateMachine";var r,e=n.Connectors.AbstractBezierConnector.apply(this,arguments),o=t.curviness||10,i=t.margin||5,s=t.proximityLimit||80;t.orientation&&"clockwise"===t.orientation;this._computeBezier=function(n,t,h,c,l,a){var v=t.sourcePos[0]<t.targetPos[0]?0:l,y=t.sourcePos[1]<t.targetPos[1]?0:a,p=t.sourcePos[0]<t.targetPos[0]?l:0,w=t.sourcePos[1]<t.targetPos[1]?a:0;0===t.sourcePos[2]&&(v-=i);1===t.sourcePos[2]&&(v+=i);0===t.sourcePos[3]&&(y-=i);1===t.sourcePos[3]&&(y+=i);0===t.targetPos[2]&&(p-=i);1===t.targetPos[2]&&(p+=i);0===t.targetPos[3]&&(w-=i);1===t.targetPos[3]&&(w+=i);var k,d,g,nt,tt=(v+p)/2,it=(y+w)/2,rt=u(v,y,p,w),ut=Math.sqrt(Math.pow(p-v,2)+Math.pow(w-y,2)),b=e.getGeometry();(this.hasBeenEdited()||this.isEditing())&&null!=b?(k=b.controlPoints[0][0],g=b.controlPoints[0][1],d=b.controlPoints[1][0],nt=b.controlPoints[1][1]):(r=f(tt,it,rt,t.sourcePos,t.targetPos,o,o,ut,s),k=r[0],d=r[0],g=r[1],nt=r[1],e.setGeometry({controlPoints:[r,r]},!0));e.addSegment(this,"Bezier",{x1:p,y1:w,x2:v,y2:y,cp1x:k,cp1y:g,cp2x:d,cp2y:nt})}};r.extend(i,n.Connectors.AbstractBezierConnector);n.registerConnectorType(i,"StateMachine")}.call("undefined"!=typeof window?window:this),function(){"use strict";var l=this,n=l.jsPlumb,i=l.jsPlumbUtil,a={"stroke-linejoin":"stroke-linejoin","stroke-dashoffset":"stroke-dashoffset","stroke-linecap":"stroke-linecap"},o="stroke-dasharray",h="dashstyle",d="linearGradient",g="radialGradient",nt="defs",v="fill",tt="stop",y="stroke",it="stroke-width",rt="style",p="none",ut="jsplumb_gradient_",ft="lineWidth",w={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml"},r=function(n,t){for(var i in t)n.setAttribute(i,""+t[i])},t=function(n,t){return t=t||{},t.version="1.1",t.xmlns=w.xhtml,jsPlumb.createElementNS(w.svg,n,null,null,t)},s=function(n){return"position:absolute;left:"+n[0]+"px;top:"+n[1]+"px"},b=function(n){for(var i=n.querySelectorAll(" defs,linearGradient,radialGradient"),t=0;t<i.length;t++)i[t].parentNode.removeChild(i[t])},et=function(n,i,r,u,f){var o=ut+f._jsPlumb.instance.idstamp(),s,h,e,c;for(b(n),s=r.gradient.offset?t(g,{id:o}):t(d,{id:o,gradientUnits:"userSpaceOnUse"}),h=t(nt),n.appendChild(h),h.appendChild(s),e=0;e<r.gradient.stops.length;e++){var l=1==f.segment||2==f.segment?e:r.gradient.stops.length-1-e,a=r.gradient.stops[l][1],p=t(tt,{offset:Math.floor(100*r.gradient.stops[e][0])+"%","stop-color":a});s.appendChild(p)}c=r.strokeStyle?y:v;i.setAttribute(c,"url(#"+o+")")},c=function(n,t,i,r,u){var f;if(t.setAttribute(v,i.fillStyle?i.fillStyle:p),t.setAttribute(y,i.strokeStyle?i.strokeStyle:p),i.gradient?et(n,t,i,r,u):(b(n),t.setAttribute(rt,"")),i.lineWidth&&t.setAttribute(it,i.lineWidth),i[h]&&i[ft]&&!i[o]){var e=-1==i[h].indexOf(",")?" ":",",c=i[h].split(e),s="";c.forEach(function(n){s+=Math.floor(n*i.lineWidth)+e});t.setAttribute(o,s)}else i[o]&&t.setAttribute(o,i[o]);for(f in a)i[f]&&t.setAttribute(a[f],i[f])},k=function(n,t,i){n.childNodes.length>i?n.insertBefore(t,n.childNodes[i]):n.appendChild(t)},f,e,u;i.svg={node:t,attr:r,pos:s};f=function(u){var c=u.pointerEventsSpec||"all",o={},f,h,e;return n.jsPlumbUIComponent.apply(this,u.originalArgs),this.canvas=null,this.path=null,this.svg=null,this.bgCanvas=null,f=u.cssClass+" "+(u.originalArgs[0].cssClass||""),h={style:"",width:0,height:0,"pointer-events":c,position:"absolute"},this.svg=t("svg",h),u.useDivWrapper?(this.canvas=jsPlumb.createElement("div",{position:"absolute"}),i.sizeElement(this.canvas,0,0,1,1),this.canvas.className=f):(r(this.svg,{"class":f}),this.canvas=this.svg),u._jsPlumb.appendElement(this.canvas,u.originalArgs[0].parent),u.useDivWrapper&&this.canvas.appendChild(this.svg),e=[this.canvas],this.getDisplayElements=function(){return e},this.appendDisplayElement=function(n){e.push(n)},this.paint=function(n,t,f){if(null!=n){var c,e=[this.x,this.y],h=[this.w,this.h];null!=f&&(f.xmin<0&&(e[0]+=f.xmin),f.ymin<0&&(e[1]+=f.ymin),h[0]=f.xmax+(f.xmin<0?-f.xmin:0),h[1]=f.ymax+(f.ymin<0?-f.ymin:0));u.useDivWrapper?(i.sizeElement(this.canvas,e[0],e[1],h[0],h[1]),e[0]=0,e[1]=0,c=s([0,0])):c=s([e[0],e[1]]);o.paint.apply(this,arguments);r(this.svg,{style:c,width:h[0]||0,height:h[1]||0})}},{renderer:o}};i.extend(f,n.jsPlumbUIComponent,{cleanup:function(n){n||null==this.typeId?(this.canvas&&(this.canvas._jsPlumb=null),this.svg&&(this.svg._jsPlumb=null),this.bgCanvas&&(this.bgCanvas._jsPlumb=null),this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.bgCanvas&&this.bgCanvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.svg=null,this.canvas=null,this.path=null,this.group=null):(this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.bgCanvas&&this.bgCanvas.parentNode&&this.bgCanvas.parentNode.removeChild(this.bgCanvas))},reattach:function(n){var t=n.getContainer();this.canvas&&null==this.canvas.parentNode&&t.appendChild(this.canvas);this.bgCanvas&&null==this.bgCanvas.parentNode&&t.appendChild(this.bgCanvas)},setVisible:function(n){this.canvas&&(this.canvas.style.display=n?"block":"none")}});n.ConnectorRenderers.svg=function(i){var u=this,e=f.apply(this,[{cssClass:i._jsPlumb.connectorClass+(this.isEditable()?" "+i._jsPlumb.editableConnectorClass:""),originalArgs:arguments,pointerEventsSpec:"none",_jsPlumb:i._jsPlumb}]),o=this.setEditable;this.setEditable=function(n){var t=o.apply(this,[n]);jsPlumb[t?"addClass":"removeClass"](this.canvas,this._jsPlumb.instance.editableConnectorClass)};e.renderer.paint=function(f,e,o){var v=u.getSegments(),y="",h=[0,0],l,w,b;if(o.xmin<0&&(h[0]=-o.xmin),o.ymin<0&&(h[1]=-o.ymin),v.length>0){for(l=0;l<v.length;l++)y+=n.Segments.svg.SegmentRenderer.getPath(v[l]),y+=" ";var a={d:y,transform:"translate("+h[0]+","+h[1]+")","pointer-events":i["pointer-events"]||"visibleStroke"},s=null,p=[u.x,u.y,u.w,u.h];f.outlineColor&&(w=f.outlineWidth||1,b=f.lineWidth+2*w,s=n.extend({},f),delete s.gradient,s.strokeStyle=f.outlineColor,s.lineWidth=b,null==u.bgPath?(u.bgPath=t("path",a),n.addClass(u.bgPath,n.connectorOutlineClass),k(u.svg,u.bgPath,0)):r(u.bgPath,a),c(u.svg,u.bgPath,s,p,u));null==u.path?(u.path=t("path",a),k(u.svg,u.path,f.outlineColor?1:0)):r(u.path,a);c(u.svg,u.path,f,p,u)}}};i.extend(n.ConnectorRenderers.svg,f);n.Segments.svg={SegmentRenderer:{getPath:function(n){return{Straight:function(){var t=n.getCoordinates();return"M "+t.x1+" "+t.y1+" L "+t.x2+" "+t.y2},Bezier:function(){var t=n.params;return"M "+t.x1+" "+t.y1+" C "+t.cp1x+" "+t.cp1y+" "+t.cp2x+" "+t.cp2y+" "+t.x2+" "+t.y2},Arc:function(){var t=n.params,i=n.sweep>Math.PI?1:0,r=n.anticlockwise?0:1;return"M"+n.x1+" "+n.y1+" A "+n.radius+" "+t.r+" 0 "+i+","+r+" "+n.x2+" "+n.y2}}[n.type]()}}};e=n.SvgEndpoint=function(t){var i=f.apply(this,[{cssClass:t._jsPlumb.endpointClass,originalArgs:arguments,pointerEventsSpec:"all",useDivWrapper:!0,_jsPlumb:t._jsPlumb}]);i.renderer.paint=function(t){var i=n.extend({},t);i.outlineColor&&(i.strokeWidth=i.outlineWidth,i.strokeStyle=i.outlineColor);null==this.node?(this.node=this.makeNode(i),this.svg.appendChild(this.node)):null!=this.updateNode&&this.updateNode(this.node);c(this.svg,this.node,i,[this.x,this.y,this.w,this.h],this);s(this.node,[this.x,this.y])}.bind(this)};i.extend(e,f);n.Endpoints.svg.Dot=function(){n.Endpoints.Dot.apply(this,arguments);e.apply(this,arguments);this.makeNode=function(){return t("circle",{cx:this.w/2,cy:this.h/2,r:this.radius})};this.updateNode=function(n){r(n,{cx:this.w/2,cy:this.h/2,r:this.radius})}};i.extend(n.Endpoints.svg.Dot,[n.Endpoints.Dot,e]);n.Endpoints.svg.Rectangle=function(){n.Endpoints.Rectangle.apply(this,arguments);e.apply(this,arguments);this.makeNode=function(){return t("rect",{width:this.w,height:this.h})};this.updateNode=function(n){r(n,{width:this.w,height:this.h})}};i.extend(n.Endpoints.svg.Rectangle,[n.Endpoints.Rectangle,e]);n.Endpoints.svg.Image=n.Endpoints.Image;n.Endpoints.svg.Blank=n.Endpoints.Blank;n.Overlays.svg.Label=n.Overlays.Label;n.Overlays.svg.Custom=n.Overlays.Custom;u=function(i,u){i.apply(this,u);n.jsPlumbUIComponent.apply(this,u);this.isAppendedAtTopLevel=!1;this.path=null;this.paint=function(n,i){if(n.component.svg&&i){null==this.path&&(this.path=t("path",{"pointer-events":"all"}),n.component.svg.appendChild(this.path),this.elementCreated&&this.elementCreated(this.path,n.component),this.canvas=n.component.svg);var o=u&&1==u.length?u[0].cssClass||"":"",e=[0,0];i.xmin<0&&(e[0]=-i.xmin);i.ymin<0&&(e[1]=-i.ymin);r(this.path,{d:f(n.d),"class":o,stroke:n.strokeStyle?n.strokeStyle:null,fill:n.fillStyle?n.fillStyle:null,transform:"translate("+e[0]+","+e[1]+")"})}};var f=function(n){return isNaN(n.cxy.x)||isNaN(n.cxy.y)?"":"M"+n.hxy.x+","+n.hxy.y+" L"+n.tail[0].x+","+n.tail[0].y+" L"+n.cxy.x+","+n.cxy.y+" L"+n.tail[1].x+","+n.tail[1].y+" L"+n.hxy.x+","+n.hxy.y};this.transfer=function(n){n.canvas&&this.path&&this.path.parentNode&&(this.path.parentNode.removeChild(this.path),n.canvas.appendChild(this.path))}};i.extend(u,[n.jsPlumbUIComponent,n.Overlays.AbstractOverlay],{cleanup:function(n){null!=this.path&&(n?this._jsPlumb.instance.removeElement(this.path):this.path.parentNode&&this.path.parentNode.removeChild(this.path))},reattach:function(){this.path&&this.canvas&&null==this.path.parentNode&&this.canvas.appendChild(this.path)},setVisible:function(n){null!=this.path&&(this.path.style.display=n?"block":"none")}});n.Overlays.svg.Arrow=function(){u.apply(this,[n.Overlays.Arrow,arguments])};i.extend(n.Overlays.svg.Arrow,[n.Overlays.Arrow,u]);n.Overlays.svg.PlainArrow=function(){u.apply(this,[n.Overlays.PlainArrow,arguments])};i.extend(n.Overlays.svg.PlainArrow,[n.Overlays.PlainArrow,u]);n.Overlays.svg.Diamond=function(){u.apply(this,[n.Overlays.Diamond,arguments])};i.extend(n.Overlays.svg.Diamond,[n.Overlays.Diamond,u]);n.Overlays.svg.GuideLines=function(){var f,e,u=null,i=this,o;n.Overlays.GuideLines.apply(this,arguments);this.paint=function(n,s){null==u&&(u=t("path"),n.connector.svg.appendChild(u),i.attachListeners(u,n.connector),i.attachListeners(u,i),f=t("path"),n.connector.svg.appendChild(f),i.attachListeners(f,n.connector),i.attachListeners(f,i),e=t("path"),n.connector.svg.appendChild(e),i.attachListeners(e,n.connector),i.attachListeners(e,i));var h=[0,0];s.xmin<0&&(h[0]=-s.xmin);s.ymin<0&&(h[1]=-s.ymin);r(u,{d:o(n.head,n.tail),stroke:"red",fill:null,transform:"translate("+h[0]+","+h[1]+")"});r(f,{d:o(n.tailLine[0],n.tailLine[1]),stroke:"blue",fill:null,transform:"translate("+h[0]+","+h[1]+")"});r(e,{d:o(n.headLine[0],n.headLine[1]),stroke:"green",fill:null,transform:"translate("+h[0]+","+h[1]+")"})};o=function(n,t){return"M "+n.x+","+n.y+" L"+t.x+","+t.y}};i.extend(n.Overlays.svg.GuideLines,n.Overlays.GuideLines)}.call("undefined"!=typeof window?window:this),function(){"use strict";var t=this,i=t.jsPlumb,u=t.jsPlumbUtil,f=t.Katavorio,e=t.Biltong,n=function(n,t){t=t||"main";var r="_katavorio_"+t,i=n[r],u=n.getEventManager();return i||(i=new f({bind:u.on,unbind:u.off,getSize:jsPlumb.getSize,getPosition:function(t,i){var r=n.getOffset(t,i,t._katavorioDrag?t.offsetParent:null);return[r.left,r.top]},setPosition:function(n,t){n.style.left=t[0]+"px";n.style.top=t[1]+"px"},addClass:jsPlumb.addClass,removeClass:jsPlumb.removeClass,intersects:e.intersects,indexOf:function(n,t){return n.indexOf(t)},css:{noSelect:n.dragSelectClass,droppable:"jsplumb-droppable",draggable:"jsplumb-draggable",drag:"jsplumb-drag",selected:"jsplumb-drag-selected",active:"jsplumb-drag-active",hover:"jsplumb-drag-hover",ghostProxy:"jsplumb-ghost-proxy"}}),n[r]=i,n.bind("zoom",i.setZoom)),i},o=function(n,t){var i=function(i){if(null!=t[i]){if(u.isString(t[i])){var r=t[i].match(/-=/)?-1:1,f=t[i].substring(2);return n[i]+r*f}return t[i]}return n[i]};return[i("left"),i("top")]},r;i.extend(t.jsPlumbInstance.prototype,{animationSupported:!0,getElement:function(n){return null==n?null:(n="string"==typeof n?n:null!=n.length&&null==n.enctype?n[0]:n,"string"==typeof n?document.getElementById(n):n)},removeElement:function(t){n(this).elementRemoved(t);this.getEventManager().remove(t)},doAnimate:function(n,t,i){i=i||{};var r=this.getOffset(n),s=o(r,t),c=s[0]-r.left,l=s[1]-r.top,e=i.duration||250,f=15,h=e/f,a=f/e*c,v=f/e*l,u=0,y=setInterval(function(){jsPlumb.setPosition(n,{left:r.left+a*(u+1),top:r.top+v*(u+1)});null!=i.step&&i.step(u,Math.ceil(h));u++;u>=h&&(window.clearInterval(y),null!=i.complete&&i.complete())},f)},destroyDraggable:function(t,i){n(this,i).destroyDraggable(t)},destroyDroppable:function(t,i){n(this,i).destroyDroppable(t)},initDraggable:function(t,i,r){n(this,r).draggable(t,i)},initDroppable:function(t,i,r){n(this,r).droppable(t,i)},isAlreadyDraggable:function(n){return null!=n._katavorioDrag},isDragSupported:function(){return!0},isDropSupported:function(){return!0},isElementDraggable:function(n){return n=jsPlumb.getElement(n),n._katavorioDrag&&n._katavorioDrag.isEnabled()},getDragObject:function(n){return n[0].drag.getDragElement()},getDragScope:function(n){return n._katavorioDrag&&n._katavorioDrag.scopes.join(" ")||""},getDropEvent:function(n){return n[0].e},getUIPosition:function(n){var t=n[0].el,r,i,u;return null==t.offsetParent?null:(r=n[0].finalPos||n[0].pos,i={left:r[0],top:r[1]},t._katavorioDrag&&t.offsetParent!==this.getContainer()&&(u=this.getOffset(t.offsetParent),i.left+=u.left,i.top+=u.top),i)},setDragFilter:function(n,t,i){n._katavorioDrag&&n._katavorioDrag.setFilter(t,i)},setElementDraggable:function(n,t){n=jsPlumb.getElement(n);n._katavorioDrag&&n._katavorioDrag.setEnabled(t)},setDragScope:function(n,t){n._katavorioDrag&&n._katavorioDrag.k.setDragScope(n,t)},setDropScope:function(n,t){n._katavorioDrop&&n._katavorioDrop.length>0&&n._katavorioDrop[0].k.setDropScope(n,t)},addToPosse:function(t){var r=Array.prototype.slice.call(arguments,1),i=n(this);jsPlumb.each(t,function(n){n=[jsPlumb.getElement(n)];n.push.apply(n,r);i.addToPosse.apply(i,n)})},setPosse:function(t){var r=Array.prototype.slice.call(arguments,1),i=n(this);jsPlumb.each(t,function(n){n=[jsPlumb.getElement(n)];n.push.apply(n,r);i.setPosse.apply(i,n)})},removeFromPosse:function(t){var r=Array.prototype.slice.call(arguments,1),i=n(this);jsPlumb.each(t,function(n){n=[jsPlumb.getElement(n)];n.push.apply(n,r);i.removeFromPosse.apply(i,n)})},removeFromAllPosses:function(t){var i=n(this);jsPlumb.each(t,function(n){i.removeFromAllPosses(jsPlumb.getElement(n))})},setPosseState:function(t,i,r){var u=n(this);jsPlumb.each(t,function(n){u.setPosseState(jsPlumb.getElement(n),i,r)})},dragEvents:{start:"start",stop:"stop",drag:"drag",step:"step",over:"over",out:"out",drop:"drop",complete:"complete",beforeStart:"beforeStart"},animEvents:{step:"step",complete:"complete"},stopDrag:function(n){n._katavorioDrag&&n._katavorioDrag.abort()},addToDragSelection:function(t){n(this).select(t)},removeFromDragSelection:function(t){n(this).deselect(t)},clearDragSelection:function(){n(this).deselectAll()},trigger:function(n,t,i,r){this.getEventManager().trigger(n,t,i,r)},doReset:function(){for(var n in this)0===n.indexOf("_katavorio_")&&this[n].reset()}});r=function(n){var t=function(){/complete|loaded|interactive/.test(document.readyState)&&"undefined"!=typeof document.body&&null!=document.body?n():setTimeout(t,9)};t()};r(i.init)}.call("undefined"!=typeof window?window:this);window.Modernizr=function(n,t,i){function a(n){c.cssText=n}function vt(n,t){return a(y.join(n+";")+(t||""))}function h(n,t){return typeof n===t}function v(n,t){return!!~(""+n).indexOf(t)}function lt(n,t){var u,r;for(u in n)if(r=n[u],!v(r,"-")&&c[r]!==i)return t=="pfx"?r:!0;return!1}function yt(n,t,r){var f,u;for(f in n)if(u=t[n[f]],u!==i)return r===!1?n[f]:h(u,"function")?u.bind(r||t):u;return!1}function f(n,t,i){var r=n.charAt(0).toUpperCase()+n.slice(1),u=(n+" "+ot.join(r+" ")+r).split(" ");return h(t,"string")||h(t,"undefined")?lt(u,t):(u=(n+" "+st.join(r+" ")+r).split(" "),yt(u,t,i))}function pt(){u.input=function(i){for(var r=0,u=i.length;r<u;r++)w[i[r]]=!!(i[r]in o);return w.list&&(w.list=!!(t.createElement("datalist")&&n.HTMLDataListElement)),w}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));u.inputtypes=function(n){for(var u=0,r,f,e,h=n.length;u<h;u++)o.setAttribute("type",f=n[u]),r=o.type!=="text",r&&(o.value=g,o.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&o.style.WebkitAppearance!==i?(s.appendChild(o),e=t.defaultView,r=e.getComputedStyle&&e.getComputedStyle(o,null).WebkitAppearance!=="textfield"&&o.offsetHeight!==0,s.removeChild(o)):/^(search|tel)$/.test(f)||(r=/^(url|email)$/.test(f)?o.checkValidity&&o.checkValidity()===!1:o.value!=g)),ht[n[u]]=!!r;return ht}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var u={},d=!0,s=t.documentElement,e="modernizr",ut=t.createElement(e),c=ut.style,o=t.createElement("input"),g=":)",ft={}.toString,y=" -webkit- -moz- -o- -ms- ".split(" "),et="Webkit Moz O ms",ot=et.split(" "),st=et.toLowerCase().split(" "),p={svg:"http://www.w3.org/2000/svg"},r={},ht={},w={},nt=[],tt=nt.slice,b,l=function(n,i,r,u){var l,a,c,v,f=t.createElement("div"),h=t.body,o=h||t.createElement("body");if(parseInt(r,10))while(r--)c=t.createElement("div"),c.id=u?u[r]:e+(r+1),f.appendChild(c);return l=["&#173;",'<style id="s',e,'">',n,"<\/style>"].join(""),f.id=e,(h?f:o).innerHTML+=l,o.appendChild(f),h||(o.style.background="",o.style.overflow="hidden",v=s.style.overflow,s.style.overflow="hidden",s.appendChild(o)),a=i(f,n),h?f.parentNode.removeChild(f):(o.parentNode.removeChild(o),s.style.overflow=v),!!a},at=function(t){var i=n.matchMedia||n.msMatchMedia,r;return i?i(t)&&i(t).matches||!1:(l("@media "+t+" { #"+e+" { position: absolute; } }",function(t){r=(n.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position=="absolute"}),r)},ct=function(){function r(r,u){u=u||t.createElement(n[r]||"div");r="on"+r;var f=r in u;return f||(u.setAttribute||(u=t.createElement("div")),u.setAttribute&&u.removeAttribute&&(u.setAttribute(r,""),f=h(u[r],"function"),h(u[r],"undefined")||(u[r]=i),u.removeAttribute(r))),u=null,f}var n={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return r}(),it={}.hasOwnProperty,rt,k;rt=h(it,"undefined")||h(it.call,"undefined")?function(n,t){return t in n&&h(n.constructor.prototype[t],"undefined")}:function(n,t){return it.call(n,t)};Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,i,r;if(typeof t!="function")throw new TypeError;return i=tt.call(arguments,1),r=function(){var f,e,u;return this instanceof r?(f=function(){},f.prototype=t.prototype,e=new f,u=t.apply(e,i.concat(tt.call(arguments))),Object(u)===u)?u:e:t.apply(n,i.concat(tt.call(arguments)))},r});r.flexbox=function(){return f("flexWrap")};r.flexboxlegacy=function(){return f("boxDirection")};r.canvas=function(){var n=t.createElement("canvas");return!!(n.getContext&&n.getContext("2d"))};r.canvastext=function(){return!!(u.canvas&&h(t.createElement("canvas").getContext("2d").fillText,"function"))};r.webgl=function(){return!!n.WebGLRenderingContext};r.touch=function(){var i;return"ontouchstart"in n||n.DocumentTouch&&t instanceof DocumentTouch?i=!0:l(["@media (",y.join("touch-enabled),("),e,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(n){i=n.offsetTop===9}),i};r.geolocation=function(){return"geolocation"in navigator};r.postmessage=function(){return!!n.postMessage};r.websqldatabase=function(){return!!n.openDatabase};r.indexedDB=function(){return!!f("indexedDB",n)};r.hashchange=function(){return ct("hashchange",n)&&(t.documentMode===i||t.documentMode>7)};r.history=function(){return!!(n.history&&history.pushState)};r.draganddrop=function(){var n=t.createElement("div");return"draggable"in n||"ondragstart"in n&&"ondrop"in n};r.websockets=function(){return"WebSocket"in n||"MozWebSocket"in n};r.rgba=function(){return a("background-color:rgba(150,255,150,.5)"),v(c.backgroundColor,"rgba")};r.hsla=function(){return a("background-color:hsla(120,40%,100%,.5)"),v(c.backgroundColor,"rgba")||v(c.backgroundColor,"hsla")};r.multiplebgs=function(){return a("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(c.background)};r.backgroundsize=function(){return f("backgroundSize")};r.borderimage=function(){return f("borderImage")};r.borderradius=function(){return f("borderRadius")};r.boxshadow=function(){return f("boxShadow")};r.textshadow=function(){return t.createElement("div").style.textShadow===""};r.opacity=function(){return vt("opacity:.55"),/^0.55$/.test(c.opacity)};r.cssanimations=function(){return f("animationName")};r.csscolumns=function(){return f("columnCount")};r.cssgradients=function(){var n="background-image:";return a((n+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+n)+y.join("linear-gradient(left top,#9f9, white);"+n)).slice(0,-n.length)),v(c.backgroundImage,"gradient")};r.cssreflections=function(){return f("boxReflect")};r.csstransforms=function(){return!!f("transform")};r.csstransforms3d=function(){var n=!!f("perspective");return n&&"webkitPerspective"in s.style&&l("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t){n=t.offsetLeft===9&&t.offsetHeight===3}),n};r.csstransitions=function(){return f("transition")};r.fontface=function(){var n;return l('@font-face {font-family:"font";src:url("https://")}',function(i,r){var f=t.getElementById("smodernizr"),u=f.sheet||f.styleSheet,e=u?u.cssRules&&u.cssRules[0]?u.cssRules[0].cssText:u.cssText||"":"";n=/src/i.test(e)&&e.indexOf(r.split(" ")[0])===0}),n};r.generatedcontent=function(){var n;return l(["#",e,"{font:0/0 a}#",e,':after{content:"',g,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){n=t.offsetHeight>=3}),n};r.video=function(){var i=t.createElement("video"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=i.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=i.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(r){}return n};r.audio=function(){var i=t.createElement("audio"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=i.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=i.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(i.canPlayType("audio/x-m4a;")||i.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(r){}return n};r.localstorage=function(){try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(n){return!1}};r.sessionstorage=function(){try{return sessionStorage.setItem(e,e),sessionStorage.removeItem(e),!0}catch(n){return!1}};r.webworkers=function(){return!!n.Worker};r.applicationcache=function(){return!!n.applicationCache};r.svg=function(){return!!t.createElementNS&&!!t.createElementNS(p.svg,"svg").createSVGRect};r.inlinesvg=function(){var n=t.createElement("div");return n.innerHTML="<svg/>",(n.firstChild&&n.firstChild.namespaceURI)==p.svg};r.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(ft.call(t.createElementNS(p.svg,"animate")))};r.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(ft.call(t.createElementNS(p.svg,"clipPath")))};for(k in r)rt(r,k)&&(b=k.toLowerCase(),u[b]=r[k](),nt.push((u[b]?"":"no-")+b));return u.input||pt(),u.addTest=function(n,t){if(typeof n=="object")for(var r in n)rt(n,r)&&u.addTest(r,n[r]);else{if(n=n.toLowerCase(),u[n]!==i)return u;t=typeof t=="function"?t():t;typeof d!="undefined"&&d&&(s.className+=" "+(t?"":"no-")+n);u[n]=t}return u},a(""),ut=o=null,function(n,t){function p(n,t){var i=n.createElement("p"),r=n.getElementsByTagName("head")[0]||n.documentElement;return i.innerHTML="x<style>"+t+"<\/style>",r.insertBefore(i.lastChild,r.firstChild)}function c(){var n=r.elements;return typeof n=="string"?n.split(" "):n}function o(n){var t=h[n[s]];return t||(t={},e++,n[s]=e,h[e]=t),t}function l(n,r,u){if(r||(r=t),i)return r.createElement(n);u||(u=o(r));var f;return f=u.cache[n]?u.cache[n].cloneNode():y.test(n)?(u.cache[n]=u.createElem(n)).cloneNode():u.createElem(n),f.canHaveChildren&&!v.test(n)&&!f.tagUrn?u.frag.appendChild(f):f}function w(n,r){if(n||(n=t),i)return n.createDocumentFragment();r=r||o(n);for(var f=r.frag.cloneNode(),u=0,e=c(),s=e.length;u<s;u++)f.createElement(e[u]);return f}function b(n,t){t.cache||(t.cache={},t.createElem=n.createElement,t.createFrag=n.createDocumentFragment,t.frag=t.createFrag());n.createElement=function(i){return r.shivMethods?l(i,n,t):t.createElem(i)};n.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+c().join().replace(/[\w\-]+/g,function(n){return t.createElem(n),t.frag.createElement(n),'c("'+n+'")'})+");return n}")(r,t.frag)}function a(n){n||(n=t);var u=o(n);return!r.shivCSS||f||u.hasCSS||(u.hasCSS=!!p(n,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),i||b(n,u),n}var u=n.html5||{},v=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,y=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,s="_html5shiv",e=0,h={},i,r;(function(){try{var n=t.createElement("a");n.innerHTML="<xyz><\/xyz>";f="hidden"in n;i=n.childNodes.length==1||function(){t.createElement("a");var n=t.createDocumentFragment();return typeof n.cloneNode=="undefined"||typeof n.createDocumentFragment=="undefined"||typeof n.createElement=="undefined"}()}catch(r){f=!0;i=!0}})();r={elements:u.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:u.shivCSS!==!1,supportsUnknownElements:i,shivMethods:u.shivMethods!==!1,type:"default",shivDocument:a,createElement:l,createDocumentFragment:w};n.html5=r;a(t)}(this,t),u._version="2.8.3",u._prefixes=y,u._domPrefixes=st,u._cssomPrefixes=ot,u.mq=at,u.hasEvent=ct,u.testProp=function(n){return lt([n])},u.testAllProps=f,u.testStyles=l,u.prefixed=function(n,t,i){return t?f(n,t,i):f(n,"pfx")},s.className=s.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(d?" js "+nt.join(" "):""),u}(this,this.document);!function(){var v=this,lt=v._,e={},r=Array.prototype,nt=Object.prototype,at=Function.prototype,y=r.push,t=r.slice,o=r.concat,f=nt.toString,vt=nt.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,yt=Array.isArray,pt=Object.keys,p=at.bind,n=function(t){return t instanceof n?t:this instanceof n?(this._wrapped=t,void 0):new n(t)},i,w,b,h,k,d,c,l,u,ht,ct,a;"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=n),exports._=n):v._=n;n.VERSION="1.5.1";i=n.each=n.forEach=function(t,i,r){var u,o,f;if(null!=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(f in t)if(n.has(t,f)&&i.call(r,t[f],f,t)===e)return};n.map=n.collect=function(n,t,r){var u=[];return null==n?u:it&&n.map===it?n.map(t,r):(i(n,function(n,i,f){u.push(t.call(r,n,i,f))}),u)};w="Reduce of empty array with no initial value";n.reduce=n.foldl=n.inject=function(t,r,u,f){var e=arguments.length>2;if(null==t&&(t=[]),rt&&t.reduce===rt)return f&&(r=n.bind(r,f)),e?t.reduce(r,u):t.reduce(r);if(i(t,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(t,r,u,f){var o=arguments.length>2,e,s;if(null==t&&(t=[]),ut&&t.reduceRight===ut)return f&&(r=n.bind(r,f)),o?t.reduceRight(r,u):t.reduceRight(r);if(e=t.length,e!==+e&&(s=n.keys(t),e=s.length),i(t,function(n,i,h){i=s?s[--e]:--e;o?u=r.call(f,u,t[i],i,h):(u=t[i],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,t,r){var u=[];return null==n?u:ft&&n.filter===ft?n.filter(t,r):(i(n,function(n,i,f){t.call(r,n,i,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(t,r,u){r||(r=n.identity);var f=!0;return null==t?f:et&&t.every===et?t.every(r,u):(i(t,function(n,t,i){if(!(f=f&&r.call(u,n,t,i)))return e}),!!f)};b=n.some=n.any=function(t,r,u){r||(r=n.identity);var f=!1;return null==t?f:ot&&t.some===ot?t.some(r,u):(i(t,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(i,r){var u=t.call(arguments,2),f=n.isFunction(r);return n.map(i,function(n){return(f?r:n[r]).apply(n,u)})};n.pluck=function(t,i){return n.map(t,function(n){return n[i]})};n.where=function(t,i,r){return n.isEmpty(i)?r?void 0:[]:n[r?"find":"filter"](t,function(n){for(var t in i)if(i[t]!==n[t])return!1;return!0})};n.findWhere=function(t,i){return n.where(t,i,!0)};n.max=function(t,r,u){if(!r&&n.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.max.apply(Math,t);if(!r&&n.isEmpty(t))return-1/0;var f={computed:-1/0,value:-1/0};return i(t,function(n,t,i){var e=r?r.call(u,n,t,i):n;e>f.computed&&(f={value:n,computed:e})}),f.value};n.min=function(t,r,u){if(!r&&n.isArray(t)&&t[0]===+t[0]&&t.length<65535)return Math.min.apply(Math,t);if(!r&&n.isEmpty(t))return 1/0;var f={computed:1/0,value:1/0};return i(t,function(n,t,i){var e=r?r.call(u,n,t,i):n;e<f.computed&&(f={value:n,computed:e})}),f.value};n.shuffle=function(t){var u,f=0,r=[];return i(t,function(t){u=n.random(f++);r[f-1]=r[u];r[u]=t}),r};h=function(t){return n.isFunction(t)?t:function(n){return n[t]}};n.sortBy=function(t,i,r){var u=h(i);return n.pluck(n.map(t,function(n,t,i){return{value:n,index:t,criteria:u.call(r,n,t,i)}}).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?-1:1}),"value")};k=function(t,r,u,f){var e={},o=h(null==r?n.identity:r);return i(t,function(n,i){var r=o.call(u,n,i,t);f(e,r,n)}),e};n.groupBy=function(t,i,r){return k(t,i,r,function(t,i,r){(n.has(t,i)?t[i]:t[i]=[]).push(r)})};n.countBy=function(t,i,r){return k(t,i,r,function(t,i){n.has(t,i)||(t[i]=0);t[i]++})};n.sortedIndex=function(t,i,r,u){var e;r=null==r?n.identity:h(r);for(var s=r.call(u,i),f=0,o=t.length;o>f;)e=f+o>>>1,r.call(u,t[e])<s?f=e+1:o=e;return f};n.toArray=function(i){return i?n.isArray(i)?t.call(i):i.length===+i.length?n.map(i,n.identity):n.values(i):[]};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,i,r){if(null!=n)return null==i||r?n[0]:t.call(n,0,i)};n.initial=function(n,i,r){return t.call(n,0,n.length-(null==i||r?1:i))};n.last=function(n,i,r){if(null!=n)return null==i||r?n[n.length-1]:t.call(n,Math.max(n.length-i,0))};n.rest=n.tail=n.drop=function(n,i,r){return t.call(n,null==i||r?1:i)};n.compact=function(t){return n.filter(t,n.identity)};d=function(t,r,u){return r&&n.every(t,n.isArray)?o.apply(u,t):(i(t,function(t){n.isArray(t)||n.isArguments(t)?r?y.apply(u,t):d(t,r,u):u.push(t)}),u)};n.flatten=function(n,t){return d(n,t,[])};n.without=function(i){return n.difference(i,t.call(arguments,1))};n.uniq=n.unique=function(t,r,u,f){n.isFunction(r)&&(f=u,u=r,r=!1);var s=u?n.map(t,u,f):t,o=[],e=[];return i(s,function(i,u){(r?u&&e[e.length-1]===i:n.contains(e,i))||(e.push(i),o.push(t[u]))}),o};n.union=function(){return n.uniq(n.flatten(arguments,!0))};n.intersection=function(i){var r=t.call(arguments,1);return n.filter(n.uniq(i),function(t){return n.every(r,function(i){return n.indexOf(i,t)>=0})})};n.difference=function(i){var u=o.apply(r,t.call(arguments,1));return n.filter(i,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};c=function(){};n.bind=function(i,r){var u,f;if(p&&i.bind===p)return p.apply(i,t.call(arguments,1));if(!n.isFunction(i))throw new TypeError;return u=t.call(arguments,2),f=function(){var e,n;return(this instanceof f)?(c.prototype=i.prototype,e=new c,c.prototype=null,n=i.apply(e,u.concat(t.call(arguments))),Object(n)===n?n:e):i.apply(r,u.concat(t.call(arguments)))}};n.partial=function(n){var i=t.call(arguments,1);return function(){return n.apply(this,i.concat(t.call(arguments)))}};n.bindAll=function(r){var u=t.call(arguments,1);if(0===u.length)throw new Error("bindAll must be passed function names");return i(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,i){var r=t.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},i)};n.defer=function(i){return n.delay.apply(n,[i,1].concat(t.call(arguments,1)))};n.throttle=function(n,t,i){var f,e,o,r=null,u=0,s;return i||(i={}),s=function(){u=i.leading===!1?0:new Date;r=null;o=n.apply(f,e)},function(){var h=new Date,c;return u||i.leading!==!1||(u=h),c=t-(h-u),f=this,e=arguments,0>=c?(clearTimeout(r),r=null,u=h,o=n.apply(f,e)):r||i.trailing===!1||(r=setTimeout(s,c)),o}};n.debounce=function(n,t,i){var u,r=null;return function(){var f=this,e=arguments,o=function(){r=null;i||(u=n.apply(f,e))},s=i&&!r;return clearTimeout(r),r=setTimeout(o,t),s&&(u=n.apply(f,e)),u}};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(n,t){return function(){var i=[n];return y.apply(i,arguments),t.apply(this,i)}};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=pt||function(t){var i,r;if(t!==Object(t))throw new TypeError("Invalid object");i=[];for(r in t)n.has(t,r)&&i.push(r);return i};n.values=function(t){var r=[],i;for(i in t)n.has(t,i)&&r.push(t[i]);return r};n.pairs=function(t){var r=[],i;for(i in t)n.has(t,i)&&r.push([i,t[i]]);return r};n.invert=function(t){var r={},i;for(i in t)n.has(t,i)&&(r[t[i]]=i);return r};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 i(t.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,t.call(arguments,1));return i(f,function(t){t in n&&(u[t]=n[t])}),u};n.omit=function(i){var f={},e=o.apply(r,t.call(arguments,1)),u;for(u in i)n.contains(e,u)||(f[u]=i[u]);return f};n.defaults=function(n){return i(t.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};l=function(t,i,r,u){var a,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),a=f.call(t),a!=f.call(i))return!1;switch(a){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))return!1;if(r.push(t),u.push(i),e=0,o=!0,"[object Array]"==a){if(e=t.length,o=e==i.length)for(;e--&&(o=l(t[e],i[e],r,u)););}else{for(s in t)if(n.has(t,s)&&(e++,!(o=n.has(i,s)&&l(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 l(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=yt||function(n){return"[object Array]"==f.call(n)};n.isObject=function(n){return n===Object(n)};i(["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 vt.call(n,t)};n.noConflict=function(){return v._=lt,this};n.identity=function(n){return n};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))};u={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;"}};u.unescape=n.invert(u.escape);ht={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(ht[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(t){i(n.functions(t),function(i){var r=n[i]=t[i];n.prototype[i]=function(){var t=[this._wrapped];return y.apply(t,arguments),a.call(this,r.apply(n,t))}})};ct=0;n.uniqueId=function(n){var t=++ct+"";return n?n+t:t};n.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var g=/(.)^/,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 h=new RegExp([(r.escape||g).source,(r.interpolate||g).source,(r.evaluate||g).source].join("|")+"|$","g"),o=0,u="__p+='";t.replace(h,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(s){throw s.source=u,s;}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()};a=function(t){return this._chain?n(t).chain():t};n.mixin(n);i(["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],a.call(this,n)}});i(["concat","join","slice"],function(t){var i=r[t];n.prototype[t]=function(){return a.call(this,i.apply(this._wrapped,arguments))}});n.extend(n.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this);!function(n,t){"use strict";var s=t.prototype.trim,h=t.prototype.trimRight,c=t.prototype.trimLeft,l=function(n){return n*1||0},r=function(n,t){if(t<1)return"";for(var i="";t>0;)t&1&&(i+=n),t>>=1,n+=n;return i},a=[].slice,f=function(n){return n==null?"\\s":n.source?n.source:"["+i.escapeRegExp(n)+"]"},e={lt:"<",gt:">",quot:'"',apos:"'",amp:"&"},v={},o,u,i;for(o in e)v[e[o]]=o;u=function(){function i(n){return Object.prototype.toString.call(n).slice(8,-1).toLowerCase()}var f=r,n=function(){return n.cache.hasOwnProperty(arguments[0])||(n.cache[arguments[0]]=n.parse(arguments[0])),n.format.call(null,n.cache[arguments[0]],arguments)};return n.format=function(n,r){for(var v=1,w=n.length,c="",e,l=[],h,o,a,y,p,s=0;s<w;s++)if(c=i(n[s]),c==="string")l.push(n[s]);else if(c==="array"){if(o=n[s],o[2])for(e=r[v],h=0;h<o[2].length;h++){if(!e.hasOwnProperty(o[2][h]))throw new Error(u('[_.sprintf] property "%s" does not exist',o[2][h]));e=e[o[2][h]]}else e=o[1]?r[o[1]]:r[v++];if(/[^s]/.test(o[8])&&i(e)!="number")throw new Error(u("[_.sprintf] expecting number but found %s",i(e)));switch(o[8]){case"b":e=e.toString(2);break;case"c":e=t.fromCharCode(e);break;case"d":e=parseInt(e,10);break;case"e":e=o[7]?e.toExponential(o[7]):e.toExponential();break;case"f":e=o[7]?parseFloat(e).toFixed(o[7]):parseFloat(e);break;case"o":e=e.toString(8);break;case"s":e=(e=t(e))&&o[7]?e.substring(0,o[7]):e;break;case"u":e=Math.abs(e);break;case"x":e=e.toString(16);break;case"X":e=e.toString(16).toUpperCase()}e=/[def]/.test(o[8])&&o[3]&&e>=0?"+"+e:e;y=o[4]?o[4]=="0"?"0":o[4].charAt(1):" ";p=o[6]-t(e).length;a=o[6]?f(y,p):"";l.push(o[5]?e+a:a+e)}return l.join("")},n.cache={},n.parse=function(n){for(var r=n,t=[],f=[],o=0;r;){if((t=/^[^\x25]+/.exec(r))!==null)f.push(t[0]);else if((t=/^\x25{2}/.exec(r))!==null)f.push("%");else{if((t=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(r))===null)throw new Error("[_.sprintf] huh?");if(t[2]){o|=1;var e=[],u=t[2],i=[];if((i=/^([a-z_][a-z_\d]*)/i.exec(u))===null)throw new Error("[_.sprintf] huh?");for(e.push(i[1]);(u=u.substring(i[0].length))!=="";)if((i=/^\.([a-z_][a-z_\d]*)/i.exec(u))!==null)e.push(i[1]);else{if((i=/^\[(\d+)\]/.exec(u))===null)throw new Error("[_.sprintf] huh?");e.push(i[1])}t[2]=e}else o|=2;if(o===3)throw new Error("[_.sprintf] mixing positional and named placeholders is not (yet) supported");f.push(t)}r=r.substring(t[0].length)}return f},n}();i={VERSION:"2.3.0",isBlank:function(n){return n==null&&(n=""),/^\s*$/.test(n)},stripTags:function(n){return n==null?"":t(n).replace(/<\/?[^>]+>/g,"")},capitalize:function(n){return n=n==null?"":t(n),n.charAt(0).toUpperCase()+n.slice(1)},chop:function(n,i){return n==null?[]:(n=t(n),i=~~i,i>0?n.match(new RegExp(".{1,"+i+"}","g")):[n])},clean:function(n){return i.strip(n).replace(/\s+/g," ")},count:function(n,i){return n==null||i==null?0:t(n).split(i).length-1},chars:function(n){return n==null?[]:t(n).split("")},swapCase:function(n){return n==null?"":t(n).replace(/\S/g,function(n){return n===n.toUpperCase()?n.toLowerCase():n.toUpperCase()})},escapeHTML:function(n){return n==null?"":t(n).replace(/[&<>"']/g,function(n){return"&"+v[n]+";"})},unescapeHTML:function(n){return n==null?"":t(n).replace(/\&([^;]+);/g,function(n,i){var r;return i in e?e[i]:(r=i.match(/^#x([\da-fA-F]+)$/))?t.fromCharCode(parseInt(r[1],16)):(r=i.match(/^#(\d+)$/))?t.fromCharCode(~~r[1]):n})},escapeRegExp:function(n){return n==null?"":t(n).replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")},splice:function(n,t,r,u){var f=i.chars(n);return f.splice(~~t,~~r,u),f.join("")},insert:function(n,t,r){return i.splice(n,t,0,r)},include:function(n,i){return i===""?!0:n==null?!1:t(n).indexOf(i)!==-1},join:function(){var t=a.call(arguments),n=t.shift();return n==null&&(n=""),t.join(n)},lines:function(n){return n==null?[]:t(n).split("\n")},reverse:function(n){return i.chars(n).reverse().join("")},startsWith:function(n,i){return i===""?!0:n==null||i==null?!1:(n=t(n),i=t(i),n.length>=i.length&&n.slice(0,i.length)===i)},endsWith:function(n,i){return i===""?!0:n==null||i==null?!1:(n=t(n),i=t(i),n.length>=i.length&&n.slice(n.length-i.length)===i)},succ:function(n){return n==null?"":(n=t(n),n.slice(0,-1)+t.fromCharCode(n.charCodeAt(n.length-1)+1))},titleize:function(n){return n==null?"":t(n).replace(/(?:^|\s)\S/g,function(n){return n.toUpperCase()})},camelize:function(n){return i.trim(n).replace(/[-_\s]+(.)?/g,function(n,t){return t.toUpperCase()})},underscored:function(n){return i.trim(n).replace(/([a-z\d])([A-Z]+)/g,"$1_$2").replace(/[-\s]+/g,"_").toLowerCase()},dasherize:function(n){return i.trim(n).replace(/([A-Z])/g,"-$1").replace(/[-_\s]+/g,"-").toLowerCase()},classify:function(n){return i.titleize(t(n).replace(/_/g," ")).replace(/\s/g,"")},humanize:function(n){return i.capitalize(i.underscored(n).replace(/_id$/,"").replace(/_/g," "))},trim:function(n,i){return n==null?"":!i&&s?s.call(n):(i=f(i),t(n).replace(new RegExp("^"+i+"+|"+i+"+$","g"),""))},ltrim:function(n,i){return n==null?"":!i&&c?c.call(n):(i=f(i),t(n).replace(new RegExp("^"+i+"+"),""))},rtrim:function(n,i){return n==null?"":!i&&h?h.call(n):(i=f(i),t(n).replace(new RegExp(i+"+$"),""))},truncate:function(n,i,r){return n==null?"":(n=t(n),r=r||"...",i=~~i,n.length>i?n.slice(0,i)+r:n)},prune:function(n,r,u){if(n==null)return"";if(n=t(n),r=~~r,u=u!=null?t(u):"...",n.length<=r)return n;var e=function(n){return n.toUpperCase()!==n.toLowerCase()?"A":" "},f=n.slice(0,r+1).replace(/.(?=\W*\w*$)/g,e);return f=f.slice(f.length-2).match(/\w\w/)?f.replace(/\s*\S+$/,""):i.rtrim(f.slice(0,f.length-1)),(f+u).length>n.length?n:n.slice(0,f.length)+u},words:function(n,t){return i.isBlank(n)?[]:i.trim(n,t).split(t||/\s+/)},pad:function(n,i,u,f){n=n==null?"":t(n);i=~~i;var e=0;u?u.length>1&&(u=u.charAt(0)):u=" ";switch(f){case"right":return e=i-n.length,n+r(u,e);case"both":return e=i-n.length,r(u,Math.ceil(e/2))+n+r(u,Math.floor(e/2));default:return e=i-n.length,r(u,e)+n}},lpad:function(n,t,r){return i.pad(n,t,r)},rpad:function(n,t,r){return i.pad(n,t,r,"right")},lrpad:function(n,t,r){return i.pad(n,t,r,"both")},sprintf:u,vsprintf:function(n,t){return t.unshift(n),u.apply(null,t)},toNumber:function(n,i){if(n==null||n=="")return 0;n=t(n);var r=l(l(n).toFixed(~~i));return r===0&&!n.match(/^0+$/)?Number.NaN:r},numberFormat:function(n,t,i,r){if(isNaN(n)||n==null)return"";n=n.toFixed(~~t);r=r||",";var u=n.split("."),f=u[0],e=u[1]?(i||".")+u[1]:"";return f.replace(/(\d)(?=(?:\d{3})+$)/g,"$1"+r)+e},strRight:function(n,i){if(n==null)return"";n=t(n);i=i!=null?t(i):i;var r=i?n.indexOf(i):-1;return~r?n.slice(r+i.length,n.length):n},strRightBack:function(n,i){if(n==null)return"";n=t(n);i=i!=null?t(i):i;var r=i?n.lastIndexOf(i):-1;return~r?n.slice(r+i.length,n.length):n},strLeft:function(n,i){if(n==null)return"";n=t(n);i=i!=null?t(i):i;var r=i?n.indexOf(i):-1;return~r?n.slice(0,r):n},strLeftBack:function(n,t){if(n==null)return"";n+="";t=t!=null?""+t:t;var i=n.lastIndexOf(t);return~i?n.slice(0,i):n},toSentence:function(n,t,r,u){t=t||", ";r=r||" and ";var f=n.slice(),e=f.pop();return n.length>2&&u&&(r=i.rtrim(t)+r),f.length?f.join(t)+r+e:e},toSentenceSerial:function(){var n=a.call(arguments);return n[3]=!0,i.toSentence.apply(i,n)},slugify:function(n){if(n==null)return"";var r="ąàáäâãåæćęèéëêìíïîłńòóöôõøùúüûñçżź",u="aaaaaaaaceeeeeiiiilnoooooouuuunczz",e=new RegExp(f(r),"g");return n=t(n).toLowerCase().replace(e,function(n){var t=r.indexOf(n);return u.charAt(t)||"-"}),i.dasherize(n.replace(/[^\w\s-]/g,""))},surround:function(n,t){return[t,n,t].join("")},quote:function(n){return i.surround(n,'"')},exports:function(){var t={},n;for(n in this)this.hasOwnProperty(n)&&!n.match(/^(?:include|contains|reverse)$/)&&(t[n]=this[n]);return t},repeat:function(n,i,u){if(n==null)return"";if(i=~~i,u==null)return r(t(n),i);for(var f=[];i>0;f[--i]=n);return f.join(u)},levenshtein:function(n,i){var u,e,o,f,r;if(n==null&&i==null)return 0;if(n==null)return t(i).length;if(i==null)return t(n).length;for(n=t(n),i=t(i),u=[],f=0;f<=i.length;f++)for(r=0;r<=n.length;r++)o=f&&r?n.charAt(r-1)===i.charAt(f-1)?e:Math.min(u[r],u[r-1],e)+1:f+r,e=u[r],u[r]=o;return u.pop()}};i.strip=i.trim;i.lstrip=i.ltrim;i.rstrip=i.rtrim;i.center=i.lrpad;i.rjust=i.lpad;i.ljust=i.rpad;i.contains=i.include;i.q=i.quote;typeof exports!="undefined"?(typeof module!="undefined"&&module.exports&&(module.exports=i),exports._s=i):typeof define=="function"&&define.amd?define("underscore.string",[],function(){return i}):(n._=n._||{},n._.string=n._.str=i)}(this,String);!function(n,t,i){"use strict";!function r(n,t,i){function u(f,o){var h,c,s;if(!t[f]){if(!n[f]){if(h="function"==typeof require&&require,!o&&h)return h(f,!0);if(e)return e(f,!0);c=new Error("Cannot find module '"+f+"'");throw c.code="MODULE_NOT_FOUND",c;}s=t[f]={exports:{}};n[f][0].call(s.exports,function(t){var i=n[f][1][t];return u(i?i:t)},s,s.exports,r,n,t,i)}return t[f].exports}for(var e="function"==typeof require&&require,f=0;f<i.length;f++)u(i[f]);return u}({1:[function(r,u,f){var v=function(n){return n&&n.__esModule?n:{"default":n}};Object.defineProperty(f,"__esModule",{value:!0});var y,a,s,h,e=r("./modules/handle-dom"),c=r("./modules/utils"),o=r("./modules/handle-swal-dom"),p=r("./modules/handle-click"),w=r("./modules/handle-key"),b=v(w),k=r("./modules/default-params"),l=v(k),d=r("./modules/set-params"),g=v(d);f["default"]=s=h=function(){function k(n){var t=u;return t[n]===i?l["default"][n]:t[n]}var u=arguments[0],r,s,f,it,rt;if(e.addClass(t.body,"stop-scrolling"),o.resetInput(),u===i)return c.logStr("SweetAlert expects at least 1 attribute!"),!1;r=c.extend({},l["default"]);switch(typeof u){case"string":r.title=u;r.text=arguments[1]||"";r.type=arguments[2]||"";break;case"object":if(u.title===i)return c.logStr('Missing "title" argument!'),!1;r.title=u.title;for(s in l["default"])r[s]=k(s);r.confirmButtonText=r.showCancelButton?"Confirm":l["default"].confirmButtonText;r.confirmButtonText=k("confirmButtonText");r.doneFunction=arguments[1]||null;break;default:return c.logStr('Unexpected type of argument! Expected "string" or "object", got '+typeof u),!1}g["default"](r);o.fixVerticalPosition();o.openModal(arguments[1]);for(var v=o.getModal(),d=v.querySelectorAll("button"),nt=["onclick","onmouseover","onmouseout","onmousedown","onmouseup","onfocus"],tt=function(n){return p.handleButton(n,r,v)},w=0;w<d.length;w++)for(f=0;f<nt.length;f++)it=nt[f],d[w][it]=tt;o.getOverlay().onclick=tt;y=n.onkeydown;rt=function(n){return b["default"](n,r,v)};n.onkeydown=rt;n.onfocus=function(){setTimeout(function(){a!==i&&(a.focus(),a=i)},0)};h.enableButtons()};s.setDefaults=h.setDefaults=function(n){if(!n)throw new Error("userParams is required");if("object"!=typeof n)throw new Error("userParams has to be a object");c.extend(l["default"],n)};s.close=h.close=function(){var r=o.getModal(),u,s,f;return e.fadeOut(o.getOverlay(),5),e.fadeOut(r,5),e.removeClass(r,"showSweetAlert"),e.addClass(r,"hideSweetAlert"),e.removeClass(r,"visible"),u=r.querySelector(".sa-icon.sa-success"),e.removeClass(u,"animate"),e.removeClass(u.querySelector(".sa-tip"),"animateSuccessTip"),e.removeClass(u.querySelector(".sa-long"),"animateSuccessLong"),s=r.querySelector(".sa-icon.sa-error"),e.removeClass(s,"animateErrorIcon"),e.removeClass(s.querySelector(".sa-x-mark"),"animateXMark"),f=r.querySelector(".sa-icon.sa-warning"),e.removeClass(f,"pulseWarning"),e.removeClass(f.querySelector(".sa-body"),"pulseWarningIns"),e.removeClass(f.querySelector(".sa-dot"),"pulseWarningIns"),setTimeout(function(){var n=r.getAttribute("data-custom-class");e.removeClass(r,n)},300),e.removeClass(t.body,"stop-scrolling"),n.onkeydown=y,n.previousActiveElement&&n.previousActiveElement.focus(),a=i,clearTimeout(r.timeout),!0};s.showInputError=h.showInputError=function(n){var t=o.getModal(),r=t.querySelector(".sa-input-error"),i;e.addClass(r,"show");i=t.querySelector(".sa-error-container");e.addClass(i,"show");i.querySelector("p").innerHTML=n;setTimeout(function(){s.enableButtons()},1);t.querySelector("input").focus()};s.resetInputError=h.resetInputError=function(n){var t,i,r;if(n&&13===n.keyCode)return!1;t=o.getModal();i=t.querySelector(".sa-input-error");e.removeClass(i,"show");r=t.querySelector(".sa-error-container");e.removeClass(r,"show")};s.disableButtons=h.disableButtons=function(){var n=o.getModal(),t=n.querySelector("button.confirm"),i=n.querySelector("button.cancel");t.disabled=!0;i.disabled=!0};s.enableButtons=h.enableButtons=function(){var n=o.getModal(),t=n.querySelector("button.confirm"),i=n.querySelector("button.cancel");t.disabled=!1;i.disabled=!1};"undefined"!=typeof n?n.sweetAlert=n.swal=s:c.logStr("SweetAlert is a frontend module!");u.exports=f["default"]},{"./modules/default-params":2,"./modules/handle-click":3,"./modules/handle-dom":4,"./modules/handle-key":5,"./modules/handle-swal-dom":6,"./modules/set-params":8,"./modules/utils":9}],2:[function(n,t,i){Object.defineProperty(i,"__esModule",{value:!0});i["default"]={title:"",text:"",type:null,allowOutsideClick:!1,showConfirmButton:!0,showCancelButton:!1,closeOnConfirm:!0,closeOnCancel:!0,confirmButtonText:"OK",confirmButtonColor:"#8CD4F5",cancelButtonText:"Cancel",imageUrl:null,imageSize:null,timer:null,customClass:"",html:!1,animation:!0,allowEscapeKey:!0,inputType:"text",inputPlaceholder:"",inputValue:"",showLoaderOnConfirm:!1};t.exports=i["default"]},{}],3:[function(t,i,r){Object.defineProperty(r,"__esModule",{value:!0});var f=t("./utils"),u=(t("./handle-swal-dom"),t("./handle-dom")),s=function(t,i,r){function h(n){l&&i.confirmButtonColor&&(s.style.backgroundColor=n)}var c,a,p,v=t||n.event,s=v.target||v.srcElement,l=-1!==s.className.indexOf("confirm"),nt=-1!==s.className.indexOf("sweet-overlay"),y=u.hasClass(r,"visible"),w=i.doneFunction&&"true"===r.getAttribute("data-has-done-function"),b,k,d,g;switch(l&&i.confirmButtonColor&&(c=i.confirmButtonColor,a=f.colorLuminance(c,-.04),p=f.colorLuminance(c,-.14)),v.type){case"mouseover":h(a);break;case"mouseout":h(c);break;case"mousedown":h(p);break;case"mouseup":h(a);break;case"focus":b=r.querySelector("button.confirm");k=r.querySelector("button.cancel");l?k.style.boxShadow="none":b.style.boxShadow="none";break;case"click":if(d=r===s,g=u.isDescendant(r,s),!d&&!g&&y&&!i.allowOutsideClick)break;l&&w&&y?e(r,i):w&&y||nt?o(r,i):u.isDescendant(r,s)&&"BUTTON"===s.tagName&&sweetAlert.close()}},e=function(n,t){var i=!0;u.hasClass(n,"show-input")&&(i=n.querySelector("input").value,i||(i=""));t.doneFunction(i);t.closeOnConfirm&&sweetAlert.close();t.showLoaderOnConfirm&&sweetAlert.disableButtons()},o=function(n,t){var i=String(t.doneFunction).replace(/\s/g,""),r="function("===i.substring(0,9)&&")"!==i.substring(9,10);r&&t.doneFunction(!1);t.closeOnCancel&&sweetAlert.close()};r["default"]={handleButton:s,handleConfirm:e,handleCancel:o};i.exports=r["default"]},{"./handle-dom":4,"./handle-swal-dom":6,"./utils":9}],4:[function(i,r,u){Object.defineProperty(u,"__esModule",{value:!0});var f=function(n,t){return new RegExp(" "+t+" ").test(" "+n.className+" ")},s=function(n,t){f(n,t)||(n.className+=" "+t)},h=function(n,t){var i=" "+n.className.replace(/[\t\r\n]/g," ")+" ";if(f(n,t)){for(;i.indexOf(" "+t+" ")>=0;)i=i.replace(" "+t+" "," ");n.className=i.replace(/^\s+|\s+$/g,"")}},c=function(n){var i=t.createElement("div");return i.appendChild(t.createTextNode(n)),i.innerHTML},e=function(n){n.style.opacity="";n.style.display="block"},l=function(n){if(n&&!n.length)return e(n);for(var t=0;t<n.length;++t)e(n[t])},o=function(n){n.style.opacity="";n.style.display="none"},a=function(n){if(n&&!n.length)return o(n);for(var t=0;t<n.length;++t)o(n[t])},v=function(n,t){for(var i=t.parentNode;null!==i;){if(i===n)return!0;i=i.parentNode}return!1},y=function(n){n.style.left="-9999px";n.style.display="block";var t,i=n.clientHeight;return t="undefined"!=typeof getComputedStyle?parseInt(getComputedStyle(n).getPropertyValue("padding-top"),10):parseInt(n.currentStyle.padding),n.style.left="",n.style.display="none","-"+parseInt((i+t)/2)+"px"},p=function(n,t){if(+n.style.opacity<1){t=t||16;n.style.opacity=0;n.style.display="block";var i=+new Date,r=function(n){function t(){return n.apply(this,arguments)}return t.toString=function(){return n.toString()},t}(function(){n.style.opacity=+n.style.opacity+(new Date-i)/100;i=+new Date;+n.style.opacity<1&&setTimeout(r,t)});r()}n.style.display="block"},w=function(n,t){t=t||16;n.style.opacity=1;var i=+new Date,r=function(n){function t(){return n.apply(this,arguments)}return t.toString=function(){return n.toString()},t}(function(){n.style.opacity=+n.style.opacity-(new Date-i)/100;i=+new Date;+n.style.opacity>0?setTimeout(r,t):n.style.display="none"});r()},b=function(i){var u,r;"function"==typeof MouseEvent?(u=new MouseEvent("click",{view:n,bubbles:!1,cancelable:!0}),i.dispatchEvent(u)):t.createEvent?(r=t.createEvent("MouseEvents"),r.initEvent("click",!1,!1),i.dispatchEvent(r)):t.createEventObject?i.fireEvent("onclick"):"function"==typeof i.onclick&&i.onclick()},k=function(t){"function"==typeof t.stopPropagation?(t.stopPropagation(),t.preventDefault()):n.event&&n.event.hasOwnProperty("cancelBubble")&&(n.event.cancelBubble=!0)};u.hasClass=f;u.addClass=s;u.removeClass=h;u.escapeHtml=c;u._show=e;u.show=l;u._hide=o;u.hide=a;u.isDescendant=v;u.getTopMargin=y;u.fadeIn=p;u.fadeOut=w;u.fireClick=b;u.stopEventPropagation=k},{}],5:[function(t,r,u){Object.defineProperty(u,"__esModule",{value:!0});var f=t("./handle-dom"),e=t("./handle-swal-dom"),o=function(t,r,u){var s=t||n.event,l=s.keyCode||s.which,a=u.querySelector("button.confirm"),y=u.querySelector("button.cancel"),h=u.querySelectorAll("button[tabindex]");if(-1!==[9,13,32,27].indexOf(l)){for(var o=s.target||s.srcElement,c=-1,v=0;v<h.length;v++)if(o===h[v]){c=v;break}9===l?(o=-1===c?a:c===h.length-1?h[0]:h[c+1],f.stopEventPropagation(s),o.focus(),r.confirmButtonColor&&e.setFocusStyle(o,r.confirmButtonColor)):13===l?("INPUT"===o.tagName&&(o=a,a.focus()),o=-1===c?a:i):27===l&&r.allowEscapeKey===!0?(o=y,f.fireClick(o,s)):o=i}};u["default"]=o;r.exports=u["default"]},{"./handle-dom":4,"./handle-swal-dom":6}],6:[function(i,r,u){var s=function(n){return n&&n.__esModule?n:{"default":n}};Object.defineProperty(u,"__esModule",{value:!0});var v=i("./utils"),f=i("./handle-dom"),y=i("./default-params"),o=s(y),p=i("./injected-html"),w=s(p),b=".sweet-alert",k=".sweet-overlay",h=function(){var n=t.createElement("div");for(n.innerHTML=w["default"];n.firstChild;)t.body.appendChild(n.firstChild)},e=function(n){function t(){return n.apply(this,arguments)}return t.toString=function(){return n.toString()},t}(function(){var n=t.querySelector(b);return n||(h(),n=e()),n}),c=function(){var n=e();if(n)return n.querySelector("input")},l=function(){return t.querySelector(k)},d=function(n,t){var i=v.hexToRgb(t);n.style.boxShadow="0 0 2px rgba("+i+", 0.8), inset 0 0 0 1px rgba(0, 0, 0, 0.05)"},g=function(i){var r=e(),s,u,o;f.fadeIn(l(),10);f.show(r);f.addClass(r,"showSweetAlert");f.removeClass(r,"hideSweetAlert");n.previousActiveElement=t.activeElement;s=r.querySelector("button.confirm");s.focus();setTimeout(function(){f.addClass(r,"visible")},500);u=r.getAttribute("data-timer");"null"!==u&&""!==u&&(o=i,r.timeout=setTimeout(function(){var n=(o||null)&&"true"===r.getAttribute("data-has-done-function");n?o(null):sweetAlert.close()},u))},nt=function(){var t=e(),n=c();f.removeClass(t,"show-input");n.value=o["default"].inputValue;n.setAttribute("type",o["default"].inputType);n.setAttribute("placeholder",o["default"].inputPlaceholder);a()},a=function(n){var t,i,r;if(n&&13===n.keyCode)return!1;t=e();i=t.querySelector(".sa-input-error");f.removeClass(i,"show");r=t.querySelector(".sa-error-container");f.removeClass(r,"show")},tt=function(){var n=e();n.style.marginTop=f.getTopMargin(e())};u.sweetAlertInitialize=h;u.getModal=e;u.getOverlay=l;u.getInput=c;u.setFocusStyle=d;u.openModal=g;u.resetInput=nt;u.resetInputError=a;u.fixVerticalPosition=tt},{"./default-params":2,"./handle-dom":4,"./injected-html":7,"./utils":9}],7:[function(n,t,i){Object.defineProperty(i,"__esModule",{value:!0});i["default"]='<div class="sweet-overlay" tabIndex="-1"><\/div><div class="sweet-alert"><div class="sa-icon sa-error">\n      <span class="sa-x-mark">\n        <span class="sa-line sa-left"><\/span>\n        <span class="sa-line sa-right"><\/span>\n      <\/span>\n    <\/div><div class="sa-icon sa-warning">\n      <span class="sa-body"><\/span>\n      <span class="sa-dot"><\/span>\n    <\/div><div class="sa-icon sa-info"><\/div><div class="sa-icon sa-success">\n      <span class="sa-line sa-tip"><\/span>\n      <span class="sa-line sa-long"><\/span>\n\n      <div class="sa-placeholder"><\/div>\n      <div class="sa-fix"><\/div>\n    <\/div><div class="sa-icon sa-custom"><\/div><h2>Title<\/h2>\n    <p>Text<\/p>\n    <fieldset>\n      <input type="text" tabIndex="3" />\n      <div class="sa-input-error"><\/div>\n    <\/fieldset><div class="sa-error-container">\n      <div class="icon">!<\/div>\n      <p>Not valid!<\/p>\n    <\/div><div class="sa-button-container">\n      <button class="cancel" tabIndex="2">Cancel<\/button>\n      <div class="sa-confirm-button-container">\n        <button class="confirm" tabIndex="1">OK<\/button><div class="la-ball-fall">\n          <div><\/div>\n          <div><\/div>\n          <div><\/div>\n        <\/div>\n      <\/div>\n    <\/div><\/div>';t.exports=i["default"]},{}],8:[function(n,t,r){Object.defineProperty(r,"__esModule",{value:!0});var o=n("./utils"),f=n("./handle-swal-dom"),u=n("./handle-dom"),e=["error","warning","info","success","input","prompt"],s=function(n){var t=f.getModal(),d=t.querySelector("h2"),v=t.querySelector("p"),h=t.querySelector("button.cancel"),r=t.querySelector("button.confirm"),y,c,s,l,a,k;if((d.innerHTML=n.html?n.title:u.escapeHtml(n.title).split("\n").join("<br>"),v.innerHTML=n.html?n.text:u.escapeHtml(n.text||"").split("\n").join("<br>"),n.text&&u.show(v),n.customClass)?(u.addClass(t,n.customClass),t.setAttribute("data-custom-class",n.customClass)):(y=t.getAttribute("data-custom-class"),u.removeClass(t,y),t.setAttribute("data-custom-class","")),(u.hide(t.querySelectorAll(".sa-icon")),n.type&&!o.isIE8())&&(c=function(){for(var c,r,o,h=!1,s=0;s<e.length;s++)if(n.type===e[s]){h=!0;break}if(!h)return logStr("Unknown alert type: "+n.type),{v:!1};c=["success","error","warning","info"];r=i;-1!==c.indexOf(n.type)&&(r=t.querySelector(".sa-icon.sa-"+n.type),u.show(r));o=f.getInput();switch(n.type){case"success":u.addClass(r,"animate");u.addClass(r.querySelector(".sa-tip"),"animateSuccessTip");u.addClass(r.querySelector(".sa-long"),"animateSuccessLong");break;case"error":u.addClass(r,"animateErrorIcon");u.addClass(r.querySelector(".sa-x-mark"),"animateXMark");break;case"warning":u.addClass(r,"pulseWarning");u.addClass(r.querySelector(".sa-body"),"pulseWarningIns");u.addClass(r.querySelector(".sa-dot"),"pulseWarningIns");break;case"input":case"prompt":o.setAttribute("type",n.inputType);o.value=n.inputValue;o.setAttribute("placeholder",n.inputPlaceholder);u.addClass(t,"show-input");setTimeout(function(){o.focus();o.addEventListener("keyup",swal.resetInputError)},400)}}(),"object"==typeof c))return c.v;if(n.imageUrl){if(s=t.querySelector(".sa-icon.sa-custom"),s.style.backgroundImage="url("+n.imageUrl+")",u.show(s),l=80,a=80,n.imageSize){var p=n.imageSize.toString().split("x"),w=p[0],b=p[1];w&&b?(l=w,a=b):logStr("Parameter imageSize expects value with format WIDTHxHEIGHT, got "+n.imageSize)}s.setAttribute("style",s.getAttribute("style")+"width:"+l+"px; height:"+a+"px")}t.setAttribute("data-has-cancel-button",n.showCancelButton);n.showCancelButton?h.style.display="inline-block":u.hide(h);t.setAttribute("data-has-confirm-button",n.showConfirmButton);n.showConfirmButton?r.style.display="inline-block":u.hide(r);n.cancelButtonText&&(h.innerHTML=u.escapeHtml(n.cancelButtonText));n.confirmButtonText&&(r.innerHTML=u.escapeHtml(n.confirmButtonText));n.confirmButtonColor&&(r.style.backgroundColor=n.confirmButtonColor,r.style.borderLeftColor=n.confirmLoadingButtonColor,r.style.borderRightColor=n.confirmLoadingButtonColor,f.setFocusStyle(r,n.confirmButtonColor));t.setAttribute("data-allow-outside-click",n.allowOutsideClick);k=n.doneFunction?!0:!1;t.setAttribute("data-has-done-function",k);n.animation?"string"==typeof n.animation?t.setAttribute("data-animation",n.animation):t.setAttribute("data-animation","pop"):t.setAttribute("data-animation","none");t.setAttribute("data-timer",n.timer)};r["default"]=s;t.exports=r["default"]},{"./handle-dom":4,"./handle-swal-dom":6,"./utils":9}],9:[function(t,i,r){Object.defineProperty(r,"__esModule",{value:!0});var u=function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i]);return n},f=function(n){var t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);return t?parseInt(t[1],16)+", "+parseInt(t[2],16)+", "+parseInt(t[3],16):null},e=function(){return n.attachEvent&&!n.addEventListener},o=function(t){n.console&&n.console.log("SweetAlert: "+t)},s=function(n,t){n=String(n).replace(/[^0-9a-f]/gi,"");n.length<6&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);t=t||0;for(var i,u="#",r=0;3>r;r++)i=parseInt(n.substr(2*r,2),16),i=Math.round(Math.min(Math.max(0,i+i*t),255)).toString(16),u+=("00"+i).substr(i.length);return u};r.extend=u;r.hexToRgb=f;r.isIE8=e;r.logStr=o;r.colorLuminance=s},{}]},{},[1]);"function"==typeof define&&define.amd?define(function(){return sweetAlert}):"undefined"!=typeof module&&module.exports&&(module.exports=sweetAlert)}(window,document);!function(n,t){"use strict";var v,l,ut,u=n,s=u.document,w=u.navigator,tt=u.setTimeout,si=u.clearTimeout,hi=u.setInterval,ci=u.clearInterval,yt=u.getComputedStyle,ft=u.encodeURIComponent,pt=u.ActiveXObject,li=u.Error,ai=u.Number.parseInt||u.parseInt,d=u.Number.parseFloat||u.parseFloat,vi=u.Number.isNaN||u.isNaN,wt=u.Date.now,bt=u.Object.keys,yi=u.Object.defineProperty,h=u.Object.prototype.hasOwnProperty,pi=u.Array.prototype.slice,wi=function(){var i=function(n){return n},n,t;if("function"==typeof u.wrap&&"function"==typeof u.unwrap)try{n=s.createElement("div");t=u.unwrap(n);1===n.nodeType&&t&&1===t.nodeType&&(i=u.unwrap)}catch(r){}return i}(),e=function(n){return pi.call(n,0)},o=function(){for(var r,n,c,u,o=e(arguments),f=o[0]||{},i=1,s=o.length;s>i;i++)if(null!=(r=o[i]))for(n in r)h.call(r,n)&&(c=f[n],u=r[n],f!==u&&u!==t&&(f[n]=u));return f},b=function(n){var t,i,u,r;if("object"!=typeof n||null==n||"number"==typeof n.nodeType)t=n;else if("number"==typeof n.length)for(t=[],i=0,u=n.length;u>i;i++)h.call(n,i)&&(t[i]=b(n[i]));else{t={};for(r in n)h.call(n,r)&&(t[r]=b(n[r]))}return t},bi=function(n,t){for(var r={},i=0,u=t.length;u>i;i++)t[i]in n&&(r[t[i]]=n[t[i]]);return r},ki=function(n,t){var r={},i;for(i in n)-1===t.indexOf(i)&&(r[i]=n[i]);return r},di=function(n){if(n)for(var t in n)h.call(n,t)&&delete n[t];return n},kt=function(n,t){if(n&&1===n.nodeType&&n.ownerDocument&&t&&(1===t.nodeType&&t.ownerDocument&&t.ownerDocument===n.ownerDocument||9===t.nodeType&&!t.ownerDocument&&t===n.ownerDocument))do{if(n===t)return!0;n=n.parentNode}while(n);return!1},dt=function(n){var t;return"string"==typeof n&&n&&(t=n.split("#")[0].split("?")[0],t=n.slice(0,n.lastIndexOf("/")+1)),t},gi=function(n){var i,t;return"string"==typeof n&&n&&(t=n.match(/^(?:|[^:@]*@|.+\)@(?=http[s]?|file)|.+?\s+(?: at |@)(?:[^:\(]+ )*[\(]?)((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),t&&t[1]?i=t[1]:(t=n.match(/\)@((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),t&&t[1]&&(i=t[1]))),i},nr=function(){var t,n;try{throw new li;}catch(i){n=i}return n&&(t=n.sourceURL||n.fileName||gi(n.stack)),t},tr=function(){var i,n,r;if(s.currentScript&&(i=s.currentScript.src))return i;if(n=s.getElementsByTagName("script"),1===n.length)return n[0].src||t;if("readyState"in n[0])for(r=n.length;r--;)if("interactive"===n[r].readyState&&(i=n[r].src))return i;return"loading"===s.readyState&&(i=n[n.length-1].src)?i:(i=nr())?i:t},ir=function(){for(var n,i,u=s.getElementsByTagName("script"),r=u.length;r--;){if(!(i=u[r].src)){n=null;break}if(i=dt(i),null==n)n=i;else if(n!==i){n=null;break}}return n||t},rr=function(){var n=dt(tr())||ir()||"";return n+"ZeroClipboard.swf"},gt=function(){return null==n.opener&&(!!n.top&&n!=n.top||!!n.parent&&n!=n.parent)}(),r={bridge:null,version:"0.0.0",pluginType:"unknown",disabled:null,outdated:null,sandboxed:null,unavailable:null,degraded:null,deactivated:null,overdue:null,ready:null},ni="11.0.0",y={},a={},et=null,ot=0,st=0,ur={ready:"Flash communication is established",error:{"flash-disabled":"Flash is disabled or not installed. May also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-outdated":"Flash is too outdated to support ZeroClipboard","flash-sandboxed":"Attempting to run Flash in a sandboxed iframe, which is impossible","flash-unavailable":"Flash is unable to communicate bidirectionally with JavaScript","flash-degraded":"Flash is unable to preserve data fidelity when communicating with JavaScript","flash-deactivated":"Flash is too outdated for your browser and/or is configured as click-to-activate.\nThis may also mean that the ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity.\nMay also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-overdue":"Flash communication was established but NOT within the acceptable time limit","version-mismatch":"ZeroClipboard JS version number does not match ZeroClipboard SWF version number","clipboard-error":"At least one error was thrown while ZeroClipboard was attempting to inject your data into the clipboard","config-mismatch":"ZeroClipboard configuration does not match Flash's reality","swf-not-found":"The ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity"}},fr=["flash-unavailable","flash-degraded","flash-overdue","version-mismatch","config-mismatch","clipboard-error"],p=["flash-disabled","flash-outdated","flash-sandboxed","flash-unavailable","flash-degraded","flash-deactivated","flash-overdue"],er=new RegExp("^flash-("+p.map(function(n){return n.replace(/^flash-/,"")}).join("|")+")$"),or=new RegExp("^flash-("+p.slice(1).map(function(n){return n.replace(/^flash-/,"")}).join("|")+")$"),f={swfPath:rr(),trustedDomains:n.location.host?[n.location.host]:[],cacheBust:!0,forceEnhancedClipboard:!1,flashLoadTimeout:3e4,autoActivate:!0,bubbleEvents:!0,containerId:"global-zeroclipboard-html-bridge",containerClass:"global-zeroclipboard-container",swfObjectId:"global-zeroclipboard-flash-bridge",hoverClass:"zeroclipboard-is-hover",activeClass:"zeroclipboard-is-active",forceHandCursor:!1,title:null,zIndex:999999999},sr=function(n){if("object"==typeof n&&null!==n)for(var t in n)if(h.call(n,t))if(/^(?:forceHandCursor|title|zIndex|bubbleEvents)$/.test(t))f[t]=n[t];else if(null==r.bridge)if("containerId"===t||"swfObjectId"===t){if(!iu(n[t]))throw new Error("The specified `"+t+"` value is not valid as an HTML4 Element ID");f[t]=n[t]}else f[t]=n[t];return"string"!=typeof n||!n?b(f):h.call(f,n)?f[n]:void 0},hr=function(){return at(),{browser:bi(w,["userAgent","platform","appName"]),flash:ki(r,["bridge"]),zeroclipboard:{version:i.version,config:i.config()}}},cr=function(){return!!(r.disabled||r.outdated||r.sandboxed||r.unavailable||r.degraded||r.deactivated)},lr=function(n,u){var f,o,e,s={};if("string"==typeof n&&n)e=n.toLowerCase().split(/\s+/);else if("object"==typeof n&&n&&"undefined"==typeof u)for(f in n)h.call(n,f)&&"string"==typeof f&&f&&"function"==typeof n[f]&&i.on(f,n[f]);if(e&&e.length){for(f=0,o=e.length;o>f;f++)n=e[f].replace(/^on/,""),s[n]=!0,y[n]||(y[n]=[]),y[n].push(u);if(s.ready&&r.ready&&i.emit({type:"ready"}),s.error){for(f=0,o=p.length;o>f;f++)if(r[p[f].replace(/^flash-/,"")]===!0){i.emit({type:"error",name:p[f]});break}v!==t&&i.version!==v&&i.emit({type:"error",name:"version-mismatch",jsVersion:i.version,swfVersion:v})}}return i},ar=function(n,t){var r,o,e,f,u;if(0===arguments.length)f=bt(y);else if("string"==typeof n&&n)f=n.split(/\s+/);else if("object"==typeof n&&n&&"undefined"==typeof t)for(r in n)h.call(n,r)&&"string"==typeof r&&r&&"function"==typeof n[r]&&i.off(r,n[r]);if(f&&f.length)for(r=0,o=f.length;o>r;r++)if(n=f[r].toLowerCase().replace(/^on/,""),u=y[n],u&&u.length)if(t)for(e=u.indexOf(t);-1!==e;)u.splice(e,1),e=u.indexOf(t,e);else u.length=0;return i},vr=function(n){return"string"==typeof n&&n?b(y[n])||null:b(y)},yr=function(n){var u,f,t;return n=ti(n),n&&!ou(n)?"ready"===n.type&&r.overdue===!0?i.emit({type:"error",name:"flash-overdue"}):(u=o({},n),fu.call(this,u),"copy"===n.type&&(t=vu(a),f=t.data,et=t.formatMap),f):void 0},pr=function(){var t=r.sandboxed,n;(at(),"boolean"!=typeof r.ready&&(r.ready=!1),r.sandboxed!==t&&r.sandboxed===!0)?(r.ready=!1,i.emit({type:"error",name:"flash-sandboxed"})):i.isFlashUnusable()||null!==r.bridge||(n=f.flashLoadTimeout,"number"==typeof n&&n>=0&&(ot=tt(function(){"boolean"!=typeof r.deactivated&&(r.deactivated=!0);r.deactivated===!0&&i.emit({type:"error",name:"flash-deactivated"})},n)),r.overdue=!1,lu())},wr=function(){i.clearData();i.blur();i.emit("destroy");au();i.off()},br=function(n,t){var r,u;if("object"==typeof n&&n&&"undefined"==typeof t)r=n,i.clearData();else{if("string"!=typeof n||!n)return;r={};r[n]=t}for(u in r)"string"==typeof u&&u&&h.call(r,u)&&"string"==typeof r[u]&&r[u]&&(a[u]=r[u])},kr=function(n){"undefined"==typeof n?(di(a),et=null):"string"==typeof n&&h.call(a,n)&&delete a[n]},dr=function(n){return"undefined"==typeof n?b(a):"string"==typeof n&&h.call(a,n)?a[n]:void 0},gr=function(n){var t,i,u;n&&1===n.nodeType&&(l&&(nt(l,f.activeClass),l!==n&&nt(l,f.hoverClass)),l=n,ui(n,f.hoverClass),t=n.getAttribute("title")||f.title,"string"==typeof t&&t&&(i=g(r.bridge),i&&i.setAttribute("title",t)),u=f.forceHandCursor===!0||"pointer"===fi(n,"cursor"),nf(u),gu())},nu=function(){var n=g(r.bridge);n&&(n.removeAttribute("title"),n.style.left="0px",n.style.top="-9999px",n.style.width="1px",n.style.height="1px");l&&(nt(l,f.hoverClass),nt(l,f.activeClass),l=null)},tu=function(){return l||null},iu=function(n){return"string"==typeof n&&n&&/^[A-Za-z][A-Za-z0-9_:\-\.]*$/.test(n)},ti=function(n){var t,u;if("string"==typeof n&&n?(t=n,n={}):"object"==typeof n&&n&&"string"==typeof n.type&&n.type&&(t=n.type),t)return t=t.toLowerCase(),!n.target&&(/^(copy|aftercopy|_click)$/.test(t)||"error"===t&&"clipboard-error"===n.name)&&(n.target=ut),o(n,{type:t,target:n.target||l||null,relatedTarget:n.relatedTarget||null,currentTarget:r&&r.bridge||null,timeStamp:n.timeStamp||wt()||null}),u=ur[n.type],"error"===n.type&&n.name&&u&&(u=u[n.name]),u&&(n.message=u),"ready"===n.type&&o(n,{target:null,version:r.version}),"error"===n.type&&(er.test(n.name)&&o(n,{target:null,minimumVersion:ni}),or.test(n.name)&&o(n,{version:r.version})),"copy"===n.type&&(n.clipboardData={setData:i.setData,clearData:i.clearData}),"aftercopy"===n.type&&(n=yu(n,et)),n.target&&!n.relatedTarget&&(n.relatedTarget=ru(n.target)),uu(n)},ru=function(n){var t=n&&n.getAttribute&&n.getAttribute("data-clipboard-target");return t?s.getElementById(t):null},uu=function(n){if(n&&/^_(?:click|mouse(?:over|out|down|up|move))$/.test(n.type)){var f=n.target,l="_mouseover"===n.type&&n.relatedTarget?n.relatedTarget:t,a="_mouseout"===n.type&&n.relatedTarget?n.relatedTarget:t,e=ct(f),v=u.screenLeft||u.screenX||0,y=u.screenTop||u.screenY||0,p=s.body.scrollLeft+s.documentElement.scrollLeft,w=s.body.scrollTop+s.documentElement.scrollTop,h=e.left+("number"==typeof n._stageX?n._stageX:0),c=e.top+("number"==typeof n._stageY?n._stageY:0),i=h-p,r=c-w,b=v+i,k=y+r,d="number"==typeof n.movementX?n.movementX:0,g="number"==typeof n.movementY?n.movementY:0;delete n._stageX;delete n._stageY;o(n,{srcElement:f,fromElement:l,toElement:a,screenX:b,screenY:k,pageX:h,pageY:c,clientX:i,clientY:r,x:i,y:r,movementX:d,movementY:g,offsetX:0,offsetY:0,layerX:0,layerY:0})}return n},ii=function(n){var t=n&&"string"==typeof n.type&&n.type||"";return!/^(?:(?:before)?copy|destroy)$/.test(t)},ri=function(n,t,i,r){r?tt(function(){n.apply(t,i)},0):n.apply(t,i)},fu=function(n){var r,e,t,f,s,h;if("object"==typeof n&&n&&n.type){var c=ii(n),l=y["*"]||[],a=y[n.type]||[],i=l.concat(a);if(i&&i.length)for(h=this,r=0,e=i.length;e>r;r++)t=i[r],f=h,"string"==typeof t&&"function"==typeof u[t]&&(t=u[t]),"object"==typeof t&&t&&"function"==typeof t.handleEvent&&(f=t,t=t.handleEvent),"function"==typeof t&&(s=o({},n),ri(t,f,[s],c));return this}},eu=function(n){var t=null;return(gt===!1||n&&"error"===n.type&&n.name&&-1!==fr.indexOf(n.name))&&(t=!1),t},ou=function(n){var t=n.target||l||null,e="swf"===n._source,h,c,s,y,u;switch(delete n._source,n.type){case"error":h="flash-sandboxed"===n.name||eu(n);"boolean"==typeof h&&(r.sandboxed=h);-1!==p.indexOf(n.name)?o(r,{disabled:"flash-disabled"===n.name,outdated:"flash-outdated"===n.name,unavailable:"flash-unavailable"===n.name,degraded:"flash-degraded"===n.name,deactivated:"flash-deactivated"===n.name,overdue:"flash-overdue"===n.name,ready:!1}):"version-mismatch"===n.name&&(v=n.swfVersion,o(r,{disabled:!1,outdated:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:!1,ready:!1}));it();break;case"ready":v=n.swfVersion;c=r.deactivated===!0;o(r,{disabled:!1,outdated:!1,sandboxed:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:c,ready:!c});it();break;case"beforecopy":ut=t;break;case"copy":u=n.relatedTarget;!a["text/html"]&&!a["text/plain"]&&u&&(y=u.value||u.outerHTML||u.innerHTML)&&(s=u.value||u.textContent||u.innerText)?(n.clipboardData.clearData(),n.clipboardData.setData("text/plain",s),y!==s&&n.clipboardData.setData("text/html",y)):!a["text/plain"]&&n.target&&(s=n.target.getAttribute("data-clipboard-text"))&&(n.clipboardData.clearData(),n.clipboardData.setData("text/plain",s));break;case"aftercopy":su(n);i.clearData();t&&t!==ku()&&t.focus&&t.focus();break;case"_mouseover":i.focus(t);f.bubbleEvents===!0&&e&&(t&&t!==n.relatedTarget&&!kt(n.relatedTarget,t)&&k(o({},n,{type:"mouseenter",bubbles:!1,cancelable:!1})),k(o({},n,{type:"mouseover"})));break;case"_mouseout":i.blur();f.bubbleEvents===!0&&e&&(t&&t!==n.relatedTarget&&!kt(n.relatedTarget,t)&&k(o({},n,{type:"mouseleave",bubbles:!1,cancelable:!1})),k(o({},n,{type:"mouseout"})));break;case"_mousedown":ui(t,f.activeClass);f.bubbleEvents===!0&&e&&k(o({},n,{type:n.type.slice(1)}));break;case"_mouseup":nt(t,f.activeClass);f.bubbleEvents===!0&&e&&k(o({},n,{type:n.type.slice(1)}));break;case"_click":ut=null;f.bubbleEvents===!0&&e&&k(o({},n,{type:n.type.slice(1)}));break;case"_mousemove":f.bubbleEvents===!0&&e&&k(o({},n,{type:n.type.slice(1)}))}if(/^_(?:click|mouse(?:over|out|down|up|move))$/.test(n.type))return!0},su=function(n){if(n.errors&&n.errors.length>0){var t=b(n);o(t,{type:"error",name:"clipboard-error"});delete t.success;tt(function(){i.emit(t)},0)}},k=function(n){if(n&&"string"==typeof n.type&&n){var i,r=n.target||null,f=r&&r.ownerDocument||s,e={view:f.defaultView||u,canBubble:!0,cancelable:!0,detail:"click"===n.type?1:0,button:"number"==typeof n.which?n.which-1:"number"==typeof n.button?n.button:f.createEvent?0:1},t=o(e,n);r&&f.createEvent&&r.dispatchEvent&&(t=[t.type,t.canBubble,t.cancelable,t.view,t.detail,t.screenX,t.screenY,t.clientX,t.clientY,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget],i=f.createEvent("MouseEvents"),i.initMouseEvent&&(i.initMouseEvent.apply(i,t),i._source="js",r.dispatchEvent(i)))}},hu=function(){var n=f.flashLoadTimeout,t,u;"number"==typeof n&&n>=0&&(t=Math.min(1e3,n/10),u=f.swfObjectId+"_fallbackContent",st=hi(function(){var n=s.getElementById(u);du(n)&&(it(),r.deactivated=null,i.emit({type:"error",name:"swf-not-found"}))},t))},cu=function(){var n=s.createElement("div");return n.id=f.containerId,n.className=f.containerClass,n.style.position="absolute",n.style.left="0px",n.style.top="-9999px",n.style.width="1px",n.style.height="1px",n.style.zIndex=""+lt(f.zIndex),n},g=function(n){for(var t=n&&n.parentNode;t&&"OBJECT"===t.nodeName&&t.parentNode;)t=t.parentNode;return t||null},lu=function(){var l,n=r.bridge,t=g(n),h,e,c;if(!n){var a=bu(u.location.host,f),y="never"===a?"none":"all",p=wu(o({jsVersion:i.version},f)),v=f.swfPath+pu(f.swfPath,f);t=cu();h=s.createElement("div");t.appendChild(h);s.body.appendChild(t);e=s.createElement("div");c="activex"===r.pluginType;e.innerHTML='<object id="'+f.swfObjectId+'" name="'+f.swfObjectId+'" width="100%" height="100%" '+(c?'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"':'type="application/x-shockwave-flash" data="'+v+'"')+">"+(c?'<param name="movie" value="'+v+'"/>':"")+'<param name="allowScriptAccess" value="'+a+'"/><param name="allowNetworking" value="'+y+'"/><param name="menu" value="false"/><param name="wmode" value="transparent"/><param name="flashvars" value="'+p+'"/><div id="'+f.swfObjectId+'_fallbackContent">&nbsp;<\/div><\/object>';n=e.firstChild;e=null;wi(n).ZeroClipboard=i;t.replaceChild(n,h);hu()}return n||(n=s[f.swfObjectId],n&&(l=n.length)&&(n=n[l-1]),!n&&t&&(n=t.firstChild)),r.bridge=n||null,n},au=function(){var n=r.bridge,i;n&&(i=g(n),i&&("activex"===r.pluginType&&"readyState"in n?(n.style.display="none",function u(){if(4===n.readyState){for(var t in n)"function"==typeof n[t]&&(n[t]=null);n.parentNode&&n.parentNode.removeChild(n);i.parentNode&&i.parentNode.removeChild(i)}else tt(u,10)}()):(n.parentNode&&n.parentNode.removeChild(n),i.parentNode&&i.parentNode.removeChild(i))),it(),r.ready=null,r.bridge=null,r.deactivated=null,v=t)},vu=function(n){var i={},r={},t;if("object"==typeof n&&n){for(t in n)if(t&&h.call(n,t)&&"string"==typeof n[t]&&n[t])switch(t.toLowerCase()){case"text/plain":case"text":case"air:text":case"flash:text":i.text=n[t];r.text=t;break;case"text/html":case"html":case"air:html":case"flash:html":i.html=n[t];r.html=t;break;case"application/rtf":case"text/rtf":case"rtf":case"richtext":case"air:rtf":case"flash:rtf":i.rtf=n[t];r.rtf=t}return{data:i,formatMap:r}}},yu=function(n,t){var r,i,f,o,e,u;if("object"!=typeof n||!n||"object"!=typeof t||!t)return n;r={};for(i in n)if(h.call(n,i))if("errors"===i)for(r[i]=n[i]?n[i].slice():[],f=0,o=r[i].length;o>f;f++)r[i][f].format=t[r[i][f].format];else if("success"!==i&&"data"!==i)r[i]=n[i];else{r[i]={};e=n[i];for(u in e)u&&h.call(e,u)&&h.call(t,u)&&(r[i][t[u]]=e[u])}return r},pu=function(n,t){var i=null==t||t&&t.cacheBust===!0;return i?(-1===n.indexOf("?")?"?":"&")+"noCache="+wt():""},wu=function(n){var r,o,f,t,i="",e=[];if(n.trustedDomains&&("string"==typeof n.trustedDomains?t=[n.trustedDomains]:"object"==typeof n.trustedDomains&&"length"in n.trustedDomains&&(t=n.trustedDomains)),t&&t.length)for(r=0,o=t.length;o>r;r++)if(h.call(t,r)&&t[r]&&"string"==typeof t[r]){if(f=ht(t[r]),!f)continue;if("*"===f){e.length=0;e.push(f);break}e.push.apply(e,[f,"//"+f,u.location.protocol+"//"+f])}return e.length&&(i+="trustedOrigins="+ft(e.join(","))),n.forceEnhancedClipboard===!0&&(i+=(i?"&":"")+"forceEnhancedClipboard=true"),"string"==typeof n.swfObjectId&&n.swfObjectId&&(i+=(i?"&":"")+"swfObjectId="+ft(n.swfObjectId)),"string"==typeof n.jsVersion&&n.jsVersion&&(i+=(i?"&":"")+"jsVersion="+ft(n.jsVersion)),i},ht=function(n){var t,i;return null==n||""===n?null:(n=n.replace(/^\s+|\s+$/g,""),""===n)?null:(t=n.indexOf("//"),n=-1===t?n:n.slice(t+2),i=n.indexOf("/"),n=-1===i?n:-1===t||0===i?null:n.slice(0,i),n&&".swf"===n.slice(-4).toLowerCase()?null:n||null)},bu=function(){var n=function(n){var i,u,r,t=[];if("string"==typeof n&&(n=[n]),"object"!=typeof n||!n||"number"!=typeof n.length)return t;for(i=0,u=n.length;u>i;i++)if(h.call(n,i)&&(r=ht(n[i]))){if("*"===r){t.length=0;t.push("*");break}-1===t.indexOf(r)&&t.push(r)}return t};return function(t,i){var f=ht(i.swfPath),r,u;if(null===f&&(f=t),r=n(i.trustedDomains),u=r.length,u>0){if(1===u&&"*"===r[0])return"always";if(-1!==r.indexOf(t))return 1===u&&t===f?"sameDomain":"always"}return"never"}}(),ku=function(){try{return s.activeElement}catch(n){return null}},ui=function(n,t){var i,u,f,r=[];if("string"==typeof t&&t&&(r=t.split(/\s+/)),n&&1===n.nodeType&&r.length>0)if(n.classList)for(i=0,u=r.length;u>i;i++)n.classList.add(r[i]);else if(n.hasOwnProperty("className")){for(f=" "+n.className+" ",i=0,u=r.length;u>i;i++)-1===f.indexOf(" "+r[i]+" ")&&(f+=r[i]+" ");n.className=f.replace(/^\s+|\s+$/g,"")}return n},nt=function(n,t){var i,u,f,r=[];if("string"==typeof t&&t&&(r=t.split(/\s+/)),n&&1===n.nodeType&&r.length>0)if(n.classList&&n.classList.length>0)for(i=0,u=r.length;u>i;i++)n.classList.remove(r[i]);else if(n.className){for(f=(" "+n.className+" ").replace(/[\r\n\t]/g," "),i=0,u=r.length;u>i;i++)f=f.replace(" "+r[i]+" "," ");n.className=f.replace(/^\s+|\s+$/g,"")}return n},fi=function(n,t){var i=yt(n,null).getPropertyValue(t);return"cursor"!==t||i&&"auto"!==i||"A"!==n.nodeName?i:"pointer"},ct=function(n){var i={left:0,top:0,width:0,height:0},r,f;if(n.getBoundingClientRect){var t=n.getBoundingClientRect(),h=u.pageXOffset,c=u.pageYOffset,l=s.documentElement.clientLeft||0,a=s.documentElement.clientTop||0,e=0,o=0;"relative"===fi(s.body,"position")&&(r=s.body.getBoundingClientRect(),f=s.documentElement.getBoundingClientRect(),e=r.left-f.left||0,o=r.top-f.top||0);i.left=t.left+h-l-e;i.top=t.top+c-a-o;i.width="width"in t?t.width:t.right-t.left;i.height="height"in t?t.height:t.bottom-t.top}return i},du=function(n){if(!n)return!1;var t=yt(n,null),r=d(t.height)>0,u=d(t.width)>0,f=d(t.top)>=0,e=d(t.left)>=0,o=r&&u&&f&&e,i=o?null:ct(n);return"none"!==t.display&&"collapse"!==t.visibility&&(o||!!i&&(r||i.height>0)&&(u||i.width>0)&&(f||i.top>=0)&&(e||i.left>=0))},it=function(){si(ot);ot=0;ci(st);st=0},gu=function(){var t,n;l&&(t=g(r.bridge))&&(n=ct(l),o(t.style,{width:n.width+"px",height:n.height+"px",top:n.top+"px",left:n.left+"px",zIndex:""+lt(f.zIndex)}))},nf=function(n){r.ready===!0&&(r.bridge&&"function"==typeof r.bridge.setHandCursor?r.bridge.setHandCursor(n):r.ready=!1)},lt=function(n){if(/^(?:auto|inherit)$/.test(n))return n;var t;return"number"!=typeof n||vi(n)?"string"==typeof n&&(t=lt(ai(n,10))):t=n,"number"==typeof t?t:"auto"},at=function(t){var e,u,f,s=r.sandboxed,i=null;if(t=t===!0,gt===!1)i=!1;else{try{u=n.frameElement||null}catch(o){f={name:o.name,message:o.message}}if(u&&1===u.nodeType&&"IFRAME"===u.nodeName)try{i=u.hasAttribute("sandbox")}catch(o){i=null}else{try{e=document.domain||null}catch(o){e=null}(null===e||f&&"SecurityError"===f.name&&/(^|[\s\(\[@])sandbox(es|ed|ing|[\s\.,!\)\]@]|$)/.test(f.message.toLowerCase()))&&(i=!0)}}return r.sandboxed=i,s===i||t||ei(pt),i},ei=function(n){function f(n){var t=n.match(/[\d]+/g);return t.length=3,t.join(".")}function l(n){return!!n&&(n=n.toLowerCase())&&(/^(pepflashplayer\.dll|libpepflashplayer\.so|pepperflashplayer\.plugin)$/.test(n)||"chrome.plugin"===n.slice(-13))}function h(n){n&&(i=!0,n.version&&(t=f(n.version)),!t&&n.description&&(t=f(n.description)),n.filename&&(c=l(n.filename)))}var e,u,o,i=!1,s=!1,c=!1,t="";if(w.plugins&&w.plugins.length)e=w.plugins["Shockwave Flash"],h(e),w.plugins["Shockwave Flash 2.0"]&&(i=!0,t="2.0.0.11");else if(w.mimeTypes&&w.mimeTypes.length)o=w.mimeTypes["application/x-shockwave-flash"],e=o&&o.enabledPlugin,h(e);else if("undefined"!=typeof n){s=!0;try{u=new n("ShockwaveFlash.ShockwaveFlash.7");i=!0;t=f(u.GetVariable("$version"))}catch(a){try{u=new n("ShockwaveFlash.ShockwaveFlash.6");i=!0;t="6.0.21"}catch(v){try{u=new n("ShockwaveFlash.ShockwaveFlash");i=!0;t=f(u.GetVariable("$version"))}catch(y){s=!1}}}}r.disabled=i!==!0;r.outdated=t&&d(t)<d(ni);r.version=t||"0.0.0";r.pluginType=c?"pepper":s?"activex":i?"netscape":"unknown"},i;ei(pt);at(!0);i=function(){return this instanceof i?void("function"==typeof i._createClient&&i._createClient.apply(this,e(arguments))):new i};yi(i,"version",{value:"2.2.0",writable:!1,configurable:!0,enumerable:!0});i.config=function(){return sr.apply(this,e(arguments))};i.state=function(){return hr.apply(this,e(arguments))};i.isFlashUnusable=function(){return cr.apply(this,e(arguments))};i.on=function(){return lr.apply(this,e(arguments))};i.off=function(){return ar.apply(this,e(arguments))};i.handlers=function(){return vr.apply(this,e(arguments))};i.emit=function(){return yr.apply(this,e(arguments))};i.create=function(){return pr.apply(this,e(arguments))};i.destroy=function(){return wr.apply(this,e(arguments))};i.setData=function(){return br.apply(this,e(arguments))};i.clearData=function(){return kr.apply(this,e(arguments))};i.getData=function(){return dr.apply(this,e(arguments))};i.focus=i.activate=function(){return gr.apply(this,e(arguments))};i.blur=i.deactivate=function(){return nu.apply(this,e(arguments))};i.activeElement=function(){return tu.apply(this,e(arguments))};var tf=0,c={},rf=0,rt={},vt={};o(f,{autoActivate:!0});var uf=function(n){var t=this;t.id=""+tf++;c[t.id]={instance:t,elements:[],handlers:{}};n&&t.clip(n);i.on("*",function(n){return t.emit(n)});i.on("destroy",function(){t.destroy()});i.create()},ff=function(n,u){var f,o,e,s={},l=c[this.id],a=l&&l.handlers;if(!l)throw new Error("Attempted to add new listener(s) to a destroyed ZeroClipboard client instance");if("string"==typeof n&&n)e=n.toLowerCase().split(/\s+/);else if("object"==typeof n&&n&&"undefined"==typeof u)for(f in n)h.call(n,f)&&"string"==typeof f&&f&&"function"==typeof n[f]&&this.on(f,n[f]);if(e&&e.length){for(f=0,o=e.length;o>f;f++)n=e[f].replace(/^on/,""),s[n]=!0,a[n]||(a[n]=[]),a[n].push(u);if(s.ready&&r.ready&&this.emit({type:"ready",client:this}),s.error){for(f=0,o=p.length;o>f;f++)if(r[p[f].replace(/^flash-/,"")]){this.emit({type:"error",name:p[f],client:this});break}v!==t&&i.version!==v&&this.emit({type:"error",name:"version-mismatch",jsVersion:i.version,swfVersion:v})}}return this},ef=function(n,t){var i,o,f,u,r,s=c[this.id],e=s&&s.handlers;if(!e)return this;if(0===arguments.length)u=bt(e);else if("string"==typeof n&&n)u=n.split(/\s+/);else if("object"==typeof n&&n&&"undefined"==typeof t)for(i in n)h.call(n,i)&&"string"==typeof i&&i&&"function"==typeof n[i]&&this.off(i,n[i]);if(u&&u.length)for(i=0,o=u.length;o>i;i++)if(n=u[i].toLowerCase().replace(/^on/,""),r=e[n],r&&r.length)if(t)for(f=r.indexOf(t);-1!==f;)r.splice(f,1),f=r.indexOf(t,f);else r.length=0;return this},of=function(n){var i=null,t=c[this.id]&&c[this.id].handlers;return t&&(i="string"==typeof n&&n?t[n]?t[n].slice(0):[]:b(t)),i},sf=function(n){if(vf.call(this,n)){"object"==typeof n&&n&&"string"==typeof n.type&&n.type&&(n=o({},n));var t=o({},ti(n),{client:this});yf.call(this,t)}return this},hf=function(n){var t,i;if(!c[this.id])throw new Error("Attempted to clip element(s) to a destroyed ZeroClipboard client instance");for(n=oi(n),t=0;t<n.length;t++)h.call(n,t)&&n[t]&&1===n[t].nodeType&&(n[t].zcClippingId?-1===rt[n[t].zcClippingId].indexOf(this.id)&&rt[n[t].zcClippingId].push(this.id):(n[t].zcClippingId="zcClippingId_"+rf++,rt[n[t].zcClippingId]=[this.id],f.autoActivate===!0&&pf(n[t])),i=c[this.id]&&c[this.id].elements,-1===i.indexOf(n[t])&&i.push(n[t]));return this},cf=function(n){var e=c[this.id],i,u,t,r;if(!e)return this;for(u=e.elements,n="undefined"==typeof n?u.slice(0):oi(n),t=n.length;t--;)if(h.call(n,t)&&n[t]&&1===n[t].nodeType){for(i=0;-1!==(i=u.indexOf(n[t],i));)u.splice(i,1);if(r=rt[n[t].zcClippingId],r){for(i=0;-1!==(i=r.indexOf(this.id,i));)r.splice(i,1);0===r.length&&(f.autoActivate===!0&&wf(n[t]),delete n[t].zcClippingId)}}return this},lf=function(){var n=c[this.id];return n&&n.elements?n.elements.slice(0):[]},af=function(){c[this.id]&&(this.unclip(),this.off(),delete c[this.id])},vf=function(n){if(!n||!n.type||n.client&&n.client!==this)return!1;var i=c[this.id],t=i&&i.elements,r=!!t&&t.length>0,u=!n.target||r&&-1!==t.indexOf(n.target),f=n.relatedTarget&&r&&-1!==t.indexOf(n.relatedTarget),e=n.client&&n.client===this;return i&&(u||f||e)?!0:!1},yf=function(n){var i=c[this.id],f,s,t,e,h,l;if("object"==typeof n&&n&&n.type&&i){var a=ii(n),v=i&&i.handlers["*"]||[],y=i&&i.handlers[n.type]||[],r=v.concat(y);if(r&&r.length)for(l=this,f=0,s=r.length;s>f;f++)t=r[f],e=l,"string"==typeof t&&"function"==typeof u[t]&&(t=u[t]),"object"==typeof t&&t&&"function"==typeof t.handleEvent&&(e=t,t=t.handleEvent),"function"==typeof t&&(h=o({},n),ri(t,e,[h],a))}},oi=function(n){return"string"==typeof n&&(n=[]),"number"!=typeof n.length?[n]:n},pf=function(n){if(n&&1===n.nodeType){var t=function(n){(n||(n=u.event))&&("js"!==n._source&&(n.stopImmediatePropagation(),n.preventDefault()),delete n._source)},r=function(r){(r||(r=u.event))&&(t(r),i.focus(n))};n.addEventListener("mouseover",r,!1);n.addEventListener("mouseout",t,!1);n.addEventListener("mouseenter",t,!1);n.addEventListener("mouseleave",t,!1);n.addEventListener("mousemove",t,!1);vt[n.zcClippingId]={mouseover:r,mouseout:t,mouseenter:t,mouseleave:t,mousemove:t}}},wf=function(n){var t;if(n&&1===n.nodeType&&(t=vt[n.zcClippingId],"object"==typeof t&&t)){for(var i,r,f=["move","leave","enter","out","over"],u=0,e=f.length;e>u;u++)i="mouse"+f[u],r=t[i],"function"==typeof r&&n.removeEventListener(i,r,!1);delete vt[n.zcClippingId]}};i._createClient=function(){uf.apply(this,e(arguments))};i.prototype.on=function(){return ff.apply(this,e(arguments))};i.prototype.off=function(){return ef.apply(this,e(arguments))};i.prototype.handlers=function(){return of.apply(this,e(arguments))};i.prototype.emit=function(){return sf.apply(this,e(arguments))};i.prototype.clip=function(){return hf.apply(this,e(arguments))};i.prototype.unclip=function(){return cf.apply(this,e(arguments))};i.prototype.elements=function(){return lf.apply(this,e(arguments))};i.prototype.destroy=function(){return af.apply(this,e(arguments))};i.prototype.setText=function(n){if(!c[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return i.setData("text/plain",n),this};i.prototype.setHtml=function(n){if(!c[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return i.setData("text/html",n),this};i.prototype.setRichText=function(n){if(!c[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return i.setData("application/rtf",n),this};i.prototype.setData=function(){if(!c[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return i.setData.apply(this,e(arguments)),this};i.prototype.clearData=function(){if(!c[this.id])throw new Error("Attempted to clear pending clipboard data from a destroyed ZeroClipboard client instance");return i.clearData.apply(this,e(arguments)),this};i.prototype.getData=function(){if(!c[this.id])throw new Error("Attempted to get pending clipboard data from a destroyed ZeroClipboard client instance");return i.getData.apply(this,e(arguments))};"function"==typeof define&&define.amd?define(function(){return i}):"object"==typeof module&&module&&"object"==typeof module.exports&&module.exports?module.exports=i:n.ZeroClipboard=i}(function(){return this||window}()),function(n){n.fn.extend({slimScroll:function(i){var r=n.extend({width:"auto",height:"auto",size:"7px",color:"#000",position:"right",distance:"1px",start:"top",opacity:.4,alwaysVisible:!1,disableFadeOut:!1,railVisible:!1,railColor:"#333",railOpacity:.2,railDraggable:!0,railClass:"slimScrollRail",barClass:"slimScrollBar",wrapperClass:"slimScrollDiv",allowPageScroll:!1,wheelStep:20,touchScrollStep:200,borderRadius:"7px",railBorderRadius:"7px"},i);return this.each(function(){function p(t){if(v){t=t||window.event;var i=0;t.wheelDelta&&(i=-t.wheelDelta/120);t.detail&&(i=t.detail/3);n(t.target||t.srcTarget||t.srcElement).closest("."+r.wrapperClass).is(u.parent())&&h(i,!0);t.preventDefault&&!o&&t.preventDefault();o||(t.returnValue=!1)}}function h(n,t,i){o=!1;var s=n,h=u.outerHeight()-f.outerHeight();t&&(s=parseInt(f.css("top"))+n*parseInt(r.wheelStep)/100*f.outerHeight(),s=Math.min(Math.max(s,0),h),s=0<n?Math.ceil(s):Math.floor(s),f.css({top:s+"px"}));e=parseInt(f.css("top"))/(u.outerHeight()-f.outerHeight());s=e*(u[0].scrollHeight-u.outerHeight());i&&(s=n,n=s/u[0].scrollHeight*u.outerHeight(),n=Math.min(Math.max(n,0),h),f.css({top:n+"px"}));u.scrollTop(s);u.trigger("slimscrolling",~~s);b();l()}function it(){window.addEventListener?(this.addEventListener("DOMMouseScroll",p,!1),this.addEventListener("mousewheel",p,!1)):document.attachEvent("onmousewheel",p)}function w(){y=Math.max(u.outerHeight()/u[0].scrollHeight*u.outerHeight(),30);f.css({height:y+"px"});var n=y==u.outerHeight()?"none":"block";f.css({display:n})}function b(){w();clearTimeout(nt);e==~~e?(o=r.allowPageScroll,tt!=e&&u.trigger("slimscroll",0==~~e?"top":"bottom")):o=!1;tt=e;y>=u.outerHeight()?o=!0:(f.stop(!0,!0).fadeIn("fast"),r.railVisible&&s.stop(!0,!0).fadeIn("fast"))}function l(){r.alwaysVisible||(nt=setTimeout(function(){r.disableFadeOut&&v||k||d||(f.fadeOut("slow"),s.fadeOut("slow"))},1e3))}var v,k,d,nt,g,y,e,tt,o=!1,u=n(this),c;if(u.parent().hasClass(r.wrapperClass)){var a=u.scrollTop(),f=u.parent().find("."+r.barClass),s=u.parent().find("."+r.railClass);if(w(),n.isPlainObject(i)){if("height"in i&&"auto"==i.height&&(u.parent().css("height","auto"),u.css("height","auto"),c=u.parent().parent().height(),u.parent().css("height",c),u.css("height",c)),"scrollTo"in i)a=parseInt(r.scrollTo);else if("scrollBy"in i)a+=parseInt(r.scrollBy);else if("destroy"in i){f.remove();s.remove();u.unwrap();return}h(a,!1,!0)}}else if(!(n.isPlainObject(i)&&"destroy"in i)){r.height="auto"==r.height?u.parent().height():r.height;a=n("<div><\/div>").addClass(r.wrapperClass).css({position:"relative",overflow:"hidden",width:r.width,height:r.height});u.css({overflow:"hidden",width:r.width,height:r.height});var s=n("<div><\/div>").addClass(r.railClass).css({width:r.size,height:"100%",position:"absolute",top:0,display:r.alwaysVisible&&r.railVisible?"block":"none","border-radius":r.railBorderRadius,background:r.railColor,opacity:r.railOpacity,zIndex:90}),f=n("<div><\/div>").addClass(r.barClass).css({background:r.color,width:r.size,position:"absolute",top:0,opacity:r.opacity,display:r.alwaysVisible?"block":"none","border-radius":r.borderRadius,BorderRadius:r.borderRadius,MozBorderRadius:r.borderRadius,WebkitBorderRadius:r.borderRadius,zIndex:99}),c="right"==r.position?{right:r.distance}:{left:r.distance};s.css(c);f.css(c);u.wrap(a);u.parent().append(f);u.parent().append(s);r.railDraggable&&f.bind("mousedown",function(i){var r=n(document);return d=!0,t=parseFloat(f.css("top")),pageY=i.pageY,r.bind("mousemove.slimscroll",function(n){currTop=t+n.pageY-pageY;f.css("top",currTop);h(0,f.position().top,!1)}),r.bind("mouseup.slimscroll",function(){d=!1;l();r.unbind(".slimscroll")}),!1}).bind("selectstart.slimscroll",function(n){return n.stopPropagation(),n.preventDefault(),!1});s.hover(function(){b()},function(){l()});f.hover(function(){k=!0},function(){k=!1});u.hover(function(){v=!0;b();l()},function(){v=!1;l()});u.bind("touchstart",function(n){n.originalEvent.touches.length&&(g=n.originalEvent.touches[0].pageY)});u.bind("touchmove",function(n){o||n.originalEvent.preventDefault();n.originalEvent.touches.length&&(h((g-n.originalEvent.touches[0].pageY)/r.touchScrollStep,!0),g=n.originalEvent.touches[0].pageY)});w();"bottom"===r.start?(f.css({top:u.outerHeight()-f.outerHeight()}),h(0,!0)):"top"!==r.start&&(h(n(r.start).position().top,null,!0),r.alwaysVisible||f.hide());it()}}),this}});n.fn.extend({slimscroll:n.fn.slimScroll})}(jQuery),function(n){"use strict";function f(t,i,r){"addEventListener"in n?t.addEventListener(i,r,!1):"attachEvent"in n&&t.attachEvent("on"+i,r)}function pt(t,i,r){"removeEventListener"in n?t.removeEventListener(i,r,!1):"detachEvent"in n&&t.detachEvent("on"+i,r)}function wt(){for(var r=["moz","webkit","o","ms"],t=0;t<r.length&&!o;t+=1)o=n[r[t]+"RequestAnimationFrame"];o||i("setup","RequestAnimationFrame not supported")}function bt(t){var i="Host page: "+t;return n.top!==n.self&&(i=n.parentIFrame&&n.parentIFrame.getId?n.parentIFrame.getId()+": "+t:"Nested host page: "+t),i}function kt(n){return s+"["+bt(n)+"]"}function g(n){return t[n]?t[n].log:k}function i(n,t){y("log",n,t,g(n))}function nt(n,t){y("info",n,t,g(n))}function e(n,t){y("warn",n,t,!0)}function y(t,i,r,u){!0===u&&"object"==typeof n.console&&console[t](kt(i),r)}function dt(o){function w(){function n(){ot(a);ut(h)}b("Height");b("Width");st(n,a,"init")}function at(){var n=y.substr(l).split(":");return{iframe:t[n[0]].iframe,id:n[0],height:n[1],width:n[2],type:n[3]}}function b(n){var f=Number(t[h]["max"+n]),e=Number(t[h]["min"+n]),r=n.toLowerCase(),u=Number(a[r]);i(h,"Checking "+r+" is in range "+e+"-"+f);u<e&&(u=e,i(h,"Set "+r+" to min value"));u>f&&(u=f,i(h,"Set "+r+" to max value"));a[r]=""+u}function yt(){function u(){function u(){var t=0,u=!1;for(i(h,"Checking connection is from allowed list of origins: "+n);t<n.length;t++)if(n[t]===r){u=!0;break}return u}function f(){var n=t[h].remoteHost;return i(h,"Checking connection is from: "+n),r===n}return n.constructor===Array?u():f()}var r=o.origin,n=t[h].checkOrigin;if(n&&""+r!="null"&&!u())throw new Error("Unexpected message received from: "+r+" for "+a.iframe.id+". Message was: "+o.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return!0}function wt(){return s===(""+y).substr(0,l)&&y.substr(l).split(":")[0]in t}function bt(){var n=a.type in{"true":1,"false":1,undefined:1};return n&&i(h,"Ignoring init message from meta parent page"),n}function k(n){return y.substr(y.indexOf(":")+vt+n)}function kt(n){i(h,"MessageCallback passed: {iframe: "+a.iframe.id+", message: "+n+"}");p("messageCallback",{iframe:a.iframe,message:JSON.parse(n)});i(h,"--")}function dt(){var i=document.body.getBoundingClientRect(),t=a.iframe.getBoundingClientRect();return JSON.stringify({iframeHeight:t.height,iframeWidth:t.width,clientHeight:Math.max(document.documentElement.clientHeight,n.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,n.innerWidth||0),offsetTop:parseInt(t.top-i.top,10),offsetLeft:parseInt(t.left-i.left,10),scrollTop:n.pageYOffset,scrollLeft:n.pageXOffset})}function d(n,t){function i(){u("Send Page Info","pageInfo:"+dt(),n,t)}c(i,32)}function gt(){function u(u,f){function o(){t[r]?d(t[r].iframe,r):e()}["scroll","resize"].forEach(function(t){i(r,u+t+" listener for sendPageInfo");f(n,t,o)})}function e(){u("Remove ",pt)}function o(){u("Add ",f)}var r=h;o();t[r].stopPageInfo=e}function ni(){t[h]&&t[h].stopPageInfo&&(t[h].stopPageInfo(),delete t[h].stopPageInfo)}function ti(){var n=!0;return null===a.iframe&&(e(h,"IFrame ("+a.id+") not found"),n=!1),n}function g(n){var t=n.getBoundingClientRect();return rt(h),{x:Math.floor(Number(t.left)+Number(r.x)),y:Math.floor(Number(t.top)+Number(r.y))}}function ct(t){function o(){r=f;lt();i(h,"--")}function s(){return{x:Number(a.width)+u.x,y:Number(a.height)+u.y}}function c(){n.parentIFrame?n.parentIFrame["scrollTo"+(t?"Offset":"")](f.x,f.y):e(h,"Unable to scroll to requested position, window.parentIFrame not found")}var u=t?g(a.iframe):{x:0,y:0},f=s();i(h,"Reposition requested from iFrame (offset x:"+u.x+" y:"+u.y+")");n.top!==n.self?c():o()}function lt(){!1!==p("scrollCallback",r)?ut(h):ft()}function ii(t){function o(){var n=g(e);i(h,"Moving to in page link (#"+u+") at x: "+n.x+" y: "+n.y);r={x:n.x,y:n.y};lt();i(h,"--")}function s(){n.parentIFrame?n.parentIFrame.moveToAnchor(u):i(h,"In page link #"+u+" not found and window.parentIFrame not found")}var u=t.split("#")[1]||"",f=decodeURIComponent(u),e=document.getElementById(f)||document.getElementsByName(f)[0];e?o():n.top!==n.self?s():i(h,"In page link #"+u+" not found")}function p(n,t){return tt(h,n,t)}function ri(){t[h].firstRun&&ei();switch(a.type){case"close":it(a.iframe);break;case"message":kt(k(6));break;case"scrollTo":ct(!1);break;case"scrollToOffset":ct(!0);break;case"pageInfo":d(t[h].iframe,h);gt();break;case"pageInfoStop":ni();break;case"inPageLink":ii(k(9));break;case"reset":et(a);break;case"init":w();p("initCallback",a.iframe);p("resizedCallback",a);break;default:w();p("resizedCallback",a)}}function ui(n){var i=!0;return t[n]||(i=!1,e(a.type+" No settings for "+n+". Message was: "+y)),i}function fi(){for(var n in t)u("iFrame requested init",ht(n),document.getElementById(n),n)}function ei(){t[h].firstRun=!1}var y=o.data,a={},h=null;"[iFrameResizerChild]Ready"===y?fi():wt()?(a=at(),h=v=a.id,clearTimeout(t[h].msgTimeout),!bt()&&ui(h)&&(i(h,"Received: "+y),ti()&&yt()&&ri())):nt(h,"Ignored: "+y)}function tt(n,i,r){var u=null,f=null;if(t[n])if(u=t[n][i],"function"==typeof u)f=u(r);else throw new TypeError(i+" on iFrame["+n+"] is not a function");return f}function it(n){var r=n.id;i(r,"Removing iFrame: "+r);n.parentNode&&n.parentNode.removeChild(n);tt(r,"closedCallback",r);i(r,"--");delete t[r]}function rt(t){null===r&&(r={x:n.pageXOffset!==undefined?n.pageXOffset:document.documentElement.scrollLeft,y:n.pageYOffset!==undefined?n.pageYOffset:document.documentElement.scrollTop},i(t,"Get page position: "+r.x+","+r.y))}function ut(t){null!==r&&(n.scrollTo(r.x,r.y),i(t,"Set page position: "+r.x+","+r.y),ft())}function ft(){r=null}function et(n){function t(){ot(n);u("reset","reset",n.iframe,n.id)}i(n.id,"Size reset requested by "+("init"===n.type?"host page":"iFrame"));rt(n.id);st(t,n,"reset")}function ot(n){function f(t){n.iframe.style[t]=n[t]+"px";i(n.id,"IFrame ("+r+") "+t+" set to "+n[t]+"px")}function e(t){d||"0"!==n[t]||(d=!0,i(r,"Hidden iFrame detected, creating visibility listener"),gt())}function u(n){f(n);e(n)}var r=n.iframe.id;t[r]&&(t[r].sizeHeight&&u("height"),t[r].sizeWidth&&u("width"))}function st(n,t,r){r!==t.type&&o?(i(t.id,"Requesting animation frame"),o(n)):n()}function u(n,r,u,f,o){function h(){var e=t[f].targetOrigin;i(f,"["+n+"] Sending msg to iframe["+f+"] ("+r+") targetOrigin: "+e);u.contentWindow.postMessage(s+r,e)}function c(){e(f,"["+n+"] IFrame("+f+") not found")}function l(){u&&"contentWindow"in u&&null!==u.contentWindow?h():c()}function a(){function n(){e(f,"No response from iFrame. Check iFrameResizer.contentWindow.js has been loaded in iFrame")}!o||(t[f].msgTimeout=setTimeout(n,t[f].warningTimeout))}f=f||u.id;t[f]&&(l(),a())}function ht(n){return n+":"+t[n].bodyMarginV1+":"+t[n].sizeWidth+":"+t[n].log+":"+t[n].interval+":"+t[n].enablePublicMethods+":"+t[n].autoResize+":"+t[n].bodyMargin+":"+t[n].heightCalculationMethod+":"+t[n].bodyBackground+":"+t[n].bodyPadding+":"+t[n].tolerance+":"+t[n].inPageLinks+":"+t[n].resizeFrom+":"+t[n].widthCalculationMethod}function ct(n,r){function s(){function r(r){Infinity!==t[o][r]&&0!==t[o][r]&&(n.style[r]=t[o][r]+"px",i(o,"Set "+r+" = "+t[o][r]+"px"))}function u(n){if(t[o]["min"+n]>t[o]["max"+n])throw new Error("Value for min"+n+" can not be greater than max"+n);}u("Height");u("Width");r("maxHeight");r("minHeight");r("maxWidth");r("minWidth")}function c(){var n=r&&r.id||h.id+b++;return null!==document.getElementById(n)&&(n=n+b++),n}function l(t){return v=t,""===t&&(n.id=t=c(),k=(r||{}).log,v=t,i(t,"Added missing iframe ID: "+t+" ("+n.src+")")),t}function a(){i(o,"IFrame scrolling "+(t[o].scrolling?"enabled":"disabled")+" for "+o);n.style.overflow=!1===t[o].scrolling?"hidden":"auto";switch(t[o].scrolling){case!0:n.scrolling="yes";break;case!1:n.scrolling="no";break;default:n.scrolling=t[o].scrolling}}function y(){("number"==typeof t[o].bodyMargin||"0"===t[o].bodyMargin)&&(t[o].bodyMarginV1=t[o].bodyMargin,t[o].bodyMargin=""+t[o].bodyMargin+"px")}function p(){var i=t[o].firstRun,r=t[o].heightCalculationMethod in yt;!i&&r&&et({iframe:n,height:0,width:0,type:"init"})}function w(){Function.prototype.bind&&(t[o].iframe.iFrameResizer={close:it.bind(null,t[o].iframe),resize:u.bind(null,"Window resize","resize",t[o].iframe),moveToAnchor:function(n){u("Move to anchor","moveToAnchor:"+n,t[o].iframe,o)},sendMessage:function(n){n=JSON.stringify(n);u("Send Message","message:"+n,t[o].iframe,o)}})}function d(t){function i(){u("iFrame.onload",t,n,undefined,!0);p()}f(n,"load",i);u("init",t,n,undefined,!0)}function g(n){if("object"!=typeof n)throw new TypeError("Options is not an object");}function nt(n){for(var i in h)h.hasOwnProperty(i)&&(t[o][i]=n.hasOwnProperty(i)?n[i]:h[i])}function tt(n){return""===n||"file://"===n?"*":n}function rt(i){i=i||{};t[o]={firstRun:!0,iframe:n,remoteHost:n.src.split("/").slice(0,3).join("/")};g(i);nt(i);t[o].targetOrigin=!0===t[o].checkOrigin?tt(t[o].remoteHost):"*"}function ut(){return o in t&&"iFrameResizer"in n}var o=l(n.id);ut()?e(o,"Ignored iFrame, already setup."):(rt(r),a(),s(),y(),d(ht(o)),w())}function c(n,t){null===a&&(a=setTimeout(function(){a=null;n()},t))}function gt(){function f(){function n(n){function i(i){return"0px"===t[n].iframe.style[i]}function r(n){return null!==n.offsetParent}r(t[n].iframe)&&(i("height")||i("width"))&&u("Visibility change","resize",t[n].iframe,n)}for(var i in t)n(i)}function e(n){i("window","Mutation observed: "+n[0].target+" "+n[0].type);c(f,16)}function o(){var n=document.querySelector("body"),t=new r(e);t.observe(n,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0})}var r=n.MutationObserver||n.WebKitMutationObserver;r&&o()}function p(n){function t(){at("Window "+n,"resize")}i("window","Trigger event: "+n);c(t,16)}function lt(){function n(){at("Tab Visable","resize")}"hidden"!==document.visibilityState&&(i("document","Trigger event: Visiblity change"),c(n,16))}function at(n,i){function f(n){return"parent"===t[n].resizeFrom&&t[n].autoResize&&!t[n].firstRun}for(var r in t)f(r)&&u(n,i,document.getElementById(r),r)}function ni(){f(n,"message",dt);f(n,"resize",function(){p("resize")});f(document,"visibilitychange",lt);f(document,"-webkit-visibilitychange",lt);f(n,"focusin",function(){p("focus")});f(n,"focus",function(){p("focus")})}function w(){function t(t,i){function r(){if(i.tagName){if("IFRAME"!==i.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+i.tagName+">");}else throw new TypeError("Object is not a valid DOM element");}i&&(r(),ct(i,t),n.push(i))}function i(n){n&&n.enablePublicMethods&&e("enablePublicMethods option has been removed, public methods are now always available in the iFrame")}var n;return wt(),ni(),function(r,u){n=[];i(r);switch(typeof u){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(u||"iframe"),t.bind(undefined,r));break;case"object":t(r,u);break;default:throw new TypeError("Unexpected data type ("+typeof u+")");}return n}}function ti(n){n.fn?n.fn.iFrameResize||(n.fn.iFrameResize=function(n){function t(t,i){ct(i,n)}return this.filter("iframe").each(t).end()}):nt("","Unable to bind to jQuery, it is not fully loaded.")}if(typeof n!="undefined"){var b=0,k=!1,d=!1,vt=7,s="[iFrameSizer]",l=s.length,r=null,o=n.requestAnimationFrame,yt={max:1,scroll:1,bodyScroll:1,documentElementScroll:1},t={},a=null,v="Host Page",h={autoResize:!0,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!0,inPageLinks:!1,enablePublicMethods:!0,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,log:!1,maxHeight:Infinity,maxWidth:Infinity,minHeight:0,minWidth:0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",closedCallback:function(){},initCallback:function(){},messageCallback:function(){e("MessageCallback function not defined")},resizedCallback:function(){},scrollCallback:function(){return!0}};n.jQuery&&ti(jQuery);typeof define=="function"&&define.amd?define([],w):typeof module=="object"&&typeof module.exports=="object"?module.exports=w():n.iFrameResize=n.iFrameResize||w()}}(window),function(){function t(n){var t="    ",i;if(isNaN(parseInt(n)))t=n;else switch(n){case 1:t=" ";break;case 2:t="  ";break;case 3:t="   ";break;case 4:t="    ";break;case 5:t="     ";break;case 6:t="      ";break;case 7:t="       ";break;case 8:t="        ";break;case 9:t="         ";break;case 10:t="          ";break;case 11:t="           ";break;case 12:t="            "}for(i=["\n"],ix=0;ix<100;ix++)i.push(i[ix]+t);return i}function n(){this.step="    ";this.shift=t(this.step)}function i(n,t){return t-(n.replace(/\(/g,"").length-n.replace(/\)/g,"").length)}function r(n,t){return n.replace(/\s{1,}/g," ").replace(/ AND /ig,"~::~"+t+t+"AND ").replace(/ BETWEEN /ig,"~::~"+t+"BETWEEN ").replace(/ CASE /ig,"~::~"+t+"CASE ").replace(/ ELSE /ig,"~::~"+t+"ELSE ").replace(/ END /ig,"~::~"+t+"END ").replace(/ FROM /ig,"~::~FROM ").replace(/ GROUP\s{1,}BY/ig,"~::~GROUP BY ").replace(/ HAVING /ig,"~::~HAVING ").replace(/ IN /ig," IN ").replace(/ JOIN /ig,"~::~JOIN ").replace(/ CROSS~::~{1,}JOIN /ig,"~::~CROSS JOIN ").replace(/ INNER~::~{1,}JOIN /ig,"~::~INNER JOIN ").replace(/ LEFT~::~{1,}JOIN /ig,"~::~LEFT JOIN ").replace(/ RIGHT~::~{1,}JOIN /ig,"~::~RIGHT JOIN ").replace(/ ON /ig,"~::~"+t+"ON ").replace(/ OR /ig,"~::~"+t+t+"OR ").replace(/ ORDER\s{1,}BY/ig,"~::~ORDER BY ").replace(/ OVER /ig,"~::~"+t+"OVER ").replace(/\(\s{0,}SELECT /ig,"~::~(SELECT ").replace(/\)\s{0,}SELECT /ig,")~::~SELECT ").replace(/ THEN /ig," THEN~::~"+t+"").replace(/ UNION /ig,"~::~UNION~::~").replace(/ USING /ig,"~::~USING ").replace(/ WHEN /ig,"~::~"+t+"WHEN ").replace(/ WHERE /ig,"~::~WHERE ").replace(/ WITH /ig,"~::~WITH ").replace(/ ALL /ig," ALL ").replace(/ AS /ig," AS ").replace(/ ASC /ig," ASC ").replace(/ DESC /ig," DESC ").replace(/ DISTINCT /ig," DISTINCT ").replace(/ EXISTS /ig," EXISTS ").replace(/ NOT /ig," NOT ").replace(/ NULL /ig," NULL ").replace(/ LIKE /ig," LIKE ").replace(/\s{0,}SELECT /ig,"SELECT ").replace(/\s{0,}UPDATE /ig,"UPDATE ").replace(/ SET /ig," SET ").replace(/~::~{1,}/g,"~::~").split("~::~")}n.prototype.xml=function(n,i){for(var u=n.replace(/>\s{0,}</g,"><").replace(/</g,"~::~<").replace(/\s*xmlns\:/g,"~::~xmlns:").replace(/\s*xmlns\=/g,"~::~xmlns=").split("~::~"),c=u.length,o=!1,e=0,f="",r=0,s=i?t(i):this.shift,h=0,r=0;r<c;r++)u[r].search(/<!/)>-1?(f+=s[e]+u[r],o=!0,(u[r].search(/-->/)>-1||u[r].search(/\]>/)>-1||u[r].search(/!DOCTYPE/)>-1)&&(o=!1)):u[r].search(/-->/)>-1||u[r].search(/\]>/)>-1?(f+=u[r],o=!1):/^<\w/.exec(u[r-1])&&/^<\/\w/.exec(u[r])&&/^<[\w:\-\.\,]+/.exec(u[r-1])==/^<\/[\w:\-\.\,]+/.exec(u[r])[0].replace("/","")?(f+=u[r],o||e--):u[r].search(/<\w/)>-1&&u[r].search(/<\//)==-1&&u[r].search(/\/>/)==-1?f=f+=o?u[r]:s[e++]+u[r]:u[r].search(/<\w/)>-1&&u[r].search(/<\//)>-1?f=f+=o?u[r]:s[e]+u[r]:u[r].search(/<\//)>-1?(--e,f=f+=!o&&!h?s[e]+u[r]:u[r]):u[r].search(/\/>/)>-1?(f=f+=o?u[r]:s[e]+u[r],(u[r].search(/xmlns\:/)>-1||u[r].search(/xmlns\=/)>-1)&&e--):u[r].search(/<\?/)>-1?f+=s[e]+u[r]:u[r].search(/xmlns\:/)>-1||u[r].search(/xmlns\=/)>-1?(f+=s[e]+u[r],h=2):f+=u[r],h&&h--;return f[0]=="\n"?f.slice(1):f};n.prototype.json=function(n,t){var t=t?t:this.step;return typeof JSON=="undefined"?n:typeof n=="string"?JSON.stringify(JSON.parse(n),null,t):typeof n=="object"?JSON.stringify(n,null,t):n};n.prototype.css=function(n,i){for(var u=n.replace(/\s{1,}/g," ").replace(/\{/g,"{~::~").replace(/\}/g,"~::~}~::~").replace(/\;/g,";~::~").replace(/\/\*/g,"~::~/*").replace(/\*\//g,"*/~::~").replace(/~::~\s{0,}~::~/g,"~::~").split("~::~"),s=u.length,f=0,o="",r=0,e=i?t(i):this.shift,r=0;r<s;r++)o+=/\{/.exec(u[r])?e[f++]+u[r]:/\}/.exec(u[r])?e[--f]+u[r]:/\*\\/.exec(u[r])?e[f]+u[r]:e[f]+u[r];return o.replace(/^\n{1,}/,"")};n.prototype.sql=function(n,u){for(var l=n.replace(/\s{1,}/g," ").replace(/\'/ig,"~::~'").split("~::~"),a=l.length,e=[],o=0,s=this.step,h=0,c="",f=0,v=u?t(u):this.shift,y,f=0;f<a;f++)e=f%2?e.concat(l[f]):e.concat(r(l[f],s));for(a=e.length,f=0;f<a;f++)h=i(e[f],h),/\s{0,}\s{0,}SELECT\s{0,}/.exec(e[f])&&(e[f]=e[f].replace(/\,/g,",\n"+s+s+"")),/\s{0,}\s{0,}SET\s{0,}/.exec(e[f])&&(e[f]=e[f].replace(/\,/g,",\n"+s+s+"")),/\s{0,}\(\s{0,}SELECT\s{0,}/.exec(e[f])?(o++,c+=v[o]+e[f]):/\'/.exec(e[f])?(h<1&&o&&o--,c+=e[f]):(c+=v[o]+e[f],h<1&&o&&o--),y=0;return c.replace(/^\n{1,}/,"").replace(/\n{1,}/g,"\n")};n.prototype.xmlmin=function(n,t){var i=t?n:n.replace(/\<![ \r\n\t]*(--([^\-]|[\r\n]|-[^\-])*--[ \r\n\t]*)\>/g,"").replace(/[ \r\n\t]{1,}xmlns/g," xmlns");return i.replace(/>\s{0,}</g,"><")};n.prototype.jsonmin=function(n){return typeof JSON=="undefined"?n:JSON.stringify(JSON.parse(n),null,0)};n.prototype.cssmin=function(n,t){var i=t?n:n.replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\//g,"");return i.replace(/\s{1,}/g," ").replace(/\{\s{1,}/g,"{").replace(/\}\s{1,}/g,"}").replace(/\;\s{1,}/g,";").replace(/\/\*\s{1,}/g,"/*").replace(/\*\/\s{1,}/g,"*/")};n.prototype.sqlmin=function(n){return n.replace(/\s{1,}/g," ").replace(/\s{1,}\(/,"(").replace(/\s{1,}\)/,")")};window.vkbeautify=new n}(),function(){function o(r){var u=t;r&&(t[r]||(t[r]={}),u=t[r]);u.define&&u.define.packaged||(n.original=u.define,u.define=n,u.define.packaged=!0);u.require&&u.require.packaged||(i.original=u.require,u.require=i,u.require.packaged=!0)}var u="",t=function(){return this}(),n;if(t||typeof window=="undefined"||(t=window),u||typeof requirejs=="undefined"){n=function(t,i,r){if(typeof t!="string"){n.original?n.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(r=i);n.modules[t]||(n.payloads[t]=r,n.modules[t]=null)};n.modules={};n.payloads={};var f=function(n,t,r){var f,o,u,h,s;if(typeof t=="string"){if(f=e(n,t),f!=undefined)return r&&r(),f}else if(Object.prototype.toString.call(t)==="[object Array]"){for(o=[],u=0,h=t.length;u<h;++u){if(s=e(n,t[u]),s==undefined&&i.original)return;o.push(s)}return r&&r.apply(null,o)||!0}},i=function(n,t){var r=f("",n,t);return r==undefined&&i.original?i.original.apply(this,arguments):r},r=function(n,t){var i,u,f;if(t.indexOf("!")!==-1)return i=t.split("!"),r(n,i[0])+"!"+r(n,i[1]);if(t.charAt(0)==".")for(u=n.split("/").slice(0,-1).join("/"),t=u+"/"+t;t.indexOf(".")!==-1&&f!=t;)f=t,t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"");return t},e=function(t,i){var u;if(i=r(t,i),u=n.modules[i],!u){if(u=n.payloads[i],typeof u=="function"){var e={},o={id:i,uri:"",exports:e,packaged:!0},s=function(n,t){return f(i,n,t)},h=u(s,e,o);e=h||o.exports;n.modules[i]=e;delete n.payloads[i]}u=n.modules[i]=e||u}return u};o(u)}}();define("ace/lib/regexp",["require","exports","module"],function(){"use strict";function r(n){return(n.global?"g":"")+(n.ignoreCase?"i":"")+(n.multiline?"m":"")+(n.extended?"x":"")+(n.sticky?"y":"")}function u(n,t,i){if(Array.prototype.indexOf)return n.indexOf(t,i);for(var r=i||0;r<n.length;r++)if(n[r]===t)return r;return-1}var n={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},i=n.exec.call(/()??/,"")[1]===undefined,t=function(){var t=/^/g;return n.test.call(t,""),!t.lastIndex}();t&&i||(RegExp.prototype.exec=function(f){var e=n.exec.apply(this,arguments),s,h,o;if(typeof f=="string"&&e){if(!i&&e.length>1&&u(e,"")>-1&&(h=RegExp(this.source,n.replace.call(r(this),"g","")),n.replace.call(f.slice(e.index),h,function(){for(var n=1;n<arguments.length-2;n++)arguments[n]===undefined&&(e[n]=undefined)})),this._xregexp&&this._xregexp.captureNames)for(o=1;o<e.length;o++)s=this._xregexp.captureNames[o-1],s&&(e[s]=e[o]);!t&&this.global&&!e[0].length&&this.lastIndex>e.index&&this.lastIndex--}return e},t||(RegExp.prototype.test=function(t){var i=n.exec.call(this,t);return i&&this.global&&!i[0].length&&this.lastIndex>i.index&&this.lastIndex--,!!i}))});define("ace/lib/es5-shim",["require","exports","module"],function(){function c(){}function y(n){try{return Object.defineProperty(n,"sentinel",{}),"sentinel"in n}catch(t){}}function p(n){return n=+n,n!==n?n=0:n!==0&&n!==1/0&&n!==-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}var k,v,r,d,g,nt,tt,h,lt,f,ut,ft,u;Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,r,i;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);return r=o.call(arguments,1),i=function(){if(this instanceof i){var u=t.apply(this,r.concat(o.call(arguments)));return Object(u)===u?u:this}return t.apply(n,r.concat(o.call(arguments)))},t.prototype&&(c.prototype=t.prototype,i.prototype=new c,c.prototype=null),i});var e=Function.prototype.call,et=Array.prototype,t=Object.prototype,o=et.slice,n=e.bind(t.toString),i=e.bind(t.hasOwnProperty),w,b,l,a,s;if((s=i(t,"__defineGetter__"))&&(w=e.bind(t.__defineGetter__),b=e.bind(t.__defineSetter__),l=e.bind(t.__lookupGetter__),a=e.bind(t.__lookupSetter__)),[1,2].splice(0).length!=2&&(function(){function i(n){var t=new Array(n+2);return t[0]=t[1]=0,t}var n=[],t;return n.splice.apply(n,i(20)),n.splice.apply(n,i(26)),t=n.length,n.splice(5,0,"XXX"),t+1==n.length,t+1==n.length?!0:void 0}()?(k=Array.prototype.splice,Array.prototype.splice=function(n,t){return arguments.length?k.apply(this,[n===void 0?0:n,t===void 0?this.length-n:t].concat(o.call(arguments,2))):[]}):Array.prototype.splice=function(n,t){var r=this.length,i;n>0?n>r&&(n=r):n==void 0?n=0:n<0&&(n=Math.max(r+n,0));n+t<r||(t=r-n);var a=this.slice(n,n+t),e=o.call(arguments,2),f=e.length;if(n===r)f&&this.push.apply(this,e);else{var h=Math.min(t,r-n),u=n+h,s=u+f-h,l=r-u,c=r-h;if(s<u)for(i=0;i<l;++i)this[s+i]=this[u+i];else if(s>u)for(i=l;i--;)this[s+i]=this[u+i];if(f&&n===c)this.length=c,this.push.apply(this,e);else for(this.length=c+f,i=0;i<f;++i)this[n+i]=e[i]}return a}),Array.isArray||(Array.isArray=function(t){return n(t)=="[object Array]"}),v=Object("a"),r=v[0]!="a"||!(0 in v),Array.prototype.forEach||(Array.prototype.forEach=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=arguments[1],i=-1,s=f.length>>>0;if(n(t)!="[object Function]")throw new TypeError;while(++i<s)i in f&&t.call(o,f[i],i,e)}),Array.prototype.map||(Array.prototype.map=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=Array(o),h=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)i in f&&(s[i]=t.call(h,f[i],i,e));return s}),Array.prototype.filter||(Array.prototype.filter=function(t){var o=u(this),f=r&&n(this)=="[object String]"?this.split(""):o,h=f.length>>>0,s=[],e,c=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<h;i++)i in f&&(e=f[i],t.call(c,e,i,o)&&s.push(e));return s}),Array.prototype.every||(Array.prototype.every=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&!t.call(s,f[i],i,e))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&t.call(s,f[i],i,e))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(t){var s=u(this),f=r&&n(this)=="[object String]"?this.split(""):s,o=f.length>>>0,i,e;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!o&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");if(i=0,arguments.length>=2)e=arguments[1];else do{if(i in f){e=f[i++];break}if(++i>=o)throw new TypeError("reduce of empty array with no initial value");}while(1);for(;i<o;i++)i in f&&(e=t.call(void 0,e,f[i],i,s));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(t){var o=u(this),e=r&&n(this)=="[object String]"?this.split(""):o,s=e.length>>>0,f,i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!s&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");if(i=s-1,arguments.length>=2)f=arguments[1];else do{if(i in e){f=e[i--];break}if(--i<0)throw new TypeError("reduceRight of empty array with no initial value");}while(1);do i in this&&(f=t.call(void 0,f,e[i],i,o));while(i--);return f}),Array.prototype.indexOf&&[0,1].indexOf(1,2)==-1||(Array.prototype.indexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=0,arguments.length>1&&(i=p(arguments[1])),i=i>=0?i:Math.max(0,e+i);i<e;i++)if(i in f&&f[i]===t)return i;return-1}),Array.prototype.lastIndexOf&&[0,1].lastIndexOf(0,-3)==-1||(Array.prototype.lastIndexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=e-1,arguments.length>1&&(i=Math.min(i,p(arguments[1]))),i=i>=0?i:e-Math.abs(i);i>=0;i--)if(i in f&&t===f[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(n){return n.__proto__||(n.constructor?n.constructor.prototype:t)}),Object.getOwnPropertyDescriptor||(d="Object.getOwnPropertyDescriptor called on a non-object: ",Object.getOwnPropertyDescriptor=function(n,r){var u,o,f,e;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(d+n);if(i(n,r))return(u={enumerable:!0,configurable:!0},s&&(o=n.__proto__,n.__proto__=t,f=l(n,r),e=a(n,r),n.__proto__=o,f||e))?(f&&(u.get=f),e&&(u.set=e),u):(u.value=n[r],u)}),Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(n){return Object.keys(n)}),Object.create||(g=Object.prototype.__proto__===null?function(){return{__proto__:null}}:function(){var n={},t;for(t in n)n[t]=null;return n.constructor=n.hasOwnProperty=n.propertyIsEnumerable=n.isPrototypeOf=n.toLocaleString=n.toString=n.valueOf=n.__proto__=null,n},Object.create=function(n,t){var i,r;if(n===null)i=g();else{if(typeof n!="object")throw new TypeError("typeof prototype["+typeof n+"] != 'object'");r=function(){};r.prototype=n;i=new r;i.__proto__=n}return t!==void 0&&Object.defineProperties(i,t),i}),Object.defineProperty&&(nt=y({}),tt=typeof document=="undefined"||y(document.createElement("div")),nt&&tt||(h=Object.defineProperty)),!Object.defineProperty||h){var ot="Property description must be an object: ",st="Object.defineProperty called on non-object: ",ht="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(n,r,u){if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(st+n);if(typeof u!="object"&&typeof u!="function"||u===null)throw new TypeError(ot+u);if(h)try{return h.call(Object,n,r,u)}catch(e){}if(i(u,"value"))if(s&&(l(n,r)||a(n,r))){var f=n.__proto__;n.__proto__=t;delete n[r];n[r]=u.value;n.__proto__=f}else n[r]=u.value;else{if(!s)throw new TypeError(ht);i(u,"get")&&w(n,r,u.get);i(u,"set")&&b(n,r,u.set)}return n}}Object.defineProperties||(Object.defineProperties=function(n,t){for(var r in t)i(t,r)&&Object.defineProperty(n,r,t[r]);return n});Object.seal||(Object.seal=function(n){return n});Object.freeze||(Object.freeze=function(n){return n});try{Object.freeze(function(){})}catch(at){Object.freeze=function(n){return function(t){return typeof t=="function"?t:n(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(n){return n}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(n){var t,r;if(Object(n)===n)throw new TypeError;for(t="";i(n,t);)t+="?";return n[t]=!0,r=i(n,t),delete n[t],r}),!Object.keys){var it=!0,rt=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],ct=rt.length;for(lt in{toString:null})it=!1;Object.keys=function(n){var t,u,r,e,f;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError("Object.keys called on a non-object");t=[];for(u in n)i(n,u)&&t.push(u);if(it)for(r=0,e=ct;r<e;r++)f=rt[r],i(n,f)&&t.push(f);return t}}Date.now||(Date.now=function(){return(new Date).getTime()});f="\t\n\x0b\f\r   ᠎             　\u2028\u2029﻿";(!String.prototype.trim||f.trim())&&(f="["+f+"]",ut=new RegExp("^"+f+f+"*"),ft=new RegExp(f+f+"*$"),String.prototype.trim=function(){return String(this).replace(ut,"").replace(ft,"")});u=function(n){if(n==null)throw new TypeError("can't convert "+n+" to object");return Object(n)}});define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(n){"use strict";n("./regexp");n("./es5-shim")});define("ace/lib/dom",["require","exports","module"],function(n,t){"use strict";var i="http://www.w3.org/1999/xhtml";if(t.getDocumentHead=function(n){return n||(n=document),n.head||n.getElementsByTagName("head")[0]||n.documentElement},t.createElement=function(n,t){return document.createElementNS?document.createElementNS(t||i,n):document.createElement(n)},t.hasCssClass=function(n,t){var i=(n.className+"").split(/\s+/g);return i.indexOf(t)!==-1},t.addCssClass=function(n,i){t.hasCssClass(n,i)||(n.className+=" "+i)},t.removeCssClass=function(n,t){for(var i=n.className.split(/\s+/g),r;;){if(r=i.indexOf(t),r==-1)break;i.splice(r,1)}n.className=i.join(" ")},t.toggleCssClass=function(n,t){for(var i=n.className.split(/\s+/g),r=!0,u;;){if(u=i.indexOf(t),u==-1)break;r=!1;i.splice(u,1)}return r&&i.push(t),n.className=i.join(" "),r},t.setCssClass=function(n,i,r){r?t.addCssClass(n,i):t.removeCssClass(n,i)},t.hasCssString=function(n,t){var r=0,i;if(t=t||document,t.createStyleSheet&&(i=t.styleSheets)){while(r<i.length)if(i[r++].owningElement.id===n)return!0}else if(i=t.getElementsByTagName("style"))while(r<i.length)if(i[r++].id===n)return!0;return!1},t.importCssString=function(n,i,r){if(r=r||document,i&&t.hasCssString(i,r))return null;var u;i&&(n+="\n/*# sourceURL=ace/css/"+i+" */");r.createStyleSheet?(u=r.createStyleSheet(),u.cssText=n,i&&(u.owningElement.id=i)):(u=t.createElement("style"),u.appendChild(r.createTextNode(n)),i&&(u.id=i),t.getDocumentHead(r).appendChild(u))},t.importCssStylsheet=function(n,i){if(i.createStyleSheet)i.createStyleSheet(n);else{var r=t.createElement("link");r.rel="stylesheet";r.href=n;t.getDocumentHead(i).appendChild(r)}},t.getInnerWidth=function(n){return parseInt(t.computedStyle(n,"paddingLeft"),10)+parseInt(t.computedStyle(n,"paddingRight"),10)+n.clientWidth},t.getInnerHeight=function(n){return parseInt(t.computedStyle(n,"paddingTop"),10)+parseInt(t.computedStyle(n,"paddingBottom"),10)+n.clientHeight},t.scrollbarWidth=function(n){var r=t.createElement("ace_inner"),u,i,e,o,f;return r.style.width="100%",r.style.minWidth="0px",r.style.height="200px",r.style.display="block",u=t.createElement("ace_outer"),i=u.style,i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",u.appendChild(r),e=n.documentElement,e.appendChild(u),o=r.offsetWidth,i.overflow="scroll",f=r.offsetWidth,o==f&&(f=u.clientWidth),e.removeChild(u),o-f},typeof document=="undefined"){t.importCssString=function(){};return}window.pageYOffset!==undefined?(t.getPageScrollTop=function(){return window.pageYOffset},t.getPageScrollLeft=function(){return window.pageXOffset}):(t.getPageScrollTop=function(){return document.body.scrollTop},t.getPageScrollLeft=function(){return document.body.scrollLeft});t.computedStyle=window.getComputedStyle?function(n,t){return t?(window.getComputedStyle(n,"")||{})[t]||"":window.getComputedStyle(n,"")||{}}:function(n,t){return t?n.currentStyle[t]:n.currentStyle};t.setInnerHtml=function(n,t){var i=n.cloneNode(!1);return i.innerHTML=t,n.parentNode.replaceChild(i,n),i};"textContent"in document.documentElement?(t.setInnerText=function(n,t){n.textContent=t},t.getInnerText=function(n){return n.textContent}):(t.setInnerText=function(n,t){n.innerText=t},t.getInnerText=function(n){return n.innerText});t.getParentWindow=function(n){return n.defaultView||n.parentWindow}});define("ace/lib/oop",["require","exports","module"],function(n,t){"use strict";t.inherits=function(n,t){n.super_=t;n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})};t.mixin=function(n,t){for(var i in t)n[i]=t[i];return n};t.implement=function(n,i){t.mixin(n,i)}});define("ace/lib/keys",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop"],function(n,t){"use strict";n("./fixoldbrowsers");var i=n("./oop"),r=function(){var n={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,"super":8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}},r,t;for(t in n.FUNCTION_KEYS)r=n.FUNCTION_KEYS[t].toLowerCase(),n[r]=parseInt(t,10);for(t in n.PRINTABLE_KEYS)r=n.PRINTABLE_KEYS[t].toLowerCase(),n[r]=parseInt(t,10);return i.mixin(n,n.MODIFIER_KEYS),i.mixin(n,n.PRINTABLE_KEYS),i.mixin(n,n.FUNCTION_KEYS),n.enter=n["return"],n.escape=n.esc,n.del=n["delete"],n[173]="-",function(){for(var i=["cmd","ctrl","alt","shift"],t=Math.pow(2,i.length);t--;)n.KEY_MODS[t]=i.filter(function(i){return t&n.KEY_MODS[i]}).join("-")+"-"}(),n.KEY_MODS[0]="",n.KEY_MODS[-1]="input-",n}();i.mixin(t,r);t.keyCodeToString=function(n){var t=r[n];return typeof t!="string"&&(t=String.fromCharCode(n)),t.toLowerCase()}});define("ace/lib/useragent",["require","exports","module"],function(n,t){"use strict";if(t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS},typeof navigator=="object"){var r=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),i=navigator.userAgent;t.isWin=r=="win";t.isMac=r=="mac";t.isLinux=r=="linux";t.isIE=navigator.appName=="Microsoft Internet Explorer"||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((i.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((i.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]);t.isOldIE=t.isIE&&t.isIE<9;t.isGecko=t.isMozilla=(window.Controllers||window.controllers)&&window.navigator.product==="Gecko";t.isOldGecko=t.isGecko&&parseInt((i.match(/rv:(\d+)/)||[])[1],10)<4;t.isOpera=window.opera&&Object.prototype.toString.call(window.opera)=="[object Opera]";t.isWebKit=parseFloat(i.split("WebKit/")[1])||undefined;t.isChrome=parseFloat(i.split(" Chrome/")[1])||undefined;t.isAIR=i.indexOf("AdobeAIR")>=0;t.isIPad=i.indexOf("iPad")>=0;t.isTouchPad=i.indexOf("TouchPad")>=0;t.isChromeOS=i.indexOf(" CrOS ")>=0}});define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,t){"use strict";function e(n,t,e){var o=f(t),c,h;if(!i.isMac&&r){if(t.getModifierState&&(t.getModifierState("OS")||t.getModifierState("Win"))&&(o|=8),r.altGr){if((3&o)==3)return;r.altGr=0}(e===18||e===17)&&(h="location"in t?t.location:t.keyLocation,e===17&&h===1?r[e]==1&&(s=t.timeStamp):e===18&&o===3&&h===2&&(c=t.timeStamp-s,c<50&&(r.altGr=!0)))}if(e in u.MODIFIER_KEYS&&(e=-1),o&8&&e>=91&&e<=93&&(e=-1),o||e!==13||(h="location"in t?t.location:t.keyLocation,h!==3||(n(t,o,-e),!t.defaultPrevented))){if(i.isChromeOS&&o&8){if(n(t,o,e),t.defaultPrevented)return;o&=-9}return!!o||e in u.FUNCTION_KEYS||e in u.PRINTABLE_KEYS?n(t,o,e):!1}}function o(){r=Object.create(null)}var u=n("./keys"),i=n("./useragent"),r=null,s=0,f,h;t.addListener=function(n,t,i){if(n.addEventListener)return n.addEventListener(t,i,!1);if(n.attachEvent){var r=function(){i.call(n,window.event)};i._wrapper=r;n.attachEvent("on"+t,r)}};t.removeListener=function(n,t,i){if(n.removeEventListener)return n.removeEventListener(t,i,!1);n.detachEvent&&n.detachEvent("on"+t,i._wrapper||i)};t.stopEvent=function(n){return t.stopPropagation(n),t.preventDefault(n),!1};t.stopPropagation=function(n){n.stopPropagation?n.stopPropagation():n.cancelBubble=!0};t.preventDefault=function(n){n.preventDefault?n.preventDefault():n.returnValue=!1};t.getButton=function(n){return n.type=="dblclick"?0:n.type=="contextmenu"||i.isMac&&n.ctrlKey&&!n.altKey&&!n.shiftKey?2:n.preventDefault?n.button:{1:0,2:2,4:1}[n.button]};t.capture=function(n,i,r){function u(n){i&&i(n);r&&r(n);t.removeListener(document,"mousemove",i,!0);t.removeListener(document,"mouseup",u,!0);t.removeListener(document,"dragstart",u,!0)}return t.addListener(document,"mousemove",i,!0),t.addListener(document,"mouseup",u,!0),t.addListener(document,"dragstart",u,!0),u};t.addTouchMoveListener=function(n,i){if("ontouchmove"in n){var r,u;t.addListener(n,"touchstart",function(n){var t=n.changedTouches[0];r=t.clientX;u=t.clientY});t.addListener(n,"touchmove",function(n){var f=1,t=n.changedTouches[0];n.wheelX=-(t.clientX-r)/f;n.wheelY=-(t.clientY-u)/f;r=t.clientX;u=t.clientY;i(n)})}};t.addMouseWheelListener=function(n,i){"onmousewheel"in n?t.addListener(n,"mousewheel",function(n){var t=8;n.wheelDeltaX!==undefined?(n.wheelX=-n.wheelDeltaX/t,n.wheelY=-n.wheelDeltaY/t):(n.wheelX=0,n.wheelY=-n.wheelDelta/t);i(n)}):"onwheel"in n?t.addListener(n,"wheel",function(n){var t=.35;switch(n.deltaMode){case n.DOM_DELTA_PIXEL:n.wheelX=n.deltaX*t||0;n.wheelY=n.deltaY*t||0;break;case n.DOM_DELTA_LINE:case n.DOM_DELTA_PAGE:n.wheelX=(n.deltaX||0)*5;n.wheelY=(n.deltaY||0)*5}i(n)}):t.addListener(n,"DOMMouseScroll",function(n){n.axis&&n.axis==n.HORIZONTAL_AXIS?(n.wheelX=(n.detail||0)*5,n.wheelY=0):(n.wheelX=0,n.wheelY=(n.detail||0)*5);i(n)})};t.addMultiMouseDownListener=function(n,r,u,f){function l(n){if(t.getButton(n)!==0?e=0:n.detail>1?(e++,e>4&&(e=1)):e=1,i.isIE){var l=Math.abs(n.clientX-s)>5||Math.abs(n.clientY-h)>5;(!o||l)&&(e=1);o&&clearTimeout(o);o=setTimeout(function(){o=null},r[e-1]||600);e==1&&(s=n.clientX,h=n.clientY)}if(n._clicks=e,u[f]("mousedown",n),e>4)e=0;else if(e>1)return u[f](c[e],n)}function a(n){e=2;o&&clearTimeout(o);o=setTimeout(function(){o=null},r[e-1]||600);u[f]("mousedown",n);u[f](c[e],n)}var e=0,s,h,o,c={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(n)||(n=[n]);n.forEach(function(n){t.addListener(n,"mousedown",l);i.isOldIE&&t.addListener(n,"dblclick",a)})};f=!i.isMac||!i.isOpera||"KeyboardEvent"in window?function(n){return 0|(n.ctrlKey?1:0)|(n.altKey?2:0)|(n.shiftKey?4:0)|(n.metaKey?8:0)}:function(n){return 0|(n.metaKey?1:0)|(n.altKey?2:0)|(n.shiftKey?4:0)|(n.ctrlKey?8:0)};t.getModifierString=function(n){return u.KEY_MODS[f(n)]};t.addCommandKeyListener=function(n,u){var f=t.addListener,h,s;!i.isOldGecko&&(!i.isOpera||"KeyboardEvent"in window)?(s=null,f(n,"keydown",function(n){r[n.keyCode]=(r[n.keyCode]||0)+1;var t=e(u,n,n.keyCode);return s=n.defaultPrevented,t}),f(n,"keypress",function(n){s&&(n.ctrlKey||n.altKey||n.shiftKey||n.metaKey)&&(t.stopEvent(n),s=null)}),f(n,"keyup",function(n){r[n.keyCode]=null}),r||(o(),f(window,"focus",o))):(h=null,f(n,"keydown",function(n){h=n.keyCode}),f(n,"keypress",function(n){return e(u,n,h)}))};typeof window=="object"&&window.postMessage&&!i.isOldIE&&(h=1,t.nextTick=function(n,i){i=i||window;var r="zero-timeout-message-"+h;t.addListener(i,"message",function u(f){f.data==r&&(t.stopPropagation(f),t.removeListener(i,"message",u),n())});i.postMessage(r,"*")});t.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame);t.nextFrame=t.nextFrame?t.nextFrame.bind(window):function(n){setTimeout(n,17)}});define("ace/lib/lang",["require","exports","module"],function(n,t){"use strict";t.last=function(n){return n[n.length-1]};t.stringReverse=function(n){return n.split("").reverse().join("")};t.stringRepeat=function(n,t){for(var i="";t>0;)t&1&&(i+=n),(t>>=1)&&(n+=n);return i};var r=/^\s\s*/,u=/\s\s*$/;t.stringTrimLeft=function(n){return n.replace(r,"")};t.stringTrimRight=function(n){return n.replace(u,"")};t.copyObject=function(n){var i={},t;for(t in n)i[t]=n[t];return i};t.copyArray=function(n){for(var i=[],t=0,r=n.length;t<r;t++)i[t]=n[t]&&typeof n[t]=="object"?this.copyObject(n[t]):n[t];return i};t.deepCopy=function i(n){var r,t;if(typeof n!="object"||!n)return n;if(Array.isArray(n)){for(r=[],t=0;t<n.length;t++)r[t]=i(n[t]);return r}if(Object.prototype.toString.call(n)!=="[object Object]")return n;r={};for(t in n)r[t]=i(n[t]);return r};t.arrayToMap=function(n){for(var i={},t=0;t<n.length;t++)i[n[t]]=1;return i};t.createMap=function(n){var i=Object.create(null),t;for(t in n)i[t]=n[t];return i};t.arrayRemove=function(n,t){for(var i=0;i<=n.length;i++)t===n[i]&&n.splice(i,1)};t.escapeRegExp=function(n){return n.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")};t.escapeHTML=function(n){return n.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")};t.getMatchOffsets=function(n,t){var i=[];return n.replace(t,function(n){i.push({offset:arguments[arguments.length-2],length:n.length})}),i};t.deferredCall=function(n){var i=null,r=function(){i=null;n()},t=function(n){return t.cancel(),i=setTimeout(r,n||0),t};return t.schedule=t,t.call=function(){return this.cancel(),n(),t},t.cancel=function(){return clearTimeout(i),i=null,t},t.isPending=function(){return i},t};t.delayedCall=function(n,t){var i=null,u=function(){i=null;n()},r=function(n){i==null&&(i=setTimeout(u,n||t))};return r.delay=function(n){i&&clearTimeout(i);i=setTimeout(u,n||t)},r.schedule=r,r.call=function(){this.cancel();n()},r.cancel=function(){i&&clearTimeout(i);i=null},r.isPending=function(){return i},r}});define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang"],function(n,t){"use strict";var i=n("../lib/event"),r=n("../lib/useragent"),f=n("../lib/dom"),u=n("../lib/lang"),e=r.isChrome<18,o=r.isIE,s=function(n,t){function c(n){if(!h){if(h=!0,a)t=0,i=n?0:s.value.length-1;else var t=n?2:1,i=2;try{s.setSelectionRange(t,i)}catch(r){}h=!1}}function y(){h||(s.value=l,r.isWebKit&&lt.schedule())}function w(){clearTimeout(ht);ht=setTimeout(function(){p&&(s.style.cssText=p,p="");t.renderer.$keepTextAreaAtCursor==null&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},r.isOldIE?200:0)}var s=f.createElement("textarea"),v,ct,lt,it,vt,yt,a,ht,nt;s.className="ace_text-input";r.isTouchPad&&s.setAttribute("x-palm-disable-auto-cap",!0);s.setAttribute("wrap","off");s.setAttribute("autocorrect","off");s.setAttribute("autocapitalize","off");s.setAttribute("spellcheck",!1);s.style.opacity="0";r.isOldIE&&(s.style.top="-1000px");n.insertBefore(s,n.firstChild);var l="\x01\x01",b=!1,tt=!1,h=!1,p="",k=!0;try{v=document.activeElement===s}catch(ni){}if(i.addListener(s,"blur",function(n){t.onBlur(n);v=!1}),i.addListener(s,"focus",function(n){v=!0;t.onFocus(n);c()}),this.focus=function(){if(p)return s.focus();var n=s.style.top;s.style.position="fixed";s.style.top="0px";s.focus();setTimeout(function(){s.style.position="";s.style.top=="0px"&&(s.style.top=n)},0)},this.blur=function(){s.blur()},this.isFocused=function(){return v},ct=u.delayedCall(function(){v&&c(k)}),lt=u.delayedCall(function(){h||(s.value=l,v&&c())}),r.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=k&&(k=!k,ct.schedule())}),y(),v&&t.onFocus(),it=function(n){return n.selectionStart===0&&n.selectionEnd===n.value.length},!s.setSelectionRange&&s.createTextRange&&(s.setSelectionRange=function(n,t){var i=this.createTextRange();i.collapse(!0);i.moveStart("character",n);i.moveEnd("character",t);i.select()},it=function(n){try{var t=n.ownerDocument.selection.createRange()}catch(i){}return!t||t.parentElement()!=n?!1:t.text==n.value}),r.isOldIE){var rt=!1,at=function(n){if(!rt){var t=s.value;if(!h&&t&&t!=l){if(n&&t==l[0])return ut.schedule();ft(t);rt=!0;y();rt=!1}}},ut=u.delayedCall(at);i.addListener(s,"propertychange",at);vt={13:1,27:1};i.addListener(s,"keyup",function(n){if(h&&(!s.value||vt[n.keyCode])&&setTimeout(g,0),(s.value.charCodeAt(0)||0)<129)return ut.call();h?ot():dt()});i.addListener(s,"keydown",function(){ut.schedule(50)})}yt=function(){b?b=!1:it(s)?(t.selectAll(),c()):a&&c(t.selection.isEmpty())};a=null;this.setInputHandler=function(n){a=n};this.getInputHandler=function(){return a};var d=!1,ft=function(n){a&&(n=a(n),a=null);tt?(c(),n&&t.onPaste(n),tt=!1):n==l.charAt(0)?d?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):(n.substring(0,2)==l?n=n.substr(2):n.charAt(0)==l.charAt(0)?n=n.substr(1):n.charAt(n.length-1)==l.charAt(0)&&(n=n.slice(0,-1)),n.charAt(n.length-1)==l.charAt(0)&&(n=n.slice(0,-1)),n&&t.onTextInput(n));d&&(d=!1)},gt=function(){if(!h){var n=s.value;ft(n);y()}},et=function(n,t,i){var r=n.clipboardData||window.clipboardData,u;if(r&&!e){u=o||i?"Text":"text/plain";try{return t?r.setData(u,t)!==!1:r.getData(u)}catch(n){if(!i)return et(n,t,!0)}}},pt=function(n,r){var u=t.getCopyText();if(!u)return i.preventDefault(n);et(n,u)?(r?t.onCut():t.onCopy(),i.preventDefault(n)):(b=!0,s.value=u,s.select(),setTimeout(function(){b=!1;y();c();r?t.onCut():t.onCopy()}))},wt=function(n){pt(n,!0)},bt=function(n){pt(n,!1)},kt=function(n){var u=et(n);typeof u=="string"?(u&&t.onPaste(u,n),r.isIE&&setTimeout(c),i.preventDefault(n)):(s.value="",tt=!0)};i.addCommandKeyListener(s,t.onCommandKey.bind(t));i.addListener(s,"select",yt);i.addListener(s,"input",gt);i.addListener(s,"cut",wt);i.addListener(s,"copy",bt);i.addListener(s,"paste",kt);(!("oncut"in s)||!("oncopy"in s)||!("onpaste"in s))&&i.addListener(n,"keydown",function(n){if((!r.isMac||n.metaKey)&&n.ctrlKey)switch(n.keyCode){case 67:bt(n);break;case 86:kt(n);break;case 88:wt(n)}});var dt=function(){h||!t.onCompositionStart||t.$readOnly||(h={},h.canUndo=t.session.$undoManager,t.onCompositionStart(),setTimeout(ot,0),t.on("mousedown",g),h.canUndo&&!t.selection.isEmpty()&&(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup())},ot=function(){var n,i;h&&t.onCompositionUpdate&&!t.$readOnly&&(n=s.value.replace(/\x01/g,""),h.lastValue!==n)&&(t.onCompositionUpdate(n),h.lastValue&&t.undo(),h.canUndo&&(h.lastValue=n),h.lastValue&&(i=t.selection.getRange(),t.insert(h.lastValue),t.session.markUndoGroup(),h.range=t.selection.getRange(),t.selection.setRange(i),t.selection.clearSelection()))},g=function(n){var i,r;t.onCompositionEnd&&!t.$readOnly&&(i=h,h=!1,r=setTimeout(function(){r=null;var n=s.value.replace(/\x01/g,"");h||(n==i.lastValue?y():!i.lastValue&&n&&(y(),ft(n)))}),a=function(n){return r&&clearTimeout(r),n=n.replace(/\x01/g,""),n==i.lastValue?"":(i.lastValue&&r&&t.undo(),n)},t.onCompositionEnd(),t.removeListener("mousedown",g),n.type=="compositionend"&&i.range&&t.selection.setRange(i.range))},st=u.delayedCall(ot,50);i.addListener(s,"compositionstart",dt);r.isGecko?i.addListener(s,"text",function(){st.schedule()}):(i.addListener(s,"keyup",function(){st.schedule()}),i.addListener(s,"keydown",function(){st.schedule()}));i.addListener(s,"compositionend",g);this.getElement=function(){return s};this.setReadOnly=function(n){s.readOnly=n};this.onContextMenu=function(n){d=!0;c(t.selection.isEmpty());t._emit("nativecontextmenu",{target:t,domEvent:n});this.moveToMouse(n,!0)};this.moveToMouse=function(n,u){if(u||!r.isOldIE){p||(p=s.style.cssText);s.style.cssText=(u?"z-index:100000;":"")+"height:"+s.style.height+";"+(r.isIE?"opacity:0.1;":"");var e=t.container.getBoundingClientRect(),c=f.computedStyle(t.container),o=e.top+(parseInt(c.borderTopWidth)||0),l=e.left+(parseInt(e.borderLeftWidth)||0),a=e.bottom-o-s.clientHeight-2,h=function(n){s.style.left=n.clientX-l-2+"px";s.style.top=Math.min(n.clientY-o-2,a)+"px"};(h(n),n.type=="mousedown")&&(t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),clearTimeout(ht),r.isWin&&!r.isOldIE&&i.capture(t.container,h,w))}};this.onContextMenuClose=w;nt=function(n){t.textInput.onContextMenu(n);w()};i.addListener(s,"mouseup",nt);i.addListener(s,"mousedown",function(n){n.preventDefault();w()});i.addListener(t.renderer.scroller,"contextmenu",nt);i.addListener(s,"contextmenu",nt)};t.TextInput=s});define("ace/mouse/default_handlers",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(n,t){"use strict";function i(n){var t,i;n.$clickSelection=null;t=n.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(n));t.setDefaultHandler("dblclick",this.onDoubleClick.bind(n));t.setDefaultHandler("tripleclick",this.onTripleClick.bind(n));t.setDefaultHandler("quadclick",this.onQuadClick.bind(n));t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(n));t.setDefaultHandler("touchmove",this.onTouchMove.bind(n));i=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];i.forEach(function(t){n[t]=this[t]},this);n.selectByLines=this.extendSelectionBy.bind(n,"getLineRange");n.selectByWords=this.extendSelectionBy.bind(n,"getWordRange")}function u(n,t,i,r){return Math.sqrt(Math.pow(i-n,2)+Math.pow(r-t,2))}function r(n,t){var i;return i=n.start.row==n.end.row?2*t.column-n.start.column-n.end.column:n.start.row!=n.end.row-1||n.start.column||n.end.column?2*t.row-n.start.row-n.end.row:t.column-4,i<0?{cursor:n.start,anchor:n.end}:{cursor:n.end,anchor:n.start}}var e=n("../lib/dom"),o=n("../lib/event"),s=n("../lib/useragent"),f=0;(function(){this.onMouseDown=function(n){var e=n.inSelection(),r=n.getDocumentPosition(),t,i,u,f;if(this.mousedownEvent=n,t=this.editor,i=n.getButton(),i!==0){u=t.getSelectionRange();f=u.isEmpty();t.$blockScrolling++;(f||i==1)&&t.selection.moveToPosition(r);t.$blockScrolling--;i==2&&t.textInput.onContextMenu(n.domEvent);return}if(this.mousedownEvent.time=Date.now(),e&&!t.isFocused()&&(t.focus(),this.$focusTimout&&!this.$clickSelection&&!t.inMultiSelectMode)){this.setState("focusWait");this.captureMouse(n);return}return this.captureMouse(n),this.startSelect(r,n.domEvent._clicks>1),n.preventDefault()};this.startSelect=function(n,t){n=n||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var i=this.editor;i.$blockScrolling++;this.mousedownEvent.getShiftKey()?i.selection.selectToPosition(n):t||i.selection.moveToPosition(n);t||this.select();i.renderer.scroller.setCapture&&i.renderer.scroller.setCapture();i.setStyle("ace_selecting");this.setState("select");i.$blockScrolling--};this.select=function(){var t,n=this.editor,i=n.renderer.screenToTextCoordinates(this.x,this.y),u,f;n.$blockScrolling++;this.$clickSelection&&(u=this.$clickSelection.comparePoint(i),u==-1?t=this.$clickSelection.end:u==1?t=this.$clickSelection.start:(f=r(this.$clickSelection,i),i=f.cursor,t=f.anchor),n.selection.setSelectionAnchor(t.row,t.column));n.selection.selectToPosition(i);n.$blockScrolling--;n.renderer.scrollCursorIntoView()};this.extendSelectionBy=function(n){var f,u=this.editor,t=u.renderer.screenToTextCoordinates(this.x,this.y),i=u.selection[n](t.row,t.column),e,o,s;u.$blockScrolling++;this.$clickSelection&&(e=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end),e==-1&&o<=0?(f=this.$clickSelection.end,(i.end.row!=t.row||i.end.column!=t.column)&&(t=i.start)):o==1&&e>=0?(f=this.$clickSelection.start,(i.start.row!=t.row||i.start.column!=t.column)&&(t=i.end)):e==-1&&o==1?(t=i.end,f=i.start):(s=r(this.$clickSelection,t),t=s.cursor,f=s.anchor),u.selection.setSelectionAnchor(f.row,f.column));u.selection.selectToPosition(t);u.$blockScrolling--;u.renderer.scrollCursorIntoView()};this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null;this.editor.unsetStyle("ace_selecting");this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()};this.focusWait=function(){var n=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(n>f||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())};this.onDoubleClick=function(n){var i=n.getDocumentPosition(),r=this.editor,u=r.session,t=u.getBracketRange(i);t?(t.isEmpty()&&(t.start.column--,t.end.column++),this.setState("select")):(t=r.selection.getWordRange(i.row,i.column),this.setState("selectByWords"));this.$clickSelection=t;this.select()};this.onTripleClick=function(n){var r=n.getDocumentPosition(),i=this.editor,t;this.setState("selectByLines");t=i.getSelectionRange();t.isMultiLine()&&t.contains(r.row,r.column)?(this.$clickSelection=i.selection.getLineRange(t.start.row),this.$clickSelection.end=i.selection.getLineRange(t.end.row).end):this.$clickSelection=i.selection.getLineRange(r.row);this.select()};this.onQuadClick=function(){var n=this.editor;n.selectAll();this.$clickSelection=n.getSelectionRange();this.setState("selectAll")};this.onMouseWheel=function(n){if(!n.getAccelKey()){n.getShiftKey()&&n.wheelY&&!n.wheelX&&(n.wheelX=n.wheelY,n.wheelY=0);var t=n.domEvent.timeStamp,r=t-(this.$lastScrollTime||0),i=this.editor,u=i.renderer.isScrollableBy(n.wheelX*n.speed,n.wheelY*n.speed);if(u||r<200)return this.$lastScrollTime=t,i.renderer.scrollBy(n.wheelX*n.speed,n.wheelY*n.speed),n.stop()}};this.onTouchMove=function(n){var t=n.domEvent.timeStamp,r=t-(this.$lastScrollTime||0),i=this.editor,u=i.renderer.isScrollableBy(n.wheelX*n.speed,n.wheelY*n.speed);if(u||r<200)return this.$lastScrollTime=t,i.renderer.scrollBy(n.wheelX*n.speed,n.wheelY*n.speed),n.stop()}}).call(i.prototype);t.DefaultHandlers=i});define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(n,t){"use strict";function r(n){this.isOpen=!1;this.$element=null;this.$parentNode=n}var u=n("./lib/oop"),i=n("./lib/dom");(function(){this.$init=function(){return this.$element=i.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element};this.getElement=function(){return this.$element||this.$init()};this.setText=function(n){i.setInnerText(this.getElement(),n)};this.setHtml=function(n){this.getElement().innerHTML=n};this.setPosition=function(n,t){this.getElement().style.left=n+"px";this.getElement().style.top=t+"px"};this.setClassName=function(n){i.addCssClass(this.getElement(),n)};this.show=function(n,t,i){n!=null&&this.setText(n);t!=null&&i!=null&&this.setPosition(t,i);this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)};this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)};this.getHeight=function(){return this.getElement().offsetHeight};this.getWidth=function(){return this.getElement().offsetWidth}}).call(r.prototype);t.Tooltip=r});define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(n,t){"use strict";function u(n){function a(){var f=e.getDocumentPosition().row,i=l.$annotations[f],o,a,r;if(!i||(o=t.session.getLength(),f==o&&(a=t.renderer.pixelToScreenCoordinates(0,e.y).row,r=e.$pos,a>t.session.documentToScreenRow(r.row,r.column))))return u();if(h!=i)if(h=i.text.join("<br/>"),s.setHtml(h),s.show(),t._signal("showGutterTooltip",s),t.on("mousewheel",u),n.$tooltipFollowsMouse)c(e);else{var p=e.domEvent.target,v=p.getBoundingClientRect(),y=s.getElement().style;y.left=v.right+"px";y.top=v.bottom+"px"}}function u(){r&&(r=clearTimeout(r));h&&(s.hide(),h=null,t._signal("hideGutterTooltip",s),t.removeEventListener("mousewheel",u))}function c(n){s.setPosition(n.x,n.y)}var t=n.editor,l=t.renderer.$gutterLayer,s=new i(t.container),r,e,h;n.editor.setDefaultHandler("guttermousedown",function(i){var u,r,f;if(t.isFocused()&&i.getButton()==0&&(u=l.getRegion(i),u!="foldWidgets")){if(r=i.getDocumentPosition().row,f=t.session.selection,i.getShiftKey())f.selectTo(r,0);else{if(i.domEvent.detail==2)return t.selectAll(),i.preventDefault();n.$clickSelection=t.selection.getLineRange(r)}return n.setState("selectByLines"),n.captureMouse(i),i.preventDefault()}});n.editor.setDefaultHandler("guttermousemove",function(t){var i=t.domEvent.target||t.domEvent.srcElement;if(f.hasCssClass(i,"ace_fold-widget"))return u();(h&&n.$tooltipFollowsMouse&&c(t),e=t,r)||(r=setTimeout(function(){r=null;e&&!n.isMousePressed?a():u()},50))});o.addListener(t.renderer.$gutter,"mouseout",function(){(e=null,h&&!r)&&(r=setTimeout(function(){r=null;u()},50))});t.on("changeSession",u)}function i(n){r.call(this,n)}var f=n("../lib/dom"),e=n("../lib/oop"),o=n("../lib/event"),r=n("../tooltip").Tooltip;e.inherits(i,r),function(){this.setPosition=function(n,t){var i=window.innerWidth||document.documentElement.clientWidth,e=window.innerHeight||document.documentElement.clientHeight,u=this.getWidth(),f=this.getHeight();n+=15;t+=15;n+u>i&&(n-=n+u-i);t+f>e&&(t-=20+f);r.prototype.setPosition.call(this,n,t)}}.call(i.prototype);t.GutterHandler=u});define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(n,t){"use strict";var i=n("../lib/event"),r=n("../lib/useragent"),u=t.MouseEvent=function(n,t){this.domEvent=n;this.editor=t;this.x=this.clientX=n.clientX;this.y=this.clientY=n.clientY;this.$pos=null;this.$inSelection=null;this.propagationStopped=!1;this.defaultPrevented=!1};(function(){this.stopPropagation=function(){i.stopPropagation(this.domEvent);this.propagationStopped=!0};this.preventDefault=function(){i.preventDefault(this.domEvent);this.defaultPrevented=!0};this.stop=function(){this.stopPropagation();this.preventDefault()};this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)};this.inSelection=function(){var i,n,t;return this.$inSelection!==null?this.$inSelection:(i=this.editor,n=i.getSelectionRange(),n.isEmpty()?this.$inSelection=!1:(t=this.getDocumentPosition(),this.$inSelection=n.contains(t.row,t.column)),this.$inSelection)};this.getButton=function(){return i.getButton(this.domEvent)};this.getShiftKey=function(){return this.domEvent.shiftKey};this.getAccelKey=r.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(u.prototype)});define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(n,t){"use strict";function f(n){function ct(n,i){var r=Date.now(),e=!i||n.row!=i.row,o=!i||n.column!=i.column,f;!k||e||o?(t.$blockScrolling+=1,t.moveCursorToPosition(n),t.$blockScrolling-=1,k=r,rt={x:v,y:y}):(f=u(rt.x,rt.y,v,y),f>h?k=null:r-k>=s&&(t.renderer.scrollCursorIntoView(),k=null))}function lt(n,i){var e=Date.now(),s=t.renderer.layerConfig.lineHeight,h=t.renderer.layerConfig.characterWidth,f=t.renderer.scroller.getBoundingClientRect(),r={x:{left:v-f.left,right:f.right-v},y:{top:y-f.top,bottom:f.bottom-y}},c=Math.min(r.x.left,r.x.right),l=Math.min(r.y.top,r.y.bottom),u={row:n.row,column:n.column};c/h<=2&&(u.column+=r.x.left<r.x.right?-3:2);l/s<=1&&(u.row+=r.y.top<r.y.bottom?-1:1);var a=n.row!=u.row,p=n.column!=u.column,w=!i||n.row!=i.row;a||p&&!w?g?e-g>=o&&t.renderer.scrollCursorIntoView(u):g=e:g=null}function ut(){var n=f;f=t.renderer.screenToTextCoordinates(v,y);ct(f,n);lt(f,n)}function ft(){c=t.selection.toOrientedRange();a=t.session.addMarker(c,"ace_selection",t.getSelectionStyle());t.clearSelection();t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1);clearInterval(it);ut();it=setInterval(ut,20);p=0;i.addListener(document,"mousemove",et)}function tt(){clearInterval(it);t.session.removeMarker(a);a=null;t.$blockScrolling+=1;t.selection.fromOrientedRange(c);t.$blockScrolling-=1;t.isFocused()&&!nt&&t.renderer.$cursorLayer.setBlinking(!t.getReadOnly());c=null;f=null;p=0;g=null;k=null;i.removeListener(document,"mousemove",et)}function et(){d==null&&(d=setTimeout(function(){d!=null&&a&&tt()},20))}function ot(n){var t=n.types;return!t||Array.prototype.some.call(t,function(n){return n=="text/plain"||n=="Text"})}function st(n){var u=["copy","copymove","all","uninitialized"],f=r.isMac?n.altKey:n.ctrlKey,i="uninitialized",t;try{i=n.dataTransfer.effectAllowed.toLowerCase()}catch(n){}return t="none",f&&u.indexOf(i)>=0?t="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(i)>=0?t="move":u.indexOf(i)>=0&&(t="copy"),t}var t=n.editor,w=e.createElement("img"),ht,l,a,v,y,it,c,f,p,b,nt,g,k,rt,d;w.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";r.isOpera&&(w.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");ht=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];ht.forEach(function(t){n[t]=this[t]},this);t.addEventListener("mousedown",this.onMouseDown.bind(n));l=t.container;p=0;this.onDragStart=function(n){var u,i;if(this.cancelDrag||!l.draggable)return u=this,setTimeout(function(){u.startSelect();u.captureMouse(n)},0),n.preventDefault();c=t.getSelectionRange();i=n.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove";r.isOpera&&(t.container.appendChild(w),w.scrollTop=0);i.setDragImage&&i.setDragImage(w,0,0);r.isOpera&&t.container.removeChild(w);i.clearData();i.setData("Text",t.session.getTextRange());nt=!0;this.setState("drag")};this.onDragEnd=function(n){if(l.draggable=!1,nt=!1,this.setState(null),!t.getReadOnly()){var i=n.dataTransfer.dropEffect;b||i!="move"||t.session.remove(t.getSelectionRange());t.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging");this.editor.renderer.setCursorStyle("")};this.onDragEnter=function(n){if(!t.getReadOnly()&&ot(n.dataTransfer))return v=n.clientX,y=n.clientY,a||ft(),p++,n.dataTransfer.dropEffect=b=st(n),i.preventDefault(n)};this.onDragOver=function(n){if(!t.getReadOnly()&&ot(n.dataTransfer))return v=n.clientX,y=n.clientY,a||(ft(),p++),d!==null&&(d=null),n.dataTransfer.dropEffect=b=st(n),i.preventDefault(n)};this.onDragLeave=function(n){return p--,p<=0&&a?(tt(),b=null,i.preventDefault(n)):void 0};this.onDrop=function(n){var r,u;if(f){if(r=n.dataTransfer,nt)switch(b){case"move":c=c.contains(f.row,f.column)?{start:f,end:f}:t.moveText(c,f);break;case"copy":c=t.moveText(c,f,!0)}else u=r.getData("Text"),c={start:f,end:t.session.insert(f,u)},t.focus(),b=null;return tt(),i.preventDefault(n)}};i.addListener(l,"dragstart",this.onDragStart.bind(n));i.addListener(l,"dragend",this.onDragEnd.bind(n));i.addListener(l,"dragenter",this.onDragEnter.bind(n));i.addListener(l,"dragover",this.onDragOver.bind(n));i.addListener(l,"dragleave",this.onDragLeave.bind(n));i.addListener(l,"drop",this.onDrop.bind(n));d=null}function u(n,t,i,r){return Math.sqrt(Math.pow(i-n,2)+Math.pow(r-t,2))}var e=n("../lib/dom"),i=n("../lib/event"),r=n("../lib/useragent"),o=200,s=200,h=5;(function(){this.dragWait=function(){var n=Date.now()-this.mousedownEvent.time;n>this.editor.getDragDelay()&&this.startDrag()};this.dragWaitEnd=function(){var n=this.editor.container;n.draggable=!1;this.startSelect(this.mousedownEvent.getDocumentPosition());this.selectEnd()};this.dragReadyEnd=function(){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly());this.editor.unsetStyle("ace_dragging");this.editor.renderer.setCursorStyle("");this.dragWaitEnd()};this.startDrag=function(){var n,t,i;this.cancelDrag=!1;n=this.editor;t=n.container;t.draggable=!0;n.renderer.$cursorLayer.setBlinking(!1);n.setStyle("ace_dragging");i=r.isWin?"default":"move";n.renderer.setCursorStyle(i);this.setState("dragReady")};this.onMouseDrag=function(){var t=this.editor.container,n;r.isIE&&this.state=="dragReady"&&(n=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),n>3&&t.dragDrop());this.state==="dragWait"&&(n=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition())))};this.onMouseDown=function(n){var t,u;if(this.$dragEnabled){this.mousedownEvent=n;var i=this.editor,f=n.inSelection(),e=n.getButton(),o=n.domEvent.detail||1;if(o===1&&e===0&&f){if(n.editor.inMultiSelectMode&&(n.getAccelKey()||n.getShiftKey()))return;this.mousedownEvent.time=Date.now();t=n.domEvent.target||n.domEvent.srcElement;"unselectable"in t&&(t.unselectable="on");i.getDragDelay()?(r.isWebKit&&(this.cancelDrag=!0,u=i.container,u.draggable=!0),this.setState("dragWait")):this.startDrag();this.captureMouse(n,this.onMouseDrag.bind(this));n.defaultPrevented=!0}}}}).call(f.prototype);t.DragdropHandler=f});define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(n,t){"use strict";var i=n("./dom");t.get=function(n,t){var i=new XMLHttpRequest;i.open("GET",n,!0);i.onreadystatechange=function(){i.readyState===4&&t(i.responseText)};i.send(null)};t.loadScript=function(n,t){var u=i.getDocumentHead(),r=document.createElement("script");r.src=n;u.appendChild(r);r.onload=r.onreadystatechange=function(n,i){(i||!r.readyState||r.readyState=="loaded"||r.readyState=="complete")&&(r=r.onload=r.onreadystatechange=null,i||t())}};t.qualifyURL=function(n){var t=document.createElement("a");return t.href=n,t.href}});define("ace/lib/event_emitter",["require","exports","module"],function(n,t){"use strict";var i={},r=function(){this.propagationStopped=!0},u=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(n,t){var i,f,e;if(this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={}),i=this._eventRegistry[n]||[],f=this._defaultHandlers[n],i.length||f){for(typeof t=="object"&&t||(t={}),t.type||(t.type=n),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=u),i=i.slice(),e=0;e<i.length;e++)if(i[e](t,this),t.propagationStopped)break;if(f&&!t.defaultPrevented)return f(t,this)}};i._signal=function(n,t){var i=(this._eventRegistry||{})[n],r;if(i)for(i=i.slice(),r=0;r<i.length;r++)i[r](t,this)};i.once=function(n,t){var i=this;t&&this.addEventListener(n,function r(){i.removeEventListener(n,r);t.apply(null,arguments)})};i.setDefaultHandler=function(n,t){var i=this._defaultHandlers,f,r,u;i||(i=this._defaultHandlers={_disabled_:{}});i[n]&&(f=i[n],r=i._disabled_[n],r||(i._disabled_[n]=r=[]),r.push(f),u=r.indexOf(t),u!=-1&&r.splice(u,1));i[n]=t};i.removeDefaultHandler=function(n,t){var r=this._defaultHandlers,i,f,u;r&&(i=r._disabled_[n],r[n]==t?(f=r[n],i&&this.setDefaultHandler(n,i.pop())):i&&(u=i.indexOf(t),u!=-1&&i.splice(u,1)))};i.on=i.addEventListener=function(n,t,i){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[n];return r||(r=this._eventRegistry[n]=[]),r.indexOf(t)==-1&&r[i?"unshift":"push"](t),t};i.off=i.removeListener=i.removeEventListener=function(n,t){var i,r;(this._eventRegistry=this._eventRegistry||{},i=this._eventRegistry[n],i)&&(r=i.indexOf(t),r!==-1&&i.splice(r,1))};i.removeAllListeners=function(n){this._eventRegistry&&(this._eventRegistry[n]=[])};t.EventEmitter=i});define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(n,t){"no use strict";function i(){typeof console!="undefined"&&console.warn&&console.warn.apply(console,arguments)}function f(n,t){var i=new Error(n);i.data=t;typeof console=="object"&&console.error&&console.error(i);setTimeout(function(){throw i;})}var r=n("./oop"),e=n("./event_emitter").EventEmitter,o={setOptions:function(n){Object.keys(n).forEach(function(t){this.setOption(t,n[t])},this)},getOptions:function(n){var t={};return n?Array.isArray(n)||(t=n,n=Object.keys(t)):n=Object.keys(this.$options),n.forEach(function(n){t[n]=this.getOption(n)},this),t},setOption:function(n,t){if(this["$"+n]!==t){var r=this.$options[n];if(!r)return i('misspelled option "'+n+'"');if(r.forwardTo)return this[r.forwardTo]&&this[r.forwardTo].setOption(n,t);r.handlesSet||(this["$"+n]=t);r&&r.set&&r.set.call(this,t)}},getOption:function(n){var t=this.$options[n];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(n):t&&t.get?t.get.call(this):this["$"+n]:i('misspelled option "'+n+'"')}},u=function(){this.$defaultOptions={}};(function(){r.implement(this,e);this.defineOptions=function(n,t,i){return n.$options||(this.$defaultOptions[t]=n.$options={}),Object.keys(i).forEach(function(t){var r=i[t];typeof r=="string"&&(r={forwardTo:r});r.name||(r.name=t);n.$options[r.name]=r;"initialValue"in r&&(n["$"+r.name]=r.initialValue)}),r.implement(n,o),this};this.resetOptions=function(n){Object.keys(n.$options).forEach(function(t){var i=n.$options[t];"value"in i&&n.setOption(t,i.value)})};this.setDefaultValue=function(n,t,i){var r=this.$defaultOptions[n]||(this.$defaultOptions[n]={});r[t]&&(r.forwardTo?this.setDefaultValue(r.forwardTo,t,i):r[t].value=i)};this.setDefaultValues=function(n,t){Object.keys(t).forEach(function(i){this.setDefaultValue(n,i,t[i])},this)};this.warn=i;this.reportError=f}).call(u.prototype);t.AppConfig=u});define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/app_config"],function(n,t,i){"no use strict";function f(f){var s,h,y,p,c,d,l,w,a;if(u&&u.document){r.packaged=f||n.packaged||i.packaged||u.define&&define.packaged;var o={},v="",b=document.currentScript||document._currentScript,g=b&&b.ownerDocument||document,k=g.getElementsByTagName("script");for(s=0;s<k.length;s++)if(h=k[s],y=h.src||h.getAttribute("src"),y){for(p=h.attributes,c=0,d=p.length;c<d;c++)l=p[c],l.name.indexOf("data-ace-")===0&&(o[e(l.name.replace(/^data-ace-/,""))]=l.value);w=y.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);w&&(v=w[1])}v&&(o.base=o.base||v,o.packaged=!0);o.basePath=o.base;o.workerPath=o.workerPath||o.base;o.modePath=o.modePath||o.base;o.themePath=o.themePath||o.base;delete o.base;for(a in o)typeof o[a]!="undefined"&&t.set(a,o[a])}}function e(n){return n.replace(/-(.)/g,function(n,t){return t.toUpperCase()})}var o=n("./lib/lang"),c=n("./lib/oop"),s=n("./lib/net"),h=n("./lib/app_config").AppConfig,u,r;i.exports=t=new h;u=function(){return this||typeof window!="undefined"&&window}();r={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};t.get=function(n){if(!r.hasOwnProperty(n))throw new Error("Unknown config key: "+n);return r[n]};t.set=function(n,t){if(!r.hasOwnProperty(n))throw new Error("Unknown config key: "+n);r[n]=t};t.all=function(){return o.copyObject(r)};t.moduleUrl=function(n,t){var i,e,u,o,f;return r.$moduleUrls[n]?r.$moduleUrls[n]:(i=n.split("/"),t=t||i[i.length-2]||"",e=t=="snippets"?"/":"-",u=i[i.length-1],t=="worker"&&e=="-"&&(o=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g"),u=u.replace(o,"")),(!u||u==t)&&i.length>1&&(u=i[i.length-2]),f=r[t+"Path"],f==null?f=r.basePath:e=="/"&&(t=e=""),f&&f.slice(-1)!="/"&&(f+="/"),f+t+e+u+this.get("suffix"))};t.setModuleUrl=function(n,t){return r.$moduleUrls[n]=t};t.$loading={};t.loadModule=function(i,r){var u,e,f;Array.isArray(i)&&(e=i[0],i=i[1]);try{u=n(i)}catch(o){}if(u&&!t.$loading[i])return r&&r(u);if(t.$loading[i]||(t.$loading[i]=[]),t.$loading[i].push(r),!(t.$loading[i].length>1)){if(f=function(){n([i],function(n){t._emit("load.module",{name:i,module:n});var r=t.$loading[i];t.$loading[i]=null;r.forEach(function(t){t&&t(n)})})},!t.get("packaged"))return f();s.loadScript(t.moduleUrl(i,e),f)}};t.init=f});define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(n,t){"use strict";var i=n("../lib/event"),u=n("../lib/useragent"),e=n("./default_handlers").DefaultHandlers,o=n("./default_gutter_handler").GutterHandler,r=n("./mouse_event").MouseEvent,s=n("./dragdrop_handler").DragdropHandler,h=n("../config"),f=function(n){var h=this,r,f,t;this.editor=n;new e(this);new o(this);new s(this);r=function(){var t=!document.hasFocus||!document.hasFocus()||!n.isFocused()&&document.activeElement==(n.textInput&&n.textInput.getElement());t&&window.focus();n.focus()};f=n.renderer.getMouseEventTarget();i.addListener(f,"click",this.onMouseEvent.bind(this,"click"));i.addListener(f,"mousemove",this.onMouseMove.bind(this,"mousemove"));i.addMultiMouseDownListener([f,n.renderer.scrollBarV&&n.renderer.scrollBarV.inner,n.renderer.scrollBarH&&n.renderer.scrollBarH.inner,n.textInput&&n.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent");i.addMouseWheelListener(n.container,this.onMouseWheel.bind(this,"mousewheel"));i.addTouchMoveListener(n.container,this.onTouchMove.bind(this,"touchmove"));t=n.renderer.$gutter;i.addListener(t,"mousedown",this.onMouseEvent.bind(this,"guttermousedown"));i.addListener(t,"click",this.onMouseEvent.bind(this,"gutterclick"));i.addListener(t,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick"));i.addListener(t,"mousemove",this.onMouseEvent.bind(this,"guttermousemove"));i.addListener(f,"mousedown",r);i.addListener(t,"mousedown",r);u.isIE&&n.renderer.scrollBarV&&(i.addListener(n.renderer.scrollBarV.element,"mousedown",r),i.addListener(n.renderer.scrollBarH.element,"mousedown",r));n.on("mousemove",function(t){if(!h.state&&!h.$dragDelay&&h.$dragEnabled){var i=n.renderer.screenToTextCoordinates(t.x,t.y),r=n.session.selection.getRange(),u=n.renderer;!r.isEmpty()&&r.insideStart(i.row,i.column)?u.setCursorStyle("default"):u.setCursorStyle("")}})};(function(){this.onMouseEvent=function(n,t){this.editor._emit(n,new r(t,this.editor))};this.onMouseMove=function(n,t){var i=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;i&&i.length&&this.editor._emit(n,new r(t,this.editor))};this.onMouseWheel=function(n,t){var i=new r(t,this.editor);i.speed=this.$scrollSpeed*2;i.wheelX=t.wheelX;i.wheelY=t.wheelY;this.editor._emit(n,i)};this.onTouchMove=function(n,t){var i=new r(t,this.editor);i.speed=1;i.wheelX=t.wheelX;i.wheelY=t.wheelY;this.editor._emit(n,i)};this.setState=function(n){this.state=n};this.captureMouse=function(n,t){var e,c;this.x=n.x;this.y=n.y;this.isMousePressed=!0;e=this.editor.renderer;e.$keepTextAreaAtCursor&&(e.$keepTextAreaAtCursor=null);var f=this,o=function(n){if(n){if(u.isWebKit&&!n.which&&f.releaseMouse)return f.releaseMouse();f.x=n.clientX;f.y=n.clientY;t&&t(n);f.mouseEvent=new r(n,f.editor);f.$mouseMoved=!0}},s=function(n){clearInterval(c);h();f[f.state+"End"]&&f[f.state+"End"](n);f.state="";e.$keepTextAreaAtCursor==null&&(e.$keepTextAreaAtCursor=!0,e.$moveTextAreaToCursor());f.isMousePressed=!1;f.$onCaptureMouseMove=f.releaseMouse=null;n&&f.onMouseEvent("mouseup",n)},h=function(){f[f.state]&&f[f.state]();f.$mouseMoved=!1};if(u.isOldIE&&n.domEvent.type=="dblclick")return setTimeout(function(){s(n)});f.$onCaptureMouseMove=o;f.releaseMouse=i.capture(this.editor.container,o,s);c=setInterval(h,20)};this.releaseMouse=null;this.cancelContextMenu=function(){var n=function(t){t&&t.domEvent&&t.domEvent.type!="contextmenu"||(this.editor.off("nativecontextmenu",n),t&&t.domEvent&&i.stopEvent(t.domEvent))}.bind(this);setTimeout(n,10);this.editor.on("nativecontextmenu",n)}}).call(f.prototype);h.defineOptions(f.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:u.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}});t.MouseHandler=f});define("ace/mouse/fold_handler",["require","exports","module"],function(n,t){"use strict";function i(n){n.on("click",function(t){var u=t.getDocumentPosition(),i=n.session,r=i.getFoldAt(u.row,u.column,1);r&&(t.getAccelKey()?i.removeFold(r):i.expandFold(r),t.stop())});n.on("gutterclick",function(t){var u=n.renderer.$gutterLayer.getRegion(t),i,r;u=="foldWidgets"&&(i=t.getDocumentPosition().row,r=n.session,r.foldWidgets&&r.foldWidgets[i]&&n.session.onFoldWidgetClick(i,t),n.isFocused()||n.focus(),t.stop())});n.on("gutterdblclick",function(t){var o=n.renderer.$gutterLayer.getRegion(t),f;if(o=="foldWidgets"){var r=t.getDocumentPosition().row,i=n.session,e=i.getParentFoldRangeData(r,!0),u=e.range||e.firstRange;u&&(r=u.start.row,f=i.getFoldAt(r,i.getLine(r).length,1),f?i.removeFold(f):(i.addFold("...",u),n.renderer.scrollCursorIntoView({row:u.start.row,column:0})));t.stop()}})}t.FoldHandler=i});define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(n,t){"use strict";var r=n("../lib/keys"),u=n("../lib/event"),i=function(n){this.$editor=n;this.$data={editor:n};this.$handlers=[];this.setDefaultHandler(n.commands)};(function(){this.setDefaultHandler=function(n){this.removeKeyboardHandler(this.$defaultHandler);this.$defaultHandler=n;this.addKeyboardHandler(n,0)};this.setKeyboardHandler=function(n){var t=this.$handlers;if(t[t.length-1]!=n){while(t[t.length-1]&&t[t.length-1]!=this.$defaultHandler)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(n,1)}};this.addKeyboardHandler=function(n,t){if(n){typeof n!="function"||n.handleKeyboard||(n.handleKeyboard=n);var i=this.$handlers.indexOf(n);i!=-1&&this.$handlers.splice(i,1);t==undefined?this.$handlers.push(n):this.$handlers.splice(t,0,n);i==-1&&n.attach&&n.attach(this.$editor)}};this.removeKeyboardHandler=function(n){var t=this.$handlers.indexOf(n);return t==-1?!1:(this.$handlers.splice(t,1),n.detach&&n.detach(this.$editor),!0)};this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]};this.getStatusText=function(){var n=this.$data,t=n.editor;return this.$handlers.map(function(i){return i.getStatusText&&i.getStatusText(t,n)||""}).filter(Boolean).join(" ")};this.$callKeyboardHandlers=function(n,t,i,r){for(var f,e=!1,s=this.$editor.commands,o=this.$handlers.length;o--;)if((f=this.$handlers[o].handleKeyboard(this.$data,n,t,i,r),f&&f.command)&&(e=f.command=="null"?!0:s.exec(f.command,this.$editor,f.args,r),e&&r&&n!=-1&&f.passEvent!=1&&f.command.passEvent!=1&&u.stopEvent(r),e))break;return!e&&n==-1&&(f={command:"insertstring"},e=s.exec("insertstring",this.$editor,t)),e&&this.$editor._signal&&this.$editor._signal("keyboardActivity",f),e};this.onCommandKey=function(n,t,i){var u=r.keyCodeToString(i);this.$callKeyboardHandlers(t,u,i,n)};this.onTextInput=function(n){this.$callKeyboardHandlers(-1,n)}}).call(i.prototype);t.KeyBinding=i});define("ace/range",["require","exports","module"],function(n,t){"use strict";var r=function(n,t){return n.row-t.row||n.column-t.column},i=function(n,t,i,r){this.start={row:n,column:t};this.end={row:i,column:r}};(function(){this.isEqual=function(n){return this.start.row===n.start.row&&this.end.row===n.end.row&&this.start.column===n.start.column&&this.end.column===n.end.column};this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"};this.contains=function(n,t){return this.compare(n,t)==0};this.compareRange=function(n){var t,r=n.end,i=n.start;return t=this.compare(r.row,r.column),t==1?(t=this.compare(i.row,i.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(i.row,i.column),t==-1?-1:t==1?42:0)};this.comparePoint=function(n){return this.compare(n.row,n.column)};this.containsRange=function(n){return this.comparePoint(n.start)==0&&this.comparePoint(n.end)==0};this.intersects=function(n){var t=this.compareRange(n);return t==-1||t==0||t==1};this.isEnd=function(n,t){return this.end.row==n&&this.end.column==t};this.isStart=function(n,t){return this.start.row==n&&this.start.column==t};this.setStart=function(n,t){typeof n=="object"?(this.start.column=n.column,this.start.row=n.row):(this.start.row=n,this.start.column=t)};this.setEnd=function(n,t){typeof n=="object"?(this.end.column=n.column,this.end.row=n.row):(this.end.row=n,this.end.column=t)};this.inside=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)||this.isStart(n,t)?!1:!0:!1};this.insideStart=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)?!1:!0:!1};this.insideEnd=function(n,t){return this.compare(n,t)==0?this.isStart(n,t)?!1:!0:!1};this.compare=function(n,t){return!this.isMultiLine()&&n===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:n<this.start.row?-1:n>this.end.row?1:this.start.row===n?t>=this.start.column?0:-1:this.end.row===n?t<=this.end.column?0:1:0};this.compareStart=function(n,t){return this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.compareEnd=function(n,t){return this.end.row==n&&this.end.column==t?1:this.compare(n,t)};this.compareInside=function(n,t){return this.end.row==n&&this.end.column==t?1:this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.clipRows=function(n,t){var r,u;return this.end.row>t?r={row:t+1,column:0}:this.end.row<n&&(r={row:n,column:0}),this.start.row>t?u={row:t+1,column:0}:this.start.row<n&&(u={row:n,column:0}),i.fromPoints(u||this.start,r||this.end)};this.extend=function(n,t){var r=this.compare(n,t),u,f;return r==0?this:(r==-1?u={row:n,column:t}:f={row:n,column:t},i.fromPoints(u||this.start,f||this.end))};this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column};this.isMultiLine=function(){return this.start.row!==this.end.row};this.clone=function(){return i.fromPoints(this.start,this.end)};this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)};this.toScreenRange=function(n){var t=n.documentToScreenPosition(this.start),r=n.documentToScreenPosition(this.end);return new i(t.row,t.column,r.row,r.column)};this.moveBy=function(n,t){this.start.row+=n;this.start.column+=t;this.end.row+=n;this.end.column+=t}}).call(i.prototype);i.fromPoints=function(n,t){return new i(n.row,n.column,t.row,t.column)};i.comparePoints=r;i.comparePoints=function(n,t){return n.row-t.row||n.column-t.column};t.Range=i});define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(n,t){"use strict";var f=n("./lib/oop"),r=n("./lib/lang"),e=n("./lib/event_emitter").EventEmitter,i=n("./range").Range,u=function(n){this.session=n;this.doc=n.getDocument();this.clearSelection();this.lead=this.selectionLead=this.doc.createAnchor(0,0);this.anchor=this.selectionAnchor=this.doc.createAnchor(0,0);var t=this;this.lead.on("change",function(n){t._emit("changeCursor");t.$isEmpty||t._emit("changeSelection");!t.$keepDesiredColumnOnChange&&n.old.column!=n.value.column&&(t.$desiredColumn=null)});this.selectionAnchor.on("change",function(){t.$isEmpty||t._emit("changeSelection")})};(function(){f.implement(this,e);this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column};this.isMultiLine=function(){return this.isEmpty()?!1:this.getRange().isMultiLine()};this.getCursor=function(){return this.lead.getPosition()};this.setSelectionAnchor=function(n,t){this.anchor.setPosition(n,t);this.$isEmpty&&(this.$isEmpty=!1,this._emit("changeSelection"))};this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()};this.getSelectionLead=function(){return this.lead.getPosition()};this.shiftSelection=function(n){if(this.$isEmpty){this.moveCursorTo(this.lead.row,this.lead.column+n);return}var t=this.getSelectionAnchor(),i=this.getSelectionLead(),r=this.isBackwards();r&&t.column===0||this.setSelectionAnchor(t.row,t.column+n);(r||i.column!==0)&&this.$moveSelection(function(){this.moveCursorTo(i.row,i.column+n)})};this.isBackwards=function(){var n=this.anchor,t=this.lead;return n.row>t.row||n.row==t.row&&n.column>t.column};this.getRange=function(){var t=this.anchor,n=this.lead;return this.isEmpty()?i.fromPoints(n,n):this.isBackwards()?i.fromPoints(n,t):i.fromPoints(t,n)};this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))};this.selectAll=function(){var n=this.doc.getLength()-1;this.setSelectionAnchor(0,0);this.moveCursorTo(n,this.doc.getLine(n).length)};this.setRange=this.setSelectionRange=function(n,t){t?(this.setSelectionAnchor(n.end.row,n.end.column),this.selectTo(n.start.row,n.start.column)):(this.setSelectionAnchor(n.start.row,n.start.column),this.selectTo(n.end.row,n.end.column));this.getRange().isEmpty()&&(this.$isEmpty=!0);this.$desiredColumn=null};this.$moveSelection=function(n){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column);n.call(this)};this.selectTo=function(n,t){this.$moveSelection(function(){this.moveCursorTo(n,t)})};this.selectToPosition=function(n){this.$moveSelection(function(){this.moveCursorToPosition(n)})};this.moveTo=function(n,t){this.clearSelection();this.moveCursorTo(n,t)};this.moveToPosition=function(n){this.clearSelection();this.moveCursorToPosition(n)};this.selectUp=function(){this.$moveSelection(this.moveCursorUp)};this.selectDown=function(){this.$moveSelection(this.moveCursorDown)};this.selectRight=function(){this.$moveSelection(this.moveCursorRight)};this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)};this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)};this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)};this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)};this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)};this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)};this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)};this.getWordRange=function(n,t){if(typeof t=="undefined"){var i=n||this.lead;n=i.row;t=i.column}return this.session.getWordRange(n,t)};this.selectWord=function(){this.setSelectionRange(this.getWordRange())};this.selectAWord=function(){var n=this.getCursor(),t=this.session.getAWordRange(n.row,n.column);this.setSelectionRange(t)};this.getLineRange=function(n,t){var r=typeof n=="number"?n:this.lead.row,u,f=this.session.getFoldLine(r);return f?(r=f.start.row,u=f.end.row):u=r,t===!0?new i(r,0,u,this.session.getLine(u).length):new i(r,0,u+1,0)};this.selectLine=function(){this.setSelectionRange(this.getLineRange())};this.moveCursorUp=function(){this.moveCursorBy(-1,0)};this.moveCursorDown=function(){this.moveCursorBy(1,0)};this.moveCursorLeft=function(){var n=this.lead.getPosition(),i,t;(i=this.session.getFoldAt(n.row,n.column,-1))?this.moveCursorTo(i.start.row,i.start.column):n.column===0?n.row>0&&this.moveCursorTo(n.row-1,this.doc.getLine(n.row-1).length):(t=this.session.getTabSize(),this.session.isTabStop(n)&&this.doc.getLine(n.row).slice(n.column-t,n.column).split(" ").length-1==t?this.moveCursorBy(0,-t):this.moveCursorBy(0,-1))};this.moveCursorRight=function(){var n=this.lead.getPosition(),i,t;(i=this.session.getFoldAt(n.row,n.column,1))?this.moveCursorTo(i.end.row,i.end.column):this.lead.column==this.doc.getLine(this.lead.row).length?this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0):(t=this.session.getTabSize(),n=this.lead,this.session.isTabStop(n)&&this.doc.getLine(n.row).slice(n.column,n.column+t).split(" ").length-1==t?this.moveCursorBy(0,t):this.moveCursorBy(0,1))};this.moveCursorLineStart=function(){var t=this.lead.row,i=this.lead.column,u=this.session.documentToScreenRow(t,i),n=this.session.screenToDocumentPosition(u,0),f=this.session.getDisplayLine(t,null,n.row,n.column),r=f.match(/^\s*/);r[0].length==i||this.session.$useEmacsStyleLineStart||(n.column+=r[0].length);this.moveCursorToPosition(n)};this.moveCursorLineEnd=function(){var r=this.lead,n=this.session.getDocumentLastRowColumnPosition(r.row,r.column),t,i;this.lead.column==n.column&&(t=this.session.getLine(n.row),n.column==t.length&&(i=t.search(/\s+$/),i>0&&(n.column=i)));this.moveCursorTo(n.row,n.column)};this.moveCursorFileEnd=function(){var n=this.doc.getLength()-1,t=this.doc.getLine(n).length;this.moveCursorTo(n,t)};this.moveCursorFileStart=function(){this.moveCursorTo(0,0)};this.moveCursorLongWordRight=function(){var t=this.lead.row,n=this.lead.column,i=this.doc.getLine(t),u=i.substring(n),f,r;if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,r=this.session.getFoldAt(t,n,1),r){this.moveCursorTo(r.end.row,r.end.column);return}if((f=this.session.nonTokenRe.exec(u))&&(n+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,u=i.substring(n)),n>=i.length){this.moveCursorTo(t,i.length);this.moveCursorRight();t<this.doc.getLength()-1&&this.moveCursorWordRight();return}(f=this.session.tokenRe.exec(u))&&(n+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0);this.moveCursorTo(t,n)};this.moveCursorLongWordLeft=function(){var t=this.lead.row,n=this.lead.column,f,u,i,e;if(f=this.session.getFoldAt(t,n,-1)){this.moveCursorTo(f.start.row,f.start.column);return}if(u=this.session.getFoldStringAt(t,n,-1),u==null&&(u=this.doc.getLine(t).substring(0,n)),i=r.stringReverse(u),this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,(e=this.session.nonTokenRe.exec(i))&&(n-=this.session.nonTokenRe.lastIndex,i=i.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),n<=0){this.moveCursorTo(t,0);this.moveCursorLeft();t>0&&this.moveCursorWordLeft();return}(e=this.session.tokenRe.exec(i))&&(n-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0);this.moveCursorTo(t,n)};this.$shortWordEndIndex=function(n){var f,t=0,i,u=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,f=this.session.tokenRe.exec(n))t=this.session.tokenRe.lastIndex;else{while((i=n[t])&&u.test(i))t++;if(t<1)for(r.lastIndex=0;(i=n[t])&&!r.test(i);)if(r.lastIndex=0,t++,u.test(i)){if(t>2){t--;break}while((i=n[t])&&u.test(i))t++;if(t>2)break}}return r.lastIndex=0,t};this.moveCursorShortWordRight=function(){var n=this.lead.row,t=this.lead.column,u=this.doc.getLine(n),i=u.substring(t),r=this.session.getFoldAt(n,t,1),f,e;if(r)return this.moveCursorTo(r.end.row,r.end.column);if(t==u.length){f=this.doc.getLength();do n++,i=this.doc.getLine(n);while(n<f&&/^\s*$/.test(i));/^\s+/.test(i)||(i="");t=0}e=this.$shortWordEndIndex(i);this.moveCursorTo(n,t+e)};this.moveCursorShortWordLeft=function(){var t=this.lead.row,i=this.lead.column,u,n,f,e;if(u=this.session.getFoldAt(t,i,-1))return this.moveCursorTo(u.start.row,u.start.column);if(n=this.session.getLine(t).substring(0,i),i===0){do t--,n=this.doc.getLine(t);while(t>0&&/^\s*$/.test(n));i=n.length;/\s+$/.test(n)||(n="")}return f=r.stringReverse(n),e=this.$shortWordEndIndex(f),this.moveCursorTo(t,i-e)};this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()};this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()};this.moveCursorBy=function(n,t){var r=this.session.documentToScreenPosition(this.lead.row,this.lead.column),i;t===0&&(this.$desiredColumn?r.column=this.$desiredColumn:this.$desiredColumn=r.column);i=this.session.screenToDocumentPosition(r.row+n,r.column);n!==0&&t===0&&i.row===this.lead.row&&i.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[i.row]&&(i.row>0||n>0)&&i.row++;this.moveCursorTo(i.row,i.column+t,t===0)};this.moveCursorToPosition=function(n){this.moveCursorTo(n.row,n.column)};this.moveCursorTo=function(n,t,i){var r=this.session.getFoldAt(n,t,1);r&&(n=r.start.row,t=r.start.column);this.$keepDesiredColumnOnChange=!0;this.lead.setPosition(n,t);this.$keepDesiredColumnOnChange=!1;i||(this.$desiredColumn=null)};this.moveCursorToScreen=function(n,t,i){var r=this.session.screenToDocumentPosition(n,t);this.moveCursorTo(r.row,r.column,i)};this.detach=function(){this.lead.detach();this.anchor.detach();this.session=this.doc=null};this.fromOrientedRange=function(n){this.setSelectionRange(n,n.cursor==n.start);this.$desiredColumn=n.desiredColumn||this.$desiredColumn};this.toOrientedRange=function(n){var t=this.getRange();return n?(n.start.column=t.start.column,n.start.row=t.start.row,n.end.column=t.end.column,n.end.row=t.end.row):n=t,n.cursor=this.isBackwards()?n.start:n.end,n.desiredColumn=this.$desiredColumn,n};this.getRangeOfMovements=function(n){var t=this.getCursor(),r;try{return n(this),r=this.getCursor(),i.fromPoints(t,r)}catch(u){return i.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}};this.toJSON=function(){var n;return this.rangeCount?n=this.ranges.map(function(n){var t=n.clone();return t.isBackwards=n.cursor==n.start,t}):(n=this.getRange(),n.isBackwards=this.isBackwards()),n};this.fromJSON=function(n){var t,r;if(n.start==undefined){if(this.rangeList){for(this.toSingleRange(n[0]),t=n.length;t--;)r=i.fromPoints(n[t].start,n[t].end),n[t].isBackwards&&(r.cursor=r.start),this.addRange(r,!0);return}n=n[0]}this.rangeList&&this.toSingleRange(n);this.setSelectionRange(n,n.isBackwards)};this.isEqual=function(n){if((n.length||this.rangeCount)&&n.length!=this.rangeCount)return!1;if(!n.length||!this.ranges)return this.getRange().isEqual(n);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(n[t]))return!1;return!0}}).call(u.prototype);t.Selection=u});define("ace/tokenizer",["require","exports","module","ace/config"],function(n,t){"use strict";var u=n("./config"),i=2e3,r=function(n){var f,r,t,u,i;this.states=n;this.regExps={};this.matchMappings={};for(f in this.states){var c=this.states[f],e=[],o=0,s=this.matchMappings[f]={defaultToken:"text"},h="g",l=[];for(r=0;r<c.length;r++)(t=c[r],t.defaultToken&&(s.defaultToken=t.defaultToken),t.caseInsensitive&&(h="gi"),t.regex!=null)&&(t.regex instanceof RegExp&&(t.regex=t.regex.toString().slice(1,-1)),u=t.regex,i=new RegExp("(?:("+u+")|(.))").exec("a").length-2,Array.isArray(t.token)?t.token.length==1||i==1?t.token=t.token[0]:i-1!=t.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:t,groupCount:i-1}),t.token=t.token[0]):(t.tokenArray=t.token,t.token=null,t.onMatch=this.$arrayTokens):typeof t.token=="function"&&!t.onMatch&&(t.onMatch=i>1?this.$applyToken:t.token),i>1&&(/\\\d/.test(t.regex)?u=t.regex.replace(/\\([0-9]+)/g,function(n,t){return"\\"+(parseInt(t,10)+o+1)}):(i=1,u=this.removeCapturingGroups(t.regex)),!t.splitRegex&&typeof t.token!="string"&&l.push(t)),s[o]=r,o+=i,e.push(u),t.onMatch||(t.onMatch=null));e.length||(s[0]=0,e.push("$"));l.forEach(function(n){n.splitRegex=this.createSplitterRegexp(n.regex,h)},this);this.regExps[f]=new RegExp("("+e.join(")|(")+")|($)",h)}};(function(){this.$setMaxTokenCount=function(n){i=n|0};this.$applyToken=function(n){var u=this.splitRegex.exec(n).slice(1),i=this.token.apply(this,u),r,t,f;if(typeof i=="string")return[{type:i,value:n}];for(r=[],t=0,f=i.length;t<f;t++)u[t]&&(r[r.length]={type:i[t],value:u[t]});return r};this.$arrayTokens=function(n){var i,r,u,t,f;if(!n)return[];if(i=this.splitRegex.exec(n),!i)return"text";for(r=[],u=this.tokenArray,t=0,f=u.length;t<f;t++)i[t+1]&&(r[r.length]={type:u[t],value:i[t+1]});return r};this.removeCapturingGroups=function(n){return n.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(n,t){return t?"(?:":n})};this.createSplitterRegexp=function(n,t){if(n.indexOf("(?=")!=-1){var r=0,u=!1,i={};n.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(n,t,f,e,o,s){return u?u=o!="]":o?u=!0:e?(r==i.stack&&(i.end=s+1,i.stack=-1),r--):f&&(r++,f.length!=1&&(i.stack=r,i.start=s)),n});i.end!=null&&/^\)*$/.test(n.substr(i.end))&&(n=n.substring(0,i.start)+n.substr(i.end))}return n.charAt(0)!="^"&&(n="^"+n),n.charAt(n.length-1)!="$"&&(n+="$"),new RegExp(n,(t||"").replace("g",""))};this.getLineTokens=function(n,t){var f,r,c,p,a,b,o;t&&typeof t!="string"?(f=t.slice(0),t=f[0],t==="#tmp"&&(f.shift(),t=f.shift())):f=[];r=t||"start";c=this.states[r];c||(r="start",c=this.states[r]);p=this.matchMappings[r];a=this.regExps[r];a.lastIndex=0;for(var w,l=[],h=0,k=0,u={type:null,value:""};w=a.exec(n);){var s=p.defaultToken,e=null,v=w[0],y=a.lastIndex;for(y-v.length>h&&(b=n.substring(h,y-v.length),u.type==s?u.value+=b:(u.type&&l.push(u),u={type:s,value:b})),o=0;o<w.length-2;o++)if(w[o+1]!==undefined){e=c[p[o]];s=e.onMatch?e.onMatch(v,r,f):e.token;e.next&&(r=typeof e.next=="string"?e.next:e.next(r,f),c=this.states[r],c||(this.reportError("state doesn't exist",r),r="start",c=this.states[r]),p=this.matchMappings[r],h=y,a=this.regExps[r],a.lastIndex=y);break}if(v)if(typeof s=="string")!!e&&e.merge===!1||u.type!==s?(u.type&&l.push(u),u={type:s,value:v}):u.value+=v;else if(s)for(u.type&&l.push(u),u={type:null,value:""},o=0;o<s.length;o++)l.push(s[o]);if(h==n.length)break;if(h=y,k++>i){for(k>2*n.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:n});h<n.length;)u.type&&l.push(u),u={value:n.substring(h,h+=2e3),type:"overflow"};r="start";f=[];break}}return u.type&&l.push(u),f.length>1&&f[0]!==r&&f.unshift("#tmp",r),{tokens:l,state:f.length?f:r}};this.reportError=u.reportError}).call(r.prototype);t.Tokenizer=r});define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(n,t){"use strict";var r=n("../lib/lang"),i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(n,t){var r,u,f,i;if(!t){for(r in n)this.$rules[r]=n[r];return}for(r in n){for(u=n[r],f=0;f<u.length;f++)i=u[f],(i.next||i.onMatch)&&(typeof i.next=="string"&&i.next.indexOf(t)!==0&&(i.next=t+i.next),i.nextState&&i.nextState.indexOf(t)!==0&&(i.nextState=t+i.nextState));this.$rules[t+r]=u}};this.getRules=function(){return this.$rules};this.embedRules=function(n,t,i,u,f){var o=typeof n=="function"?(new n).getRules():n,s,h,e;if(u)for(e=0;e<u.length;e++)u[e]=t+u[e];else{u=[];for(s in o)u.push(t+s)}if(this.addRules(o,t),i)for(h=Array.prototype[f?"push":"unshift"],e=0;e<u.length;e++)h.apply(this.$rules[u[e]],r.deepCopy(i));this.$embeds||(this.$embeds=[]);this.$embeds.push(t)};this.getEmbeds=function(){return this.$embeds};var n=function(n,t){return(n!="start"||t.length)&&t.unshift(this.nextState,n),this.nextState},t=function(n,t){return t.shift(),t.shift()||"start"};this.normalizeRules=function(){function r(f){var c=i[f],h,e,l,a,o,s,y,v;for(c.processed=!0,h=0;h<c.length;h++){if(e=c[h],l=null,Array.isArray(e)&&(l=e,e={}),!e.regex&&e.start&&(e.regex=e.start,e.next||(e.next=[]),e.next.push({defaultToken:e.token},{token:e.token+".end",regex:e.end||e.start,next:"pop"}),e.token=e.token+".start",e.push=!0),a=e.next||e.push,a&&Array.isArray(a)?(o=e.stateName,o||(o=e.token,typeof o!="string"&&(o=o[0]||""),i[o]&&(o+=u++)),i[o]=a,e.next=o,r(o)):a=="pop"&&(e.next=t),e.push&&(e.nextState=e.next||e.push,e.next=n,delete e.push),e.rules)for(s in e.rules)i[s]?i[s].push&&i[s].push.apply(i[s],e.rules[s]):i[s]=e.rules[s];y=typeof e=="string"?e:typeof e.include=="string"?e.include:"";y&&(l=i[y]);l&&(v=[h,1].concat(l),e.noEscape&&(v=v.filter(function(n){return!n.next})),c.splice.apply(c,v),h--);e.keywordMap&&(e.token=this.createKeywordMapper(e.keywordMap,e.defaultToken||"text",e.caseInsensitive),delete e.defaultToken)}}var u=0,i=this.$rules;Object.keys(i).forEach(r,this)};this.createKeywordMapper=function(n,t,i,r){var u=Object.create(null);return Object.keys(n).forEach(function(t){var f=n[t],e,o;for(i&&(f=f.toLowerCase()),e=f.split(r||"|"),o=e.length;o--;)u[e[o]]=t}),Object.getPrototypeOf(u)&&(u.__proto__=null),this.$keywordList=Object.keys(u),n=null,i?function(n){return u[n.toLowerCase()]||t}:function(n){return u[n]||t}};this.getKeywords=function(){return this.$keywords}}).call(i.prototype);t.TextHighlightRules=i});define("ace/mode/behaviour",["require","exports","module"],function(n,t){"use strict";var i=function(){this.$behaviours={}};(function(){this.add=function(n,t,i){switch(undefined){case this.$behaviours:this.$behaviours={};case this.$behaviours[n]:this.$behaviours[n]={}}this.$behaviours[n][t]=i};this.addBehaviours=function(n){var t,i;for(t in n)for(i in n[t])this.add(t,i,n[t][i])};this.remove=function(n){this.$behaviours&&this.$behaviours[n]&&delete this.$behaviours[n]};this.inherit=function(n,t){var i;i=typeof n=="function"?(new n).getBehaviours(t):n.getBehaviours(t);this.addBehaviours(i)};this.getBehaviours=function(n){var i,t;if(!n)return this.$behaviours;for(i={},t=0;t<n.length;t++)this.$behaviours[n[t]]&&(i[n[t]]=this.$behaviours[n[t]]);return i}}).call(i.prototype);t.Behaviour=i});define("ace/token_iterator",["require","exports","module"],function(n,t){"use strict";var i=function(n,t,i){this.$session=n;this.$row=t;this.$rowTokens=n.getTokens(t);var r=n.getTokenAt(t,i);this.$tokenIndex=r?r.index:-1};(function(){this.stepBackward=function(){for(this.$tokenIndex-=1;this.$tokenIndex<0;){if(this.$row-=1,this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row);this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]};this.stepForward=function(){this.$tokenIndex+=1;for(var n;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,n||(n=this.$session.getLength()),this.$row>=n)return this.$row=n-1,null;this.$rowTokens=this.$session.getTokens(this.$row);this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]};this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]};this.getCurrentTokenRow=function(){return this.$row};this.getCurrentTokenColumn=function(){var i=this.$rowTokens,t=this.$tokenIndex,n=i[t].start;if(n!==undefined)return n;for(n=0;t>0;)t-=1,n+=i[t].value.length;return n};this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}}}).call(i.prototype);t.TokenIterator=i});define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,t){"use strict";var h=n("../../lib/oop"),c=n("../behaviour").Behaviour,o=n("../../token_iterator").TokenIterator,l=n("../../lib/lang"),s=["text","paren.rparen","punctuation.operator"],a=["text","paren.rparen","punctuation.operator","comment"],i,f={},u=function(n){var t=-1;if(n.multiSelect&&(t=n.selection.index,f.rangeCount!=n.multiSelect.rangeCount&&(f={rangeCount:n.multiSelect.rangeCount})),f[t])return i=f[t];i=f[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},e=function(n,t,i,r){var u=n.end.row-n.start.row;return{text:i+t+r,selection:[0,n.start.column+1,u,n.end.column+(u?0:1)]}},r=function(){this.add("braces","insertion",function(n,t,f,o,s){var h=f.getCursorPosition(),c=o.doc.getLine(h.row),b,y,d,p,a,k,v,w;if(s=="{"){if(u(f),b=f.getSelectionRange(),y=o.doc.getTextRange(b),y!==""&&y!=="{"&&f.getWrapBehavioursEnabled())return e(b,y,"{","}");if(r.isSaneInsertion(f,o))return/[\]\}\)]/.test(c[h.column])||f.inMultiSelectMode?(r.recordAutoInsert(f,o,"}"),{text:"{}",selection:[1,1]}):(r.recordMaybeInsert(f,o,"{"),{text:"{",selection:[1,1]})}else if(s=="}"){if(u(f),a=c.substring(h.column,h.column+1),a=="}"&&(d=o.$findOpeningBracket("}",{column:h.column+1,row:h.row}),d!==null&&r.isAutoInsertedClosing(h,c,s)))return r.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if(s=="\n"||s=="\r\n"){if(u(f),p="",r.isMaybeInsertedClosing(h,c)&&(p=l.stringRepeat("}",i.maybeInsertedBrackets),r.clearMaybeInsertedClosing()),a=c.substring(h.column,h.column+1),a==="}"){if(k=o.findMatchingBracket({row:h.row,column:h.column+1},"}"),!k)return null;v=this.$getIndent(o.getLine(k.row))}else{if(!p){r.clearMaybeInsertedClosing();return}v=this.$getIndent(c)}return w=v+o.getTabString(),{text:"\n"+w+"\n"+v+p,selection:[1,w.length,1,w.length]}}r.clearMaybeInsertedClosing()}});this.add("braces","deletion",function(n,t,r,f,e){var h=f.doc.getTextRange(e),o,s;if(!e.isMultiLine()&&h=="{"){if(u(r),o=f.doc.getLine(e.start.row),s=o.substring(e.end.column,e.end.column+1),s=="}")return e.end.column++,e;i.maybeInsertedBrackets--}});this.add("parens","insertion",function(n,t,i,f,o){var h,c,a;if(o=="("){if(u(i),h=i.getSelectionRange(),c=f.doc.getTextRange(h),c!==""&&i.getWrapBehavioursEnabled())return e(h,c,"(",")");if(r.isSaneInsertion(i,f))return r.recordAutoInsert(i,f,")"),{text:"()",selection:[1,1]}}else if(o==")"){u(i);var s=i.getCursorPosition(),l=f.doc.getLine(s.row),v=l.substring(s.column,s.column+1);if(v==")"&&(a=f.$findOpeningBracket(")",{column:s.column+1,row:s.row}),a!==null&&r.isAutoInsertedClosing(s,l,o)))return r.popAutoInsertedClosing(),{text:"",selection:[1,1]}}});this.add("parens","deletion",function(n,t,i,r,f){var s=r.doc.getTextRange(f),e,o;if(!f.isMultiLine()&&s=="("&&(u(i),e=r.doc.getLine(f.start.row),o=e.substring(f.start.column+1,f.start.column+2),o==")"))return f.end.column++,f});this.add("brackets","insertion",function(n,t,i,f,o){var h,c,a;if(o=="["){if(u(i),h=i.getSelectionRange(),c=f.doc.getTextRange(h),c!==""&&i.getWrapBehavioursEnabled())return e(h,c,"[","]");if(r.isSaneInsertion(i,f))return r.recordAutoInsert(i,f,"]"),{text:"[]",selection:[1,1]}}else if(o=="]"){u(i);var s=i.getCursorPosition(),l=f.doc.getLine(s.row),v=l.substring(s.column,s.column+1);if(v=="]"&&(a=f.$findOpeningBracket("]",{column:s.column+1,row:s.row}),a!==null&&r.isAutoInsertedClosing(s,l,o)))return r.popAutoInsertedClosing(),{text:"",selection:[1,1]}}});this.add("brackets","deletion",function(n,t,i,r,f){var s=r.doc.getTextRange(f),e,o;if(!f.isMultiLine()&&s=="["&&(u(i),e=r.doc.getLine(f.start.row),o=e.substring(f.start.column+1,f.start.column+2),o=="]"))return f.end.column++,f});this.add("string_dquotes","insertion",function(n,t,i,r,f){var v,y,c,l,g,nt;if(f=='"'||f=="'"){if(this.lineCommentStart&&this.lineCommentStart.indexOf(f)!=-1)return;u(i);var s=f,k=i.getSelectionRange(),h=r.doc.getTextRange(k);if(h!==""&&h!=="'"&&h!='"'&&i.getWrapBehavioursEnabled())return e(k,h,s,s);if(!h){var o=i.getCursorPosition(),d=r.doc.getLine(o.row),p=d.substring(o.column-1,o.column),w=d.substring(o.column,o.column+1),a=r.getTokenAt(o.row,o.column),b=r.getTokenAt(o.row,o.column+1);if(p=="\\"&&a&&/escape/.test(a.type))return null;if(v=a&&/string|escape/.test(a.type),y=!b||/string|escape/.test(b.type),w==s)c=v!==y,c&&/string\.end/.test(b.type)&&(c=!1);else{if(v&&!y||v&&y||(l=r.$mode.tokenRe,l.lastIndex=0,g=l.test(p),l.lastIndex=0,nt=l.test(p),g||nt)||w&&!/[\s;,.})\]\\]/.test(w))return null;c=!0}return{text:c?s+s:"",selection:[1,1]}}}});this.add("string_dquotes","deletion",function(n,t,i,r,f){var e=r.doc.getTextRange(f),o,s;if(!f.isMultiLine()&&(e=='"'||e=="'")&&(u(i),o=r.doc.getLine(f.start.row),s=o.substring(f.start.column+1,f.start.column+2),s==e))return f.end.column++,f})};r.isSaneInsertion=function(n,t){var i=n.getCursorPosition(),r=new o(t,i.row,i.column),u;return!this.$matchTokenType(r.getCurrentToken()||"text",s)&&(u=new o(t,i.row,i.column+1),!this.$matchTokenType(u.getCurrentToken()||"text",s))?!1:(r.stepForward(),r.getCurrentTokenRow()!==i.row||this.$matchTokenType(r.getCurrentToken()||"text",a))};r.$matchTokenType=function(n,t){return t.indexOf(n.type||n)>-1};r.recordAutoInsert=function(n,t,r){var u=n.getCursorPosition(),f=t.doc.getLine(u.row);this.isAutoInsertedClosing(u,f,i.autoInsertedLineEnd[0])||(i.autoInsertedBrackets=0);i.autoInsertedRow=u.row;i.autoInsertedLineEnd=r+f.substr(u.column);i.autoInsertedBrackets++};r.recordMaybeInsert=function(n,t,r){var u=n.getCursorPosition(),f=t.doc.getLine(u.row);this.isMaybeInsertedClosing(u,f)||(i.maybeInsertedBrackets=0);i.maybeInsertedRow=u.row;i.maybeInsertedLineStart=f.substr(0,u.column)+r;i.maybeInsertedLineEnd=f.substr(u.column);i.maybeInsertedBrackets++};r.isAutoInsertedClosing=function(n,t,r){return i.autoInsertedBrackets>0&&n.row===i.autoInsertedRow&&r===i.autoInsertedLineEnd[0]&&t.substr(n.column)===i.autoInsertedLineEnd};r.isMaybeInsertedClosing=function(n,t){return i.maybeInsertedBrackets>0&&n.row===i.maybeInsertedRow&&t.substr(n.column)===i.maybeInsertedLineEnd&&t.substr(0,n.column)==i.maybeInsertedLineStart};r.popAutoInsertedClosing=function(){i.autoInsertedLineEnd=i.autoInsertedLineEnd.substr(1);i.autoInsertedBrackets--};r.clearMaybeInsertedClosing=function(){i&&(i.maybeInsertedBrackets=0,i.maybeInsertedRow=-1)};h.inherits(r,c);t.CstyleBehaviour=r});define("ace/unicode",["require","exports","module"],function(n,t){"use strict";function i(n){var r=/\w{4}/g,i;for(i in n)t.packages[i]=n[i].replace(r,"\\u$&")}t.packages={};i({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",Ll:"0061-007A00AA00B500BA00DF-00F600F8-00FF01010103010501070109010B010D010F01110113011501170119011B011D011F01210123012501270129012B012D012F01310133013501370138013A013C013E014001420144014601480149014B014D014F01510153015501570159015B015D015F01610163016501670169016B016D016F0171017301750177017A017C017E-0180018301850188018C018D019201950199-019B019E01A101A301A501A801AA01AB01AD01B001B401B601B901BA01BD-01BF01C601C901CC01CE01D001D201D401D601D801DA01DC01DD01DF01E101E301E501E701E901EB01ED01EF01F001F301F501F901FB01FD01FF02010203020502070209020B020D020F02110213021502170219021B021D021F02210223022502270229022B022D022F02310233-0239023C023F0240024202470249024B024D024F-02930295-02AF037103730377037B-037D039003AC-03CE03D003D103D5-03D703D903DB03DD03DF03E103E303E503E703E903EB03ED03EF-03F303F503F803FB03FC0430-045F04610463046504670469046B046D046F04710473047504770479047B047D047F0481048B048D048F04910493049504970499049B049D049F04A104A304A504A704A904AB04AD04AF04B104B304B504B704B904BB04BD04BF04C204C404C604C804CA04CC04CE04CF04D104D304D504D704D904DB04DD04DF04E104E304E504E704E904EB04ED04EF04F104F304F504F704F904FB04FD04FF05010503050505070509050B050D050F05110513051505170519051B051D051F0521052305250561-05871D00-1D2B1D62-1D771D79-1D9A1E011E031E051E071E091E0B1E0D1E0F1E111E131E151E171E191E1B1E1D1E1F1E211E231E251E271E291E2B1E2D1E2F1E311E331E351E371E391E3B1E3D1E3F1E411E431E451E471E491E4B1E4D1E4F1E511E531E551E571E591E5B1E5D1E5F1E611E631E651E671E691E6B1E6D1E6F1E711E731E751E771E791E7B1E7D1E7F1E811E831E851E871E891E8B1E8D1E8F1E911E931E95-1E9D1E9F1EA11EA31EA51EA71EA91EAB1EAD1EAF1EB11EB31EB51EB71EB91EBB1EBD1EBF1EC11EC31EC51EC71EC91ECB1ECD1ECF1ED11ED31ED51ED71ED91EDB1EDD1EDF1EE11EE31EE51EE71EE91EEB1EED1EEF1EF11EF31EF51EF71EF91EFB1EFD1EFF-1F071F10-1F151F20-1F271F30-1F371F40-1F451F50-1F571F60-1F671F70-1F7D1F80-1F871F90-1F971FA0-1FA71FB0-1FB41FB61FB71FBE1FC2-1FC41FC61FC71FD0-1FD31FD61FD71FE0-1FE71FF2-1FF41FF61FF7210A210E210F2113212F21342139213C213D2146-2149214E21842C30-2C5E2C612C652C662C682C6A2C6C2C712C732C742C76-2C7C2C812C832C852C872C892C8B2C8D2C8F2C912C932C952C972C992C9B2C9D2C9F2CA12CA32CA52CA72CA92CAB2CAD2CAF2CB12CB32CB52CB72CB92CBB2CBD2CBF2CC12CC32CC52CC72CC92CCB2CCD2CCF2CD12CD32CD52CD72CD92CDB2CDD2CDF2CE12CE32CE42CEC2CEE2D00-2D25A641A643A645A647A649A64BA64DA64FA651A653A655A657A659A65BA65DA65FA663A665A667A669A66BA66DA681A683A685A687A689A68BA68DA68FA691A693A695A697A723A725A727A729A72BA72DA72F-A731A733A735A737A739A73BA73DA73FA741A743A745A747A749A74BA74DA74FA751A753A755A757A759A75BA75DA75FA761A763A765A767A769A76BA76DA76FA771-A778A77AA77CA77FA781A783A785A787A78CFB00-FB06FB13-FB17FF41-FF5A",Lu:"0041-005A00C0-00D600D8-00DE01000102010401060108010A010C010E01100112011401160118011A011C011E01200122012401260128012A012C012E01300132013401360139013B013D013F0141014301450147014A014C014E01500152015401560158015A015C015E01600162016401660168016A016C016E017001720174017601780179017B017D018101820184018601870189-018B018E-0191019301940196-0198019C019D019F01A001A201A401A601A701A901AC01AE01AF01B1-01B301B501B701B801BC01C401C701CA01CD01CF01D101D301D501D701D901DB01DE01E001E201E401E601E801EA01EC01EE01F101F401F6-01F801FA01FC01FE02000202020402060208020A020C020E02100212021402160218021A021C021E02200222022402260228022A022C022E02300232023A023B023D023E02410243-02460248024A024C024E03700372037603860388-038A038C038E038F0391-03A103A3-03AB03CF03D2-03D403D803DA03DC03DE03E003E203E403E603E803EA03EC03EE03F403F703F903FA03FD-042F04600462046404660468046A046C046E04700472047404760478047A047C047E0480048A048C048E04900492049404960498049A049C049E04A004A204A404A604A804AA04AC04AE04B004B204B404B604B804BA04BC04BE04C004C104C304C504C704C904CB04CD04D004D204D404D604D804DA04DC04DE04E004E204E404E604E804EA04EC04EE04F004F204F404F604F804FA04FC04FE05000502050405060508050A050C050E05100512051405160518051A051C051E0520052205240531-055610A0-10C51E001E021E041E061E081E0A1E0C1E0E1E101E121E141E161E181E1A1E1C1E1E1E201E221E241E261E281E2A1E2C1E2E1E301E321E341E361E381E3A1E3C1E3E1E401E421E441E461E481E4A1E4C1E4E1E501E521E541E561E581E5A1E5C1E5E1E601E621E641E661E681E6A1E6C1E6E1E701E721E741E761E781E7A1E7C1E7E1E801E821E841E861E881E8A1E8C1E8E1E901E921E941E9E1EA01EA21EA41EA61EA81EAA1EAC1EAE1EB01EB21EB41EB61EB81EBA1EBC1EBE1EC01EC21EC41EC61EC81ECA1ECC1ECE1ED01ED21ED41ED61ED81EDA1EDC1EDE1EE01EE21EE41EE61EE81EEA1EEC1EEE1EF01EF21EF41EF61EF81EFA1EFC1EFE1F08-1F0F1F18-1F1D1F28-1F2F1F38-1F3F1F48-1F4D1F591F5B1F5D1F5F1F68-1F6F1FB8-1FBB1FC8-1FCB1FD8-1FDB1FE8-1FEC1FF8-1FFB21022107210B-210D2110-211221152119-211D212421262128212A-212D2130-2133213E213F214521832C00-2C2E2C602C62-2C642C672C692C6B2C6D-2C702C722C752C7E-2C802C822C842C862C882C8A2C8C2C8E2C902C922C942C962C982C9A2C9C2C9E2CA02CA22CA42CA62CA82CAA2CAC2CAE2CB02CB22CB42CB62CB82CBA2CBC2CBE2CC02CC22CC42CC62CC82CCA2CCC2CCE2CD02CD22CD42CD62CD82CDA2CDC2CDE2CE02CE22CEB2CEDA640A642A644A646A648A64AA64CA64EA650A652A654A656A658A65AA65CA65EA662A664A666A668A66AA66CA680A682A684A686A688A68AA68CA68EA690A692A694A696A722A724A726A728A72AA72CA72EA732A734A736A738A73AA73CA73EA740A742A744A746A748A74AA74CA74EA750A752A754A756A758A75AA75CA75EA760A762A764A766A768A76AA76CA76EA779A77BA77DA77EA780A782A784A786A78BFF21-FF3A",Lt:"01C501C801CB01F21F88-1F8F1F98-1F9F1FA8-1FAF1FBC1FCC1FFC",Lm:"02B0-02C102C6-02D102E0-02E402EC02EE0374037A0559064006E506E607F407F507FA081A0824082809710E460EC610FC17D718431AA71C78-1C7D1D2C-1D611D781D9B-1DBF2071207F2090-20942C7D2D6F2E2F30053031-3035303B309D309E30FC-30FEA015A4F8-A4FDA60CA67FA717-A71FA770A788A9CFAA70AADDFF70FF9EFF9F",Lo:"01BB01C0-01C3029405D0-05EA05F0-05F20621-063F0641-064A066E066F0671-06D306D506EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA0800-08150904-0939093D09500958-096109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E450E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10D0-10FA1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317DC1820-18421844-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C771CE9-1CEC1CEE-1CF12135-21382D30-2D652D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE3006303C3041-3096309F30A1-30FA30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A014A016-A48CA4D0-A4F7A500-A60BA610-A61FA62AA62BA66EA6A0-A6E5A7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2AA00-AA28AA40-AA42AA44-AA4BAA60-AA6FAA71-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADBAADCABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF66-FF6FFF71-FF9DFFA0-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",M:"0300-036F0483-04890591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DE-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0903093C093E-094E0951-0955096209630981-098309BC09BE-09C409C709C809CB-09CD09D709E209E30A01-0A030A3C0A3E-0A420A470A480A4B-0A4D0A510A700A710A750A81-0A830ABC0ABE-0AC50AC7-0AC90ACB-0ACD0AE20AE30B01-0B030B3C0B3E-0B440B470B480B4B-0B4D0B560B570B620B630B820BBE-0BC20BC6-0BC80BCA-0BCD0BD70C01-0C030C3E-0C440C46-0C480C4A-0C4D0C550C560C620C630C820C830CBC0CBE-0CC40CC6-0CC80CCA-0CCD0CD50CD60CE20CE30D020D030D3E-0D440D46-0D480D4A-0D4D0D570D620D630D820D830DCA0DCF-0DD40DD60DD8-0DDF0DF20DF30E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F3E0F3F0F71-0F840F860F870F90-0F970F99-0FBC0FC6102B-103E1056-1059105E-10601062-10641067-106D1071-10741082-108D108F109A-109D135F1712-17141732-1734175217531772177317B6-17D317DD180B-180D18A91920-192B1930-193B19B0-19C019C819C91A17-1A1B1A55-1A5E1A60-1A7C1A7F1B00-1B041B34-1B441B6B-1B731B80-1B821BA1-1BAA1C24-1C371CD0-1CD21CD4-1CE81CED1CF21DC0-1DE61DFD-1DFF20D0-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66F-A672A67CA67DA6F0A6F1A802A806A80BA823-A827A880A881A8B4-A8C4A8E0-A8F1A926-A92DA947-A953A980-A983A9B3-A9C0AA29-AA36AA43AA4CAA4DAA7BAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE3-ABEAABECABEDFB1EFE00-FE0FFE20-FE26",Mn:"0300-036F0483-04870591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DF-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0902093C0941-0948094D0951-095509620963098109BC09C1-09C409CD09E209E30A010A020A3C0A410A420A470A480A4B-0A4D0A510A700A710A750A810A820ABC0AC1-0AC50AC70AC80ACD0AE20AE30B010B3C0B3F0B41-0B440B4D0B560B620B630B820BC00BCD0C3E-0C400C46-0C480C4A-0C4D0C550C560C620C630CBC0CBF0CC60CCC0CCD0CE20CE30D41-0D440D4D0D620D630DCA0DD2-0DD40DD60E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F71-0F7E0F80-0F840F860F870F90-0F970F99-0FBC0FC6102D-10301032-10371039103A103D103E10581059105E-10601071-1074108210851086108D109D135F1712-17141732-1734175217531772177317B7-17BD17C617C9-17D317DD180B-180D18A91920-19221927192819321939-193B1A171A181A561A58-1A5E1A601A621A65-1A6C1A73-1A7C1A7F1B00-1B031B341B36-1B3A1B3C1B421B6B-1B731B801B811BA2-1BA51BA81BA91C2C-1C331C361C371CD0-1CD21CD4-1CE01CE2-1CE81CED1DC0-1DE61DFD-1DFF20D0-20DC20E120E5-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66FA67CA67DA6F0A6F1A802A806A80BA825A826A8C4A8E0-A8F1A926-A92DA947-A951A980-A982A9B3A9B6-A9B9A9BCAA29-AA2EAA31AA32AA35AA36AA43AA4CAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE5ABE8ABEDFB1EFE00-FE0FFE20-FE26",Mc:"0903093E-09400949-094C094E0982098309BE-09C009C709C809CB09CC09D70A030A3E-0A400A830ABE-0AC00AC90ACB0ACC0B020B030B3E0B400B470B480B4B0B4C0B570BBE0BBF0BC10BC20BC6-0BC80BCA-0BCC0BD70C01-0C030C41-0C440C820C830CBE0CC0-0CC40CC70CC80CCA0CCB0CD50CD60D020D030D3E-0D400D46-0D480D4A-0D4C0D570D820D830DCF-0DD10DD8-0DDF0DF20DF30F3E0F3F0F7F102B102C10311038103B103C105610571062-10641067-106D108310841087-108C108F109A-109C17B617BE-17C517C717C81923-19261929-192B193019311933-193819B0-19C019C819C91A19-1A1B1A551A571A611A631A641A6D-1A721B041B351B3B1B3D-1B411B431B441B821BA11BA61BA71BAA1C24-1C2B1C341C351CE11CF2A823A824A827A880A881A8B4-A8C3A952A953A983A9B4A9B5A9BAA9BBA9BD-A9C0AA2FAA30AA33AA34AA4DAA7BABE3ABE4ABE6ABE7ABE9ABEAABEC",Me:"0488048906DE20DD-20E020E2-20E4A670-A672",N:"0030-003900B200B300B900BC-00BE0660-066906F0-06F907C0-07C90966-096F09E6-09EF09F4-09F90A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BF20C66-0C6F0C78-0C7E0CE6-0CEF0D66-0D750E50-0E590ED0-0ED90F20-0F331040-10491090-10991369-137C16EE-16F017E0-17E917F0-17F91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C5920702074-20792080-20892150-21822185-21892460-249B24EA-24FF2776-27932CFD30073021-30293038-303A3192-31953220-32293251-325F3280-328932B1-32BFA620-A629A6E6-A6EFA830-A835A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nd:"0030-00390660-066906F0-06F907C0-07C90966-096F09E6-09EF0A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BEF0C66-0C6F0CE6-0CEF0D66-0D6F0E50-0E590ED0-0ED90F20-0F291040-10491090-109917E0-17E91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C59A620-A629A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nl:"16EE-16F02160-21822185-218830073021-30293038-303AA6E6-A6EF",No:"00B200B300B900BC-00BE09F4-09F90BF0-0BF20C78-0C7E0D70-0D750F2A-0F331369-137C17F0-17F920702074-20792080-20892150-215F21892460-249B24EA-24FF2776-27932CFD3192-31953220-32293251-325F3280-328932B1-32BFA830-A835",P:"0021-00230025-002A002C-002F003A003B003F0040005B-005D005F007B007D00A100AB00B700BB00BF037E0387055A-055F0589058A05BE05C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F3A-0F3D0F850FD0-0FD4104A-104F10FB1361-13681400166D166E169B169C16EB-16ED1735173617D4-17D617D8-17DA1800-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD32010-20272030-20432045-20512053-205E207D207E208D208E2329232A2768-277527C527C627E6-27EF2983-299829D8-29DB29FC29FD2CF9-2CFC2CFE2CFF2E00-2E2E2E302E313001-30033008-30113014-301F3030303D30A030FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFD3EFD3FFE10-FE19FE30-FE52FE54-FE61FE63FE68FE6AFE6BFF01-FF03FF05-FF0AFF0C-FF0FFF1AFF1BFF1FFF20FF3B-FF3DFF3FFF5BFF5DFF5F-FF65",Pd:"002D058A05BE140018062010-20152E172E1A301C303030A0FE31FE32FE58FE63FF0D",Ps:"0028005B007B0F3A0F3C169B201A201E2045207D208D23292768276A276C276E27702772277427C527E627E827EA27EC27EE2983298529872989298B298D298F299129932995299729D829DA29FC2E222E242E262E283008300A300C300E3010301430163018301A301DFD3EFE17FE35FE37FE39FE3BFE3DFE3FFE41FE43FE47FE59FE5BFE5DFF08FF3BFF5BFF5FFF62",Pe:"0029005D007D0F3B0F3D169C2046207E208E232A2769276B276D276F27712773277527C627E727E927EB27ED27EF298429862988298A298C298E2990299229942996299829D929DB29FD2E232E252E272E293009300B300D300F3011301530173019301B301E301FFD3FFE18FE36FE38FE3AFE3CFE3EFE40FE42FE44FE48FE5AFE5CFE5EFF09FF3DFF5DFF60FF63",Pi:"00AB2018201B201C201F20392E022E042E092E0C2E1C2E20",Pf:"00BB2019201D203A2E032E052E0A2E0D2E1D2E21",Pc:"005F203F20402054FE33FE34FE4D-FE4FFF3F",Po:"0021-00230025-0027002A002C002E002F003A003B003F0040005C00A100B700BF037E0387055A-055F058905C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F850FD0-0FD4104A-104F10FB1361-1368166D166E16EB-16ED1735173617D4-17D617D8-17DA1800-18051807-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD3201620172020-20272030-2038203B-203E2041-20432047-205120532055-205E2CF9-2CFC2CFE2CFF2E002E012E06-2E082E0B2E0E-2E162E182E192E1B2E1E2E1F2E2A-2E2E2E302E313001-3003303D30FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFE10-FE16FE19FE30FE45FE46FE49-FE4CFE50-FE52FE54-FE57FE5F-FE61FE68FE6AFE6BFF01-FF03FF05-FF07FF0AFF0CFF0EFF0FFF1AFF1BFF1FFF20FF3CFF61FF64FF65",S:"0024002B003C-003E005E0060007C007E00A2-00A900AC00AE-00B100B400B600B800D700F702C2-02C502D2-02DF02E5-02EB02ED02EF-02FF03750384038503F604820606-0608060B060E060F06E906FD06FE07F609F209F309FA09FB0AF10B700BF3-0BFA0C7F0CF10CF20D790E3F0F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-139917DB194019E0-19FF1B61-1B6A1B74-1B7C1FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE20442052207A-207C208A-208C20A0-20B8210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B2140-2144214A-214D214F2190-2328232B-23E82400-24262440-244A249C-24E92500-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE27C0-27C427C7-27CA27CC27D0-27E527F0-29822999-29D729DC-29FB29FE-2B4C2B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F309B309C319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A700-A716A720A721A789A78AA828-A82BA836-A839AA77-AA79FB29FDFCFDFDFE62FE64-FE66FE69FF04FF0BFF1C-FF1EFF3EFF40FF5CFF5EFFE0-FFE6FFE8-FFEEFFFCFFFD",Sm:"002B003C-003E007C007E00AC00B100D700F703F60606-060820442052207A-207C208A-208C2140-2144214B2190-2194219A219B21A021A321A621AE21CE21CF21D221D421F4-22FF2308-230B23202321237C239B-23B323DC-23E125B725C125F8-25FF266F27C0-27C427C7-27CA27CC27D0-27E527F0-27FF2900-29822999-29D729DC-29FB29FE-2AFF2B30-2B442B47-2B4CFB29FE62FE64-FE66FF0BFF1C-FF1EFF5CFF5EFFE2FFE9-FFEC",Sc:"002400A2-00A5060B09F209F309FB0AF10BF90E3F17DB20A0-20B8A838FDFCFE69FF04FFE0FFE1FFE5FFE6",Sk:"005E006000A800AF00B400B802C2-02C502D2-02DF02E5-02EB02ED02EF-02FF0375038403851FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE309B309CA700-A716A720A721A789A78AFF3EFF40FFE3",So:"00A600A700A900AE00B000B60482060E060F06E906FD06FE07F609FA0B700BF3-0BF80BFA0C7F0CF10CF20D790F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-1399194019E0-19FF1B61-1B6A1B74-1B7C210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B214A214C214D214F2195-2199219C-219F21A121A221A421A521A7-21AD21AF-21CD21D021D121D321D5-21F32300-2307230C-231F2322-2328232B-237B237D-239A23B4-23DB23E2-23E82400-24262440-244A249C-24E92500-25B625B8-25C025C2-25F72600-266E2670-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE2800-28FF2B00-2B2F2B452B462B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A828-A82BA836A837A839AA77-AA79FDFDFFE4FFE8FFEDFFEEFFFCFFFD",Z:"002000A01680180E2000-200A20282029202F205F3000",Zs:"002000A01680180E2000-200A202F205F3000",Zl:"2028",Zp:"2029",C:"0000-001F007F-009F00AD03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-0605061C061D0620065F06DD070E070F074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17B417B517DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF200B-200F202A-202E2060-206F20722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-F8FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFD-FF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFFBFFFEFFFF",Cc:"0000-001F007F-009F",Cf:"00AD0600-060306DD070F17B417B5200B-200F202A-202E2060-2064206A-206FFEFFFFF9-FFFB",Co:"E000-F8FF",Cs:"D800-DFFF",Cn:"03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-05FF06040605061C061D0620065F070E074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF2065-206920722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-D7FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFDFEFEFF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFF8FFFEFFFF"})});define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour/cstyle","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(n,t){"use strict";var o=n("../tokenizer").Tokenizer,s=n("./text_highlight_rules").TextHighlightRules,h=n("./behaviour/cstyle").CstyleBehaviour,i=n("../unicode"),r=n("../lib/lang"),u=n("../token_iterator").TokenIterator,f=n("../range").Range,e=function(){this.HighlightRules=s};(function(){this.$behaviour=new h;this.tokenRe=new RegExp("^["+i.packages.L+i.packages.Mn+i.packages.Mc+i.packages.Nd+i.packages.Pc+"\\$_]+","g");this.nonTokenRe=new RegExp("^(?:[^"+i.packages.L+i.packages.Mn+i.packages.Mc+i.packages.Nd+i.packages.Pc+"\\$_]|\\s])+","g");this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new o(this.$highlightRules.getRules())),this.$tokenizer};this.lineCommentStart="";this.blockComment="";this.toggleCommentLines=function(n,t,i,u){function y(n){for(var t=i;t<=u;t++)n(o.getLine(t),t)}var o=t.doc,a=!0,c=!0,f=Infinity,s=t.getTabSize(),p=!1,e,h,l;if(this.lineCommentStart){Array.isArray(this.lineCommentStart)?(e=this.lineCommentStart.map(r.escapeRegExp).join("|"),h=this.lineCommentStart[0]):(e=r.escapeRegExp(this.lineCommentStart),h=this.lineCommentStart);e=new RegExp("^(\\s*)(?:"+e+") ?");p=t.getUseSoftTabs();var k=function(n,t){var r=n.match(e),u,i;r&&(u=r[1].length,i=r[0].length,d(n,u,i)||r[0][i-1]!=" "||i--,o.removeInLine(t,u,i))},nt=h+" ",b=function(n,t){(!a||/\S/.test(n))&&(d(n,f,f)?o.insertInLine({row:t,column:f},nt):o.insertInLine({row:t,column:f},h))},v=function(n){return e.test(n)},d=function(n,t,i){for(var r=0;t--&&n.charAt(t)==" ";)r++;if(r%s!=0)return!1;for(r=0;n.charAt(i++)==" ";)r++;return s>2?r%s!=s-1:r%s==0}}else{if(!this.blockComment)return!1;var h=this.blockComment.start,w=this.blockComment.end,e=new RegExp("^(\\s*)(?:"+r.escapeRegExp(h)+")"),g=new RegExp("(?:"+r.escapeRegExp(w)+")\\s*$"),b=function(n,t){v(n,t)||(!a||/\S/.test(n))&&(o.insertInLine({row:t,column:n.length},w),o.insertInLine({row:t,column:f},h))},k=function(n,t){var i;(i=n.match(g))&&o.removeInLine(t,n.length-i[0].length,n.length);(i=n.match(e))&&o.removeInLine(t,i[1].length,i[0].length)},v=function(n,i){var u,r;if(e.test(n))return!0;for(u=t.getTokens(i),r=0;r<u.length;r++)if(u[r].type==="comment")return!0}}l=Infinity;y(function(n,t){var i=n.search(/\S/);i!==-1?(i<f&&(f=i),c&&!v(n,t)&&(c=!1)):l>n.length&&(l=n.length)});f==Infinity&&(f=l,a=!1,c=!1);p&&f%s!=0&&(f=Math.floor(f/s)*s);y(c?k:b)};this.toggleBlockComment=function(n,t,i,r){var e=this.blockComment,p,w,s,o,h,c,l;if(e){!e.start&&e[0]&&(e=e[0]);var s=new u(t,r.row,r.column),o=s.getCurrentToken(),b=t.selection,a=t.selection.toOrientedRange(),v,y;if(o&&/comment/.test(o.type)){while(o&&/comment/.test(o.type)){if(h=o.value.indexOf(e.start),h!=-1){c=s.getCurrentTokenRow();l=s.getCurrentTokenColumn()+h;p=new f(c,l,c,l+e.start.length);break}o=s.stepBackward()}for(s=new u(t,r.row,r.column),o=s.getCurrentToken();o&&/comment/.test(o.type);){if(h=o.value.indexOf(e.end),h!=-1){c=s.getCurrentTokenRow();l=s.getCurrentTokenColumn()+h;w=new f(c,l,c,l+e.end.length);break}o=s.stepForward()}w&&t.remove(w);p&&(t.remove(p),v=p.start.row,y=-e.start.length)}else y=e.start.length,v=i.start.row,t.insert(i.end,e.end),t.insert(i.start,e.start);a.start.row==v&&(a.start.column+=y);a.end.row==v&&(a.end.column+=y);t.selection.fromOrientedRange(a)}};this.getNextLineIndent=function(n,t){return this.$getIndent(t)};this.checkOutdent=function(){return!1};this.autoOutdent=function(){};this.$getIndent=function(n){return n.match(/^\s*/)[0]};this.createWorker=function(){return null};this.createModeDelegates=function(n){var i,t;this.$embeds=[];this.$modes={};for(t in n)n[t]&&(this.$embeds.push(t),this.$modes[t]=new n[t]);for(i=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],t=0;t<i.length;t++)(function(n){var r=i[t],u=n[r];n[i[t]]=function(){return this.$delegator(r,arguments,u)}})(this)};this.$delegator=function(n,t,i){var u=t[0],r,f,e,o;for(typeof u!="string"&&(u=u[0]),r=0;r<this.$embeds.length;r++)if(this.$modes[this.$embeds[r]]&&(f=u.split(this.$embeds[r]),!f[0]&&f[1]))return t[0]=f[1],e=this.$modes[this.$embeds[r]],e[n].apply(e,t);return o=i.apply(this,t),i?o:undefined};this.transformAction=function(n,t){var i,r,u;if(this.$behaviour){i=this.$behaviour.getBehaviours();for(r in i)if(i[r][t]&&(u=i[r][t].apply(this,arguments),u))return u}};this.getKeywords=function(n){var e,u,i,t,o,f,s,r;if(!this.completionKeywords){e=this.$tokenizer.rules;u=[];for(r in e)for(i=e[r],t=0,o=i.length;t<o;t++)if(typeof i[t].token=="string")/keyword|support|storage/.test(i[t].token)&&u.push(i[t].regex);else if(typeof i[t].token=="object")for(f=0,s=i[t].token.length;f<s;f++)/keyword|support|storage/.test(i[t].token[f])&&(r=i[t].regex.match(/\(.+?\)/g)[f],u.push(r.substr(1,r.length-2)));this.completionKeywords=u}return n?u.concat(this.$keywordList||[]):this.$keywordList};this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]};this.getCompletions=function(){var n=this.$keywordList||this.$createKeywordList();return n.map(function(n){return{name:n,value:n,score:0,meta:"keyword"}})};this.$id="ace/mode/text"}).call(e.prototype);t.Mode=e});define("ace/apply_delta",["require","exports","module"],function(n,t){"use strict";t.applyDelta=function(n,t){var i=t.start.row,u=t.start.column,r=n[i]||"",o,s,e,f;switch(t.action){case"insert":o=t.lines;o.length===1?n[i]=r.substring(0,u)+t.lines[0]+r.substring(u):(s=[i,1].concat(t.lines),n.splice.apply(n,s),n[i]=r.substring(0,u)+n[i],n[i+t.lines.length-1]+=r.substring(u));break;case"remove":e=t.end.column;f=t.end.row;i===f?n[i]=r.substring(0,u)+r.substring(e):n.splice(i,f-i+1,r.substring(0,u)+n[f].substring(e))}}});define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(n,t){"use strict";var i=n("./lib/oop"),r=n("./lib/event_emitter").EventEmitter,u=t.Anchor=function(n,t,i){this.$onChange=this.onChange.bind(this);this.attach(n);typeof i=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){function n(n,t,i){var r=i?n.column<=t.column:n.column<t.column;return n.row<t.row||n.row==t.row&&r}function t(t,i,r){var f=t.action=="insert",o=(f?1:-1)*(t.end.row-t.start.row),s=(f?1:-1)*(t.end.column-t.start.column),u=t.start,e=f?u:t.end;return n(i,u,r)?{row:i.row,column:i.column}:n(e,i,!r)?{row:i.row+o,column:i.column+(i.row==e.row?s:0)}:{row:u.row,column:u.column}}i.implement(this,r);this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)};this.getDocument=function(){return this.document};this.$insertRight=!1;this.onChange=function(n){if((n.start.row!=n.end.row||n.start.row==this.row)&&!(n.start.row>this.row)){var i=t(n,{row:this.row,column:this.column},this.$insertRight);this.setPosition(i.row,i.column,!0)}};this.setPosition=function(n,t,i){var r,u;(r=i?{row:n,column:t}:this.$clipPositionToDocument(n,t),this.row!=r.row||this.column!=r.column)&&(u={row:this.row,column:this.column},this.row=r.row,this.column=r.column,this._signal("change",{old:u,value:r}))};this.detach=function(){this.document.removeEventListener("change",this.$onChange)};this.attach=function(n){this.document=n||this.document;this.document.on("change",this.$onChange)};this.$clipPositionToDocument=function(n,t){var i={};return n>=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):n<0?(i.row=0,i.column=0):(i.row=n,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),t<0&&(i.column=0),i}}).call(u.prototype)});define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(n,t){"use strict";var u=n("./lib/oop"),f=n("./apply_delta").applyDelta,e=n("./lib/event_emitter").EventEmitter,i=n("./range").Range,o=n("./anchor").Anchor,r=function(n){this.$lines=[""];n.length===0?this.$lines=[""]:Array.isArray(n)?this.insertMergedLines({row:0,column:0},n):this.insert({row:0,column:0},n)};(function(){u.implement(this,e);this.setValue=function(n){var t=this.getLength()-1;this.remove(new i(0,0,t,this.getLine(t).length));this.insert({row:0,column:0},n)};this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())};this.createAnchor=function(n,t){return new o(this,n,t)};this.$split="aaa".split(/a/).length===0?function(n){return n.replace(/\r\n|\r/g,"\n").split("\n")}:function(n){return n.split(/\r\n|\r|\n/)};this.$detectNewLine=function(n){var t=n.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n";this._signal("changeNewLineMode")};this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}};this.$autoNewLine="";this.$newLineMode="auto";this.setNewLineMode=function(n){this.$newLineMode!==n&&(this.$newLineMode=n,this._signal("changeNewLineMode"))};this.getNewLineMode=function(){return this.$newLineMode};this.isNewLine=function(n){return n=="\r\n"||n=="\r"||n=="\n"};this.getLine=function(n){return this.$lines[n]||""};this.getLines=function(n,t){return this.$lines.slice(n,t+1)};this.getAllLines=function(){return this.getLines(0,this.getLength())};this.getLength=function(){return this.$lines.length};this.getTextRange=function(n){return this.getLinesForRange(n).join(this.getNewLineCharacter())};this.getLinesForRange=function(n){var t,i;return n.start.row===n.end.row?t=[this.getLine(n.start.row).substring(n.start.column,n.end.column)]:(t=this.getLines(n.start.row,n.end.row),t[0]=(t[0]||"").substring(n.start.column),i=t.length-1,n.end.row-n.start.row==i&&(t[i]=t[i].substring(0,n.end.column))),t};this.insertLines=function(n,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(n,t)};this.removeLines=function(n,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(n,t)};this.insertNewLine=function(n){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(n,["",""])};this.insert=function(n,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(n,this.$split(t))};this.insertInLine=function(n,t){var r=this.clippedPos(n.row,n.column),i=this.pos(n.row,n.column+t.length);return this.applyDelta({start:r,end:i,action:"insert",lines:[t]},!0),this.clonePos(i)};this.clippedPos=function(n,t){var i=this.getLength(),r;return n===undefined?n=i:n<0?n=0:n>=i&&(n=i-1,t=undefined),r=this.getLine(n),t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:n,column:t}};this.clonePos=function(n){return{row:n.row,column:n.column}};this.pos=function(n,t){return{row:n,column:t}};this.$clipPosition=function(n){var t=this.getLength();return n.row>=t?(n.row=Math.max(0,t-1),n.column=this.getLine(t-1).length):(n.row=Math.max(0,n.row),n.column=Math.min(Math.max(n.column,0),this.getLine(n.row).length)),n};this.insertFullLines=function(n,t){n=Math.min(Math.max(n,0),this.getLength());var i=0;n<this.getLength()?(t=t.concat([""]),i=0):(t=[""].concat(t),n--,i=this.$lines[n].length);this.insertMergedLines({row:n,column:i},t)};this.insertMergedLines=function(n,t){var i=this.clippedPos(n.row,n.column),r={row:i.row+t.length-1,column:(t.length==1?i.column:0)+t[t.length-1].length};return this.applyDelta({start:i,end:r,action:"insert",lines:t}),this.clonePos(r)};this.remove=function(n){var t=this.clippedPos(n.start.row,n.start.column),i=this.clippedPos(n.end.row,n.end.column);return this.applyDelta({start:t,end:i,action:"remove",lines:this.getLinesForRange({start:t,end:i})}),this.clonePos(t)};this.removeInLine=function(n,t,i){var r=this.clippedPos(n,t),u=this.clippedPos(n,i);return this.applyDelta({start:r,end:u,action:"remove",lines:this.getLinesForRange({start:r,end:u})},!0),this.clonePos(r)};this.removeFullLines=function(n,t){n=Math.min(Math.max(0,n),this.getLength()-1);t=Math.min(Math.max(0,t),this.getLength()-1);var u=t==this.getLength()-1&&n>0,f=t<this.getLength()-1,e=u?n-1:n,s=u?this.getLine(e).length:0,o=f?t+1:t,h=f?0:this.getLine(o).length,r=new i(e,s,o,h),c=this.$lines.slice(n,t+1);return this.applyDelta({start:r.start,end:r.end,action:"remove",lines:this.getLinesForRange(r)}),c};this.removeNewLine=function(n){n<this.getLength()-1&&n>=0&&this.applyDelta({start:this.pos(n,this.getLine(n).length),end:this.pos(n+1,0),action:"remove",lines:["",""]})};this.replace=function(n,t){if(n instanceof i||(n=i.fromPoints(n.start,n.end)),t.length===0&&n.isEmpty())return n.start;if(t==this.getTextRange(n))return n.end;this.remove(n);var r;return r=t?this.insert(n.start,t):n.start,r};this.applyDeltas=function(n){for(var t=0;t<n.length;t++)this.applyDelta(n[t])};this.revertDeltas=function(n){for(var t=n.length-1;t>=0;t--)this.revertDelta(n[t])};this.applyDelta=function(n,t){var r=n.action=="insert";(r?n.lines.length<=1&&!n.lines[0]:!i.comparePoints(n.start,n.end))||(r&&n.lines.length>2e4&&this.$splitAndapplyLargeDelta(n,2e4),f(this.$lines,n,t),this._signal("change",n))};this.$splitAndapplyLargeDelta=function(n,t){var o=n.lines,s=o.length,f=n.start.row,e=n.start.column,r=0,i=0,u;do{if(r=i,i+=t-1,u=o.slice(r,i),i>s){n.lines=u;n.start.row=f+r;n.start.column=e;break}u.push("");this.applyDelta({start:this.pos(f+r,e),end:this.pos(f+i,e=0),action:n.action,lines:u},!0)}while(1)};this.revertDelta=function(n){this.applyDelta({start:this.clonePos(n.start),end:this.clonePos(n.end),action:n.action=="insert"?"remove":"insert",lines:n.lines.slice()})};this.indexToPosition=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,i=t||0,u=r.length;i<u;i++)if(n-=r[i].length+f,n<0)return{row:i,column:n+r[i].length+f};return{row:u-1,column:r[u-1].length}};this.positionToIndex=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,u=0,e=Math.min(n.row,r.length),i=t||0;i<e;++i)u+=r[i].length+f;return u+n.column}}).call(r.prototype);t.Document=r});define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(n,t){"use strict";var r=n("./lib/oop"),u=n("./lib/event_emitter").EventEmitter,i=function(n){this.running=!1;this.lines=[];this.states=[];this.currentLine=0;this.tokenizer=n;var t=this;this.$worker=function(){var f,r;if(t.running){for(var e=new Date,n=t.currentLine,i=-1,o=t.doc,u=n;t.lines[n];)n++;for(f=o.getLength(),r=0,t.running=!1;n<f;){t.$tokenizeRow(n);i=n;do n++;while(t.lines[n]);if(r++,r%5==0&&new Date-e>20){t.running=setTimeout(t.$worker,20);break}}t.currentLine=n;u<=i&&t.fireUpdateEvent(u,i)}}};(function(){r.implement(this,u);this.setTokenizer=function(n){this.tokenizer=n;this.lines=[];this.states=[];this.start(0)};this.setDocument=function(n){this.doc=n;this.lines=[];this.states=[];this.stop()};this.fireUpdateEvent=function(n,t){var i={first:n,last:t};this._signal("update",{data:i})};this.start=function(n){this.currentLine=Math.min(n||0,this.currentLine,this.doc.getLength());this.lines.splice(this.currentLine,this.lines.length);this.states.splice(this.currentLine,this.states.length);this.stop();this.running=setTimeout(this.$worker,700)};this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))};this.$updateOnChange=function(n){var t=n.start.row,i=n.end.row-t,r;i===0?this.lines[t]=null:n.action=="remove"?(this.lines.splice(t,i+1,null),this.states.splice(t,i+1,null)):(r=Array(i+1),r.unshift(t,1),this.lines.splice.apply(this.lines,r),this.states.splice.apply(this.states,r));this.currentLine=Math.min(t,this.currentLine,this.doc.getLength());this.stop()};this.stop=function(){this.running&&clearTimeout(this.running);this.running=!1};this.getTokens=function(n){return this.lines[n]||this.$tokenizeRow(n)};this.getState=function(n){return this.currentLine==n&&this.$tokenizeRow(n),this.states[n]||"start"};this.$tokenizeRow=function(n){var i=this.doc.getLine(n),r=this.states[n-1],t=this.tokenizer.getLineTokens(i,r,n);return this.states[n]+""!=t.state+""?(this.states[n]=t.state,this.lines[n+1]=null,this.currentLine>n+1&&(this.currentLine=n+1)):this.currentLine==n&&(this.currentLine=n+1),this.lines[n]=t.tokens}}).call(i.prototype);t.BackgroundTokenizer=i});define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,t){"use strict";var r=n("./lib/lang"),f=n("./lib/oop"),u=n("./range").Range,i=function(n,t,i){this.setRegexp(n);this.clazz=t;this.type=i||"text"};(function(){this.MAX_RANGES=500;this.setRegexp=function(n){this.regExp+""!=n+""&&(this.regExp=n,this.cache=[])};this.update=function(n,t,i,f){var h,c,o,e,s;if(this.regExp)for(h=f.firstRow,c=f.lastRow,o=h;o<=c;o++)for(e=this.cache[o],e==null&&(e=r.getMatchOffsets(i.getLine(o),this.regExp),e.length>this.MAX_RANGES&&(e=e.slice(0,this.MAX_RANGES)),e=e.map(function(n){return new u(o,n.offset,o,n.offset+n.length)}),this.cache[o]=e.length?e:""),s=e.length;s--;)t.drawSingleLineMarker(n,e[s].toScreenRange(i),this.clazz,f)}}).call(i.prototype);t.SearchHighlight=i});define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(n,t){"use strict";function i(n,t){this.foldData=n;Array.isArray(t)?this.folds=t:t=this.folds=[t];var i=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,i.end.row,i.end.column);this.start=this.range.start;this.end=this.range.end;this.folds.forEach(function(n){n.setFoldLine(this)},this)}var r=n("../range").Range;(function(){this.shiftRow=function(n){this.start.row+=n;this.end.row+=n;this.folds.forEach(function(t){t.start.row+=n;t.end.row+=n})};this.addFold=function(n){if(n.sameRow){if(n.start.row<this.startRow||n.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(n);this.folds.sort(function(n,t){return-n.range.compareEnd(t.start.row,t.start.column)});this.range.compareEnd(n.start.row,n.start.column)>0?(this.end.row=n.end.row,this.end.column=n.end.column):this.range.compareStart(n.end.row,n.end.column)<0&&(this.start.row=n.start.row,this.start.column=n.start.column)}else if(n.start.row==this.end.row)this.folds.push(n),this.end.row=n.end.row,this.end.column=n.end.column;else{if(n.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(n);this.start.row=n.start.row;this.start.column=n.start.column}n.foldLine=this};this.containsRow=function(n){return n>=this.start.row&&n<=this.end.row};this.walk=function(n,t,i){var u=0,h=this.folds,r,s,f,e=!0,o;for(t==null&&(t=this.end.row,i=this.end.column),o=0;o<h.length;o++){if(r=h[o],s=r.range.compareStart(t,i),s==-1){n(null,t,i,u,e);return}if(f=n(null,r.start.row,r.start.column,u,e),f=!f&&n(r.placeholder,r.start.row,r.start.column,u),f||s===0)return;e=!r.sameRow;u=r.end.column}n(null,t,i,u,e)};this.getNextFoldTo=function(n,t){for(var i,u,r=0;r<this.folds.length;r++){if(i=this.folds[r],u=i.range.compareEnd(n,t),u==-1)return{fold:i,kind:"after"};if(u===0)return{fold:i,kind:"inside"}}return null};this.addRemoveChars=function(n,t,i){var e=this.getNextFoldTo(n,t),r,f,u;if(e)if(r=e.fold,e.kind=="inside"&&r.start.column!=t&&r.start.row!=n)window.console&&window.console.log(n,t,r);else if(r.start.row==n){for(f=this.folds,u=f.indexOf(r),u===0&&(this.start.column+=i),u;u<f.length;u++){if(r=f[u],r.start.column+=i,!r.sameRow)return;r.end.column+=i}this.end.column+=i}};this.split=function(n,t){var u=this.getNextFoldTo(n,t),o;if(!u||u.kind=="inside")return null;var h=u.fold,r=this.folds,f=this.foldData,e=r.indexOf(h),s=r[e-1];return this.end.row=s.end.row,this.end.column=s.end.column,r=r.splice(e,r.length-e),o=new i(f,r),f.splice(f.indexOf(this)+1,0,o),o};this.merge=function(n){for(var r=n.folds,i,t=0;t<r.length;t++)this.addFold(r[t]);i=this.foldData;i.splice(i.indexOf(n),1)};this.toString=function(){var n=[this.range.toString()+": ["];return this.folds.forEach(function(t){n.push("  "+t.toString())}),n.push("]"),n.join("\n")};this.idxToPosition=function(n){for(var r=0,t,i=0;i<this.folds.length;i++){if(t=this.folds[i],n-=t.start.column-r,n<0)return{row:t.start.row,column:t.start.column+n};if(n-=t.placeholder.length,n<0)return t.start;r=t.end.column}return{row:this.end.row,column:this.end.column+n}}}).call(i.prototype);t.FoldLine=i});define("ace/range_list",["require","exports","module","ace/range"],function(n,t){"use strict";var u=n("./range").Range,i=u.comparePoints,r=function(){this.ranges=[]};(function(){this.comparePoints=i;this.pointIndex=function(n,t,r){for(var s=this.ranges,e,o,f,u=r||0;u<s.length;u++)if(e=s[u],o=i(n,e.end),!(o>0))return f=i(n,e.start),o===0?t&&f!==0?-u-2:u:f>0||f===0&&!t?u:-u-1;return-u-1};this.add=function(n){var r=!n.isEmpty(),t=this.pointIndex(n.start,r),i;return t<0&&(t=-t-1),i=this.pointIndex(n.end,r,t),i<0?i=-i-1:i++,this.ranges.splice(t,i-t,n)};this.addList=function(n){for(var t=[],i=n.length;i--;)t.push.apply(t,this.add(n[i]));return t};this.substractPoint=function(n){var t=this.pointIndex(n);if(t>=0)return this.ranges.splice(t,1)};this.merge=function(){var e=[],t=this.ranges,n,r,u,f;for(t=t.sort(function(n,t){return i(n.start,t.start)}),n=t[0],u=1;u<t.length;u++)(r=n,n=t[u],f=i(r.end,n.start),f<0)||(f!=0||r.isEmpty()||n.isEmpty())&&(i(r.end,n.end)<0&&(r.end.row=n.end.row,r.end.column=n.end.column),t.splice(u,1),e.push(n),n=r,u--);return this.ranges=t,e};this.contains=function(n,t){return this.pointIndex({row:n,column:t})>=0};this.containsPoint=function(n){return this.pointIndex(n)>=0};this.rangeAtPoint=function(n){var t=this.pointIndex(n);if(t>=0)return this.ranges[t]};this.clipRows=function(n,t){var u=this.ranges,i,r,e,f;if(u[0].start.row>t||u[u.length-1].start.row<n)return[];for(i=this.pointIndex({row:n,column:0}),i<0&&(i=-i-1),r=this.pointIndex({row:t,column:0},i),r<0&&(r=-r-1),e=[],f=i;f<r;f++)e.push(u[f]);return e};this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)};this.attach=function(n){this.session&&this.detach();this.session=n;this.onChange=this.$onChange.bind(this);this.session.on("change",this.onChange)};this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)};this.$onChange=function(n){var u,i,r,o,t;n.action=="insert"?(i=n.start,u=n.end):(u=n.start,i=n.end);var f=i.row,c=u.row,e=c-f,s=-i.column+u.column,h=this.ranges;for(r=0,o=h.length;r<o;r++)if(t=h[r],!(t.end.row<f)){if(t.start.row>f)break;if(t.start.row==f&&t.start.column>=i.column&&(t.start.column!=i.column||!this.$insertRight)&&(t.start.column+=s,t.start.row+=e),t.end.row==f&&t.end.column>=i.column){if(t.end.column==i.column&&this.$insertRight)continue;t.end.column==i.column&&s>0&&r<o-1&&t.end.column>t.start.column&&t.end.column==h[r+1].start.column&&(t.end.column-=s);t.end.column+=s;t.end.row+=e}}if(e!=0&&r<o)for(;r<o;r++)t=h[r],t.start.row+=e,t.end.row+=e}}).call(r.prototype);t.RangeList=r});define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(n,t){"use strict";function r(n,t){n.row-=t.row;n.row==0&&(n.column-=t.column)}function f(n,t){r(n.start,t);r(n.end,t)}function u(n,t){n.row==0&&(n.column+=t.column);n.row+=t.row}function e(n,t){u(n.start,t);u(n.end,t)}var h=n("../range").Range,o=n("../range_list").RangeList,s=n("../lib/oop"),i=t.Fold=function(n,t){this.foldLine=null;this.placeholder=t;this.range=n;this.start=n.start;this.end=n.end;this.sameRow=n.start.row==n.end.row;this.subFolds=this.ranges=[]};s.inherits(i,o),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()};this.setFoldLine=function(n){this.foldLine=n;this.subFolds.forEach(function(t){t.setFoldLine(n)})};this.clone=function(){var t=this.range.clone(),n=new i(t,this.placeholder);return this.subFolds.forEach(function(t){n.subFolds.push(t.clone())}),n.collapseChildren=this.collapseChildren,n};this.addSubFold=function(n){var i,o,u,e,r,t,s,h;if(!this.range.isEqual(n)){if(!this.range.containsRange(n))throw new Error("A fold can't intersect already existing fold"+n.range+this.range);for(f(n,this.start),u=n.start.row,e=n.start.column,i=0,t=-1;i<this.subFolds.length;i++)if(t=this.subFolds[i].range.compare(u,e),t!=1)break;if(o=this.subFolds[i],t==0)return o.addSubFold(n);for(u=n.range.end.row,e=n.range.end.column,r=i,t=-1;r<this.subFolds.length;r++)if(t=this.subFolds[r].range.compare(u,e),t!=1)break;if(s=this.subFolds[r],t==0)throw new Error("A fold can't intersect already existing fold"+n.range+this.range);return h=this.subFolds.splice(i,r-i,n),n.setFoldLine(this.foldLine),n}};this.restoreRange=function(n){return e(n,this.start)}}.call(i.prototype)});define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(n,t){"use strict";function e(){this.getFoldAt=function(n,t,i){var e=this.getFoldLine(n),f,u,r;if(!e)return null;for(f=e.folds,u=0;u<f.length;u++)if(r=f[u],r.range.contains(n,t)){if(i==1&&r.range.isEnd(n,t))continue;if(i==-1&&r.range.isStart(n,t))continue;return r}};this.getFoldsInRange=function(n){var o=n.start,s=n.end,u=this.$foldData,h=[],i,t,f,r,e;for(o.column+=1,s.column-=1,i=0;i<u.length;i++)if(t=u[i].range.compareRange(n),t!=2){if(t==-2)break;for(f=u[i].folds,r=0;r<f.length;r++){if(e=f[r],t=e.range.compareRange(n),t==-2)break;if(t!=2){if(t==42)break;h.push(e)}}}return o.column-=1,s.column+=1,h};this.getFoldsInRangeList=function(n){var t;return Array.isArray(n)?(t=[],n.forEach(function(n){t=t.concat(this.getFoldsInRange(n))},this)):t=this.getFoldsInRange(n),t};this.getAllFolds=function(){for(var r=[],i=this.$foldData,t,n=0;n<i.length;n++)for(t=0;t<i[n].folds.length;t++)r.push(i[n].folds[t]);return r};this.getFoldStringAt=function(n,t,i,r){var u,f,e,o,s;if(r=r||this.getFoldLine(n),!r)return null;for(u={end:{column:0}},o=0;o<r.folds.length;o++){if(e=r.folds[o],s=e.range.compareEnd(n,t),s==-1){f=this.getLine(e.start.row).substring(u.end.column,e.start.column);break}if(s===0)return null;u=e}return f||(f=this.getLine(e.start.row).substring(u.end.column)),i==-1?f.substring(0,t-u.end.column):i==1?f.substring(t-u.end.column):f};this.getFoldLine=function(n,t){var u=this.$foldData,i=0,r;for(t&&(i=u.indexOf(t)),i==-1&&(i=0),i;i<u.length;i++){if(r=u[i],r.start.row<=n&&r.end.row>=n)return r;if(r.end.row>n)return null}return null};this.getNextFoldLine=function(n,t){var r=this.$foldData,i=0,u;for(t&&(i=r.indexOf(t)),i==-1&&(i=0),i;i<r.length;i++)if(u=r[i],u.end.row>=n)return u;return null};this.getFoldedRowCount=function(n,t){for(var e=this.$foldData,r=t-n+1,u=0;u<e.length;u++){var o=e[u],f=o.end.row,i=o.start.row;if(f>=t){i<t&&(i>=n?r-=t-i:r=0);break}f>=n&&(r-=i>=n?f-i:f-n+1)}return r};this.$addFoldLine=function(n){return this.$foldData.push(n),this.$foldData.sort(function(n,t){return n.start.row-t.start.row}),n};this.addFold=function(n,t){var v=this.$foldData,y=!1,i,o,h,l,c,f,a;n instanceof u?i=n:(i=new u(t,n),i.collapseChildren=t.collapseChildren);this.$clipRangeToDocument(i.range);var s=i.start.row,p=i.start.column,e=i.end.row,w=i.end.column;if(s<e||s==e&&p<=w-2){if(o=this.getFoldAt(s,p,1),h=this.getFoldAt(e,w,-1),o&&h==o)return o.addSubFold(i);for(o&&!o.range.isStart(s,p)&&this.removeFold(o),h&&!h.range.isEnd(e,w)&&this.removeFold(h),l=this.getFoldsInRange(i.range),l.length>0&&(this.removeFolds(l),l.forEach(function(n){i.addSubFold(n)})),c=0;c<v.length;c++){if(f=v[c],e==f.start.row){f.addFold(i);y=!0;break}if(s==f.end.row){if(f.addFold(i),y=!0,!i.sameRow&&(a=v[c+1],a&&a.start.row==e)){f.merge(a);break}break}if(e<=f.start.row)break}return y||(f=this.$addFoldLine(new r(this.$foldData,i))),this.$useWrapMode?this.$updateWrapData(f.start.row,f.start.row):this.$updateRowLengthCache(f.start.row,f.start.row),this.$modified=!0,this._signal("changeFold",{data:i,action:"add"}),i}throw new Error("The range has to be at least 2 characters width");};this.addFolds=function(n){n.forEach(function(n){this.addFold(n)},this)};this.removeFold=function(n){var i=n.foldLine,u=i.start.row,f=i.end.row,e=this.$foldData,t=i.folds,r;t.length==1?e.splice(e.indexOf(i),1):i.range.isEnd(n.end.row,n.end.column)?(t.pop(),i.end.row=t[t.length-1].end.row,i.end.column=t[t.length-1].end.column):i.range.isStart(n.start.row,n.start.column)?(t.shift(),i.start.row=t[0].start.row,i.start.column=t[0].start.column):n.sameRow?t.splice(t.indexOf(n),1):(r=i.split(n.start.row,n.start.column),t=r.folds,t.shift(),r.start.row=t[0].start.row,r.start.column=t[0].start.column);this.$updating||(this.$useWrapMode?this.$updateWrapData(u,f):this.$updateRowLengthCache(u,f));this.$modified=!0;this._signal("changeFold",{data:n,action:"remove"})};this.removeFolds=function(n){for(var i=[],t=0;t<n.length;t++)i.push(n[t]);i.forEach(function(n){this.removeFold(n)},this);this.$modified=!0};this.expandFold=function(n){this.removeFold(n);n.subFolds.forEach(function(t){n.restoreRange(t);this.addFold(t)},this);n.collapseChildren>0&&this.foldAll(n.start.row+1,n.end.row,n.collapseChildren-1);n.subFolds=[]};this.expandFolds=function(n){n.forEach(function(n){this.expandFold(n)},this)};this.unfold=function(n,t){var u,r,f;if(n==null?(u=new i(0,0,this.getLength(),0),t=!0):u=typeof n=="number"?new i(n,0,n,this.getLine(n).length):"row"in n?i.fromPoints(n,n):n,r=this.getFoldsInRangeList(u),t)this.removeFolds(r);else for(f=r;f.length;)this.expandFolds(f),f=this.getFoldsInRangeList(u);if(r.length)return r};this.isRowFolded=function(n,t){return!!this.getFoldLine(n,t)};this.getRowFoldEnd=function(n,t){var i=this.getFoldLine(n,t);return i?i.end.row:n};this.getRowFoldStart=function(n,t){var i=this.getFoldLine(n,t);return i?i.start.row:n};this.getFoldDisplayLine=function(n,t,i,r,u){r==null&&(r=n.start.row);u==null&&(u=0);t==null&&(t=n.end.row);i==null&&(i=this.getLine(t).length);var e=this.doc,f="";return n.walk(function(n,t,i,o){if(!(t<r)){if(t==r){if(i<u)return;o=Math.max(u,o)}f+=n!=null?n:e.getLine(t).substring(o,i)}},t,i),f};this.getDisplayLine=function(n,t,i,r){var f=this.getFoldLine(n),u;return f?this.getFoldDisplayLine(f,n,t,i,r):(u=this.doc.getLine(n),u.substring(r||0,t||u.length))};this.$cloneFoldData=function(){var n=[];return n=this.$foldData.map(function(t){var i=t.folds.map(function(n){return n.clone()});return new r(n,i)}),n};this.toggleFold=function(n){var o=this.selection,t=o.getRange(),i,r,u,e,f;if(t.isEmpty()){if(u=t.start,i=this.getFoldAt(u.row,u.column),i){this.expandFold(i);return}(r=this.findMatchingBracket(u))?t.comparePoint(r)==1?t.end=r:(t.start=r,t.start.column++,t.end.column--):(r=this.findMatchingBracket({row:u.row,column:u.column+1}))?(t.comparePoint(r)==1?t.end=r:t.start=r,t.start.column++):t=this.getCommentFoldRange(u.row,u.column)||t}else{if(e=this.getFoldsInRange(t),n&&e.length){this.expandFolds(e);return}e.length==1&&(i=e[0])}if(i||(i=this.getFoldAt(t.start.row,t.start.column)),i&&i.range.toString()==t.toString()){this.expandFold(i);return}if(f="...",!t.isMultiLine()){if(f=this.getTextRange(t),f.length<4)return;f=f.trim().substring(0,2)+".."}this.addFold(f,t)};this.getCommentFoldRange=function(n,t,r){var e=new f(this,n,t),u=e.getCurrentToken(),o,s;if(u&&/^comment|string/.test(u.type)){if(o=new i,s=new RegExp(u.type.replace(/\..*/,"\\.")),r!=1){do u=e.stepBackward();while(u&&s.test(u.type));e.stepForward()}if(o.start.row=e.getCurrentTokenRow(),o.start.column=e.getCurrentTokenColumn()+2,e=new f(this,n,t),r!=-1){do u=e.stepForward();while(u&&s.test(u.type));u=e.stepBackward()}else u=e.getCurrentToken();return o.end.row=e.getCurrentTokenRow(),o.end.column=e.getCurrentTokenColumn()+u.value.length-2,o}};this.foldAll=function(n,t,i){var f,r,u,e;if(i==undefined&&(i=1e5),f=this.foldWidgets,f)for(t=t||this.getLength(),n=n||0,r=n;r<t;r++)if((f[r]==null&&(f[r]=this.getFoldWidget(r)),f[r]=="start")&&(u=this.getFoldWidgetRange(r),u&&u.isMultiLine()&&u.end.row<=t&&u.start.row>=n)){r=u.end.row;try{e=this.addFold("...",u);e&&(e.collapseChildren=i)}catch(o){}}};this.$foldStyles={manual:1,markbegin:1,markbeginend:1};this.$foldStyle="markbegin";this.setFoldStyle=function(n){if(!this.$foldStyles[n])throw new Error("invalid fold style: "+n+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=n){this.$foldStyle=n;n=="manual"&&this.unfold();var t=this.$foldMode;this.$setFolding(null);this.$setFolding(t)}};this.$setFolding=function(n){if(this.$foldMode!=n){if(this.$foldMode=n,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),!n||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[];this.getFoldWidget=n.getFoldWidget.bind(n,this,this.$foldStyle);this.getFoldWidgetRange=n.getFoldWidgetRange.bind(n,this,this.$foldStyle);this.$updateFoldWidgets=this.updateFoldWidgets.bind(this);this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this);this.on("change",this.$updateFoldWidgets);this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)}};this.getParentFoldRangeData=function(n,t){var u=this.foldWidgets,i,e,f,r;if(!u||t&&u[n])return{};for(i=n-1;i>=0;){if(f=u[i],f==null&&(f=u[i]=this.getFoldWidget(i)),f=="start"&&(r=this.getFoldWidgetRange(i),e||(e=r),r&&r.end.row>=n))break;i--}return{range:i!==-1&&r,firstRange:e}};this.onFoldWidgetClick=function(n,t){var r,u,i;t=t.domEvent;r={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey};u=this.$toggleFoldWidget(n,r);u||(i=t.target||t.srcElement,i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid"))};this.$toggleFoldWidget=function(n,t){var i,u,o,f;if(this.getFoldWidget){var s=this.getFoldWidget(n),h=this.getLine(n),e=s==="end"?-1:1,r=this.getFoldAt(n,e===-1?0:h.length,e);return r?(t.children||t.all?this.removeFold(r):this.expandFold(r),r):(i=this.getFoldWidgetRange(n,!0),i&&!i.isMultiLine()&&(r=this.getFoldAt(i.start.row,i.start.column,1),r&&i.isEqual(r.range)))?(this.removeFold(r),r):(t.siblings?(u=this.getParentFoldRangeData(n),u.range&&(o=u.range.start.row+1,f=u.range.end.row),this.foldAll(o,f,t.all?1e4:0)):t.children?(f=i?i.end.row:this.getLength(),this.foldAll(n+1,f,t.all?1e4:0)):i&&(t.all&&(i.collapseChildren=1e4),this.addFold("...",i)),i)}};this.toggleFoldWidget=function(){var n=this.selection.getCursor().row,t,i,r;(n=this.getRowFoldStart(n),t=this.$toggleFoldWidget(n,{}),t)||(i=this.getParentFoldRangeData(n,!0),t=i.range||i.firstRange,t&&(n=t.start.row,r=this.getFoldAt(n,this.getLine(n).length,1),r?this.removeFold(r):this.addFold("...",t)))};this.updateFoldWidgets=function(n){var t=n.start.row,i=n.end.row-t,r;i===0?this.foldWidgets[t]=null:n.action=="remove"?this.foldWidgets.splice(t,i+1,null):(r=Array(i+1),r.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,r))};this.tokenizerUpdateFoldWidgets=function(n){var t=n.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}var i=n("../range").Range,r=n("./fold_line").FoldLine,u=n("./fold").Fold,f=n("../token_iterator").TokenIterator;t.Folding=e});define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(n,t){"use strict";function u(){this.findMatchingBracket=function(n,t){var r,i;return n.column==0?null:(r=t||this.getLine(n.row).charAt(n.column-1),r=="")?null:(i=r.match(/([\(\[\{])|([\)\]\}])/),i?i[1]?this.$findClosingBracket(i[1],n):this.$findOpeningBracket(i[2],n):null)};this.getBracketRange=function(n){var o=this.getLine(n.row),e=!0,t,f=o.charAt(n.column-1),u=f&&f.match(/([\(\[\{])|([\)\]\}])/),i;if(u||(f=o.charAt(n.column),n={row:n.row,column:n.column+1},u=f&&f.match(/([\(\[\{])|([\)\]\}])/),e=!1),!u)return null;if(u[1]){if(i=this.$findClosingBracket(u[1],n),!i)return null;t=r.fromPoints(n,i);e||(t.end.column++,t.start.column--);t.cursor=t.end}else{if(i=this.$findOpeningBracket(u[2],n),!i)return null;t=r.fromPoints(i,n);e||(t.start.column++,t.end.column--);t.cursor=t.start}return t};this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"};this.$findOpeningBracket=function(n,t,r){var c=this.$brackets[n],s=1,f=new i(this,t.row,t.column),u=f.getCurrentToken(),e,o,h;if(u||(u=f.stepForward()),u){for(r||(r=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+")),e=t.column-f.getCurrentTokenColumn()-2,o=u.value;;){while(e>=0){if(h=o.charAt(e),h==c){if(s-=1,s==0)return{row:f.getCurrentTokenRow(),column:e+f.getCurrentTokenColumn()}}else h==n&&(s+=1);e-=1}do u=f.stepBackward();while(u&&!r.test(u.type));if(u==null)break;o=u.value;e=o.length-1}return null}};this.$findClosingBracket=function(n,t,r){var l=this.$brackets[n],o=1,f=new i(this,t.row,t.column),u=f.getCurrentToken(),e,s,c,h;if(u||(u=f.stepForward()),u){for(r||(r=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+")),e=t.column-f.getCurrentTokenColumn();;){for(s=u.value,c=s.length;e<c;){if(h=s.charAt(e),h==l){if(o-=1,o==0)return{row:f.getCurrentTokenRow(),column:e+f.getCurrentTokenColumn()}}else h==n&&(o+=1);e+=1}do u=f.stepForward();while(u&&!r.test(u.type));if(u==null)break;e=0}return null}}}var i=n("../token_iterator").TokenIterator,r=n("../range").Range;t.BracketMatch=u});define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(n,t){"use strict";var e=n("./lib/oop"),f=n("./lib/lang"),u=n("./config"),o=n("./lib/event_emitter").EventEmitter,s=n("./selection").Selection,h=n("./mode/text").Mode,i=n("./range").Range,c=n("./document").Document,l=n("./background_tokenizer").BackgroundTokenizer,a=n("./search_highlight").SearchHighlight,r=function(n,t){this.$breakpoints=[];this.$decorations=[];this.$frontMarkers={};this.$backMarkers={};this.$markerId=1;this.$undoSelect=!0;this.$foldData=[];this.id="session"+ ++r.$uid;this.$foldData.toString=function(){return this.join("\n")};this.on("changeFold",this.onChangeFold.bind(this));this.$onChange=this.onChange.bind(this);typeof n=="object"&&n.getLine||(n=new c(n));this.setDocument(n);this.selection=new s(this);u.resetOptions(this);this.setMode(t);u._signal("session",this)};(function(){function s(n){return n<4352?!1:n>=4352&&n<=4447||n>=4515&&n<=4519||n>=4602&&n<=4607||n>=9001&&n<=9002||n>=11904&&n<=11929||n>=11931&&n<=12019||n>=12032&&n<=12245||n>=12272&&n<=12283||n>=12288&&n<=12350||n>=12353&&n<=12438||n>=12441&&n<=12543||n>=12549&&n<=12589||n>=12593&&n<=12686||n>=12688&&n<=12730||n>=12736&&n<=12771||n>=12784&&n<=12830||n>=12832&&n<=12871||n>=12880&&n<=13054||n>=13056&&n<=19903||n>=19968&&n<=42124||n>=42128&&n<=42182||n>=43360&&n<=43388||n>=44032&&n<=55203||n>=55216&&n<=55238||n>=55243&&n<=55291||n>=63744&&n<=64255||n>=65040&&n<=65049||n>=65072&&n<=65106||n>=65108&&n<=65126||n>=65128&&n<=65131||n>=65281&&n<=65376||n>=65504&&n<=65510}e.implement(this,o);this.setDocument=function(n){this.doc&&this.doc.removeListener("change",this.$onChange);this.doc=n;n.on("change",this.$onChange);this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument());this.resetCaches()};this.getDocument=function(){return this.doc};this.$resetRowCache=function(n){if(!n){this.$docRowCache=[];this.$screenRowCache=[];return}var t=this.$docRowCache.length,i=this.$getRowCacheIndex(this.$docRowCache,n)+1;t>i&&(this.$docRowCache.splice(i,t),this.$screenRowCache.splice(i,t))};this.$getRowCacheIndex=function(n,t){for(var r=0,u=n.length-1,i,f;r<=u;)if(i=r+u>>1,f=n[i],t>f)r=i+1;else{if(!(t<f))return i;u=i-1}return r-1};this.resetCaches=function(){this.$modified=!0;this.$wrapData=[];this.$rowLengthCache=[];this.$resetRowCache(0);this.bgTokenizer&&this.bgTokenizer.start(0)};this.onChangeFold=function(n){var t=n.data;this.$resetRowCache(t.start.row)};this.onChange=function(n){this.$modified=!0;this.$resetRowCache(n.start.row);var t=this.$updateInternalDataOnChange(n);this.$fromUndo||!this.$undoManager||n.ignore||(this.$deltasDoc.push(n),t&&t.length!=0&&this.$deltasFold.push({action:"removeFolds",folds:t}),this.$informUndoManager.schedule());this.bgTokenizer&&this.bgTokenizer.$updateOnChange(n);this._signal("change",n)};this.setValue=function(n){this.doc.setValue(n);this.selection.moveTo(0,0);this.$resetRowCache(0);this.$deltas=[];this.$deltasDoc=[];this.$deltasFold=[];this.setUndoManager(this.$undoManager);this.getUndoManager().reset()};this.getValue=this.toString=function(){return this.doc.getValue()};this.getSelection=function(){return this.selection};this.getState=function(n){return this.bgTokenizer.getState(n)};this.getTokens=function(n){return this.bgTokenizer.getTokens(n)};this.getTokenAt=function(n,t){var u=this.bgTokenizer.getTokens(n),r,f=0,i;if(t==null)i=u.length-1,f=this.getLine(n).length;else for(i=0;i<u.length;i++)if(f+=u[i].value.length,f>=t)break;return r=u[i],r?(r.index=i,r.start=f-r.value.length,r):null};this.setUndoManager=function(n){if(this.$undoManager=n,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),n){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel();t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]);t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]);t.$deltas.length>0&&n.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas});t.mergeUndoDeltas=!1;t.$deltas=[]};this.$informUndoManager=f.delayedCall(this.$syncInformUndoManager)}};this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()};this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}};this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager};this.getTabString=function(){return this.getUseSoftTabs()?f.stringRepeat(" ",this.getTabSize()):"\t"};this.setUseSoftTabs=function(n){this.setOption("useSoftTabs",n)};this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs};this.setTabSize=function(n){this.setOption("tabSize",n)};this.getTabSize=function(){return this.$tabSize};this.isTabStop=function(n){return this.$useSoftTabs&&n.column%this.$tabSize==0};this.$overwrite=!1;this.setOverwrite=function(n){this.setOption("overwrite",n)};this.getOverwrite=function(){return this.$overwrite};this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)};this.addGutterDecoration=function(n,t){this.$decorations[n]||(this.$decorations[n]="");this.$decorations[n]+=" "+t;this._signal("changeBreakpoint",{})};this.removeGutterDecoration=function(n,t){this.$decorations[n]=(this.$decorations[n]||"").replace(" "+t,"");this._signal("changeBreakpoint",{})};this.getBreakpoints=function(){return this.$breakpoints};this.setBreakpoints=function(n){this.$breakpoints=[];for(var t=0;t<n.length;t++)this.$breakpoints[n[t]]="ace_breakpoint";this._signal("changeBreakpoint",{})};this.clearBreakpoints=function(){this.$breakpoints=[];this._signal("changeBreakpoint",{})};this.setBreakpoint=function(n,t){t===undefined&&(t="ace_breakpoint");t?this.$breakpoints[n]=t:delete this.$breakpoints[n];this._signal("changeBreakpoint",{})};this.clearBreakpoint=function(n){delete this.$breakpoints[n];this._signal("changeBreakpoint",{})};this.addMarker=function(n,t,i,r){var u=this.$markerId++,f={range:n,type:i||"line",renderer:typeof i=="function"?i:null,clazz:t,inFront:!!r,id:u};return r?(this.$frontMarkers[u]=f,this._signal("changeFrontMarker")):(this.$backMarkers[u]=f,this._signal("changeBackMarker")),u};this.addDynamicMarker=function(n,t){if(n.update){var i=this.$markerId++;return n.id=i,n.inFront=!!t,t?(this.$frontMarkers[i]=n,this._signal("changeFrontMarker")):(this.$backMarkers[i]=n,this._signal("changeBackMarker")),n}};this.removeMarker=function(n){var t=this.$frontMarkers[n]||this.$backMarkers[n],i;t&&(i=t.inFront?this.$frontMarkers:this.$backMarkers,t&&(delete i[n],this._signal(t.inFront?"changeFrontMarker":"changeBackMarker")))};this.getMarkers=function(n){return n?this.$frontMarkers:this.$backMarkers};this.highlight=function(n){if(!this.$searchHighlight){var t=new a(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(n)};this.highlightLines=function(n,t,r,u){typeof t!="number"&&(r=t,t=n);r||(r="ace_step");var f=new i(n,0,t,Infinity);return f.id=this.addMarker(f,r,"fullLine",u),f};this.setAnnotations=function(n){this.$annotations=n;this._signal("changeAnnotation",{})};this.getAnnotations=function(){return this.$annotations||[]};this.clearAnnotations=function(){this.setAnnotations([])};this.$detectNewLine=function(n){var t=n.match(/^.*?(\r?\n)/m);this.$autoNewLine=t?t[1]:"\n"};this.getWordRange=function(n,t){var u=this.getLine(n),o=!1,f,r,e;if(t>0&&(o=!!u.charAt(t-1).match(this.tokenRe)),o||(o=!!u.charAt(t).match(this.tokenRe)),f=o?this.tokenRe:/^\s+$/.test(u.slice(t-1,t+1))?/\s/:this.nonTokenRe,r=t,r>0){do r--;while(r>=0&&u.charAt(r).match(f));r++}for(e=t;e<u.length&&u.charAt(e).match(f);)e++;return new i(n,r,n,e)};this.getAWordRange=function(n,t){for(var i=this.getWordRange(n,t),r=this.getLine(i.end.row);r.charAt(i.end.column).match(/[ \t]/);)i.end.column+=1;return i};this.setNewLineMode=function(n){this.doc.setNewLineMode(n)};this.getNewLineMode=function(){return this.doc.getNewLineMode()};this.setUseWorker=function(n){this.setOption("useWorker",n)};this.getUseWorker=function(){return this.$useWorker};this.onReloadTokenizer=function(n){var t=n.data;this.bgTokenizer.start(t.first);this._signal("tokenizerUpdate",n)};this.$modes={};this.$mode=null;this.$modeId=null;this.setMode=function(n,t){if(n&&typeof n=="object"){if(n.getTokenizer)return this.$onChangeMode(n);var r=n,i=r.path}else i=n||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new h),this.$modes[i]&&!r){this.$onChangeMode(this.$modes[i]);t&&t();return}this.$modeId=i;u.loadModule(["mode",i],function(n){if(this.$modeId!==i)return t&&t();this.$modes[i]&&!r?this.$onChangeMode(this.$modes[i]):n&&n.Mode&&(n=new n.Mode(r),r||(this.$modes[i]=n,n.$id=i),this.$onChangeMode(n));t&&t()}.bind(this));this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)};this.$onChangeMode=function(n,t){var i,r,u;(t||(this.$modeId=n.$id),this.$mode!==n)&&(this.$mode=n,this.$stopWorker(),this.$useWorker&&this.$startWorker(),i=n.getTokenizer(),i.addEventListener!==undefined&&(r=this.onReloadTokenizer.bind(this),i.addEventListener("update",r)),this.bgTokenizer?this.bgTokenizer.setTokenizer(i):(this.bgTokenizer=new l(i),u=this,this.bgTokenizer.addEventListener("update",function(n){u._signal("tokenizerUpdate",n)})),this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=n.tokenRe,this.nonTokenRe=n.nonTokenRe,t||(n.attachToSession&&n.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(n.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode")))};this.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)};this.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(n){u.warn("Could not load worker",n);this.$worker=null}};this.getMode=function(){return this.$mode};this.$scrollTop=0;this.setScrollTop=function(n){this.$scrollTop===n||isNaN(n)||(this.$scrollTop=n,this._signal("changeScrollTop",n))};this.getScrollTop=function(){return this.$scrollTop};this.$scrollLeft=0;this.setScrollLeft=function(n){this.$scrollLeft===n||isNaN(n)||(this.$scrollLeft=n,this._signal("changeScrollLeft",n))};this.getScrollLeft=function(){return this.$scrollLeft};this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth};this.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var n=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>n&&(n=t.screenWidth)}),this.lineWidgetWidth=n};this.$computeWidth=function(n){var t;if(this.$modified||n){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var f=this.doc.getAllLines(),r=this.$rowLengthCache,u=0,e=0,i=this.$foldData[e],o=i?i.start.row:Infinity,s=f.length;for(t=0;t<s;t++){if(t>o){if(t=i.end.row+1,t>=s)break;i=this.$foldData[e++];o=i?i.start.row:Infinity}r[t]==null&&(r[t]=this.$getStringScreenWidth(f[t])[0]);r[t]>u&&(u=r[t])}this.screenWidth=u}};this.getLine=function(n){return this.doc.getLine(n)};this.getLines=function(n,t){return this.doc.getLines(n,t)};this.getLength=function(){return this.doc.getLength()};this.getTextRange=function(n){return this.doc.getTextRange(n||this.selection.getRange())};this.insert=function(n,t){return this.doc.insert(n,t)};this.remove=function(n){return this.doc.remove(n)};this.removeFullLines=function(n,t){return this.doc.removeFullLines(n,t)};this.undoChanges=function(n,t){var i,u,r;if(n.length){for(this.$fromUndo=!0,i=null,u=n.length-1;u!=-1;u--)r=n[u],r.group=="doc"?(this.doc.revertDeltas(r.deltas),i=this.$getUndoSelection(r.deltas,!0,i)):r.deltas.forEach(function(n){this.addFolds(n.folds)},this);return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}};this.redoChanges=function(n,t){var i,r,u;if(n.length){for(this.$fromUndo=!0,i=null,r=0;r<n.length;r++)u=n[r],u.group=="doc"&&(this.doc.applyDeltas(u.deltas),i=this.$getUndoSelection(u.deltas,!1,i));return this.$fromUndo=!1,i&&this.$undoSelect&&!t&&this.selection.setSelectionRange(i),i}};this.setUndoSelect=function(n){this.$undoSelect=n};this.$getUndoSelection=function(n,t,r){function c(n){return t?n.action!=="insert":n.action==="insert"}var f=n[0],u,e,o=!1,s,h;for(c(f)?(u=i.fromPoints(f.start,f.end),o=!0):(u=i.fromPoints(f.start,f.start),o=!1),s=1;s<n.length;s++)f=n[s],c(f)?(e=f.start,u.compare(e.row,e.column)==-1&&u.setStart(e),e=f.end,u.compare(e.row,e.column)==1&&u.setEnd(e),o=!0):(e=f.start,u.compare(e.row,e.column)==-1&&(u=i.fromPoints(f.start,f.start)),o=!1);return r!=null&&(i.comparePoints(r.start,u.start)===0&&(r.start.column+=u.end.column-u.start.column,r.end.column+=u.end.column-u.start.column),h=r.compareRange(u),h==1?u.setStart(r.start):h==-1&&u.setEnd(r.end)),u};this.replace=function(n,t){return this.doc.replace(n,t)};this.moveText=function(n,t,r){var c=this.getTextRange(n),s=this.getFoldsInRange(n),u=i.fromPoints(t,t),f,e;if(r||(this.remove(n),f=n.start.row-n.end.row,e=f?-n.end.column:n.start.column-n.end.column,e&&(u.start.row==n.end.row&&u.start.column>n.end.column&&(u.start.column+=e),u.end.row==n.end.row&&u.end.column>n.end.column&&(u.end.column+=e)),f&&u.start.row>=n.end.row&&(u.start.row+=f,u.end.row+=f)),u.end=this.insert(u.start,c),s.length){var o=n.start,h=u.start,f=h.row-o.row,e=h.column-o.column;this.addFolds(s.map(function(n){return n=n.clone(),n.start.row==o.row&&(n.start.column+=e),n.end.row==o.row&&(n.end.column+=e),n.start.row+=f,n.end.row+=f,n}))}return u};this.indentRows=function(n,t,i){i=i.replace(/\t/g,this.getTabString());for(var r=n;r<=t;r++)this.doc.insertInLine({row:r,column:0},i)};this.outdentRows=function(n){for(var e=n.collapseRows(),r=new i(0,0,0,0),o=this.getTabSize(),f,t,u=e.start.row;u<=e.end.row;++u){for(f=this.getLine(u),r.start.row=u,r.end.row=u,t=0;t<o;++t)if(f.charAt(t)!=" ")break;t<o&&f.charAt(t)=="\t"?(r.start.column=t,r.end.column=t+1):(r.start.column=0,r.end.column=t);this.remove(r)}};this.$moveLines=function(n,t,r){var f,u;if(n=this.getRowFoldStart(n),t=this.getRowFoldEnd(t),r<0){if(f=this.getRowFoldStart(n+r),f<0)return 0;u=f-n}else if(r>0){if(f=this.getRowFoldEnd(t+r),f>this.doc.getLength()-1)return 0;u=f-t}else n=this.$clipRowToDocument(n),t=this.$clipRowToDocument(t),u=t-n+1;var o=new i(n,0,t,Number.MAX_VALUE),e=this.getFoldsInRange(o).map(function(n){return n=n.clone(),n.start.row+=u,n.end.row+=u,n}),s=r==0?this.doc.getLines(n,t):this.doc.removeFullLines(n,t);return this.doc.insertFullLines(n+u,s),e.length&&this.addFolds(e),u};this.moveLinesUp=function(n,t){return this.$moveLines(n,t,-1)};this.moveLinesDown=function(n,t){return this.$moveLines(n,t,1)};this.duplicateLines=function(n,t){return this.$moveLines(n,t,0)};this.$clipRowToDocument=function(n){return Math.max(0,Math.min(n,this.doc.getLength()-1))};this.$clipColumnToRow=function(n,t){return t<0?0:Math.min(this.doc.getLine(n).length,t)};this.$clipPositionToDocument=function(n,t){if(t=Math.max(0,t),n<0)n=0,t=0;else{var i=this.doc.getLength();n>=i?(n=i-1,t=this.doc.getLine(i-1).length):t=Math.min(this.doc.getLine(n).length,t)}return{row:n,column:t}};this.$clipRangeToDocument=function(n){n.start.row<0?(n.start.row=0,n.start.column=0):n.start.column=this.$clipColumnToRow(n.start.row,n.start.column);var t=this.doc.getLength()-1;return n.end.row>t?(n.end.row=t,n.end.column=this.doc.getLine(t).length):n.end.column=this.$clipColumnToRow(n.end.row,n.end.column),n};this.$wrapLimit=80;this.$useWrapMode=!1;this.$wrapLimitRange={min:null,max:null};this.setUseWrapMode=function(n){if(n!=this.$useWrapMode){if(this.$useWrapMode=n,this.$modified=!0,this.$resetRowCache(0),n){var t=this.getLength();this.$wrapData=Array(t);this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}};this.getUseWrapMode=function(){return this.$useWrapMode};this.setWrapLimitRange=function(n,t){(this.$wrapLimitRange.min!==n||this.$wrapLimitRange.max!==t)&&(this.$wrapLimitRange={min:n,max:t},this.$modified=!0,this.$useWrapMode&&this._signal("changeWrapMode"))};this.adjustWrapLimit=function(n,t){var i=this.$wrapLimitRange,r;return i.max<0&&(i={min:t,max:t}),r=this.$constrainWrapLimit(n,i.min,i.max),r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1};this.$constrainWrapLimit=function(n,t,i){return t&&(n=Math.max(t,n)),i&&(n=Math.min(i,n)),n};this.getWrapLimit=function(){return this.$wrapLimit};this.setWrapLimit=function(n){this.setWrapLimitRange(n,n)};this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}};this.$updateInternalDataOnChange=function(n){var l=this.$useWrapMode,p=n.action,f=n.start,e=n.end,i=f.row,s=e.row,r=s-i,h=null,o,u,c,a,v,y,t;if(this.$updating=!0,r!=0)if(p==="remove"){for(this[l?"$wrapData":"$rowLengthCache"].splice(i,r),o=this.$foldData,h=this.getFoldsInRange(n),this.removeFolds(h),t=this.getFoldLine(e.row),u=0,t&&(t.addRemoveChars(e.row,e.column,f.column-e.column),t.shiftRow(-r),c=this.getFoldLine(i),c&&c!==t&&(c.merge(t),t=c),u=o.indexOf(t)+1),u;u<o.length;u++)t=o[u],t.start.row>=e.row&&t.shiftRow(-r);s=i}else{a=Array(r);a.unshift(i,0);v=l?this.$wrapData:this.$rowLengthCache;v.splice.apply(v,a);var o=this.$foldData,t=this.getFoldLine(i),u=0;for(t&&(y=t.range.compareInside(f.row,f.column),y==0?(t=t.split(f.row,f.column),t&&(t.shiftRow(r),t.addRemoveChars(s,0,e.column-f.column))):y==-1&&(t.addRemoveChars(i,0,e.column-f.column),t.shiftRow(r)),u=o.indexOf(t)+1),u;u<o.length;u++)t=o[u],t.start.row>=i&&t.shiftRow(r)}else r=Math.abs(n.start.column-n.end.column),p==="remove"&&(h=this.getFoldsInRange(n),this.removeFolds(h),r=-r),t=this.getFoldLine(i),t&&t.addRemoveChars(i,f.column,r);return l&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,l?this.$updateWrapData(i,s):this.$updateRowLengthCache(i,s),h};this.$updateRowLengthCache=function(n,t){this.$rowLengthCache[n]=null;this.$rowLengthCache[t]=null};this.$updateWrapData=function(t,i){var o=this.doc.getAllLines(),s=this.getTabSize(),h=this.$wrapData,c=this.$wrapLimit,u,f,e=t;for(i=Math.min(i,o.length-1);e<=i;)f=this.getFoldLine(e,f),f?(u=[],f.walk(function(t,i,f,e){var s,h;if(t!=null)for(s=this.$getDisplayTokens(t,u.length),s[0]=n,h=1;h<s.length;h++)s[h]=r;else s=this.$getDisplayTokens(o[i].substring(e,f),u.length);u=u.concat(s)}.bind(this),f.end.row,o[f.end.row].length+1),h[f.start.row]=this.$computeWrapSplits(u,c,s),e=f.end.row+1):(u=this.$getDisplayTokens(o[e]),h[e]=this.$computeWrapSplits(u,c,s),e++)};var c=1,v=2,n=3,r=4,y=9,t=10,p=11,w=12;this.$computeWrapSplits=function(i,u,f){function g(){var n=0,r,u;if(d===0)return n;if(a)for(r=0;r<i.length;r++)if(u=i[r],u==t)n+=1;else{if(u!=p){if(u==w)continue;break}n+=f}return k&&a!==!1&&(n+=f),Math.min(n,d)}function h(n){var r=i.slice(o,n),t=r.length;r.join("").replace(/12/g,function(){t-=1}).replace(/2/g,function(){t-=1});l.length||(c=g(),l.indent=c);b+=t;l.push(b);o=n}var e,s;if(i.length==0)return[];for(var l=[],nt=i.length,o=0,b=0,k=this.$wrapAsCode,a=this.$indentedSoftWrap,d=u<=Math.max(2*f,8)||a===!1?0:Math.floor(u/2),c=0;nt-o>u-c;){if(e=o+u-c,i[e-1]>=t&&i[e]>=t){h(e);continue}if(i[e]==n||i[e]==r){for(e;e!=o-1;e--)if(i[e]==n)break;if(e>o){h(e);continue}for(e=o+u,e;e<i.length;e++)if(i[e]!=r)break;if(e==i.length)break;h(e);continue}for(s=Math.max(e-(u-(u>>2)),o-1);e>s&&i[e]<n;)e--;if(k){while(e>s&&i[e]<n)e--;while(e>s&&i[e]==y)e--}else while(e>s&&i[e]<t)e--;if(e>s){h(++e);continue}e=o+u;i[e]==v&&e--;h(e-c)}return l};this.$getDisplayTokens=function(n,i){var u=[],o,f,r,e;for(i=i||0,f=0;f<n.length;f++)if(r=n.charCodeAt(f),r==9)for(o=this.getScreenTabSize(u.length+i),u.push(p),e=1;e<o;e++)u.push(w);else r==32?u.push(t):r>39&&r<48||r>57&&r<64?u.push(y):r>=4352&&s(r)?u.push(c,v):u.push(c);return u};this.$getStringScreenWidth=function(n,t,i){if(t==0)return[0,0];t==null&&(t=Infinity);i=i||0;for(var u,r=0;r<n.length;r++)if(u=n.charCodeAt(r),i+=u==9?this.getScreenTabSize(i):u>=4352&&s(u)?2:1,i>t)break;return[i,r]};this.lineWidgets=null;this.getRowLength=function(n){if(this.lineWidgets)var t=this.lineWidgets[n]&&this.lineWidgets[n].rowCount||0;else t=0;return!this.$useWrapMode||!this.$wrapData[n]?1+t:this.$wrapData[n].length+1+t};this.getRowLineCount=function(n){return!this.$useWrapMode||!this.$wrapData[n]?1:this.$wrapData[n].length+1};this.getRowWrapIndent=function(n){if(this.$useWrapMode){var i=this.screenToDocumentPosition(n,Number.MAX_VALUE),t=this.$wrapData[i.row];return t.length&&t[0]<i.column?t.indent:0}return 0};this.getScreenLastRowColumn=function(n){var t=this.screenToDocumentPosition(n,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)};this.getDocumentLastRowColumn=function(n,t){var i=this.documentToScreenRow(n,t);return this.getScreenLastRowColumn(i)};this.getDocumentLastRowColumnPosition=function(n,t){var i=this.documentToScreenRow(n,t);return this.screenToDocumentPosition(i,Number.MAX_VALUE/10)};this.getRowSplitData=function(n){return this.$useWrapMode?this.$wrapData[n]:undefined};this.getScreenTabSize=function(n){return this.$tabSize-n%this.$tabSize};this.screenToDocumentRow=function(n,t){return this.screenToDocumentPosition(n,t).row};this.screenToDocumentColumn=function(n,t){return this.screenToDocumentPosition(n,t).column};this.screenToDocumentPosition=function(n,t){var p,w,u,l;if(n<0)return{row:0,column:0};var o,i=0,f=0,a,e=0,s=0,h=this.$screenRowCache,v=this.$getRowCacheIndex(h,n),y=h.length;if(y&&v>=0)var e=h[v],i=this.$docRowCache[v],p=n>h[y-1];else p=!y;for(var c=this.getLength()-1,r=this.getNextFoldLine(i),b=r?r.start.row:Infinity;e<=n;){if(s=this.getRowLength(i),e+s>n||i>=c)break;e+=s;i++;i>b&&(i=r.end.row+1,r=this.getNextFoldLine(i,r),b=r?r.start.row:Infinity);p&&(this.$docRowCache.push(i),this.$screenRowCache.push(e))}if(r&&r.start.row<=i)o=this.getFoldDisplayLine(r),i=r.start.row;else{if(e+s<=n||i>c)return{row:c,column:this.getLine(c).length};o=this.getLine(i);r=null}return w=0,this.$useWrapMode&&(u=this.$wrapData[i],u&&(l=Math.floor(n-e),a=u[l],l>0&&u.length&&(w=u.indent,f=u[l-1]||u[u.length-1],o=o.substring(f)))),f+=this.$getStringScreenWidth(o,t-w)[1],this.$useWrapMode&&f>=a&&(f=a-1),r?r.idxToPosition(f):{row:i,column:f}};this.documentToScreenPosition=function(n,t){var a,w,i,l,u,b,o,s;a=typeof t=="undefined"?this.$clipPositionToDocument(n.row,n.column):this.$clipPositionToDocument(n,t);n=a.row;t=a.column;var f=0,v=null,h=null;h=this.getFoldAt(n,t,1);h&&(n=h.start.row,t=h.start.column);var e,r=0,c=this.$docRowCache,y=this.$getRowCacheIndex(c,n),p=c.length;if(p&&y>=0)var r=c[y],f=this.$screenRowCache[y],w=n>c[p-1];else w=!p;for(i=this.getNextFoldLine(r),l=i?i.start.row:Infinity;r<n;){if(r>=l){if(e=i.end.row+1,e>n)break;i=this.getNextFoldLine(e,i);l=i?i.start.row:Infinity}else e=r+1;f+=this.getRowLength(r);r=e;w&&(this.$docRowCache.push(r),this.$screenRowCache.push(f))}if(u="",i&&r>=l?(u=this.getFoldDisplayLine(i,n,t),v=i.start.row):(u=this.getLine(n).substring(0,t),v=n),b=0,this.$useWrapMode&&(o=this.$wrapData[v],o)){for(s=0;u.length>=o[s];)f++,s++;u=u.substring(o[s-1]||0,u.length);b=s>0?o.indent:0}return{row:f,column:b+this.$getStringScreenWidth(u)[0]}};this.documentToScreenColumn=function(n,t){return this.documentToScreenPosition(n,t).column};this.documentToScreenRow=function(n,t){return this.documentToScreenPosition(n,t).row};this.getScreenLength=function(){var i=0,n=null,u,t,f;if(this.$useWrapMode)for(var o=this.$wrapData.length,r=0,t=0,n=this.$foldData[t++],e=n?n.start.row:Infinity;r<o;)f=this.$wrapData[r],i+=f?f.length+1:1,r++,r>e&&(r=n.end.row+1,n=this.$foldData[t++],e=n?n.start.row:Infinity);else for(i=this.getLength(),u=this.$foldData,t=0;t<u.length;t++)n=u[t],i-=n.end.row-n.start.row;return this.lineWidgets&&(i+=this.$getWidgetScreenLength()),i};this.$setFontMetrics=function(n){this.$enableVarChar&&(this.$getStringScreenWidth=function(t,i,r){if(i===0)return[0,0];i||(i=Infinity);r=r||0;for(var f,u=0;u<t.length;u++)if(f=t.charAt(u),r+=f==="\t"?this.getScreenTabSize(r):n.getCharacterWidth(f),r>i)break;return[r,u]})};this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null);this.$stopWorker()}}).call(r.prototype);n("./edit_session/folding").Folding.call(r.prototype);n("./edit_session/bracket_match").BracketMatch.call(r.prototype);u.defineOptions(r.prototype,"session",{wrap:{set:function(n){if(!n||n=="off"?n=!1:n=="free"?n=!0:n=="printMargin"?n=-1:typeof n=="string"&&(n=parseInt(n,10)||!1),this.$wrap!=n)if(this.$wrap=n,n){var t=typeof n=="number"?n:null;this.setWrapLimitRange(t,t);this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(n){n=n=="auto"?this.$mode.type!="text":n!="text";n!=this.$wrapAsCode&&(this.$wrapAsCode=n,this.$useWrapMode&&(this.$modified=!0,this.$resetRowCache(0),this.$updateWrapData(0,this.getLength()-1)))},initialValue:"auto"},indentedSoftWrap:{initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(n){this.$useWorker=n;this.$stopWorker();n&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(n){isNaN(n)||this.$tabSize===n||(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=n,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},overwrite:{set:function(){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(n){this.doc.setNewLineMode(n)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(n){this.setMode(n)},get:function(){return this.$modeId}}});t.EditSession=r});define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,t){"use strict";var i=n("./lib/lang"),f=n("./lib/oop"),r=n("./range").Range,u=function(){this.$options={}};(function(){this.set=function(n){return f.mixin(this.$options,n),this};this.getOptions=function(){return i.copyObject(this.$options)};this.setOptions=function(n){this.$options=n};this.find=function(n){var i=this.$options,u=this.$matchIterator(n,i),t;return u?(t=null,u.forEach(function(n,u,f){if(n.start)t=n;else{var e=n.offset+(f||0);if(t=new r(u,e,u,e+n.length),!n.length&&i.start&&i.start.start&&i.skipCurrent!=0&&t.isEqual(i.start))return t=null,!1}return!0}),t):!1};this.findAll=function(n){var l=this.$options,s,p,a,e,u,y,t,v;if(!l.needle)return[];this.$assembleRegExp(l);var o=l.range,h=o?n.getLines(o.start.row,o.end.row):n.doc.getAllLines(),f=[],c=l.re;if(l.$isMultiLine){s=c.length;p=h.length-s;n:for(e=c.offset||0;e<=p;e++){for(t=0;t<s;t++)if(h[e+t].search(c[t])==-1)continue n;var w=h[e],k=h[e+s-1],b=w.length-w.match(c[0])[0].length,d=k.match(c[s-1])[0].length;a&&a.end.row===e&&a.end.column>b||(f.push(a=new r(e,b,e+s-1,d)),s>2&&(e=e+s-2))}}else for(u=0;u<h.length;u++)for(y=i.getMatchOffsets(h[u],c),t=0;t<y.length;t++)v=y[t],f.push(new r(u,v.offset,u,v.offset+v.length));if(o){for(var g=o.start.column,nt=o.start.column,u=0,t=f.length-1;u<t&&f[u].start.column<g&&f[u].start.row==o.start.row;)u++;while(u<t&&f[t].end.column>nt&&f[t].end.row==o.end.row)t--;for(f=f.slice(u,t+1),u=0,t=f.length;u<t;u++)f[u].start.row+=o.start.row,f[u].end.row+=o.start.row}return f};this.replace=function(n,t){var u=this.$options,f=this.$assembleRegExp(u),e,i,r;if(u.$isMultiLine)return t;if(f){if(e=f.exec(n),!e||e[0].length!=n.length)return null;if(t=n.replace(f,t),u.preserveCase){for(t=t.split(""),i=Math.min(n.length,n.length);i--;)r=n[i],t[i]=r&&r.toLowerCase()!=r?t[i].toUpperCase():t[i].toLowerCase();t=t.join("")}return t}};this.$matchIterator=function(n,t){var u=this.$assembleRegExp(t),e,o,f,s;return u?(t.$isMultiLine?(o=u.length,f=function(t,i,f){var c=t.search(u[0]),s,l,h;if(c!=-1){for(s=1;s<o;s++)if(t=n.getLine(i+s),t.search(u[s])==-1)return;return l=t.match(u[o-1])[0].length,h=new r(i,c,i+o-1,l),u.offset==1?(h.start.row--,h.start.column=Number.MAX_VALUE):f&&(h.start.column+=f),e(h)?!0:void 0}}):f=t.backwards?function(n,t,r){for(var o=i.getMatchOffsets(n,u),f=o.length-1;f>=0;f--)if(e(o[f],t,r))return!0}:function(n,t,r){for(var o=i.getMatchOffsets(n,u),f=0;f<o.length;f++)if(e(o[f],t,r))return!0},s=this.$lineIterator(n,t),{forEach:function(n){e=n;s.forEach(f)}}):!1};this.$assembleRegExp=function(n,t){var r,u,f;if(n.needle instanceof RegExp)return n.re=n.needle;if(r=n.needle,!n.needle)return n.re=!1;if(n.regExp||(r=i.escapeRegExp(r)),n.wholeWord&&(r="\\b"+r+"\\b"),u=n.caseSensitive?"gm":"gmi",n.$isMultiLine=!t&&/[\n\r]/.test(r),n.$isMultiLine)return n.re=this.$assembleMultilineRegExp(r,u);try{f=new RegExp(r,u)}catch(e){f=!1}return n.re=f};this.$assembleMultilineRegExp=function(n,t){for(var u=n.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),i=[],r=0;r<u.length;r++)try{i.push(new RegExp(u[r],t))}catch(f){return!1}return u[0]==""?(i.shift(),i.offset=1):i.offset=0,i};this.$lineIterator=function(n,t){var e=t.backwards==1,o=t.skipCurrent!=0,r=t.range,i=t.start;i||(i=r?r[e?"end":"start"]:n.selection.getRange());i.start&&(i=i[o!=e?"end":"start"]);var u=r?r.start.row:0,f=r?r.end.row:n.getLength()-1,s=e?function(r){var e=i.row,o=n.getLine(e).substring(0,i.column);if(!r(o,e)){for(e--;e>=u;e--)if(r(n.getLine(e),e))return;if(t.wrap!=0)for(e=f,u=i.row;e>=u;e--)if(r(n.getLine(e),e))return}}:function(r){var e=i.row,o=n.getLine(e).substr(i.column);if(!r(o,e,i.column)){for(e+=1;e<=f;e++)if(r(n.getLine(e),e))return;if(t.wrap!=0)for(e=u,f=i.row;e<=f;e++)if(r(n.getLine(e),e))return}};return{forEach:s}}}).call(u.prototype);t.Search=u});define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,t){"use strict";function r(n,t){this.platform=t||(e.isMac?"mac":"win");this.commands={};this.commandKeyBinding={};this.addCommands(n);this.$singleCommand=!0}function f(n,t){r.call(this,n,t);this.$singleCommand=!1}var i=n("../lib/keys"),e=n("../lib/useragent"),u=i.KEY_MODS;f.prototype=r.prototype,function(){function n(n){return typeof n=="object"&&n.bindKey&&n.bindKey.position||0}this.addCommand=function(n){this.commands[n.name]&&this.removeCommand(n);this.commands[n.name]=n;n.bindKey&&this._buildKeyHash(n)};this.removeCommand=function(n,t){var e=n&&(typeof n=="string"?n:n.name),r,u,i,f;n=this.commands[e];t||delete this.commands[e];r=this.commandKeyBinding;for(u in r)i=r[u],i==n?delete r[u]:Array.isArray(i)&&(f=i.indexOf(n),f!=-1&&(i.splice(f,1),i.length==1&&(r[u]=i[0])))};this.bindKey=function(n,t,i){if(typeof n=="object"&&n&&(i==undefined&&(i=n.position),n=n[this.platform]),n){if(typeof t=="function")return this.addCommand({exec:t,bindKey:n,name:t.name||n});n.split("|").forEach(function(n){var r="",f,e,o;n.indexOf(" ")!=-1&&(f=n.split(/\s+/),n=f.pop(),f.forEach(function(n){var t=this.parseKeys(n),i=u[t.hashId]+t.key;r+=(r?" ":"")+i;this._addCommandToBinding(r,"chainKeys")},this),r+=" ");e=this.parseKeys(n);o=u[e.hashId]+e.key;this._addCommandToBinding(r+o,t,i)},this)}};this._addCommandToBinding=function(t,i,r){var u=this.commandKeyBinding,f,e,o,s;if(i)if(!u[t]||this.$singleCommand)u[t]=i;else{for(Array.isArray(u[t])?(f=u[t].indexOf(i))!=-1&&u[t].splice(f,1):u[t]=[u[t]],typeof r!="number"&&(r=r||i.isDefault?-100:n(i)),e=u[t],f=0;f<e.length;f++)if(o=e[f],s=n(o),s>r)break;e.splice(f,0,i)}else delete u[t]};this.addCommands=function(n){n&&Object.keys(n).forEach(function(t){var i=n[t];if(i){if(typeof i=="string")return this.bindKey(i,t);(typeof i=="function"&&(i={exec:i}),typeof i=="object")&&(i.name||(i.name=t),this.addCommand(i))}},this)};this.removeCommands=function(n){Object.keys(n).forEach(function(t){this.removeCommand(n[t])},this)};this.bindKeys=function(n){Object.keys(n).forEach(function(t){this.bindKey(t,n[t])},this)};this._buildKeyHash=function(n){this.bindKey(n.bindKey,n)};this.parseKeys=function(n){var t=n.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(n){return n}),r=t.pop(),o=i[r],f,u,e;if(i.FUNCTION_KEYS[o])r=i.FUNCTION_KEYS[o].toLowerCase();else{if(!t.length)return{key:r,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:r.toUpperCase(),hashId:-1}}for(f=0,u=t.length;u--;){if(e=i.KEY_MODS[t[u]],e==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[u]+" in "+n),!1;f|=e}return{key:r,hashId:f}};this.findKeyCommand=function(n,t){var i=u[n]+t;return this.commandKeyBinding[i]};this.handleKeyboard=function(n,t,i,r){if(!(r<0)){var e=u[t]+i,f=this.commandKeyBinding[e];return(n.$keyChain&&(n.$keyChain+=" "+e,f=this.commandKeyBinding[n.$keyChain]||f),f&&(f=="chainKeys"||f[f.length-1]=="chainKeys"))?(n.$keyChain=n.$keyChain||e,{command:"null"}):(n.$keyChain&&((!t||t==4)&&i.length==1?n.$keyChain=n.$keyChain.slice(0,-e.length-1):(t==-1||r>0)&&(n.$keyChain="")),{command:f})}};this.getStatusText=function(n,t){return t.$keyChain||""}}.call(r.prototype);t.HashHandler=r;t.MultiHashHandler=f});define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(n,t){"use strict";var r=n("../lib/oop"),u=n("../keyboard/hash_handler").MultiHashHandler,f=n("../lib/event_emitter").EventEmitter,i=function(n,t){u.call(this,t,n);this.byName=this.commands;this.setDefaultHandler("exec",function(n){return n.command.exec(n.editor,n.args||{})})};r.inherits(i,u),function(){r.implement(this,f);this.exec=function(n,t,i){var u,r;if(Array.isArray(n)){for(u=n.length;u--;)if(this.exec(n[u],t,i))return!0;return!1}return(typeof n=="string"&&(n=this.commands[n]),!n)?!1:t&&t.$readOnly&&!n.readOnly?!1:(r={editor:t,command:n,args:i},r.returnValue=this._emit("exec",r),this._signal("afterExec",r),r.returnValue===!1?!1:!0)};this.toggleRecording=function(n){if(!this.$inReplay)return n&&n._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(n){this.macro.push([n.command,n.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)};this.replay=function(n){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(n);try{this.$inReplay=!0;this.macro.forEach(function(t){typeof t=="string"?this.exec(t,n):this.exec(t[0],n,t[1])},this)}finally{this.$inReplay=!1}}};this.trimMacro=function(n){return n.map(function(n){return typeof n[0]!="string"&&(n[0]=n[0].name),n[1]||(n=n[0]),n})}}.call(i.prototype);t.CommandManager=i});define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(n,t){"use strict";function i(n,t){return{win:n,mac:t}}var f=n("../lib/lang"),r=n("../config"),u=n("../range").Range;t.commands=[{name:"showSettingsMenu",bindKey:i("Ctrl-,","Command-,"),exec:function(n){r.loadModule("ace/ext/settings_menu",function(t){t.init(n);n.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:i("Alt-E","Ctrl-E"),exec:function(n){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(n,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:i("Alt-Shift-E","Ctrl-Shift-E"),exec:function(n){r.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(n,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:i("Ctrl-A","Command-A"),exec:function(n){n.selectAll()},readOnly:!0},{name:"centerselection",bindKey:i(null,"Ctrl-L"),exec:function(n){n.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:i("Ctrl-L","Command-L"),exec:function(n){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||n.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:i("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(n){n.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:i("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(n){n.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:i("F2","F2"),exec:function(n){n.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:i("Alt-F2","Alt-F2"),exec:function(n){n.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:i(null,"Ctrl-Command-Option-0"),exec:function(n){n.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:i("Alt-0","Command-Option-0"),exec:function(n){n.session.foldAll();n.session.unfold(n.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:i("Alt-Shift-0","Command-Option-Shift-0"),exec:function(n){n.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:i("Ctrl-K","Command-G"),exec:function(n){n.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:i("Ctrl-Shift-K","Command-Shift-G"),exec:function(n){n.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:i("Alt-K","Ctrl-G"),exec:function(n){n.selection.isEmpty()?n.selection.selectWord():n.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:i("Alt-Shift-K","Ctrl-Shift-G"),exec:function(n){n.selection.isEmpty()?n.selection.selectWord():n.findPrevious()},readOnly:!0},{name:"find",bindKey:i("Ctrl-F","Command-F"),exec:function(n){r.loadModule("ace/ext/searchbox",function(t){t.Search(n)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(n){n.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:i("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(n){n.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:i("Ctrl-Home","Command-Home|Command-Up"),exec:function(n){n.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:i("Shift-Up","Shift-Up"),exec:function(n){n.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",bindKey:i("Up","Up|Ctrl-P"),exec:function(n,t){n.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",bindKey:i("Ctrl-Shift-End","Command-Shift-Down"),exec:function(n){n.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:i("Ctrl-End","Command-End|Command-Down"),exec:function(n){n.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:i("Shift-Down","Shift-Down"),exec:function(n){n.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:i("Down","Down|Ctrl-N"),exec:function(n,t){n.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:i("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(n){n.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:i("Ctrl-Left","Option-Left"),exec:function(n){n.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:i("Alt-Shift-Left","Command-Shift-Left"),exec:function(n){n.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:i("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(n){n.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:i("Shift-Left","Shift-Left"),exec:function(n){n.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:i("Left","Left|Ctrl-B"),exec:function(n,t){n.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:i("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(n){n.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:i("Ctrl-Right","Option-Right"),exec:function(n){n.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:i("Alt-Shift-Right","Command-Shift-Right"),exec:function(n){n.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:i("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(n){n.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:i("Shift-Right","Shift-Right"),exec:function(n){n.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:i("Right","Right|Ctrl-F"),exec:function(n,t){n.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(n){n.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:i(null,"Option-PageDown"),exec:function(n){n.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:i("PageDown","PageDown|Ctrl-V"),exec:function(n){n.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(n){n.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:i(null,"Option-PageUp"),exec:function(n){n.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(n){n.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:i("Ctrl-Up",null),exec:function(n){n.renderer.scrollBy(0,-2*n.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:i("Ctrl-Down",null),exec:function(n){n.renderer.scrollBy(0,2*n.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(n){n.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(n){n.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:i("Ctrl-Alt-E","Command-Option-E"),exec:function(n){n.commands.toggleRecording(n)},readOnly:!0},{name:"replaymacro",bindKey:i("Ctrl-Shift-E","Command-Shift-E"),exec:function(n){n.commands.replay(n)},readOnly:!0},{name:"jumptomatching",bindKey:i("Ctrl-P","Ctrl-P"),exec:function(n){n.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",bindKey:i("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(n){n.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",bindKey:i("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(n){n.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",bindKey:i(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",exec:function(){},readOnly:!0},{name:"cut",exec:function(n){var t=n.getSelectionRange();n._emit("cut",t);n.selection.isEmpty()||(n.session.remove(t),n.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",exec:function(n,t){n.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",bindKey:i("Ctrl-D","Command-D"),exec:function(n){n.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:i("Ctrl-Shift-D","Command-Shift-D"),exec:function(n){n.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:i("Ctrl-Alt-S","Command-Alt-S"),exec:function(n){n.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:i("Ctrl-/","Command-/"),exec:function(n){n.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:i("Ctrl-Shift-/","Command-Shift-/"),exec:function(n){n.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:i("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(n){n.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:i("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(n){n.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",bindKey:i("Ctrl-H","Command-Option-F"),exec:function(n){r.loadModule("ace/ext/searchbox",function(t){t.Search(n,!0)})}},{name:"undo",bindKey:i("Ctrl-Z","Command-Z"),exec:function(n){n.undo()}},{name:"redo",bindKey:i("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(n){n.redo()}},{name:"copylinesup",bindKey:i("Alt-Shift-Up","Command-Option-Up"),exec:function(n){n.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:i("Alt-Up","Option-Up"),exec:function(n){n.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:i("Alt-Shift-Down","Command-Option-Down"),exec:function(n){n.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:i("Alt-Down","Option-Down"),exec:function(n){n.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:i("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(n){n.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:i("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(n){n.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:i("Shift-Delete",null),exec:function(n){if(!n.selection.isEmpty())return!1;n.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:i("Alt-Backspace","Command-Backspace"),exec:function(n){n.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:i("Alt-Delete","Ctrl-K"),exec:function(n){n.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:i("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(n){n.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:i("Ctrl-Delete","Alt-Delete"),exec:function(n){n.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:i("Shift-Tab","Shift-Tab"),exec:function(n){n.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:i("Tab","Tab"),exec:function(n){n.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:i("Ctrl-[","Ctrl-["),exec:function(n){n.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:i("Ctrl-]","Ctrl-]"),exec:function(n){n.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(n,t){n.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(n,t){n.insert(f.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:i(null,"Ctrl-O"),exec:function(n){n.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:i("Ctrl-T","Ctrl-T"),exec:function(n){n.transposeLetters()},multiSelectAction:function(n){n.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:i("Ctrl-U","Ctrl-U"),exec:function(n){n.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:i("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(n){n.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:i("Ctrl-Shift-L","Command-Shift-L"),exec:function(n){var t=n.selection.getRange();t.start.column=t.end.column=0;t.end.row++;n.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:i(null,null),exec:function(n){for(var h=n.selection.isBackwards(),t=h?n.selection.getSelectionLead():n.selection.getSelectionAnchor(),o=h?n.selection.getSelectionAnchor():n.selection.getSelectionLead(),i=n.session.doc.getLine(t.row).length,l=n.session.doc.getTextRange(n.selection.getRange()),c=l.replace(/\n\s*/," ").length,s=n.session.doc.getLine(t.row),r,e=t.row+1;e<=o.row+1;e++)r=f.stringTrimLeft(f.stringTrimRight(n.session.doc.getLine(e))),r.length!==0&&(r=" "+r),s+=r;o.row+1<n.session.doc.getLength()-1&&(s+=n.session.doc.getNewLineCharacter());n.clearSelection();n.session.doc.replace(new u(t.row,0,o.row+2,0),s);c>0?(n.selection.moveCursorTo(t.row,t.column),n.selection.selectTo(t.row,t.column+c)):(i=n.session.doc.getLine(t.row).length>i?i+1:i,n.selection.moveCursorTo(t.row,i))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:i(null,null),exec:function(n){var f=n.session.doc.getLength()-1,e=n.session.doc.getLine(f).length,i=n.selection.rangeList.ranges,r=[],t;for(i.length<1&&(i=[n.selection.getRange()]),t=0;t<i.length;t++)t==i.length-1&&(i[t].end.row!==f||i[t].end.column!==e)&&r.push(new u(i[t].end.row,i[t].end.column,f,e)),t===0?(i[t].start.row!==0||i[t].start.column!==0)&&r.push(new u(0,0,i[t].start.row,i[t].start.column)):r.push(new u(i[t-1].end.row,i[t-1].end.column,i[t].start.row,i[t].start.column));for(n.exitMultiSelectMode(),n.clearSelection(),t=0;t<r.length;t++)n.selection.addRange(r[t],!1)},readOnly:!0,scrollIntoView:"none"}]});define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator"],function(n,t){"use strict";n("./lib/fixoldbrowsers");var e=n("./lib/oop"),o=n("./lib/dom"),u=n("./lib/lang"),h=n("./lib/useragent"),c=n("./keyboard/textinput").TextInput,l=n("./mouse/mouse_handler").MouseHandler,a=n("./mouse/fold_handler").FoldHandler,v=n("./keyboard/keybinding").KeyBinding,y=n("./edit_session").EditSession,p=n("./search").Search,i=n("./range").Range,w=n("./lib/event_emitter").EventEmitter,b=n("./commands/command_manager").CommandManager,k=n("./commands/default_commands").commands,r=n("./config"),s=n("./token_iterator").TokenIterator,f=function(n,t){var i=n.getContainerElement();this.container=i;this.renderer=n;this.commands=new b(h.isMac?"mac":"win",k);this.textInput=new c(n.getTextAreaContainer(),this);this.renderer.textarea=this.textInput.getElement();this.keyBinding=new v(this);this.$mouseHandler=new l(this);new a(this);this.$blockScrolling=0;this.$search=(new p).set({wrap:!0});this.$historyTracker=this.$historyTracker.bind(this);this.commands.on("exec",this.$historyTracker);this.$initOperationListeners();this._$emitInputEvent=u.delayedCall(function(){this._signal("input",{});this.session&&this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this));this.on("change",function(n,t){t._$emitInputEvent.schedule(31)});this.setSession(t||new y(""));r.resetOptions(this);r._signal("editor",this)};(function(){e.implement(this,w);this.$initOperationListeners=function(){this.selections=[];this.commands.on("exec",this.startOperation.bind(this),!0);this.commands.on("afterExec",this.endOperation.bind(this),!0);this.$opResetTimer=u.delayedCall(this.endOperation.bind(this));this.on("change",function(){this.curOp||this.startOperation();this.curOp.docChanged=!0}.bind(this),!0);this.on("changeSelection",function(){this.curOp||this.startOperation();this.curOp.selectionChanged=!0}.bind(this),!0)};this.curOp=null;this.prevOp={};this.startOperation=function(n){if(this.curOp){if(!n||this.curOp.command)return;this.prevOp=this.curOp}n||(this.previousCommand=null,n={});this.$opResetTimer.schedule();this.curOp={command:n.command||{},args:n.args,scrollTop:this.renderer.scrollTop};this.curOp.command.name&&this.curOp.command.scrollIntoView!==undefined&&this.$blockScrolling++};this.endOperation=function(n){var i,t,r,u;if(this.curOp){if(n&&n.returnValue===!1)return this.curOp=null;if(this._signal("beforeEndOperation"),i=this.curOp.command,i.name&&this.$blockScrolling>0&&this.$blockScrolling--,t=i&&i.scrollIntoView,t){switch(t){case"center-animate":t="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":r=this.selection.getRange();u=this.renderer.layerConfig;(r.start.row>=u.lastRow||r.end.row<=u.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}t=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp;this.curOp=null}};this.$mergeableCommands=["backspace","del","insertstring"];this.$historyTracker=function(n){var u;if(this.$mergeUndoDeltas){var i=this.prevOp,r=this.$mergeableCommands,t=i.command&&n.command.name==i.command.name;n.command.name=="insertstring"?(u=n.args,this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),t=t&&this.mergeNextCommand&&(!/\s/.test(u)||/\s/.test(i.args)),this.mergeNextCommand=!0):t=t&&r.indexOf(n.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(t=!1);t?this.session.mergeUndoDeltas=!0:r.indexOf(n.command.name)!==-1&&(this.sequenceStartTime=Date.now())}};this.setKeyboardHandler=function(n,t){if(n&&typeof n=="string"){this.$keybindingId=n;var i=this;r.loadModule(["keybinding",n],function(r){i.$keybindingId==n&&i.keyBinding.setKeyboardHandler(r&&r.handler);t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(n),t&&t()};this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()};this.setSession=function(n){var t,i;this.session!=n&&(this.curOp&&this.endOperation(),this.curOp={},t=this.session,t&&(this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange),i=this.session.getSelection(),i.off("changeCursor",this.$onCursorChange),i.off("changeSelection",this.$onSelectionChange)),this.session=n,n?(this.$onDocumentChange=this.onDocumentChange.bind(this),n.on("change",this.$onDocumentChange),this.renderer.setSession(n),this.$onChangeMode=this.onChangeMode.bind(this),n.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),n.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),n.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),n.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),n.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),n.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=n.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(n)),this._signal("changeSession",{session:n,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),n&&n._signal("changeEditor",{editor:this}))};this.getSession=function(){return this.session};this.setValue=function(n,t){return this.session.doc.setValue(n),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),n};this.getValue=function(){return this.session.getValue()};this.getSelection=function(){return this.selection};this.resize=function(n){this.renderer.onResize(n)};this.setTheme=function(n,t){this.renderer.setTheme(n,t)};this.getTheme=function(){return this.renderer.getTheme()};this.setStyle=function(n){this.renderer.setStyle(n)};this.unsetStyle=function(n){this.renderer.unsetStyle(n)};this.getFontSize=function(){return this.getOption("fontSize")||o.computedStyle(this.container,"fontSize")};this.setFontSize=function(n){this.setOption("fontSize",n)};this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var n=this;this.$highlightPending=!0;setTimeout(function(){var t,r,u;(n.$highlightPending=!1,t=n.session,t&&t.bgTokenizer)&&(r=t.findMatchingBracket(n.getCursorPosition()),r?u=new i(r.row,r.column,r.row,r.column+1):t.$mode.getMatching&&(u=t.$mode.getMatching(n.session)),u&&(t.$bracketHighlight=t.addMarker(u,"ace_bracket","text")))},50)}};this.$highlightTags=function(){if(!this.$highlightTagPending){var n=this;this.$highlightTagPending=!0;setTimeout(function(){var t;if(n.$highlightTagPending=!1,t=n.session,t&&t.bgTokenizer){var h=n.getCursorPosition(),f=new s(n.session,h.row,h.column),r=f.getCurrentToken();if(!r||!/\b(?:tag-open|tag-name)/.test(r.type)){t.removeMarker(t.$tagHighlight);t.$tagHighlight=null;return}if(r.type.indexOf("tag-open")==-1||(r=f.stepForward(),r)){var c=r.value,e=0,u=f.stepBackward();if(u.value=="<"){do u=r,r=f.stepForward(),r&&r.value===c&&r.type.indexOf("tag-name")!==-1&&(u.value==="<"?e++:u.value==="<\/"&&e--);while(r&&e>=0)}else{do r=u,u=f.stepBackward(),r&&r.value===c&&r.type.indexOf("tag-name")!==-1&&(u.value==="<"?e++:u.value==="<\/"&&e--);while(u&&e<=0);f.stepForward()}if(!r){t.removeMarker(t.$tagHighlight);t.$tagHighlight=null;return}var l=f.getCurrentTokenRow(),a=f.getCurrentTokenColumn(),o=new i(l,a,l,a+r.value.length);t.$tagHighlight&&o.compareRange(t.$backMarkers[t.$tagHighlight].range)!==0&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null);o&&!t.$tagHighlight&&(t.$tagHighlight=t.addMarker(o,"ace_bracket","text"))}}},50)}};this.focus=function(){var n=this;setTimeout(function(){n.textInput.focus()});this.textInput.focus()};this.isFocused=function(){return this.textInput.isFocused()};this.blur=function(){this.textInput.blur()};this.onFocus=function(n){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",n))};this.onBlur=function(n){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",n))};this.$cursorChange=function(){this.renderer.updateCursor()};this.onDocumentChange=function(n){var t=this.session.$useWrapMode,i=n.start.row==n.end.row?n.end.row:Infinity;this.renderer.updateLines(n.start.row,i,t);this._signal("change",n);this.$cursorChange();this.$updateHighlightActiveLine()};this.onTokenizerUpdate=function(n){var t=n.data;this.renderer.updateLines(t.first,t.last)};this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())};this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())};this.onCursorChange=function(){this.$cursorChange();this.$blockScrolling||(r.warn("Automatically scrolling cursor into view after selection change","this will be disabled in the next version","set editor.$blockScrolling = Infinity to disable this message"),this.renderer.scrollCursorIntoView());this.$highlightBrackets();this.$highlightTags();this.$updateHighlightActiveLine();this._signal("changeSelection")};this.$updateHighlightActiveLine=function(){var n=this.getSession(),t,r;this.$highlightActiveLine&&(this.$selectionStyle=="line"&&this.selection.isMultiLine()||(t=this.getCursorPosition()),!this.renderer.$maxLines||this.session.getLength()!==1||this.renderer.$minLines>1||(t=!1));n.$highlightLineMarker&&!t?(n.removeMarker(n.$highlightLineMarker.id),n.$highlightLineMarker=null):!n.$highlightLineMarker&&t?(r=new i(t.row,t.column,t.row,Infinity),r.id=n.addMarker(r,"ace_active-line","screenLine"),n.$highlightLineMarker=r):t&&(n.$highlightLineMarker.start.row=t.row,n.$highlightLineMarker.end.row=t.row,n.$highlightLineMarker.start.column=t.column,n._signal("changeBackMarker"))};this.onSelectionChange=function(){var n=this.session,t,i,r;n.$selectionMarker&&n.removeMarker(n.$selectionMarker);n.$selectionMarker=null;this.selection.isEmpty()?this.$updateHighlightActiveLine():(t=this.selection.getRange(),i=this.getSelectionStyle(),n.$selectionMarker=n.addMarker(t,"ace_selection",i));r=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(r);this._signal("changeSelection")};this.$getSelectionHighLightRegexp=function(){var e=this.session,n=this.getSelectionRange();if(!n.isEmpty()&&!n.isMultiLine()){var r=n.start.column-1,u=n.end.column+1,i=e.getLine(n.start.row),f=i.length,t=i.substring(Math.max(r,0),Math.min(u,f));if((!(r>=0)||!/^[\w\d]/.test(t))&&(!(u<=f)||!/[\w\d]$/.test(t)))return(t=i.substring(n.start.column,n.end.column),!/^[\w\d]+$/.test(t))?void 0:this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:t})}};this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()};this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()};this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()};this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())};this.onChangeMode=function(n){this.renderer.updateText();this._emit("changeMode",n)};this.onChangeWrapLimit=function(){this.renderer.updateFull()};this.onChangeWrapMode=function(){this.renderer.onResize(!0)};this.onChangeFold=function(){this.$updateHighlightActiveLine();this.renderer.updateFull()};this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())};this.getCopyText=function(){var n=this.getSelectedText();return this._signal("copy",n),n};this.onCopy=function(){this.commands.exec("copy",this)};this.onCut=function(){this.commands.exec("cut",this)};this.onPaste=function(n,t){var i={text:n,event:t};this.commands.exec("paste",this,i)};this.$handlePaste=function(n){var i,t,r,u,f;if(typeof n=="string"&&(n={text:n}),this._signal("paste",n),i=n.text,!this.inMultiSelectMode||this.inVirtualSelectionMode)this.insert(i);else{if(t=i.split(/\r\n|\r|\n/),r=this.selection.rangeList.ranges,t.length>r.length||t.length<2||!t[1])return this.commands.exec("insertstring",this,i);for(u=r.length;u--;)f=r[u],f.isEmpty()||this.session.remove(f),this.session.insert(f.start,t[u])}};this.execCommand=function(n,t){return this.commands.exec(n,this,t)};this.insert=function(n,t){var f=this.session,s=f.getMode(),r=this.getCursorPosition(),u,e,o,c,a;this.getBehavioursEnabled()&&!t&&(u=s.transformAction(f.getState(r.row),"insertion",this,f,n),u&&(n!==u.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),n=u.text));n=="\t"&&(n=this.session.getTabString());this.selection.isEmpty()?this.session.getOverwrite()&&(e=new i.fromPoints(r,r),e.end.column+=n.length,this.session.remove(e)):(e=this.getSelectionRange(),r=this.session.remove(e),this.clearSelection());(n=="\n"||n=="\r\n")&&(o=f.getLine(r.row),r.column>o.search(/\S|$/)&&(c=o.substr(r.column).search(/\S|$/),f.doc.removeInLine(r.row,r.column,r.column+c)));this.clearSelection();var l=r.column,h=f.getState(r.row),o=f.getLine(r.row),v=s.checkOutdent(h,o,n),y=f.insert(r,n);u&&u.selection&&(u.selection.length==2?this.selection.setSelectionRange(new i(r.row,l+u.selection[0],r.row,l+u.selection[1])):this.selection.setSelectionRange(new i(r.row+u.selection[0],u.selection[1],r.row+u.selection[2],u.selection[3])));f.getDocument().isNewLine(n)&&(a=s.getNextLineIndent(h,o.slice(0,r.column),f.getTabString()),f.insert({row:r.row+1,column:0},a));v&&s.autoOutdent(h,f,r.row)};this.onTextInput=function(n){this.keyBinding.onTextInput(n)};this.onCommandKey=function(n,t,i){this.keyBinding.onCommandKey(n,t,i)};this.setOverwrite=function(n){this.session.setOverwrite(n)};this.getOverwrite=function(){return this.session.getOverwrite()};this.toggleOverwrite=function(){this.session.toggleOverwrite()};this.setScrollSpeed=function(n){this.setOption("scrollSpeed",n)};this.getScrollSpeed=function(){return this.getOption("scrollSpeed")};this.setDragDelay=function(n){this.setOption("dragDelay",n)};this.getDragDelay=function(){return this.getOption("dragDelay")};this.setSelectionStyle=function(n){this.setOption("selectionStyle",n)};this.getSelectionStyle=function(){return this.getOption("selectionStyle")};this.setHighlightActiveLine=function(n){this.setOption("highlightActiveLine",n)};this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")};this.setHighlightGutterLine=function(n){this.setOption("highlightGutterLine",n)};this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")};this.setHighlightSelectedWord=function(n){this.setOption("highlightSelectedWord",n)};this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord};this.setAnimatedScroll=function(n){this.renderer.setAnimatedScroll(n)};this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()};this.setShowInvisibles=function(n){this.renderer.setShowInvisibles(n)};this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()};this.setDisplayIndentGuides=function(n){this.renderer.setDisplayIndentGuides(n)};this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()};this.setShowPrintMargin=function(n){this.renderer.setShowPrintMargin(n)};this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()};this.setPrintMarginColumn=function(n){this.renderer.setPrintMarginColumn(n)};this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()};this.setReadOnly=function(n){this.setOption("readOnly",n)};this.getReadOnly=function(){return this.getOption("readOnly")};this.setBehavioursEnabled=function(n){this.setOption("behavioursEnabled",n)};this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")};this.setWrapBehavioursEnabled=function(n){this.setOption("wrapBehavioursEnabled",n)};this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")};this.setShowFoldWidgets=function(n){this.setOption("showFoldWidgets",n)};this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")};this.setFadeFoldWidgets=function(n){this.setOption("fadeFoldWidgets",n)};this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")};this.remove=function(n){var t,r,u;if(this.selection.isEmpty()&&(n=="left"?this.selection.selectLeft():this.selection.selectRight()),t=this.getSelectionRange(),this.getBehavioursEnabled()){var i=this.session,e=i.getState(t.start.row),f=i.getMode().transformAction(e,"deletion",this,i,t);t.end.column===0&&(r=i.getTextRange(t),r[r.length-1]=="\n"&&(u=i.getLine(t.end.row),/^\s+$/.test(u)&&(t.end.column=u.length)));f&&(t=f)}this.session.remove(t);this.clearSelection()};this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight();this.session.remove(this.getSelectionRange());this.clearSelection()};this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft();this.session.remove(this.getSelectionRange());this.clearSelection()};this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart();this.session.remove(this.getSelectionRange());this.clearSelection()};this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var n=this.getSelectionRange();n.start.column==n.end.column&&n.start.row==n.end.row&&(n.end.column=0,n.end.row++);this.session.remove(n);this.clearSelection()};this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var n=this.getCursorPosition();this.insert("\n");this.moveCursorToPosition(n)};this.transposeLetters=function(){var t,n,r,u,f;this.selection.isEmpty()&&(t=this.getCursorPosition(),n=t.column,n!==0)&&(r=this.session.getLine(t.row),n<r.length?(u=r.charAt(n)+r.charAt(n-1),f=new i(t.row,n-1,t.row,n+1)):(u=r.charAt(n-1)+r.charAt(n-2),f=new i(t.row,n-2,t.row,n)),this.session.replace(f,u))};this.toLowerCase=function(){var i=this.getSelectionRange(),n,t;this.selection.isEmpty()&&this.selection.selectWord();n=this.getSelectionRange();t=this.session.getTextRange(n);this.session.replace(n,t.toLowerCase());this.selection.setSelectionRange(i)};this.toUpperCase=function(){var i=this.getSelectionRange(),n,t;this.selection.isEmpty()&&this.selection.selectWord();n=this.getSelectionRange();t=this.session.getTextRange(n);this.session.replace(n,t.toUpperCase());this.selection.setSelectionRange(i)};this.indent=function(){var i=this.session,n=this.getSelectionRange(),o,t,e,r;if(n.start.row<n.end.row){t=this.$getSelectedRows();i.indentRows(t.first,t.last,"\t");return}if(n.start.column<n.end.column&&(o=i.getTextRange(n),!/^\s+$/.test(o))){t=this.$getSelectedRows();i.indentRows(t.first,t.last,"\t");return}var c=i.getLine(n.start.row),s=n.start,f=i.getTabSize(),h=i.documentToScreenColumn(s.row,s.column);if(this.session.getUseSoftTabs())r=f-h%f,e=u.stringRepeat(" ",r);else{for(r=h%f;c[n.start.column-1]==" "&&r;)n.start.column--,r--;this.selection.setSelectionRange(n);e="\t"}return this.insert(e)};this.blockIndent=function(){var n=this.$getSelectedRows();this.session.indentRows(n.first,n.last,"\t")};this.blockOutdent=function(){var n=this.session.getSelection();this.session.outdentRows(n.getRange())};this.sortLines=function(){for(var t=this.$getSelectedRows(),u=this.session,f=[],r,e,n=t.first;n<=t.last;n++)f.push(u.getLine(n));for(f.sort(function(n,t){return n.toLowerCase()<t.toLowerCase()?-1:n.toLowerCase()>t.toLowerCase()?1:0}),r=new i(0,0,0,0),n=t.first;n<=t.last;n++)e=u.getLine(n),r.start.row=n,r.end.row=n,r.end.column=e.length,u.replace(r,f[n-t.first])};this.toggleCommentLines=function(){var t=this.session.getState(this.getCursorPosition().row),n=this.$getSelectedRows();this.session.getMode().toggleCommentLines(t,this.session,n.first,n.last)};this.toggleBlockComment=function(){var n=this.getCursorPosition(),t=this.session.getState(n.row),i=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,i,n)};this.getNumberAt=function(n,t){var r=/[\-]?[0-9]+(?:\.[0-9]+)?/g,u,i;for(r.lastIndex=0,u=this.session.getLine(n);r.lastIndex<t;)if(i=r.exec(u),i.index<=t&&i.index+i[0].length>=t)return{value:i[0],start:i.index,end:i.index+i[0].length};return null};this.modifyNumber=function(n){var u=this.selection.getCursor().row,r=this.selection.getCursor().column,l=new i(u,r-1,u,r),h=this.session.getTextRange(l),t,s,c;if(!isNaN(parseFloat(h))&&isFinite(h)&&(t=this.getNumberAt(u,r),t)){var e=t.value.indexOf(".")>=0?t.start+t.value.indexOf(".")+1:t.end,o=t.start+t.value.length-e,f=parseFloat(t.value);f*=Math.pow(10,o);n*=e!==t.end&&r<e?Math.pow(10,t.end-r-1):Math.pow(10,t.end-r);f+=n;f/=Math.pow(10,o);s=f.toFixed(o);c=new i(u,t.start,u,t.end);this.session.replace(c,s);this.moveCursorTo(u,Math.max(t.start+1,r+s.length-t.value.length))}};this.removeLines=function(){var n=this.$getSelectedRows();this.session.removeFullLines(n.first,n.last);this.clearSelection()};this.duplicateSelection=function(){var t=this.selection,i=this.session,n=t.getRange(),f=t.isBackwards(),r,u,e;n.isEmpty()?(r=n.start.row,i.duplicateLines(r,r)):(u=f?n.start:n.end,e=i.insert(u,i.getTextRange(n),!1),n.start=u,n.end=e,t.setSelectionRange(n,f))};this.moveLinesDown=function(){this.$moveLines(1,!1)};this.moveLinesUp=function(){this.$moveLines(-1,!1)};this.moveText=function(n,t,i){return this.session.moveText(n,t,i)};this.copyLinesUp=function(){this.$moveLines(-1,!0)};this.copyLinesDown=function(){this.$moveLines(1,!0)};this.$moveLines=function(n,t){var f,l,r=this.selection,h,u,i,o,y,s,c;if(!r.inMultiSelectMode||this.inVirtualSelectionMode)h=r.toOrientedRange(),f=this.$getSelectedRows(h),l=this.session.$moveLines(f.first,f.last,t?0:n),t&&n==-1&&(l=0),h.moveBy(l,0),r.fromOrientedRange(h);else{u=r.rangeList.ranges;r.rangeList.detach(this.session);this.inVirtualSelectionMode=!0;var e=0,a=0,v=u.length;for(i=0;i<v;i++){for(o=i,u[i].moveBy(e,0),f=this.$getSelectedRows(u[i]),y=f.first,s=f.last;++i<v;){if(a&&u[i].moveBy(a,0),c=this.$getSelectedRows(u[i]),t&&c.first!=s)break;if(!t&&c.first>s+1)break;s=c.last}for(i--,e=this.session.$moveLines(y,s,t?0:n),t&&n==-1&&(o=i+1);o<=i;)u[o].moveBy(e,0),o++;t||(e=0);a+=e}r.fromOrientedRange(r.ranges[0]);r.rangeList.attach(this.session);this.inVirtualSelectionMode=!1}};this.$getSelectedRows=function(n){return n=(n||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(n.start.row),last:this.session.getRowFoldEnd(n.end.row)}};this.onCompositionStart=function(){this.renderer.showComposition(this.getCursorPosition())};this.onCompositionUpdate=function(n){this.renderer.setCompositionText(n)};this.onCompositionEnd=function(){this.renderer.hideComposition()};this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()};this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()};this.isRowVisible=function(n){return n>=this.getFirstVisibleRow()&&n<=this.getLastVisibleRow()};this.isRowFullyVisible=function(n){return n>=this.renderer.getFirstFullyVisibleRow()&&n<=this.renderer.getLastFullyVisibleRow()};this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1};this.$moveByPage=function(n,t){var i=this.renderer,r=this.renderer.layerConfig,u=n*Math.floor(r.height/r.lineHeight),f;this.$blockScrolling++;t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(u,0)}):t===!1&&(this.selection.moveCursorBy(u,0),this.selection.clearSelection());this.$blockScrolling--;f=i.scrollTop;i.scrollBy(0,u*r.lineHeight);t!=null&&i.scrollCursorIntoView(null,.5);i.animateScrolling(f)};this.selectPageDown=function(){this.$moveByPage(1,!0)};this.selectPageUp=function(){this.$moveByPage(-1,!0)};this.gotoPageDown=function(){this.$moveByPage(1,!1)};this.gotoPageUp=function(){this.$moveByPage(-1,!1)};this.scrollPageDown=function(){this.$moveByPage(1)};this.scrollPageUp=function(){this.$moveByPage(-1)};this.scrollToRow=function(n){this.renderer.scrollToRow(n)};this.scrollToLine=function(n,t,i,r){this.renderer.scrollToLine(n,t,i,r)};this.centerSelection=function(){var n=this.getSelectionRange(),t={row:Math.floor(n.start.row+(n.end.row-n.start.row)/2),column:Math.floor(n.start.column+(n.end.column-n.start.column)/2)};this.renderer.alignCursor(t,.5)};this.getCursorPosition=function(){return this.selection.getCursor()};this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())};this.getSelectionRange=function(){return this.selection.getRange()};this.selectAll=function(){this.$blockScrolling+=1;this.selection.selectAll();this.$blockScrolling-=1};this.clearSelection=function(){this.selection.clearSelection()};this.moveCursorTo=function(n,t){this.selection.moveCursorTo(n,t)};this.moveCursorToPosition=function(n){this.selection.moveCursorToPosition(n)};this.jumpToMatching=function(n,t){var c=this.getCursorPosition(),e=new s(this.session,c.row,c.column),h=e.getCurrentToken(),r=h||e.stepForward(),u,f,p;if(r){var y,l=!1,o={},a=c.column-r.start,v,w={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(r.value.match(/[{}()\[\]]/g)){for(;a<r.value.length&&!l;a++)if(w[r.value[a]]){v=w[r.value[a]]+"."+r.type.replace("rparen","lparen");isNaN(o[v])&&(o[v]=0);switch(r.value[a]){case"(":case"[":case"{":o[v]++;break;case")":case"]":case"}":o[v]--;o[v]===-1&&(y="bracket",l=!0)}}}else r&&r.type.indexOf("tag-name")!==-1&&(isNaN(o[r.value])&&(o[r.value]=0),h.value==="<"?o[r.value]++:h.value==="<\/"&&o[r.value]--,o[r.value]===-1&&(y="tag",l=!0));l||(h=r,r=e.stepForward(),a=0)}while(r&&!l);if(y){if(y==="bracket")u=this.session.getBracketRange(c),u||(u=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn()+a-1,e.getCurrentTokenRow(),e.getCurrentTokenColumn()+a-1),f=u.start,(t||f.row===c.row&&Math.abs(f.column-c.column)<2)&&(u=this.session.getBracketRange(f)));else if(y==="tag"){if(!r||r.type.indexOf("tag-name")===-1)return;if(p=r.value,u=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn()-2,e.getCurrentTokenRow(),e.getCurrentTokenColumn()-2),u.compare(c.row,c.column)===0){l=!1;do r=h,h=e.stepBackward(),h&&(h.type.indexOf("tag-close")!==-1&&u.setEnd(e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1),r.value===p&&r.type.indexOf("tag-name")!==-1&&(h.value==="<"?o[p]++:h.value==="<\/"&&o[p]--,o[p]===0&&(l=!0)));while(h&&!l)}r&&r.type.indexOf("tag-name")&&(f=u.start,f.row==c.row&&Math.abs(f.column-c.column)<2&&(f=u.end))}f=u&&u.cursor||f;f&&(n?u&&t?this.selection.setRange(u):u&&u.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(f.row,f.column):this.selection.moveTo(f.row,f.column))}}};this.gotoLine=function(n,t,i){this.selection.clearSelection();this.session.unfold({row:n-1,column:t||0});this.$blockScrolling+=1;this.exitMultiSelectMode&&this.exitMultiSelectMode();this.moveCursorTo(n-1,t||0);this.$blockScrolling-=1;this.isRowFullyVisible(n-1)||this.scrollToLine(n-1,!0,i)};this.navigateTo=function(n,t){this.selection.moveTo(n,t)};this.navigateUp=function(n){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection();this.selection.moveCursorBy(-n||-1,0)};this.navigateDown=function(n){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection();this.selection.moveCursorBy(n||1,0)};this.navigateLeft=function(n){if(this.selection.isEmpty())for(n=n||1;n--;)this.selection.moveCursorLeft();else{var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}this.clearSelection()};this.navigateRight=function(n){if(this.selection.isEmpty())for(n=n||1;n--;)this.selection.moveCursorRight();else{var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}this.clearSelection()};this.navigateLineStart=function(){this.selection.moveCursorLineStart();this.clearSelection()};this.navigateLineEnd=function(){this.selection.moveCursorLineEnd();this.clearSelection()};this.navigateFileEnd=function(){this.selection.moveCursorFileEnd();this.clearSelection()};this.navigateFileStart=function(){this.selection.moveCursorFileStart();this.clearSelection()};this.navigateWordRight=function(){this.selection.moveCursorWordRight();this.clearSelection()};this.navigateWordLeft=function(){this.selection.moveCursorWordLeft();this.clearSelection()};this.replace=function(n,t){t&&this.$search.set(t);var i=this.$search.find(this.session),r=0;return i?(this.$tryReplace(i,n)&&(r=1),i!==null&&(this.selection.setSelectionRange(i),this.renderer.scrollSelectionIntoView(i.start,i.end)),r):r};this.replaceAll=function(n,t){var i,r,f,u;if(t&&this.$search.set(t),i=this.$search.findAll(this.session),r=0,!i.length)return r;for(this.$blockScrolling+=1,f=this.getSelectionRange(),this.selection.moveTo(0,0),u=i.length-1;u>=0;--u)this.$tryReplace(i[u],n)&&r++;return this.selection.setSelectionRange(f),this.$blockScrolling-=1,r};this.$tryReplace=function(n,t){var i=this.session.getTextRange(n);return t=this.$search.replace(i,t),t!==null?(n.end=this.session.replace(n,t),n):null};this.getLastSearchOptions=function(){return this.$search.getOptions()};this.find=function(n,t,i){var r,u;if(t||(t={}),typeof n=="string"||n instanceof RegExp?t.needle=n:typeof n=="object"&&e.mixin(t,n),r=this.selection.getRange(),t.needle==null&&(n=this.session.getTextRange(r)||this.$search.$options.needle,n||(r=this.session.getWordRange(r.start.row,r.start.column),n=this.session.getTextRange(r)),this.$search.set({needle:n})),this.$search.set(t),t.start||this.$search.set({start:r}),u=this.$search.find(this.session),t.preventScroll)return u;if(u)return this.revealRange(u,i),u;t.backwards?r.start=r.end:r.end=r.start;this.selection.setRange(r)};this.findNext=function(n,t){this.find({skipCurrent:!0,backwards:!1},n,t)};this.findPrevious=function(n,t){this.find(n,{skipCurrent:!0,backwards:!0},t)};this.revealRange=function(n,t){this.$blockScrolling+=1;this.session.unfold(n);this.selection.setSelectionRange(n);this.$blockScrolling-=1;var i=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(n.start,n.end,.5);t!==!1&&this.renderer.animateScrolling(i)};this.undo=function(){this.$blockScrolling++;this.session.getUndoManager().undo();this.$blockScrolling--;this.renderer.scrollCursorIntoView(null,.5)};this.redo=function(){this.$blockScrolling++;this.session.getUndoManager().redo();this.$blockScrolling--;this.renderer.scrollCursorIntoView(null,.5)};this.destroy=function(){this.renderer.destroy();this._signal("destroy",this);this.session&&this.session.destroy()};this.setAutoScrollEditorIntoView=function(n){var u,r,t,i;if(n){r=this;t=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));i=this.$scrollAnchor;i.style.cssText="position:absolute";this.container.insertBefore(i,this.container.firstChild);var f=this.on("changeSelection",function(){t=!0}),e=this.renderer.on("beforeRender",function(){t&&(u=r.renderer.container.getBoundingClientRect())}),o=this.renderer.on("afterRender",function(){if(t&&u&&(r.isFocused()||r.searchBox&&r.searchBox.isFocused())){var e=r.renderer,n=e.$cursorLayer.$pixelPos,f=e.layerConfig,o=n.top-f.offset;t=n.top>=0&&o+u.top<0?!0:n.top<f.height&&n.top+u.top+f.lineHeight>window.innerHeight?!1:null;t!=null&&(i.style.top=o+"px",i.style.left=n.left+"px",i.style.height=f.lineHeight+"px",i.scrollIntoView(t));t=u=null}});this.setAutoScrollEditorIntoView=function(n){n||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",f),this.renderer.off("afterRender",o),this.renderer.off("beforeRender",e))}}};this.$resetCursorStyle=function(){var t=this.$cursorStyle||"ace",n=this.renderer.$cursorLayer;n&&(n.setSmoothBlinking(/smooth/.test(t)),n.isBlinking=!this.$readOnly&&t!="wide",o.setCssClass(n.element,"ace_slim-cursors",/slim/.test(t)))}}).call(f.prototype);r.defineOptions(f.prototype,"editor",{selectionStyle:{set:function(n){this.onSelectionChange();this._signal("changeSelectionStyle",{data:n})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(n){this.setAutoScrollEditorIntoView(n)}},keyboardHandler:{set:function(n){this.setKeyboardHandler(n)},get:function(){return this.keybindingId},handlesSet:!0},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});t.Editor=f});define("ace/undomanager",["require","exports","module"],function(n,t){"use strict";var i=function(){this.reset()};(function(){function t(n){return{action:n.action,start:n.start,end:n.end,lines:n.lines.length==1?null:n.lines,text:n.lines.length==1?n.lines[0]:null}}function i(n){return{action:n.action,start:n.start,end:n.end,lines:n.lines||[n.text]}}function n(n,t){for(var e=new Array(n.length),r,f,u,o,i=0;i<n.length;i++){for(r=n[i],f={group:r.group,deltas:new Array(r.length)},u=0;u<r.deltas.length;u++)o=r.deltas[u],f.deltas[u]=t(o);e[i]=f}return e}this.execute=function(n){var t=n.args[0];this.$doc=n.args[1];n.merge&&this.hasUndo()&&(this.dirtyCounter--,t=this.$undoStack.pop().concat(t));this.$undoStack.push(t);this.$redoStack=[];this.dirtyCounter<0&&(this.dirtyCounter=NaN);this.dirtyCounter++};this.undo=function(n){var t=this.$undoStack.pop(),i=null;return t&&(i=this.$doc.undoChanges(t,n),this.$redoStack.push(t),this.dirtyCounter--),i};this.redo=function(n){var t=this.$redoStack.pop(),i=null;return t&&(i=this.$doc.redoChanges(this.$deserializeDeltas(t),n),this.$undoStack.push(t),this.dirtyCounter++),i};this.reset=function(){this.$undoStack=[];this.$redoStack=[];this.dirtyCounter=0};this.hasUndo=function(){return this.$undoStack.length>0};this.hasRedo=function(){return this.$redoStack.length>0};this.markClean=function(){this.dirtyCounter=0};this.isClean=function(){return this.dirtyCounter===0};this.$serializeDeltas=function(i){return n(i,t)};this.$deserializeDeltas=function(t){return n(t,i)}}).call(i.prototype);t.UndoManager=i});define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(n,t){"use strict";var i=n("../lib/dom"),u=n("../lib/oop"),f=n("../lib/lang"),e=n("../lib/event_emitter").EventEmitter,r=function(n){this.element=i.createElement("div");this.element.className="ace_layer ace_gutter-layer";n.appendChild(this.element);this.setShowFoldWidgets(this.$showFoldWidgets);this.gutterWidth=0;this.$annotations=[];this.$updateAnnotations=this.$updateAnnotations.bind(this);this.$cells=[]};(function(){u.implement(this,e);this.setSession=function(n){this.session&&this.session.removeEventListener("change",this.$updateAnnotations);this.session=n;n&&n.on("change",this.$updateAnnotations)};this.addGutterDecoration=function(n,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration");this.session.addGutterDecoration(n,t)};this.removeGutterDecoration=function(n,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration");this.session.removeGutterDecoration(n,t)};this.setAnnotations=function(n){var r,i,e;for(this.$annotations=[],r=0;r<n.length;r++){var u=n[r],o=u.row,t=this.$annotations[o];t||(t=this.$annotations[o]={text:[]});i=u.text;i=i?f.escapeHTML(i):u.html||"";t.text.indexOf(i)===-1&&t.text.push(i);e=u.type;e=="error"?t.className=" ace_error":e=="warning"&&t.className!=" ace_error"?t.className=" ace_warning":e=="info"&&!t.className&&(t.className=" ace_info")}};this.$updateAnnotations=function(n){var t,i,r;this.$annotations.length&&(t=n.start.row,i=n.end.row-t,i!==0&&(n.action=="remove"?this.$annotations.splice(t,i+1,null):(r=new Array(i+1),r.unshift(t,1),this.$annotations.splice.apply(this.$annotations,r))))};this.update=function(n){for(var u=this.session,b=n.firstRow,nt=Math.min(n.lastRow+n.gutterOffset,u.getLength()-1),e=u.getNextFoldLine(b),a=e?e.start.row:Infinity,v=this.$showFoldWidgets&&u.foldWidgets,k=u.$breakpoints,d=u.$decorations,g=u.$firstLineNumber,c=0,l=u.gutterRenderer||this.$renderer,t=null,y=-1,r=b,s,f,o,p,h,w;;){if(r>a&&(r=e.end.row+1,e=u.getNextFoldLine(r,e),a=e?e.start.row:Infinity),r>nt){while(this.$cells.length>y+1)t=this.$cells.pop(),this.element.removeChild(t.element);break}t=this.$cells[++y];t||(t={element:null,textNode:null,foldWidget:null},t.element=i.createElement("div"),t.textNode=document.createTextNode(""),t.element.appendChild(t.textNode),this.element.appendChild(t.element),this.$cells[y]=t);f="ace_gutter-cell ";k[r]&&(f+=k[r]);d[r]&&(f+=d[r]);this.$annotations[r]&&(f+=this.$annotations[r].className);t.element.className!=f&&(t.element.className=f);o=u.getRowLength(r)*n.lineHeight+"px";o!=t.element.style.height&&(t.element.style.height=o);v&&(s=v[r],s==null&&(s=v[r]=u.getFoldWidget(r)));s?(t.foldWidget||(t.foldWidget=i.createElement("span"),t.element.appendChild(t.foldWidget)),f="ace_fold-widget ace_"+s,f+=s=="start"&&r==a&&r<e.end.row?" ace_closed":" ace_open",t.foldWidget.className!=f&&(t.foldWidget.className=f),o=n.lineHeight+"px",t.foldWidget.style.height!=o&&(t.foldWidget.style.height=o)):t.foldWidget&&(t.element.removeChild(t.foldWidget),t.foldWidget=null);p=c=l?l.getText(u,r):r+g;p!=t.textNode.data&&(t.textNode.data=p);r++}this.element.style.height=n.minHeight+"px";(this.$fixedWidth||u.$useWrapMode)&&(c=u.getLength()+g);h=l?l.getWidth(u,c,n):c.toString().length*n.characterWidth;w=this.$padding||this.$computePadding();h+=w.left+w.right;h===this.gutterWidth||isNaN(h)||(this.gutterWidth=h,this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._emit("changeGutterWidth",h))};this.$fixedWidth=!1;this.$showLineNumbers=!0;this.$renderer="";this.setShowLineNumbers=function(n){this.$renderer=!n&&{getWidth:function(){return""},getText:function(){return""}}};this.getShowLineNumbers=function(){return this.$showLineNumbers};this.$showFoldWidgets=!0;this.setShowFoldWidgets=function(n){n?i.addCssClass(this.element,"ace_folding-enabled"):i.removeCssClass(this.element,"ace_folding-enabled");this.$showFoldWidgets=n;this.$padding=null};this.getShowFoldWidgets=function(){return this.$showFoldWidgets};this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var n=i.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=parseInt(n.paddingLeft)+1||0,this.$padding.right=parseInt(n.paddingRight)||0,this.$padding};this.getRegion=function(n){var t=this.$padding||this.$computePadding(),i=this.element.getBoundingClientRect();return n.x<t.left+i.left?"markers":this.$showFoldWidgets&&n.x>i.right-t.right?"foldWidgets":void 0}}).call(r.prototype);t.Gutter=r});define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(n,t){"use strict";var r=n("../range").Range,u=n("../lib/dom"),i=function(n){this.element=u.createElement("div");this.element.className="ace_layer ace_marker-layer";n.appendChild(this.element)};(function(){function n(n,t,i,r){return(n?1:0)|(t?2:0)|(i?4:0)|(r?8:0)}this.$padding=0;this.setPadding=function(n){this.$padding=n};this.setSession=function(n){this.session=n};this.setMarkers=function(n){this.markers=n};this.update=function(n){var n=n||this.config,r,u,t,i,f,e;if(n){this.config=n;r=[];for(u in this.markers){if(t=this.markers[u],!t.range){t.update(r,this,this.session,n);continue}(i=t.range.clipRows(n.firstRow,n.lastRow),i.isEmpty())||(i=i.toScreenRange(this.session),t.renderer?(f=this.$getTop(i.start.row,n),e=this.$padding+i.start.column*n.characterWidth,t.renderer(r,i,e,f,n)):t.type=="fullLine"?this.drawFullLineMarker(r,i,t.clazz,n):t.type=="screenLine"?this.drawScreenLineMarker(r,i,t.clazz,n):i.isMultiLine()?t.type=="text"?this.drawTextMarker(r,i,t.clazz,n):this.drawMultiLineMarker(r,i,t.clazz,n):this.drawSingleLineMarker(r,i,t.clazz+" ace_start ace_br15",n))}this.element.innerHTML=r.join("")}};this.$getTop=function(n,t){return(n-t.firstRowScreen)*t.lineHeight};this.drawTextMarker=function(t,i,u,f,e){for(var v=this.session,s=i.start.row,h=i.end.row,o=s,y=0,c=0,a=v.getScreenLastRowColumn(o),l=new r(o,i.start.column,o,c);o<=h;o++)l.start.row=l.end.row=o,l.start.column=o==s?i.start.column:v.getRowWrapIndent(o),l.end.column=a,y=c,c=a,a=o+1<h?v.getScreenLastRowColumn(o+1):o==h?0:i.end.column,this.drawSingleLineMarker(t,l,u+(o==s?" ace_start":"")+" ace_br"+n(o==s||o==s+1&&i.start.column,y<c,c>a,o==h),f,o==h?0:1,e)};this.drawMultiLineMarker=function(n,t,i,r,u){var o=this.$padding,f=r.lineHeight,e=this.$getTop(t.start.row,r),c=o+t.start.column*r.characterWidth,h,s;(u=u||"",n.push("<div class='",i," ace_br1 ace_start' style='","height:",f,"px;","right:0;","top:",e,"px;","left:",c,"px;",u,"'><\/div>"),e=this.$getTop(t.end.row,r),h=t.end.column*r.characterWidth,n.push("<div class='",i," ace_br12' style='","height:",f,"px;","width:",h,"px;","top:",e,"px;","left:",o,"px;",u,"'><\/div>"),f=(t.end.row-t.start.row-1)*r.lineHeight,f<=0)||(e=this.$getTop(t.start.row+1,r),s=(t.start.column?1:0)|(t.end.column?0:8),n.push("<div class='",i,s?" ace_br"+s:"","' style='","height:",f,"px;","right:0;","top:",e,"px;","left:",o,"px;",u,"'><\/div>"))};this.drawSingleLineMarker=function(n,t,i,r,u,f){var e=r.lineHeight,o=(t.end.column+(u||0)-t.start.column)*r.characterWidth,s=this.$getTop(t.start.row,r),h=this.$padding+t.start.column*r.characterWidth;n.push("<div class='",i,"' style='","height:",e,"px;","width:",o,"px;","top:",s,"px;","left:",h,"px;",f||"","'><\/div>")};this.drawFullLineMarker=function(n,t,i,r,u){var f=this.$getTop(t.start.row,r),e=r.lineHeight;t.start.row!=t.end.row&&(e+=this.$getTop(t.end.row,r)-f);n.push("<div class='",i,"' style='","height:",e,"px;","top:",f,"px;","left:0;right:0;",u||"","'><\/div>")};this.drawScreenLineMarker=function(n,t,i,r,u){var f=this.$getTop(t.start.row,r),e=r.lineHeight;n.push("<div class='",i,"' style='","height:",e,"px;","top:",f,"px;","left:0;right:0;",u||"","'><\/div>")}}).call(i.prototype);t.Marker=i});define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(n,t){"use strict";var f=n("../lib/oop"),r=n("../lib/dom"),i=n("../lib/lang"),o=n("../lib/useragent"),e=n("../lib/event_emitter").EventEmitter,u=function(n){this.element=r.createElement("div");this.element.className="ace_layer ace_text-layer";n.appendChild(this.element);this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){f.implement(this,e);this.EOF_CHAR="¶";this.EOL_CHAR_LF="¬";this.EOL_CHAR_CRLF="¤";this.EOL_CHAR=this.EOL_CHAR_LF;this.TAB_CHAR="—";this.SPACE_CHAR="·";this.$padding=0;this.$updateEolChar=function(){var n=this.session.doc.getNewLineCharacter()=="\n"?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=n)return this.EOL_CHAR=n,!0};this.setPadding=function(n){this.$padding=n;this.element.style.padding="0 "+n+"px"};this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0};this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0};this.$setFontMetrics=function(n){this.$fontMetrics=n;this.$fontMetrics.on("changeCharacterSize",function(n){this._signal("changeCharacterSize",n)}.bind(this));this.$pollSizeChanges()};this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()};this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()};this.setSession=function(n){this.session=n;n&&this.$computeTabString()};this.showInvisibles=!1;this.setShowInvisibles=function(n){return this.showInvisibles==n?!1:(this.showInvisibles=n,this.$computeTabString(),!0)};this.displayIndentGuides=!0;this.setDisplayIndentGuides=function(n){return this.displayIndentGuides==n?!1:(this.displayIndentGuides=n,this.$computeTabString(),!0)};this.$tabStrings=[];this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize(),u,n,t,r;for(this.tabSize=e,u=this.$tabStrings=[0],n=1;n<e+1;n++)this.showInvisibles?u.push("<span class='ace_invisible ace_invisible_tab'>"+i.stringRepeat(this.TAB_CHAR,n)+"<\/span>"):u.push(i.stringRepeat(" ",n));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var f="ace_indent-guide",o="",s="";this.showInvisibles?(f+=" ace_invisible",o=" ace_invisible_space",s=" ace_invisible_tab",t=i.stringRepeat(this.SPACE_CHAR,this.tabSize),r=i.stringRepeat(this.TAB_CHAR,this.tabSize)):(t=i.stringRepeat(" ",this.tabSize),r=t);this.$tabStrings[" "]="<span class='"+f+o+"'>"+t+"<\/span>";this.$tabStrings["\t"]="<span class='"+f+s+"'>"+r+"<\/span>"}};this.updateLines=function(n,t,i){var r,u,e,s;(this.config.lastRow!=n.lastRow||this.config.firstRow!=n.firstRow)&&this.scrollLines(n);this.config=n;var f=Math.max(t,n.firstRow),c=Math.min(i,n.lastRow),l=this.element.childNodes,h=0;for(r=n.firstRow;r<f;r++){if(u=this.session.getFoldLine(r),u){if(u.containsRow(f)){f=u.start.row;break}r=u.end.row}h++}for(var r=f,u=this.session.getNextFoldLine(r),o=u?u.start.row:Infinity;;){if(r>o&&(r=u.end.row+1,u=this.session.getNextFoldLine(r,u),o=u?u.start.row:Infinity),r>c)break;e=l[h++];e&&(s=[],this.$renderLine(s,r,!this.$useLineGroups(),r==o?u:!1),e.style.height=n.lineHeight*this.session.getRowLength(r)+"px",e.innerHTML=s.join(""));r++}};this.scrollLines=function(n){var t=this.config,i,r,u;if((this.config=n,!t||t.lastRow<n.firstRow)||n.lastRow<t.firstRow)return this.update(n);if(i=this.element,t.firstRow<n.firstRow)for(r=this.session.getFoldedRowCount(t.firstRow,n.firstRow-1);r>0;r--)i.removeChild(i.firstChild);if(t.lastRow>n.lastRow)for(r=this.session.getFoldedRowCount(n.lastRow+1,t.lastRow);r>0;r--)i.removeChild(i.lastChild);n.firstRow<t.firstRow&&(u=this.$renderLinesFragment(n,n.firstRow,t.firstRow-1),i.firstChild?i.insertBefore(u,i.firstChild):i.appendChild(u));n.lastRow>t.lastRow&&(u=this.$renderLinesFragment(n,t.lastRow+1,n.lastRow),i.appendChild(u))};this.$renderLinesFragment=function(n,t,i){for(var o=this.element.ownerDocument.createDocumentFragment(),u=t,f=this.session.getNextFoldLine(u),s=f?f.start.row:Infinity,e,h;;){if(u>s&&(u=f.end.row+1,f=this.session.getNextFoldLine(u,f),s=f?f.start.row:Infinity),u>i)break;if(e=r.createElement("div"),h=[],this.$renderLine(h,u,!1,u==s?f:!1),e.innerHTML=h.join(""),this.$useLineGroups())e.className="ace_line_group",o.appendChild(e),e.style.height=n.lineHeight*this.session.getRowLength(u)+"px";else while(e.firstChild)o.appendChild(e.firstChild);u++}return o};this.update=function(n){this.config=n;for(var r=[],f=n.firstRow,e=n.lastRow,t=f,i=this.session.getNextFoldLine(t),u=i?i.start.row:Infinity;;){if(t>u&&(t=i.end.row+1,i=this.session.getNextFoldLine(t,i),u=i?i.start.row:Infinity),t>e)break;this.$useLineGroups()&&r.push("<div class='ace_line_group' style='height:",n.lineHeight*this.session.getRowLength(t),"px'>");this.$renderLine(r,t,!1,t==u?i:!1);this.$useLineGroups()&&r.push("<\/div>");t++}this.element.innerHTML=r.join("")};this.$textToken={text:!0,rparen:!0,lparen:!0};this.$renderToken=function(n,t,r,u){var f=this,h=function(n,r,u,e){var o,s,h;return r?f.showInvisibles?"<span class='ace_invisible ace_invisible_space'>"+i.stringRepeat(f.SPACE_CHAR,n.length)+"<\/span>":n:n=="&"?"&#38;":n=="<"?"&#60;":n==">"?"&#62;":n=="\t"?(o=f.session.getScreenTabSize(t+e),t+=o-1,f.$tabStrings[o]):n=="　"?(s=f.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",h=f.showInvisibles?f.SPACE_CHAR:"",t+=1,"<span class='"+s+"' style='width:"+f.config.characterWidth*2+"px'>"+h+"<\/span>"):u?"<span class='ace_invisible ace_invisible_space ace_invalid'>"+f.SPACE_CHAR+"<\/span>":(t+=1,"<span class='ace_cjk' style='width:"+f.config.characterWidth*2+"px'>"+n+"<\/span>")},o=u.replace(/\t|&|<|>|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF\uFFF9-\uFFFC])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,h),s,e;return this.$textToken[r.type]?n.push(o):(s="ace_"+r.type.replace(/\./g," ace_"),e="",r.type=="fold"&&(e=" style='width:"+r.value.length*this.config.characterWidth+"px;' "),n.push("<span class='",s,"'",e,">",o,"<\/span>")),t+u.length};this.renderIndentGuide=function(n,t,r){var u=t.search(this.$indentGuideRe);return u<=0||u>=r?t:t[0]==" "?(u-=u%this.tabSize,n.push(i.stringRepeat(this.$tabStrings[" "],u/this.tabSize)),t.substr(u)):t[0]=="\t"?(n.push(i.stringRepeat(this.$tabStrings["\t"],u)),t.substr(u)):t};this.$renderWrappedLine=function(n,t,r,u){for(var e=0,l=0,o=r[0],s=0,c,f,h=0;h<t.length;h++){if(c=t[h],f=c.value,h==0&&this.displayIndentGuides){if(e=f.length,f=this.renderIndentGuide(n,f,o),!f)continue;e-=f.length}if(e+f.length<o)s=this.$renderToken(n,s,c,f),e+=f.length;else{while(e+f.length>=o)s=this.$renderToken(n,s,c,f.substring(0,o-e)),f=f.substring(o-e),e=o,u||n.push("<\/div>","<div class='ace_line' style='height:",this.config.lineHeight,"px'>"),n.push(i.stringRepeat(" ",r.indent)),l++,s=0,o=r[l]||Number.MAX_VALUE;f.length!=0&&(e+=f.length,s=this.$renderToken(n,s,c,f))}}};this.$renderSimpleLine=function(n,t){var u=0,r=t[0],i=r.value,f;for(this.displayIndentGuides&&(i=this.renderIndentGuide(n,i)),i&&(u=this.$renderToken(n,u,r,i)),f=1;f<t.length;f++)r=t[f],i=r.value,u=this.$renderToken(n,u,r,i)};this.$renderLine=function(n,t,i,r){var u,f;r||r==0||(r=this.session.getFoldLine(t));u=r?this.$getFoldLineTokens(t,r):this.session.getTokens(t);i||n.push("<div class='ace_line' style='height:",this.config.lineHeight*(this.$useLineGroups()?1:this.session.getRowLength(t)),"px'>");u.length&&(f=this.session.getRowSplitData(t),f&&f.length?this.$renderWrappedLine(n,u,f,i):this.$renderSimpleLine(n,u));this.showInvisibles&&(r&&(t=r.end.row),n.push("<span class='ace_invisible ace_invisible_eol'>",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"<\/span>"));i||n.push("<\/div>")};this.$getFoldLineTokens=function(n,t){function f(n,t,r){for(var u=0,e=0,f;e+n[u].value.length<t;)if(e+=n[u].value.length,u++,u==n.length)return;for(e!=t&&(f=n[u].value.substring(t-e),f.length>r-t&&(f=f.substring(0,r-t)),i.push({type:n[u].type,value:f}),e=t+f.length,u+=1);e<r&&u<n.length;)f=n[u].value,f.length+e>r?i.push({type:n[u].type,value:f.substring(0,r-e)}):i.push(n[u]),e+=f.length,u+=1}var u=this.session,i=[],r=u.getTokens(n);return t.walk(function(n,t,e,o,s){n!=null?i.push({type:"fold",value:n}):(s&&(r=u.getTokens(t)),r.length&&f(r,o,e))},t.end.row,this.session.getLine(t.end.row).length),i};this.$useLineGroups=function(){return this.session.getUseWrapMode()};this.destroy=function(){clearInterval(this.$pollSizeChangesTimer);this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode);delete this.$measureNode}}).call(u.prototype);t.Text=u});define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(n,t){"use strict";var i=n("../lib/dom"),r,u=function(n){this.element=i.createElement("div");this.element.className="ace_layer ace_cursor-layer";n.appendChild(this.element);r===undefined&&(r=!("opacity"in this.element.style));this.isVisible=!1;this.isBlinking=!0;this.blinkInterval=1e3;this.smoothBlinking=!1;this.cursors=[];this.cursor=this.addCursor();i.addCssClass(this.element,"ace_hidden-cursors");this.$updateCursors=(r?this.$updateVisibility:this.$updateOpacity).bind(this)};(function(){this.$updateVisibility=function(n){for(var i=this.cursors,t=i.length;t--;)i[t].style.visibility=n?"":"hidden"};this.$updateOpacity=function(n){for(var i=this.cursors,t=i.length;t--;)i[t].style.opacity=n?"":"0"};this.$padding=0;this.setPadding=function(n){this.$padding=n};this.setSession=function(n){this.session=n};this.setBlinking=function(n){n!=this.isBlinking&&(this.isBlinking=n,this.restartTimer())};this.setBlinkInterval=function(n){n!=this.blinkInterval&&(this.blinkInterval=n,this.restartTimer())};this.setSmoothBlinking=function(n){n==this.smoothBlinking||r||(this.smoothBlinking=n,i.setCssClass(this.element,"ace_smooth-blinking",n),this.$updateCursors(!0),this.$updateCursors=this.$updateOpacity.bind(this),this.restartTimer())};this.addCursor=function(){var n=i.createElement("div");return n.className="ace_cursor",this.element.appendChild(n),this.cursors.push(n),n};this.removeCursor=function(){if(this.cursors.length>1){var n=this.cursors.pop();return n.parentNode.removeChild(n),n}};this.hideCursor=function(){this.isVisible=!1;i.addCssClass(this.element,"ace_hidden-cursors");this.restartTimer()};this.showCursor=function(){this.isVisible=!0;i.removeCssClass(this.element,"ace_hidden-cursors");this.restartTimer()};this.restartTimer=function(){var n=this.$updateCursors,t;(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&i.removeCssClass(this.element,"ace_smooth-blinking"),n(!0),this.isBlinking&&this.blinkInterval&&this.isVisible)&&(this.smoothBlinking&&setTimeout(function(){i.addCssClass(this.element,"ace_smooth-blinking")}.bind(this)),t=function(){this.timeoutId=setTimeout(function(){n(!1)},.6*this.blinkInterval)}.bind(this),this.intervalId=setInterval(function(){n(!0);t()},this.blinkInterval),t())};this.getPixelPosition=function(n,t){if(!this.config||!this.session)return{left:0,top:0};n||(n=this.session.selection.getCursor());var i=this.session.documentToScreenPosition(n),r=this.$padding+i.column*this.config.characterWidth,u=(i.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:r,top:u}};this.update=function(n){var t,e,i,u,o;this.config=n;var r=this.session.$selectionMarkers,t=0,f=0;for((r===undefined||r.length===0)&&(r=[{cursor:null}]),t=0,e=r.length;t<e;t++)(i=this.getPixelPosition(r[t].cursor,!0),(i.top>n.height+n.offset||i.top<0)&&t>1)||(u=(this.cursors[f++]||this.addCursor()).style,this.drawCursor?this.drawCursor(u,i,n,r[t],this.session):(u.left=i.left+"px",u.top=i.top+"px",u.width=n.characterWidth+"px",u.height=n.lineHeight+"px"));while(this.cursors.length>f)this.removeCursor();o=this.session.getOverwrite();this.$setOverwrite(o);this.$pixelPos=i;this.restartTimer()};this.drawCursor=null;this.$setOverwrite=function(n){n!=this.overwrite&&(this.overwrite=n,n?i.addCssClass(this.element,"ace_overwrite-cursors"):i.removeCssClass(this.element,"ace_overwrite-cursors"))};this.destroy=function(){clearInterval(this.intervalId);clearTimeout(this.timeoutId)}}).call(u.prototype);t.Cursor=u});define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,t){"use strict";var f=n("./lib/oop"),e=n("./lib/dom"),o=n("./lib/event"),h=n("./lib/event_emitter").EventEmitter,s=32768,r=function(n){this.element=e.createElement("div");this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix;this.inner=e.createElement("div");this.inner.className="ace_scrollbar-inner";this.element.appendChild(this.inner);n.appendChild(this.element);this.setVisible(!1);this.skipEvent=!1;o.addListener(this.element,"scroll",this.onScroll.bind(this));o.addListener(this.element,"mousedown",o.preventDefault)},i,u;(function(){f.implement(this,h);this.setVisible=function(n){this.element.style.display=n?"":"none";this.isVisible=n;this.coeff=1}}).call(r.prototype);i=function(n,t){r.call(this,n);this.scrollTop=0;this.scrollHeight=0;t.$scrollbarWidth=this.width=e.scrollbarWidth(n.ownerDocument);this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};f.inherits(i,r),function(){this.classSuffix="-v";this.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var n=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-n)/(this.coeff-n)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1};this.getWidth=function(){return this.isVisible?this.width:0};this.setHeight=function(n){this.element.style.height=n+"px"};this.setInnerHeight=this.setScrollHeight=function(n){this.scrollHeight=n;n>s?(this.coeff=s/n,n=s):this.coeff!=1&&(this.coeff=1);this.inner.style.height=n+"px"};this.setScrollTop=function(n){this.scrollTop!=n&&(this.skipEvent=!0,this.scrollTop=n,this.element.scrollTop=n*this.coeff)}}.call(i.prototype);u=function(n,t){r.call(this,n);this.scrollLeft=0;this.height=t.$scrollbarWidth;this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};f.inherits(u,r),function(){this.classSuffix="-h";this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft}));this.skipEvent=!1};this.getHeight=function(){return this.isVisible?this.height:0};this.setWidth=function(n){this.element.style.width=n+"px"};this.setInnerWidth=function(n){this.inner.style.width=n+"px"};this.setScrollWidth=function(n){this.inner.style.width=n+"px"};this.setScrollLeft=function(n){this.scrollLeft!=n&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=n)}}.call(u.prototype);t.ScrollBar=i;t.ScrollBarV=i;t.ScrollBarH=u;t.VScrollBar=i;t.HScrollBar=u});define("ace/renderloop",["require","exports","module","ace/lib/event"],function(n,t){"use strict";var r=n("./lib/event"),i=function(n,t){this.onRender=n;this.pending=!1;this.changes=0;this.window=t||window};(function(){this.schedule=function(n){if(this.changes=this.changes|n,!this.pending&&this.changes){this.pending=!0;var t=this;r.nextFrame(function(){t.pending=!1;for(var n;n=t.changes;)t.changes=0,t.onRender(n)},this.window)}}}).call(i.prototype);t.RenderLoop=i});define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(n,t){var f=n("../lib/oop"),r=n("../lib/dom"),u=n("../lib/lang"),e=n("../lib/useragent"),o=n("../lib/event_emitter").EventEmitter,i=0,s=t.FontMetrics=function(n){this.el=r.createElement("div");this.$setMeasureNodeStyles(this.el.style,!0);this.$main=r.createElement("div");this.$setMeasureNodeStyles(this.$main.style);this.$measureNode=r.createElement("div");this.$setMeasureNodeStyles(this.$measureNode.style);this.el.appendChild(this.$main);this.el.appendChild(this.$measureNode);n.appendChild(this.el);i||this.$testFractionalRect();this.$measureNode.innerHTML=u.stringRepeat("X",i);this.$characterSize={width:0,height:0};this.checkForSizeChanges()};(function(){f.implement(this,o);this.$characterSize={width:0,height:0};this.$testFractionalRect=function(){var n=r.createElement("div"),t;this.$setMeasureNodeStyles(n.style);n.style.width="0.2px";document.documentElement.appendChild(n);t=n.getBoundingClientRect().width;i=t>0&&t<1?50:100;n.parentNode.removeChild(n)};this.$setMeasureNodeStyles=function(n,t){n.width=n.height="auto";n.left=n.top="0px";n.visibility="hidden";n.position="absolute";n.whiteSpace="pre";e.isIE<8?n["font-family"]="inherit":n.font="inherit";n.overflow=t?"hidden":"visible"};this.checkForSizeChanges=function(){var n=this.$measureSizes(),t;n&&(this.$characterSize.width!==n.width||this.$characterSize.height!==n.height)&&(this.$measureNode.style.fontWeight="bold",t=this.$measureSizes(),this.$measureNode.style.fontWeight="",this.$characterSize=n,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===n.width&&t.height===n.height,this._emit("changeCharacterSize",{data:n}))};this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var n=this;return this.$pollSizeChangesTimer=setInterval(function(){n.checkForSizeChanges()},500)};this.setPolling=function(n){n?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)};this.$measureSizes=function(){var t,n;if(i===50){t=null;try{t=this.$measureNode.getBoundingClientRect()}catch(r){t={width:0,height:0}}n={height:t.height,width:t.width/i}}else n={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/i};return n.width===0||n.height===0?null:n};this.$measureCharWidth=function(n){this.$main.innerHTML=u.stringRepeat(n,i);var t=this.$main.getBoundingClientRect();return t.width/i};this.getCharacterWidth=function(n){var t=this.charSizes[n];return t===undefined&&(t=this.charSizes[n]=this.$measureCharWidth(n)/this.$characterSize.width),t};this.destroy=function(){clearInterval(this.$pollSizeChangesTimer);this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(s.prototype)});define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(n,t){"use strict";var e=n("./lib/oop"),i=n("./lib/dom"),r=n("./config"),o=n("./lib/useragent"),s=n("./layer/gutter").Gutter,f=n("./layer/marker").Marker,h=n("./layer/text").Text,c=n("./layer/cursor").Cursor,l=n("./scrollbar").HScrollBar,a=n("./scrollbar").VScrollBar,v=n("./renderloop").RenderLoop,y=n("./layer/font_metrics").FontMetrics,p=n("./lib/event_emitter").EventEmitter,u;i.importCssString('.ace_editor {position: relative;overflow: hidden;font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;direction: ltr;text-align: left;}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;cursor: text;}.ace_content {position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;min-width: 100%;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;text-indent: -1em;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;white-space: pre!important;}.ace_text-input.ace_composition {background: inherit;color: inherit;z-index: 1000;opacity: 1;text-indent: 0;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;word-wrap: normal;white-space: pre;height: 100%;width: 100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;}.ace_text-layer {font: inherit !important;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;border-left: 2px solid;transform: translatez(0);}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_smooth-blinking .ace_cursor {-webkit-transition: opacity 0.18s;transition: opacity 0.18s;}.ace_editor.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}.ace_line .ace_fold {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block;   }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {-webkit-transition: opacity 0.4s ease 0.05s;transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {-webkit-transition: opacity 0.05s ease 0.05s;transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}.ace_br1 {border-top-left-radius    : 3px;}.ace_br2 {border-top-right-radius   : 3px;}.ace_br3 {border-top-left-radius    : 3px; border-top-right-radius:    3px;}.ace_br4 {border-bottom-right-radius: 3px;}.ace_br5 {border-top-left-radius    : 3px; border-bottom-right-radius: 3px;}.ace_br6 {border-top-right-radius   : 3px; border-bottom-right-radius: 3px;}.ace_br7 {border-top-left-radius    : 3px; border-top-right-radius:    3px; border-bottom-right-radius: 3px;}.ace_br8 {border-bottom-left-radius : 3px;}.ace_br9 {border-top-left-radius    : 3px; border-bottom-left-radius:  3px;}.ace_br10{border-top-right-radius   : 3px; border-bottom-left-radius:  3px;}.ace_br11{border-top-left-radius    : 3px; border-top-right-radius:    3px; border-bottom-left-radius:  3px;}.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius:  3px;}.ace_br13{border-top-left-radius    : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius:  3px;}.ace_br14{border-top-right-radius   : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius:  3px;}.ace_br15{border-top-left-radius    : 3px; border-top-right-radius:    3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}',"ace_editor.css");u=function(n,t){var u=this,e;this.container=n||i.createElement("div");this.$keepTextAreaAtCursor=!o.isOldIE;i.addCssClass(this.container,"ace_editor");this.setTheme(t);this.$gutter=i.createElement("div");this.$gutter.className="ace_gutter";this.container.appendChild(this.$gutter);this.scroller=i.createElement("div");this.scroller.className="ace_scroller";this.container.appendChild(this.scroller);this.content=i.createElement("div");this.content.className="ace_content";this.scroller.appendChild(this.content);this.$gutterLayer=new s(this.$gutter);this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this));this.$markerBack=new f(this.content);e=this.$textLayer=new h(this.content);this.canvas=e.element;this.$markerFront=new f(this.content);this.$cursorLayer=new c(this.content);this.$horizScroll=!1;this.$vScroll=!1;this.scrollBar=this.scrollBarV=new a(this.container,this);this.scrollBarH=new l(this.container,this);this.scrollBarV.addEventListener("scroll",function(n){u.$scrollAnimation||u.session.setScrollTop(n.data-u.scrollMargin.top)});this.scrollBarH.addEventListener("scroll",function(n){u.$scrollAnimation||u.session.setScrollLeft(n.data-u.scrollMargin.left)});this.scrollTop=0;this.scrollLeft=0;this.cursorPos={row:0,column:0};this.$fontMetrics=new y(this.container);this.$textLayer.$setFontMetrics(this.$fontMetrics);this.$textLayer.addEventListener("changeCharacterSize",function(n){u.updateCharacterSize();u.onResize(!0,u.gutterWidth,u.$size.width,u.$size.height);u._signal("changeCharacterSize",n)});this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0};this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1};this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0};this.$loop=new v(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView);this.$loop.schedule(this.CHANGE_FULL);this.updateCharacterSize();this.setPadding(4);r.resetOptions(this);r._emit("renderer",this)},function(){this.CHANGE_CURSOR=1;this.CHANGE_MARKER=2;this.CHANGE_GUTTER=4;this.CHANGE_SCROLL=8;this.CHANGE_LINES=16;this.CHANGE_TEXT=32;this.CHANGE_SIZE=64;this.CHANGE_MARKER_BACK=128;this.CHANGE_MARKER_FRONT=256;this.CHANGE_FULL=512;this.CHANGE_H_SCROLL=1024;e.implement(this,p);this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts));this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth();this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight();this.$updatePrintMargin()};this.setSession=function(n){(this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=n,n&&this.scrollMargin.top&&n.getScrollTop()<=0&&n.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(n),this.$markerBack.setSession(n),this.$markerFront.setSession(n),this.$gutterLayer.setSession(n),this.$textLayer.setSession(n),n)&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))};this.updateLines=function(n,t,i){if(t===undefined&&(t=Infinity),this.$changedLines?(this.$changedLines.firstRow>n&&(this.$changedLines.firstRow=n),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:n,lastRow:t},this.$changedLines.lastRow<this.layerConfig.firstRow){if(!i)return;this.$changedLines.lastRow=this.layerConfig.lastRow}this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)};this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT);this.$textLayer.$updateEolChar()};this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER);this.$textLayer.onChangeTabSize()};this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)};this.updateFull=function(n){n?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)};this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()};this.$changes=0;this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()};this.onResize=function(n,t,i,r){var u,f;if(!(this.resizing>2)){if(this.resizing>0?this.resizing++:this.resizing=n?1:0,u=this.container,r||(r=u.clientHeight||u.scrollHeight),i||(i=u.clientWidth||u.scrollWidth),f=this.$updateCachedSize(n,t,i,r),!this.$size.scrollerHeight||!i&&!r)return this.resizing=0;n&&(this.$gutterLayer.$padding=null);n?this.$renderChanges(f|this.$changes,!0):this.$loop.schedule(f|this.$changes);this.resizing&&(this.resizing=0);this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null}};this.$updateCachedSize=function(n,t,i,r){r-=this.$extraHeight||0;var f=0,u=this.$size,e={width:u.width,height:u.height,scrollerHeight:u.scrollerHeight,scrollerWidth:u.scrollerWidth};return r&&(n||u.height!=r)&&(u.height=r,f|=this.CHANGE_SIZE,u.scrollerHeight=u.height,this.$horizScroll&&(u.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",f|=this.CHANGE_SCROLL),i&&(n||u.width!=i)&&(f|=this.CHANGE_SIZE,u.width=i,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",u.scrollerWidth=Math.max(0,i-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||n)&&(f|=this.CHANGE_FULL)),u.$dirty=!i||!r,f&&this._signal("resize",e),f};this.onGutterResize=function(){var n=this.$showGutter?this.$gutter.offsetWidth:0;n!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,n,this.$size.width,this.$size.height));this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))};this.adjustWrapLimit=function(){var n=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(n/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)};this.setAnimatedScroll=function(n){this.setOption("animatedScroll",n)};this.getAnimatedScroll=function(){return this.$animatedScroll};this.setShowInvisibles=function(n){this.setOption("showInvisibles",n)};this.getShowInvisibles=function(){return this.getOption("showInvisibles")};this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")};this.setDisplayIndentGuides=function(n){this.setOption("displayIndentGuides",n)};this.setShowPrintMargin=function(n){this.setOption("showPrintMargin",n)};this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")};this.setPrintMarginColumn=function(n){this.setOption("printMarginColumn",n)};this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")};this.getShowGutter=function(){return this.getOption("showGutter")};this.setShowGutter=function(n){return this.setOption("showGutter",n)};this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")};this.setFadeFoldWidgets=function(n){this.setOption("fadeFoldWidgets",n)};this.setHighlightGutterLine=function(n){this.setOption("highlightGutterLine",n)};this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")};this.$updateGutterLineHighlight=function(){var t=this.$cursorLayer.$pixelPos,i=this.layerConfig.lineHeight,n;this.session.getUseWrapMode()&&(n=this.session.selection.getCursor(),n.column=0,t=this.$cursorLayer.getPixelPosition(n,!0),i*=this.session.getRowLength(n.row));this.$gutterLineHighlight.style.top=t.top-this.layerConfig.offset+"px";this.$gutterLineHighlight.style.height=i+"px"};this.$updatePrintMargin=function(){var n,t;(this.$showPrintMargin||this.$printMarginEl)&&(this.$printMarginEl||(n=i.createElement("div"),n.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",n.appendChild(this.$printMarginEl),this.content.insertBefore(n,this.content.firstChild)),t=this.$printMarginEl.style,t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit())};this.getContainerElement=function(){return this.container};this.getMouseEventTarget=function(){return this.scroller};this.getTextAreaContainer=function(){return this.container};this.$moveTextAreaToCursor=function(){var n,r,t,e;if(this.$keepTextAreaAtCursor){var f=this.layerConfig,u=this.$cursorLayer.$pixelPos.top,i=this.$cursorLayer.$pixelPos.left;if(u-=f.offset,n=this.textarea.style,r=this.lineHeight,u<0||u>f.height-r){n.top=n.left="0";return}t=this.characterWidth;this.$composition&&(e=this.textarea.value.replace(/^\x01+/,""),t*=this.session.$getStringScreenWidth(e)[0]+2,r+=2);i-=this.scrollLeft;i>this.$size.scrollerWidth-t&&(i=this.$size.scrollerWidth-t);i+=this.gutterWidth;n.height=r+"px";n.width=t+"px";n.left=Math.min(i,this.$size.scrollerWidth-t)+"px";n.top=Math.min(u,this.$size.height-r)+"px"}};this.getFirstVisibleRow=function(){return this.layerConfig.firstRow};this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)};this.getLastFullyVisibleRow=function(){var n=this.layerConfig,t=n.lastRow,i=this.session.documentToScreenRow(t,0)*n.lineHeight;return i-this.session.getScrollTop()>n.height-n.lineHeight?t-1:t};this.getLastVisibleRow=function(){return this.layerConfig.lastRow};this.$padding=null;this.setPadding=function(n){this.$padding=n;this.$textLayer.setPadding(n);this.$cursorLayer.setPadding(n);this.$markerFront.setPadding(n);this.$markerBack.setPadding(n);this.$loop.schedule(this.CHANGE_FULL);this.$updatePrintMargin()};this.setScrollMargin=function(n,t,i,r){var u=this.scrollMargin;u.top=n|0;u.bottom=t|0;u.right=r|0;u.left=i|0;u.v=u.top+u.bottom;u.h=u.left+u.right;u.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-u.top);this.updateFull()};this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible};this.setHScrollBarAlwaysVisible=function(n){this.setOption("hScrollBarAlwaysVisible",n)};this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible};this.setVScrollBarAlwaysVisible=function(n){this.setOption("vScrollBarAlwaysVisible",n)};this.$updateScrollBarV=function(){var n=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(n-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>n-t&&(n=this.scrollTop+t,this.scrollBarV.scrollTop=null));this.scrollBarV.setScrollHeight(n+this.scrollMargin.v);this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)};this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h);this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)};this.$frozen=!1;this.freeze=function(){this.$frozen=!0};this.unfreeze=function(){this.$frozen=!1};this.$renderChanges=function(n,t){var i,r;if(this.$changes&&(n|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!n&&!t){this.$changes|=n;return}if(this.$size.$dirty)return this.$changes|=n,this.onResize(!0);if(this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender"),i=this.layerConfig,(n&this.CHANGE_FULL||n&this.CHANGE_SIZE||n&this.CHANGE_TEXT||n&this.CHANGE_LINES||n&this.CHANGE_SCROLL||n&this.CHANGE_H_SCROLL)&&(n|=this.$computeLayerConfig(),i.firstRow!=this.layerConfig.firstRow&&i.firstRowScreen==this.layerConfig.firstRowScreen&&(r=this.scrollTop+(i.firstRow-this.layerConfig.firstRow)*this.lineHeight,r>0&&(this.scrollTop=r,n|=this.CHANGE_SCROLL,n|=this.$computeLayerConfig())),i=this.layerConfig,this.$updateScrollBarV(),n&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-i.offset+"px",this.content.style.marginTop=-i.offset+"px",this.content.style.width=i.width+2*this.$padding+"px",this.content.style.height=i.minHeight+"px"),n&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),n&this.CHANGE_FULL){this.$textLayer.update(i);this.$showGutter&&this.$gutterLayer.update(i);this.$markerBack.update(i);this.$markerFront.update(i);this.$cursorLayer.update(i);this.$moveTextAreaToCursor();this.$highlightGutterLine&&this.$updateGutterLineHighlight();this._signal("afterRender");return}if(n&this.CHANGE_SCROLL){n&this.CHANGE_TEXT||n&this.CHANGE_LINES?this.$textLayer.update(i):this.$textLayer.scrollLines(i);this.$showGutter&&this.$gutterLayer.update(i);this.$markerBack.update(i);this.$markerFront.update(i);this.$cursorLayer.update(i);this.$highlightGutterLine&&this.$updateGutterLineHighlight();this.$moveTextAreaToCursor();this._signal("afterRender");return}n&this.CHANGE_TEXT?(this.$textLayer.update(i),this.$showGutter&&this.$gutterLayer.update(i)):n&this.CHANGE_LINES?(this.$updateLines()||n&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(i):(n&this.CHANGE_TEXT||n&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(i);n&this.CHANGE_CURSOR&&(this.$cursorLayer.update(i),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight());n&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(i);n&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(i);this._signal("afterRender")};this.$autosize=function(){var i=this.session.getScreenLength()*this.lineHeight,r=this.$maxLines*this.lineHeight,n=Math.min(r,Math.max((this.$minLines||1)*this.lineHeight,i))+this.scrollMargin.v+(this.$extraHeight||0),t,u;this.$horizScroll&&(n+=this.scrollBarH.getHeight());this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);t=i>r;(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||t!=this.$vScroll)&&(t!=this.$vScroll&&(this.$vScroll=t,this.scrollBarV.setVisible(t)),u=this.container.clientWidth,this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,u,n),this.desiredHeight=n,this._signal("autosize"))};this.$computeLayerConfig=function(){var i=this.session,n=this.$size,w=n.height<=2*this.lineHeight,nt=this.session.getScreenLength(),e=nt*this.lineHeight,f=this.$getLongestLine(),a=!w&&(this.$hScrollBarAlwaysVisible||n.scrollerWidth-f-2*this.$padding<0),b=this.$horizScroll!==a,k,r,s,h,p,l;b&&(this.$horizScroll=a,this.scrollBarH.setVisible(a));k=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var o=this.scrollTop%this.lineHeight,v=n.scrollerHeight+this.lineHeight,d=!this.$maxLines&&this.$scrollPastEnd?(n.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;e+=d;r=this.scrollMargin;this.session.setScrollTop(Math.max(-r.top,Math.min(this.scrollTop,e-n.scrollerHeight+r.bottom)));this.session.setScrollLeft(Math.max(-r.left,Math.min(this.scrollLeft,f+2*this.$padding-n.scrollerWidth+r.right)));s=!w&&(this.$vScrollBarAlwaysVisible||n.scrollerHeight-e+d<0||this.scrollTop>r.top);h=k!==s;h&&(this.$vScroll=s,this.scrollBarV.setVisible(s));var tt=Math.ceil(v/this.lineHeight)-1,t=Math.max(0,Math.round((this.scrollTop-o)/this.lineHeight)),c=t+tt,y,g,u=this.lineHeight;return t=i.screenToDocumentRow(t,0),p=i.getFoldLine(t),p&&(t=p.start.row),y=i.documentToScreenRow(t,0),g=i.getRowLength(t)*u,c=Math.min(i.screenToDocumentRow(c,0),i.getLength()-1),v=n.scrollerHeight+i.getRowLength(c)*u+g,o=this.scrollTop-y*u,l=0,this.layerConfig.width!=f&&(l=this.CHANGE_H_SCROLL),(b||h)&&(l=this.$updateCachedSize(!0,this.gutterWidth,n.width,n.height),this._signal("scrollbarVisibilityChanged"),h&&(f=this.$getLongestLine())),this.layerConfig={width:f,padding:this.$padding,firstRow:t,firstRowScreen:y,lastRow:c,lineHeight:u,characterWidth:this.characterWidth,minHeight:v,maxHeight:e,offset:o,gutterOffset:u?Math.max(0,Math.ceil((o+n.height-n.scrollerHeight)/u)):0,height:this.$size.scrollerHeight},l};this.$updateLines=function(){var i=this.$changedLines.firstRow,t=this.$changedLines.lastRow,n;if((this.$changedLines=null,n=this.layerConfig,!(i>n.lastRow+1))&&!(t<n.firstRow)){if(t===Infinity){this.$showGutter&&this.$gutterLayer.update(n);this.$textLayer.update(n);return}return this.$textLayer.updateLines(n,i,t),!0}};this.$getLongestLine=function(){var n=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(n+=1),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(n*this.characterWidth))};this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0));this.$loop.schedule(this.CHANGE_MARKER_FRONT)};this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers());this.$loop.schedule(this.CHANGE_MARKER_BACK)};this.addGutterDecoration=function(n,t){this.$gutterLayer.addGutterDecoration(n,t)};this.removeGutterDecoration=function(n,t){this.$gutterLayer.removeGutterDecoration(n,t)};this.updateBreakpoints=function(){this.$loop.schedule(this.CHANGE_GUTTER)};this.setAnnotations=function(n){this.$gutterLayer.setAnnotations(n);this.$loop.schedule(this.CHANGE_GUTTER)};this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)};this.hideCursor=function(){this.$cursorLayer.hideCursor()};this.showCursor=function(){this.$cursorLayer.showCursor()};this.scrollSelectionIntoView=function(n,t,i){this.scrollCursorIntoView(n,i);this.scrollCursorIntoView(t,i)};this.scrollCursorIntoView=function(n,t,i){var f;if(this.$size.scrollerHeight!==0){var o=this.$cursorLayer.getPixelPosition(n),u=o.left,r=o.top,s=i&&i.top||0,h=i&&i.bottom||0,e=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;e+s>r?(t&&e+s>r+this.lineHeight&&(r-=t*this.$size.scrollerHeight),r===0&&(r=-this.scrollMargin.top),this.session.setScrollTop(r)):e+this.$size.scrollerHeight-h<r+this.lineHeight&&(t&&e+this.$size.scrollerHeight-h<r-this.lineHeight&&(r+=t*this.$size.scrollerHeight),this.session.setScrollTop(r+this.lineHeight-this.$size.scrollerHeight));f=this.scrollLeft;f>u?(u<this.$padding+2*this.layerConfig.characterWidth&&(u=-this.scrollMargin.left),this.session.setScrollLeft(u)):f+this.$size.scrollerWidth<u+this.characterWidth?this.session.setScrollLeft(Math.round(u+this.characterWidth-this.$size.scrollerWidth)):f<=this.$padding&&u-f<this.characterWidth&&this.session.setScrollLeft(0)}};this.getScrollTop=function(){return this.session.getScrollTop()};this.getScrollLeft=function(){return this.session.getScrollLeft()};this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight};this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)};this.scrollToRow=function(n){this.session.setScrollTop(n*this.lineHeight)};this.alignCursor=function(n,t){typeof n=="number"&&(n={row:n,column:0});var r=this.$cursorLayer.getPixelPosition(n),u=this.$size.scrollerHeight-this.lineHeight,i=r.top-u*(t||0);return this.session.setScrollTop(i),i};this.STEPS=8;this.$calcSteps=function(n,t){for(var i=0,u=this.STEPS,r=[],f=function(n,t,i){return i*(Math.pow(n-1,3)+1)+t},i=0;i<u;++i)r.push(f(i/this.STEPS,n,t-n));return r};this.scrollToLine=function(n,t,i,r){var e=this.$cursorLayer.getPixelPosition({row:n,column:0}),u=e.top,f;t&&(u-=this.$size.scrollerHeight/2);f=this.scrollTop;this.session.setScrollTop(u);i!==!1&&this.animateScrolling(f,r)};this.animateScrolling=function(n,t){var r=this.scrollTop,i,f,u;this.$animatedScroll&&(i=this,n!=r)&&(this.$scrollAnimation&&(f=this.$scrollAnimation.steps,f.length&&(n=f[0],n==r))||(u=i.$calcSteps(n,r),this.$scrollAnimation={from:n,to:r,steps:u},clearInterval(this.$timer),i.session.setScrollTop(u.shift()),i.session.$scrollTop=r,this.$timer=setInterval(function(){u.length?(i.session.setScrollTop(u.shift()),i.session.$scrollTop=r):r!=null?(i.session.$scrollTop=-1,i.session.setScrollTop(r),r=null):(i.$timer=clearInterval(i.$timer),i.$scrollAnimation=null,t&&t())},10)))};this.scrollToY=function(n){this.scrollTop!==n&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=n)};this.scrollToX=function(n){this.scrollLeft!==n&&(this.scrollLeft=n);this.$loop.schedule(this.CHANGE_H_SCROLL)};this.scrollTo=function(n,t){this.session.setScrollTop(t);this.session.setScrollLeft(t)};this.scrollBy=function(n,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t);n&&this.session.setScrollLeft(this.session.getScrollLeft()+n)};this.isScrollableBy=function(n,t){return t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top?!0:t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom?!0:n<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left?!0:n>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right?!0:void 0};this.pixelToScreenCoordinates=function(n,t){var i=this.scroller.getBoundingClientRect(),r=(n+this.scrollLeft-i.left-this.$padding)/this.characterWidth,f=Math.floor((t+this.scrollTop-i.top)/this.lineHeight),u=Math.round(r);return{row:f,column:u,side:r-u>0?1:-1}};this.screenToTextCoordinates=function(n,t){var i=this.scroller.getBoundingClientRect(),r=Math.round((n+this.scrollLeft-i.left-this.$padding)/this.characterWidth),u=(t+this.scrollTop-i.top)/this.lineHeight;return this.session.screenToDocumentPosition(u,Math.max(r,0))};this.textToScreenCoordinates=function(n,t){var i=this.scroller.getBoundingClientRect(),r=this.session.documentToScreenPosition(n,t),u=this.$padding+Math.round(r.column*this.characterWidth),f=r.row*this.lineHeight;return{pageX:i.left+u-this.scrollLeft,pageY:i.top+f-this.scrollTop}};this.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")};this.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")};this.showComposition=function(){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText});this.$keepTextAreaAtCursor=!0;i.addCssClass(this.textarea,"ace_composition");this.textarea.style.cssText="";this.$moveTextAreaToCursor()};this.setCompositionText=function(){this.$moveTextAreaToCursor()};this.hideComposition=function(){this.$composition&&(i.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)};this.setTheme=function(n,t){function f(r){if(u.$themeId!=n)return t&&t();if(!r||!r.cssClass)throw new Error("couldn't load module "+n+" or it didn't call define");i.importCssString(r.cssText,r.cssClass,u.container.ownerDocument);u.theme&&i.removeCssClass(u.container,u.theme.cssClass);var f="padding"in r?r.padding:"padding"in(u.theme||{})?4:u.$padding;u.$padding&&f!=u.$padding&&u.setPadding(f);u.$theme=r.cssClass;u.theme=r;i.addCssClass(u.container,r.cssClass);i.setCssClass(u.container,"ace_dark",r.isDark);u.$size&&(u.$size.width=0,u.$updateSizeAsync());u._dispatchEvent("themeLoaded",{theme:r});t&&t()}var u=this,e;this.$themeId=n;u._dispatchEvent("themeChange",{theme:n});n&&typeof n!="string"?f(n):(e=n||this.$options.theme.initialValue,r.loadModule(["theme",e],f))};this.getTheme=function(){return this.$themeId};this.setStyle=function(n,t){i.setCssClass(this.container,n,t!==!1)};this.unsetStyle=function(n){i.removeCssClass(this.container,n)};this.setCursorStyle=function(n){this.scroller.style.cursor!=n&&(this.scroller.style.cursor=n)};this.setMouseCursor=function(n){this.scroller.style.cursor=n};this.destroy=function(){this.$textLayer.destroy();this.$cursorLayer.destroy()}}.call(u.prototype);r.defineOptions(u.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(n){this.$textLayer.setShowInvisibles(n)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(n){typeof n=="number"&&(this.$printMarginColumn=n);this.$showPrintMargin=!!n;this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(n){this.$gutter.style.display=n?"block":"none";this.$loop.schedule(this.CHANGE_FULL);this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(n){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",n)},initialValue:!1},showFoldWidgets:{set:function(n){this.$gutterLayer.setShowFoldWidgets(n)},initialValue:!0},showLineNumbers:{set:function(n){this.$gutterLayer.setShowLineNumbers(n);this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(n){this.$textLayer.setDisplayIndentGuides(n)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(n){if(!this.$gutterLineHighlight){this.$gutterLineHighlight=i.createElement("div");this.$gutterLineHighlight.className="ace_gutter-active-line";this.$gutter.appendChild(this.$gutterLineHighlight);return}this.$gutterLineHighlight.style.display=n?"":"none";this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight()},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(n){typeof n=="number"&&(n+="px");this.container.style.fontSize=n;this.updateFontSize()},initialValue:12},fontFamily:{set:function(n){this.container.style.fontFamily=n;this.updateFontSize()}},maxLines:{set:function(){this.updateFull()}},minLines:{set:function(){this.updateFull()}},maxPixelHeight:{set:function(){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(n){(n=+n||0,this.$scrollPastEnd!=n)&&(this.$scrollPastEnd=n,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(n){this.$gutterLayer.$fixedWidth=!!n;this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(n){this.setTheme(n)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}});t.VirtualRenderer=u});define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(n,t){"use strict";var o=n("../lib/oop"),f=n("../lib/net"),e=n("../lib/event_emitter").EventEmitter,i=n("../config"),r=function(t,r,u,f){var e,o;this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this);this.changeListener=this.changeListener.bind(this);this.onMessage=this.onMessage.bind(this);n.nameToUrl&&!n.toUrl&&(n.toUrl=n.nameToUrl);i.get("packaged")||!n.toUrl?f=f||i.moduleUrl(r,"worker"):(e=this.$normalizePath,f=f||e(n.toUrl("ace/worker/worker.js",null,"_")),o={},t.forEach(function(t){o[t]=e(n.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))}));try{this.$worker=new Worker(f)}catch(s){if(!(s instanceof window.DOMException))throw s;var l=this.$workerBlob(f),h=window.URL||window.webkitURL,c=h.createObjectURL(l);this.$worker=new Worker(c);h.revokeObjectURL(c)}this.$worker.postMessage({init:!0,tlns:o,module:r,classname:u});this.callbackId=1;this.callbacks={};this.$worker.onmessage=this.onMessage},u;(function(){o.implement(this,e);this.onMessage=function(n){var t=n.data,i;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":i=this.callbacks[t.id];i&&(i(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}};this.reportError=function(n){window.console&&console.error&&console.error(n)};this.$normalizePath=function(n){return f.qualifyURL(n)};this.terminate=function(){this._signal("terminate",{});this.deltaQueue=null;this.$worker.terminate();this.$worker=null;this.$doc&&this.$doc.off("change",this.changeListener);this.$doc=null};this.send=function(n,t){this.$worker.postMessage({command:n,args:t})};this.call=function(n,t,i){if(i){var r=this.callbackId++;this.callbacks[r]=i;t.push(r)}this.send(n,t)};this.emit=function(n,t){try{this.$worker.postMessage({event:n,data:{data:t.data}})}catch(i){console.error(i.stack)}};this.attachToDocument=function(n){this.$doc&&this.terminate();this.$doc=n;this.call("setValue",[n.getValue()]);n.on("change",this.changeListener)};this.changeListener=function(n){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0));n.action=="insert"?this.deltaQueue.push(n.start,n.lines):this.deltaQueue.push(n.start,n.end)};this.$sendDeltaQueue=function(){var n=this.deltaQueue;n&&(this.deltaQueue=null,n.length>50&&n.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:n}))};this.$workerBlob=function(n){var i="importScripts('"+f.qualifyURL(n)+"');",r,t;try{return new Blob([i],{type:"application/javascript"})}catch(u){return r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,t=new r,t.append(i),t.getBlob("application/javascript")}}}).call(r.prototype);u=function(n,t,r){var s;this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this);this.changeListener=this.changeListener.bind(this);this.callbackId=1;this.callbacks={};this.messageBuffer=[];var f=null,h=!1,u=Object.create(e),o=this;this.$worker={};this.$worker.terminate=function(){};this.$worker.postMessage=function(n){o.messageBuffer.push(n);f&&(h?setTimeout(s):s())};this.setEmitSync=function(n){h=n};s=function(){var n=o.messageBuffer.shift();n.command?f[n.command].apply(f,n.args):n.event&&u._signal(n.event,n.data)};u.postMessage=function(n){o.onMessage({data:n})};u.callback=function(n,t){this.postMessage({type:"call",id:t,data:n})};u.emit=function(n,t){this.postMessage({type:"event",name:n,data:t})};i.loadModule(["worker",t],function(n){for(f=new n[r](u);o.messageBuffer.length;)s()})};u.prototype=r.prototype;t.UIWorkerClient=u;t.WorkerClient=r});define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(n,t){"use strict";var i=n("./range").Range,u=n("./lib/event_emitter").EventEmitter,f=n("./lib/oop"),r=function(n,t,i,r,u,f){var o=this,e;this.length=t;this.session=n;this.doc=n.getDocument();this.mainClass=u;this.othersClass=f;this.$onUpdate=this.onUpdate.bind(this);this.doc.on("change",this.$onUpdate);this.$others=r;this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})};this.$pos=i;e=n.getUndoManager().$undoStack||n.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=e.length;this.setup();n.selection.on("changeCursor",this.$onCursorChange)};(function(){f.implement(this,u);this.setup=function(){var u=this,r=this.doc,t=this.session,n;this.selectionBefore=t.selection.toJSON();t.selection.inMultiSelectMode&&t.selection.toSingleRange();this.pos=r.createAnchor(this.$pos.row,this.$pos.column);n=this.pos;n.$insertRight=!0;n.detach();n.markerId=t.addMarker(new i(n.row,n.column,n.row,n.column+this.length),this.mainClass,null,!1);this.others=[];this.$others.forEach(function(n){var t=r.createAnchor(n.row,n.column);t.$insertRight=!0;t.detach();u.others.push(t)});t.setUndoSelect(!1)};this.showOtherMarkers=function(){if(!this.othersActive){var t=this.session,n=this;this.othersActive=!0;this.others.forEach(function(r){r.markerId=t.addMarker(new i(r.row,r.column,r.row,r.column+n.length),n.othersClass,null,!1)})}};this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var n=0;n<this.others.length;n++)this.session.removeMarker(this.others[n].markerId)}};this.onUpdate=function(n){var t,r,f,u;if(this.$updating)return this.updateAnchors(n);if((t=n,t.start.row===t.end.row)&&t.start.row===this.pos.row){this.$updating=!0;var e=n.action==="insert"?t.end.column-t.start.column:t.start.column-t.end.column,o=t.start.column>=this.pos.column&&t.start.column<=this.pos.column+this.length+1,s=t.start.column-this.pos.column;if(this.updateAnchors(n),o&&(this.length+=e),o&&!this.session.$fromUndo)if(n.action==="insert")for(r=this.others.length-1;r>=0;r--)f=this.others[r],u={row:f.row,column:f.column+s},this.doc.insertMergedLines(u,n.lines);else if(n.action==="remove")for(r=this.others.length-1;r>=0;r--)f=this.others[r],u={row:f.row,column:f.column+s},this.doc.remove(new i(u.row,u.column,u.row,u.column-e));this.$updating=!1;this.updateMarkers()}};this.updateAnchors=function(n){this.pos.onChange(n);for(var t=this.others.length;t--;)this.others[t].onChange(n);this.updateMarkers()};this.updateMarkers=function(){var n;if(!this.$updating){var u=this,t=this.session,r=function(n,r){t.removeMarker(n.markerId);n.markerId=t.addMarker(new i(n.row,n.column,n.row,n.column+u.length),r,null,!1)};for(r(this.pos,this.mainClass),n=this.others.length;n--;)r(this.others[n],this.othersClass)}};this.onCursorChange=function(n){if(!this.$updating&&this.session){var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",n)):(this.hideOtherMarkers(),this._emit("cursorLeave",n))}};this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId);this.hideOtherMarkers();this.doc.removeEventListener("change",this.$onUpdate);this.session.selection.removeEventListener("changeCursor",this.$onCursorChange);this.session.setUndoSelect(!0);this.session=null};this.cancel=function(){var n,i,t;if(this.$undoStackDepth!==-1){for(n=this.session.getUndoManager(),i=(n.$undoStack||n.$undostack).length-this.$undoStackDepth,t=0;t<i;t++)n.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}}).call(r.prototype);t.PlaceHolder=r});define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(n,t){function i(n,t){return n.row==t.row&&n.column==t.column}function u(n){var c=n.domEvent,h=c.altKey,l=c.shiftKey,k=c.ctrlKey,a=n.getAccelKey(),p=n.getButton(),o,b,y,e,rt,ut,ft,et;if(k&&r.isMac&&(p=c.button),n.editor.inMultiSelectMode&&p==2){n.editor.textInput.onContextMenu(n.domEvent);return}if(!k&&!h&&!a){p===0&&n.editor.inMultiSelectMode&&n.editor.exitMultiSelectMode();return}if(p===0){var t=n.editor,u=t.selection,v=t.inMultiSelectMode,d=n.getDocumentPosition(),ot=u.getCursor(),st=n.inSelection()||u.isEmpty()&&i(d,ot),g=n.x,nt=n.y,ht=function(n){g=n.clientX;nt=n.clientY},it=t.session,tt=t.renderer.pixelToScreenCoordinates(g,nt),w=tt,s;if(t.$mouseHandler.$enableJumpToDef)k&&h||a&&h?s=l?"block":"add":h&&t.$blockSelectEnabled&&(s="block");else if(a&&!h){if(s="add",!v&&l)return}else h&&t.$blockSelectEnabled&&(s="block");if(s&&r.isMac&&c.ctrlKey&&t.$mouseHandler.cancelContextMenu(),s=="add"){if(!v&&st)return;v||(o=u.toOrientedRange(),t.addSelectionMarker(o));b=u.rangeList.rangeAtPoint(d);t.$blockScrolling++;t.inVirtualSelectionMode=!0;l&&(b=null,o=u.ranges[0]||o,t.removeSelectionMarker(o));t.once("mouseup",function(){var n=u.toOrientedRange();b&&n.isEmpty()&&i(b.cursor,n.cursor)?u.substractPoint(n.cursor):(l?u.substractPoint(o.cursor):o&&(t.removeSelectionMarker(o),u.addRange(o)),u.addRange(n));t.$blockScrolling--;t.inVirtualSelectionMode=!1})}else if(s=="block")return n.stop(),t.inVirtualSelectionMode=!0,e=[],rt=function(){var n=t.renderer.pixelToScreenCoordinates(g,nt),r=it.screenToDocumentPosition(n.row,n.column);i(w,n)&&i(r,u.lead)||(w=n,t.$blockScrolling++,t.selection.moveToPosition(r),t.renderer.scrollCursorIntoView(),t.removeSelectionMarkers(e),e=u.rectangularRangeBlock(w,tt),t.$mouseHandler.$clickSelection&&e.length==1&&e[0].isEmpty()&&(e[0]=t.$mouseHandler.$clickSelection.clone()),e.forEach(t.addSelectionMarker,t),t.updateSelectionMarkers(),t.$blockScrolling--)},t.$blockScrolling++,v&&!a?u.toSingleRange():!v&&a&&(y=u.toOrientedRange(),t.addSelectionMarker(y)),l?tt=it.documentToScreenPosition(u.lead):u.moveToPosition(d),t.$blockScrolling--,w={row:-1,column:-1},ut=function(){clearInterval(et);t.removeSelectionMarkers(e);e.length||(e=[u.toOrientedRange()]);t.$blockScrolling++;y&&(t.removeSelectionMarker(y),u.toSingleRange(y));for(var n=0;n<e.length;n++)u.addRange(e[n]);t.inVirtualSelectionMode=!1;t.$mouseHandler.$clickSelection=null;t.$blockScrolling--},ft=rt,f.capture(t.container,ht,ut),et=setInterval(function(){ft()},20),n.preventDefault()}}var f=n("../lib/event"),r=n("../lib/useragent");t.onMouseDown=u});define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(n,t){t.defaultCommands=[{name:"addCursorAbove",exec:function(n){n.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",exec:function(n){n.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",exec:function(n){n.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",exec:function(n){n.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",exec:function(n){n.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",exec:function(n){n.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",exec:function(n){n.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",exec:function(n){n.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"splitIntoLines",exec:function(n){n.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"alignCursors",exec:function(n){n.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",exec:function(n){n.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}];t.multiSelectCommands=[{name:"singleSelection",bindKey:"esc",exec:function(n){n.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(n){return n&&n.inMultiSelectMode}}];var i=n("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new i(t.multiSelectCommands)});define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(n,t){function l(n,t,i){return u.$options.wrap=!0,u.$options.needle=t,u.$options.backwards=i==-1,u.find(n)}function a(n,t){return n.row==t.row&&n.column==t.column}function s(n){n.$multiselectOnSessionChange||(n.$onAddRange=n.$onAddRange.bind(n),n.$onRemoveRange=n.$onRemoveRange.bind(n),n.$onMultiSelect=n.$onMultiSelect.bind(n),n.$onSingleSelect=n.$onSingleSelect.bind(n),n.$multiselectOnSessionChange=t.onSessionChange.bind(n),n.$checkMultiselectChange=n.$checkMultiselectChange.bind(n),n.$multiselectOnSessionChange(n),n.on("changeSession",n.$multiselectOnSessionChange),n.on("mousedown",f),n.commands.addCommands(r.defaultCommands),v(n))}function v(n){function i(){t&&(n.renderer.setMouseCursor(""),t=!1)}var r=n.textInput.getElement(),t=!1;e.addListener(r,"keydown",function(r){var u=r.keyCode==18&&!(r.ctrlKey||r.shiftKey||r.metaKey);n.$blockSelectEnabled&&u?t||(n.renderer.setMouseCursor("crosshair"),t=!0):t&&i()});e.addListener(r,"keyup",i);e.addListener(r,"blur",i)}var y=n("./range_list").RangeList,i=n("./range").Range,h=n("./selection").Selection,f=n("./mouse/multi_select_handler").onMouseDown,e=n("./lib/event"),c=n("./lib/lang"),r=n("./commands/multi_select_commands"),o;t.commands=r.defaultCommands.concat(r.multiSelectCommands);var p=n("./search").Search,u=new p,w=n("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(w.prototype),function(){this.ranges=null;this.rangeList=null;this.addRange=function(n,t){var i,r;if(n){if(!this.inMultiSelectMode&&this.rangeCount===0){if(i=this.toOrientedRange(),this.rangeList.add(i),this.rangeList.add(n),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(n);this.rangeList.removeAll();this.rangeList.add(i);this.$onAddRange(i)}return n.cursor||(n.cursor=n.end),r=this.rangeList.add(n),this.$onAddRange(n),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(n)}};this.toSingleRange=function(n){n=n||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t);n&&this.fromOrientedRange(n)};this.substractPoint=function(n){var t=this.rangeList.substractPoint(n);if(t)return this.$onRemoveRange(t),t[0]};this.mergeOverlappingRanges=function(){var n=this.rangeList.merge();n.length?this.$onRemoveRange(n):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])};this.$onAddRange=function(n){this.rangeCount=this.rangeList.ranges.length;this.ranges.unshift(n);this._signal("addRange",{range:n})};this.$onRemoveRange=function(n){var t,i,r;for(this.rangeCount=this.rangeList.ranges.length,this.rangeCount==1&&this.inMultiSelectMode&&(t=this.rangeList.ranges.pop(),n.push(t),this.rangeCount=0),i=n.length;i--;)r=this.ranges.indexOf(n[i]),this.ranges.splice(r,1);this._signal("removeRange",{ranges:n});this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session));t=t||this.ranges[0];t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)};this.$initRangeList=function(){this.rangeList||(this.rangeList=new y,this.ranges=[],this.rangeCount=0)};this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]};this.splitIntoLines=function(){var r,u,f,t,e;if(this.rangeCount>1){var o=this.rangeList.ranges,s=o[o.length-1],n=i.fromPoints(o[0].start,s.end);this.toSingleRange();this.setSelectionRange(n,s.cursor==s.start)}else{var n=this.getRange(),l=this.isBackwards(),h=n.start.row,c=n.end.row;if(h==c){l?(r=n.end,u=n.start):(r=n.start,u=n.end);this.addRange(i.fromPoints(u,u));this.addRange(i.fromPoints(r,r));return}for(f=[],t=this.getLineRange(h,!0),t.start.column=n.start.column,f.push(t),e=h+1;e<c;e++)f.push(this.getLineRange(e,!0));t=this.getLineRange(c,!0);t.end.column=n.end.column;f.push(t);f.forEach(this.addRange,this)}};this.toggleBlockSelection=function(){if(this.rangeCount>1){var n=this.rangeList.ranges,t=n[n.length-1],r=i.fromPoints(n[0].start,t.end);this.toSingleRange();this.setSelectionRange(r,t.cursor==t.start)}else{var u=this.session.documentToScreenPosition(this.selectionLead),f=this.session.documentToScreenPosition(this.selectionAnchor),e=this.rectangularRangeBlock(u,f);e.forEach(this.addRange,this)}};this.rectangularRangeBlock=function(n,t,r){var u=[],b=n.column<t.column,o,v,p,e,h,c,f,w,s,y,l;for(b?(o=n.column,v=t.column):(o=t.column,v=n.column),p=n.row<t.row,p?(e=n.row,h=t.row):(e=t.row,h=n.row),o<0&&(o=0),e<0&&(e=0),e==h&&(r=!0),c=e;c<=h;c++){if(f=i.fromPoints(this.session.screenToDocumentPosition(c,o),this.session.screenToDocumentPosition(c,v)),f.isEmpty()){if(w&&a(f.end,w))break;w=f.end}f.cursor=b?f.start:f.end;u.push(f)}if(p&&u.reverse(),!r){for(s=u.length-1;u[s].isEmpty()&&s>0;)s--;if(s>0)for(y=0;u[y].isEmpty();)y++;for(l=s;l>=y;l--)u[l].isEmpty()&&u.splice(l,1)}return u}}.call(h.prototype);o=n("./editor").Editor,function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor();this.renderer.updateBackMarkers()};this.addSelectionMarker=function(n){n.cursor||(n.cursor=n.end);var t=this.getSelectionStyle();return n.marker=this.session.addMarker(n,"ace_selection",t),this.session.$selectionMarkers.push(n),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,n};this.removeSelectionMarker=function(n){if(n.marker){this.session.removeMarker(n.marker);var t=this.session.$selectionMarkers.indexOf(n);t!=-1&&this.session.$selectionMarkers.splice(t,1);this.session.selectionMarkerCount=this.session.$selectionMarkers.length}};this.removeSelectionMarkers=function(n){for(var i=this.session.$selectionMarkers,t,u,r=n.length;r--;)(t=n[r],t.marker)&&(this.session.removeMarker(t.marker),u=i.indexOf(t),u!=-1&&i.splice(u,1));this.session.selectionMarkerCount=i.length};this.$onAddRange=function(n){this.addSelectionMarker(n.range);this.renderer.updateCursor();this.renderer.updateBackMarkers()};this.$onRemoveRange=function(n){this.removeSelectionMarkers(n.ranges);this.renderer.updateCursor();this.renderer.updateBackMarkers()};this.$onMultiSelect=function(){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(r.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())};this.$onSingleSelect=function(){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(r.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))};this.$onMultiSelectExec=function(n){var i=n.command,t=n.editor,r;if(t.multiSelect)return i.multiSelectAction?i.multiSelectAction=="forEach"?r=t.forEachSelection(i,n.args):i.multiSelectAction=="forEachLine"?r=t.forEachSelection(i,n.args,!0):i.multiSelectAction=="single"?(t.exitMultiSelectMode(),r=i.exec(t,n.args||{})):r=i.multiSelectAction(t,n.args||{}):(r=i.exec(t,n.args||{}),t.multiSelect.addRange(t.multiSelect.toOrientedRange()),t.multiSelect.mergeOverlappingRanges()),r};this.forEachSelection=function(n,t,i){var a,e,r,l,o;if(!this.inVirtualSelectionMode){var v=i&&i.keepOrder,y=i==1||i&&i.$byLines,s=this.session,u=this.selection,p=u.rangeList,f=(v?u:p).ranges,c;if(!f.length)return n.exec?n.exec(this,t||{}):n(this,t||{});for(a=u._eventRegistry,u._eventRegistry={},e=new h(s),this.inVirtualSelectionMode=!0,r=f.length;r--;){if(y)while(r>0&&f[r].start.row==f[r-1].end.row)r--;e.fromOrientedRange(f[r]);e.index=r;this.selection=s.selection=e;l=n.exec?n.exec(this,t||{}):n(this,t||{});c||l===undefined||(c=l);e.toOrientedRange(f[r])}return e.detach(),this.selection=s.selection=u,this.inVirtualSelectionMode=!1,u._eventRegistry=a,u.mergeOverlappingRanges(),o=this.renderer.$scrollAnimation,this.onCursorChange(),this.onSelectionChange(),o&&o.from==o.to&&this.renderer.animateScrolling(o.from),c}};this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()};this.getSelectedText=function(){var n="",r,t,i,u;if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(r=this.multiSelect.rangeList.ranges,t=[],i=0;i<r.length;i++)t.push(this.session.getTextRange(r[i]));u=this.session.getDocument().getNewLineCharacter();n=t.join(u);n.length==(t.length-1)*u.length&&(n="")}else this.selection.isEmpty()||(n=this.session.getTextRange(this.getSelectionRange()));return n};this.$checkMultiselectChange=function(n,t){var i,r;if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){if(i=this.multiSelect.ranges[0],this.multiSelect.isEmpty()&&t==this.multiSelect.anchor)return;r=t==this.multiSelect.anchor?i.cursor==i.start?i.end:i.start:i.cursor;(r.row!=t.row||this.session.$clipPositionToDocument(r.row,r.column).column!=t.column)&&this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange())}};this.findAll=function(n,t,i){var u,r,f,e;if(t=t||{},t.needle=n||t.needle,t.needle==undefined&&(u=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange(),t.needle=this.session.getTextRange(u)),this.$search.set(t),r=this.$search.findAll(this.session),!r.length)return 0;for(this.$blockScrolling+=1,f=this.multiSelect,i||f.toSingleRange(r[0]),e=r.length;e--;)f.addRange(r[e],!0);return u&&f.rangeList.rangeAtPoint(u.start)&&f.addRange(u,!0),this.$blockScrolling-=1,r.length};this.selectMoreLines=function(n,t){var u=this.selection.toOrientedRange(),c=u.cursor==u.end,e=this.session.documentToScreenPosition(u.cursor),o,s,f,r,h;this.selection.$desiredColumn&&(e.column=this.selection.$desiredColumn);o=this.session.screenToDocumentPosition(e.row+n,e.column);u.isEmpty()?f=o:(s=this.session.documentToScreenPosition(c?u.end:u.start),f=this.session.screenToDocumentPosition(s.row+n,s.column));c?(r=i.fromPoints(o,f),r.cursor=r.start):(r=i.fromPoints(f,o),r.cursor=r.end);r.desiredColumn=e.column;this.selection.inMultiSelectMode?t&&(h=u.cursor):this.selection.addRange(u);this.selection.addRange(r);h&&this.selection.substractPoint(h)};this.transposeSelections=function(n){for(var e=this.session,o=e.multiSelect,f=o.ranges,u,t,r,i=f.length;i--;)t=f[i],t.isEmpty()&&(r=e.getWordRange(t.start.row,t.start.column),t.start.row=r.start.row,t.start.column=r.start.column,t.end.row=r.end.row,t.end.column=r.end.column);for(o.mergeOverlappingRanges(),u=[],i=f.length;i--;)t=f[i],u.unshift(e.getTextRange(t));for(n<0?u.unshift(u.pop()):u.push(u.shift()),i=f.length;i--;)t=f[i],r=t.clone(),e.replace(t,u[i]),t.start.row=r.start.row,t.start.column=r.start.column};this.selectMore=function(n,t,i){var f=this.session,o=f.multiSelect,r=o.toOrientedRange(),e,u;r.isEmpty()&&(r=f.getWordRange(r.start.row,r.start.column),r.cursor=n==-1?r.start:r.end,this.multiSelect.addRange(r),i)||(e=f.getTextRange(r),u=l(f,e,n),u&&(u.cursor=n==-1?u.start:u.end,this.$blockScrolling+=1,this.session.unfold(u),this.multiSelect.addRange(u),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(r.cursor))};this.alignCursors=function(){var e=this.session,l=e.multiSelect,t=l.ranges,y=-1,p=t.filter(function(n){if(n.cursor.row==y)return!0;y=n.cursor.row}),o,s,u;if(t.length&&p.length!=t.length-1){p.forEach(function(n){l.substractPoint(n.cursor)});var h=0,v=Infinity,w=t.map(function(n){var i=n.cursor,r=e.getLine(i.row),t=r.substr(i.column).search(/\S/g);return t==-1&&(t=0),i.column>h&&(h=i.column),t<v&&(v=t),t});t.forEach(function(n,t){var r=n.cursor,u=h-r.column,f=w[t]-v;u>f?e.insert(r,c.stringRepeat(" ",u-f)):e.remove(new i(r.row,r.column,r.row,r.column-u+f));n.start.column=n.end.column=h;n.start.row=n.end.row=r.row;n.cursor=n.end});l.fromOrientedRange(t[0]);this.renderer.updateCursor();this.renderer.updateBackMarkers()}else{var f=this.selection.getRange(),n=f.start.row,r=f.end.row,a=n==r;if(a){o=this.session.getLength();do s=this.session.getLine(r);while(/[=:]/.test(s)&&++r<o);do s=this.session.getLine(n);while(/[=:]/.test(s)&&--n>0);n<0&&(n=0);r>=o&&(r=o-1)}u=this.session.removeFullLines(n,r);u=this.$reAlignText(u,a);this.session.insert({row:n,column:0},u.join("\n")+"\n");a||(f.start.column=0,f.end.column=u[u.length-1].length);this.selection.setRange(f)}};this.$reAlignText=function(n,t){function u(n){return c.stringRepeat(" ",n)}function e(n){return n[2]?u(i)+n[2]+u(f-n[2].length+r)+n[4].replace(/^([=:])\s+/,"$1 "):n[0]}function h(n){return n[2]?u(i+f-n[2].length)+n[2]+u(r," ")+n[4].replace(/^([=:])\s+/,"$1 "):n[0]}function l(n){return n[2]?u(i)+n[2]+u(r)+n[4].replace(/^([=:])\s+/,"$1 "):n[0]}var o=!0,s=!0,i,f,r;return n.map(function(n){var t=n.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,f=t[2].length,r=t[3].length,t):(i+f+r!=t[1].length+t[2].length+t[3].length&&(s=!1),i!=t[1].length&&(o=!1),i>t[1].length&&(i=t[1].length),f<t[2].length&&(f=t[2].length),r>t[3].length&&(r=t[3].length),t):[n]}).map(t?e:o?s?h:e:l)}}.call(o.prototype);t.onSessionChange=function(n){var t=n.session,i;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection);this.multiSelect=t&&t.multiSelect;i=n.oldSession;i&&(i.multiSelect.off("addRange",this.$onAddRange),i.multiSelect.off("removeRange",this.$onRemoveRange),i.multiSelect.off("multiSelect",this.$onMultiSelect),i.multiSelect.off("singleSelect",this.$onSingleSelect),i.multiSelect.lead.off("change",this.$checkMultiselectChange),i.multiSelect.anchor.off("change",this.$checkMultiselectChange));t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange));t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};t.MultiSelect=s;n("./config").defineOptions(o.prototype,"editor",{enableMultiselect:{set:function(n){s(this);n?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",f)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",f))},value:!0},enableBlockSelect:{set:function(n){this.$blockSelectEnabled=n},value:!0}})});define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(n,t){"use strict";var i=n("../../range").Range,r=t.FoldMode=function(){};(function(){this.foldingStartMarker=null;this.foldingStopMarker=null;this.getFoldWidget=function(n,t,i){var r=n.getLine(i);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""};this.getFoldWidgetRange=function(){return null};this.indentationBlock=function(n,t,r){var e=/\S/,o=n.getLine(t),s=o.search(e),f,c;if(s!=-1){for(var l=r||o.length,a=n.getLength(),h=t,u=t;++t<a;)if(f=n.getLine(t).search(e),f!=-1){if(f<=s)break;u=t}if(u>h)return c=n.getLine(u).length,new i(h,l,u,c)}};this.openingBracketBlock=function(n,t,r,u,f){var s={row:r,column:u+1},e=n.$findClosingBracket(t,s,f),o;if(e)return o=n.foldWidgets[e.row],o==null&&(o=n.getFoldWidget(e.row)),o=="start"&&e.row>s.row&&(e.row--,e.column=n.getLine(e.row).length),i.fromPoints(s,e)};this.closingBracketBlock=function(n,t,r,u){var f={row:r,column:u},e=n.$findOpeningBracket(t,f);if(e)return e.column++,f.column--,i.fromPoints(e,f)}}).call(r.prototype)});define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(n,t){"use strict";t.isDark=!1;t.cssClass="ace-tm";t.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var i=n("../lib/dom");i.importCssString(t.cssText,t.cssClass)});define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(n,t){"use strict";function i(n){this.session=n;this.session.widgetManager=this;this.session.getRowLength=this.getRowLength;this.session.$getWidgetScreenLength=this.$getWidgetScreenLength;this.updateOnChange=this.updateOnChange.bind(this);this.renderWidgets=this.renderWidgets.bind(this);this.measureWidgets=this.measureWidgets.bind(this);this.session._changedWidgets=[];this.$onChangeEditor=this.$onChangeEditor.bind(this);this.session.on("change",this.updateOnChange);this.session.on("changeFold",this.updateOnFold);this.session.on("changeEditor",this.$onChangeEditor)}var u=n("./lib/oop"),r=n("./lib/dom"),f=n("./range").Range;(function(){this.getRowLength=function(n){var t;return t=this.lineWidgets?this.lineWidgets[n]&&this.lineWidgets[n].rowCount||0:0,!this.$useWrapMode||!this.$wrapData[n]?1+t:this.$wrapData[n].length+1+t};this.$getWidgetScreenLength=function(){var n=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&!t.hidden&&(n+=t.rowCount)}),n};this.$onChangeEditor=function(n){this.attach(n.editor)};this.attach=function(n){(n&&n.widgetManager&&n.widgetManager!=this&&n.widgetManager.detach(),this.editor!=n)&&(this.detach(),this.editor=n,n&&(n.widgetManager=this,n.renderer.on("beforeRender",this.measureWidgets),n.renderer.on("afterRender",this.renderWidgets)))};this.detach=function(){var n=this.editor,t;n&&(this.editor=null,n.widgetManager=null,n.renderer.off("beforeRender",this.measureWidgets),n.renderer.off("afterRender",this.renderWidgets),t=this.session.lineWidgets,t&&t.forEach(function(n){n&&n.el&&n.el.parentNode&&(n._inDocument=!1,n.el.parentNode.removeChild(n.el))}))};this.updateOnFold=function(n,t){var i=t.lineWidgets,f;if(i&&n.action){var o=n.data,u=o.start.row,r=o.end.row,e=n.action=="add";for(f=u+1;f<r;f++)i[f]&&(i[f].hidden=e);i[r]&&(e?i[u]?i[r].hidden=e:i[u]=i[r]:(i[u]==i[r]&&(i[u]=undefined),i[r].hidden=e))}};this.updateOnChange=function(n){var t=this.session.lineWidgets,i,r,f,u;t&&(i=n.start.row,r=n.end.row-i,r!==0&&(n.action=="remove"?(f=t.splice(i+1,r),f.forEach(function(n){n&&this.removeLineWidget(n)},this),this.$updateRows()):(u=new Array(r),u.unshift(i,0),t.splice.apply(t,u),this.$updateRows())))};this.$updateRows=function(){var t=this.session.lineWidgets,n;t&&(n=!0,t.forEach(function(t,i){if(t)for(n=!1,t.row=i;t.$oldWidget;)t.$oldWidget.row=i,t=t.$oldWidget}),n&&(this.session.lineWidgets=null))};this.addLineWidget=function(n){var t,u,i,f;return this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),t=this.session.lineWidgets[n.row],t&&(n.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[n.row]=n,n.session=this.session,u=this.editor.renderer,n.html&&!n.el&&(n.el=r.createElement("div"),n.el.innerHTML=n.html),n.el&&(r.addCssClass(n.el,"ace_lineWidgetContainer"),n.el.style.position="absolute",n.el.style.zIndex=5,u.container.appendChild(n.el),n._inDocument=!0),n.coverGutter||(n.el.style.zIndex=3),n.pixelHeight==null&&(n.pixelHeight=n.el.offsetHeight),n.rowCount==null&&(n.rowCount=n.pixelHeight/u.layerConfig.lineHeight),i=this.session.getFoldAt(n.row,0),n.$fold=i,i&&(f=this.session.lineWidgets,n.row==i.end.row&&!f[i.start.row]?f[i.start.row]=n:n.hidden=!0),this.session._emit("changeFold",{data:{start:{row:n.row}}}),this.$updateRows(),this.renderWidgets(null,u),this.onWidgetChanged(n),n};this.removeLineWidget=function(n){if(n._inDocument=!1,n.session=null,n.el&&n.el.parentNode&&n.el.parentNode.removeChild(n.el),n.editor&&n.editor.destroy)try{n.editor.destroy()}catch(i){}if(this.session.lineWidgets){var t=this.session.lineWidgets[n.row];if(t==n)this.session.lineWidgets[n.row]=n.$oldWidget,n.$oldWidget&&this.onWidgetChanged(n.$oldWidget);else while(t){if(t.$oldWidget==n){t.$oldWidget=n.$oldWidget;break}t=t.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:n.row}}});this.$updateRows()};this.getWidgetsAtRow=function(n){for(var i=this.session.lineWidgets,t=i&&i[n],r=[];t;)r.push(t),t=t.$oldWidget;return r};this.onWidgetChanged=function(n){this.session._changedWidgets.push(n);this.editor&&this.editor.renderer.updateFull()};this.measureWidgets=function(n,t){var f=this.session._changedWidgets,o=t.layerConfig,u,e,i,r;if(f&&f.length){for(u=Infinity,e=0;e<f.length;e++)if((i=f[e],i&&i.el)&&i.session==this.session){if(!i._inDocument){if(this.session.lineWidgets[i.row]!=i)continue;i._inDocument=!0;t.container.appendChild(i.el)}i.h=i.el.offsetHeight;i.fixedWidth||(i.w=i.el.offsetWidth,i.screenWidth=Math.ceil(i.w/o.characterWidth));r=i.h/o.lineHeight;i.coverLine&&(r-=this.session.getRowLineCount(i.row),r<0&&(r=0));i.rowCount!=r&&(i.rowCount=r,i.row<u&&(u=i.row))}u!=Infinity&&(this.session._emit("changeFold",{data:{start:{row:u}}}),this.session.lineWidgetWidth=null);this.session._changedWidgets=[]}};this.renderWidgets=function(n,t){var r=t.layerConfig,e=this.session.lineWidgets,u,h,f,i,o,s;if(e){for(u=Math.min(this.firstRow,r.firstRow),h=Math.max(this.lastRow,r.lastRow,e.length);u>0&&!e[u];)u--;for(this.firstRow=r.firstRow,this.lastRow=r.lastRow,t.$cursorLayer.config=r,f=u;f<=h;f++)if(i=e[f],i&&i.el){if(i.hidden){i.el.style.top=-100-(i.pixelHeight||0)+"px";continue}i._inDocument||(i._inDocument=!0,t.container.appendChild(i.el));o=t.$cursorLayer.getPixelPosition({row:f,column:0},!0).top;i.coverLine||(o+=r.lineHeight*this.session.getRowLineCount(i.row));i.el.style.top=o-r.offset+"px";s=i.coverGutter?0:t.gutterWidth;i.fixedWidth||(s-=t.scrollLeft);i.el.style.left=s+"px";i.fullWidth&&i.screenWidth&&(i.el.style.minWidth=r.width+2*r.padding+"px");i.el.style.right=i.fixedWidth?t.scrollBar.getWidth()+"px":""}}}}).call(i.prototype);t.LineWidgets=i});define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(n,t){"use strict";function u(n,t,i){for(var u=0,f=n.length-1,r,e;u<=f;)if(r=u+f>>1,e=i(t,n[r]),e>0)u=r+1;else{if(!(e<0))return r;f=r-1}return-(u+1)}function f(n,t,i){var o=n.getAnnotations().sort(r.comparePoints),e,f,s;if(o.length&&(e=u(o,{row:t,column:-1},r.comparePoints),e<0&&(e=-e-1),e>=o.length?e=i>0?0:o.length-1:e===0&&i<0&&(e=o.length-1),f=o[e],f&&i)){if(f.row===t){do f=o[e+=i];while(f&&f.row===t);if(!f)return o.slice()}s=[];t=f.row;do s[i<0?"unshift":"push"](f),f=o[e+=i];while(f&&f.row==t);return s.length&&s}}var e=n("../line_widgets").LineWidgets,i=n("../lib/dom"),r=n("../range").Range;t.showErrorMarker=function(n,t){var o=n.session,a,h,s,w,y;o.widgetManager||(o.widgetManager=new e(o),o.widgetManager.attach(n));var u=n.getCursorPosition(),c=u.row,l=o.widgetManager.getWidgetsAtRow(c).filter(function(n){return n.type=="errorMarker"})[0];if(l?l.destroy():c-=t,a=f(o,c,t),a)s=a[0],u.column=(s.pos&&typeof s.column!="number"?s.pos.sc:s.column)||0,u.row=s.row,h=n.renderer.$gutterLayer.$annotations[u.row];else{if(l)return;h={text:["Looks good!"],className:"ace_ok"}}n.session.unfold(u.row);n.selection.moveToPosition(u);var r={row:u.row,fixedWidth:!0,coverGutter:!0,el:i.createElement("div"),type:"errorMarker"},v=r.el.appendChild(i.createElement("div")),p=r.el.appendChild(i.createElement("div"));p.className="error_widget_arrow "+h.className;w=n.renderer.$cursorLayer.getPixelPosition(u).left;p.style.left=w+n.renderer.gutterWidth-5+"px";r.el.className="error_widget_wrapper";v.className="error_widget "+h.className;v.innerHTML=h.text.join("<br>");v.appendChild(i.createElement("div"));y=function(n,t,i){if(t===0&&(i==="esc"||i==="return"))return r.destroy(),{command:"null"}};r.destroy=function(){n.$mouseHandler.isMousePressed||(n.keyBinding.removeKeyboardHandler(y),o.widgetManager.removeLineWidget(r),n.off("changeSelection",r.destroy),n.off("changeSession",r.destroy),n.off("mouseup",r.destroy),n.off("change",r.destroy))};n.keyBinding.addKeyboardHandler(y);n.on("changeSelection",r.destroy);n.on("changeSession",r.destroy);n.on("mouseup",r.destroy);n.on("change",r.destroy);n.session.widgetManager.addLineWidget(r);r.el.onmousedown=n.focus.bind(n);n.renderer.scrollCursorIntoView(null,.5,{bottom:r.el.offsetHeight})};i.importCssString("    .error_widget_wrapper {        background: inherit;        color: inherit;        border:none    }    .error_widget {        border-top: solid 2px;        border-bottom: solid 2px;        margin: 5px 0;        padding: 10px 40px;        white-space: pre-wrap;    }    .error_widget.ace_error, .error_widget_arrow.ace_error{        border-color: #ff5a5a    }    .error_widget.ace_warning, .error_widget_arrow.ace_warning{        border-color: #F1D817    }    .error_widget.ace_info, .error_widget_arrow.ace_info{        border-color: #5a5a5a    }    .error_widget.ace_ok, .error_widget_arrow.ace_ok{        border-color: #5aaa5a    }    .error_widget_arrow {        position: absolute;        border: solid 5px;        border-top-color: transparent!important;        border-right-color: transparent!important;        border-left-color: transparent!important;        top: -5px;    }","")});define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(n,t){"use strict";n("./lib/fixoldbrowsers");var i=n("./lib/dom"),r=n("./lib/event"),u=n("./editor").Editor,f=n("./edit_session").EditSession,e=n("./undomanager").UndoManager,o=n("./virtual_renderer").VirtualRenderer;n("./worker/worker_client");n("./keyboard/hash_handler");n("./placeholder");n("./multi_select");n("./mode/folding/fold_mode");n("./theme/textmate");n("./ext/error_marker");t.config=n("./config");t.require=n;typeof define=="function"&&(t.define=define);t.edit=function(n){var c,h,e,l,f,s;if(typeof n=="string"&&(c=n,n=document.getElementById(c),!n))throw new Error("ace.edit can't find div #"+c);return n&&n.env&&n.env.editor instanceof u?n.env.editor:(h="",n&&/input|textarea/i.test(n.tagName)?(e=n,h=e.value,n=i.createElement("pre"),e.parentNode.replaceChild(n,e)):n&&(h=i.getInnerText(n),n.innerHTML=""),l=t.createEditSession(h),f=new u(new o(n)),f.setSession(l),s={document:l,editor:f,onResize:f.resize.bind(f,null)},e&&(s.textarea=e),r.addListener(window,"resize",s.onResize),f.on("destroy",function(){r.removeListener(window,"resize",s.onResize);s.editor.container.env=null}),f.container.env=f.env=s,f)};t.createEditSession=function(n,t){var i=new f(n,t);return i.setUndoManager(new e),i};t.EditSession=f;t.UndoManager=e;t.version="1.2.5"}),function(){window.require(["ace/ace"],function(n){n&&(n.config.init(!0),n.define=window.define);window.ace||(window.ace=n);for(var t in n)n.hasOwnProperty(t)&&(window.ace[t]=n[t])})}(),function(n,t){typeof define=="function"&&define.amd?define([],t):typeof exports=="object"?module.exports=t(require()):n.AceDiff=t(n)}(this,function(){"use strict";function u(t){this.options={};r(!0,this.options,{mode:null,theme:null,diffGranularity:n.DIFF_GRANULARITY_BROAD,lockScrolling:!1,showDiffs:!0,showConnectors:!0,maxDiffs:5e3,left:{id:"acediff-left-editor",content:null,mode:null,theme:null,editable:!0,copyLinkEnabled:!0},right:{id:"acediff-right-editor",content:null,mode:null,theme:null,editable:!0,copyLinkEnabled:!0},classes:{gutterID:"acediff-gutter",diff:"acediff-diff",connector:"acediff-connector",newCodeConnectorLink:"acediff-new-code-connector-copy",newCodeConnectorLinkContent:"&#8594;",deletedCodeConnectorLink:"acediff-deleted-code-connector-copy",deletedCodeConnectorLinkContent:"&#8592;",copyRightContainer:"acediff-copy-right",copyLeftContainer:"acediff-copy-left"},connectorYOffset:0},t);this.editors={left:{ace:ace.edit(this.options.left.id),markers:[],lineLengths:[]},right:{ace:ace.edit(this.options.right.id),markers:[],lineLengths:[]},editorHeight:null};it(this);this.lineHeight=this.editors.left.ace.renderer.lineHeight;this.editors.left.ace.getSession().setMode(f(this,n.EDITOR_LEFT));this.editors.right.ace.getSession().setMode(f(this,n.EDITOR_RIGHT));this.editors.left.ace.setReadOnly(!this.options.left.editable);this.editors.right.ace.setReadOnly(!this.options.right.editable);this.editors.left.ace.setTheme(e(this,n.EDITOR_LEFT));this.editors.right.ace.setTheme(e(this,n.EDITOR_RIGHT));et(this);b(this);this.options.left.content&&this.editors.left.ace.setValue(this.options.left.content,-1);this.options.right.content&&this.editors.right.ace.setValue(this.options.right.content,-1);this.editors.editorHeight=ct(this);this.diff()}function f(t,i){var r=t.options.mode;return i===n.EDITOR_LEFT&&t.options.left.mode!==null&&(r=t.options.left.mode),i===n.EDITOR_RIGHT&&t.options.right.mode!==null&&(r=t.options.right.mode),r}function e(t,i){var r=t.options.theme;return i===n.EDITOR_LEFT&&t.options.left.theme!==null&&(r=t.options.left.theme),i===n.EDITOR_RIGHT&&t.options.right.theme!==null&&(r=t.options.right.theme),r}function it(t){var f=(new Date).getTime(),e=(new Date).getTime(),i,r,u;t.editors.left.ace.getSession().on("changeScrollTop",function(n){i=(new Date).getTime();e+50<i&&c(t,"left",n)});t.editors.right.ace.getSession().on("changeScrollTop",function(n){i=(new Date).getTime();f+50<i&&c(t,"right",n)});r=t.diff.bind(t);t.editors.left.ace.on("change",r);t.editors.right.ace.on("change",r);t.options.left.copyLinkEnabled&&nt("#"+t.options.classes.gutterID,"click","."+t.options.classes.newCodeConnectorLink,function(i){o(t,i,n.LTR)});t.options.right.copyLinkEnabled&&nt("#"+t.options.classes.gutterID,"click","."+t.options.classes.deletedCodeConnectorLink,function(i){o(t,i,n.RTL)});u=lt(function(){t.editors.availableHeight=document.getElementById(t.options.left.id).offsetHeight;t.diff()},2500);window.addEventListener("resize",u)}function o(t,r,u){var k=parseInt(r.target.getAttribute("data-diff-index"),10),e=t.diffs[k],h,o,c,l,a,v,y,p,s,w,f,b;for(u===n.LTR?(h=t.editors.left,o=t.editors.right,c=e.leftStartLine,l=e.leftEndLine,a=e.rightStartLine,v=e.rightEndLine):(h=t.editors.right,o=t.editors.left,c=e.rightStartLine,l=e.rightEndLine,a=e.leftStartLine,v=e.leftEndLine),y="",f=c;f<l;f++)y+=i(h,f)+"\n";for(p="",f=0;f<a;f++)p+=i(o,f)+"\n";for(s="",w=o.ace.getSession().getLength(),f=v;f<w;f++)s+=i(o,f),f<w-1&&(s+="\n");s=s.replace(/\s*$/,"");b=o.ace.getSession().getScrollTop();o.ace.getSession().setValue(p+y+s);o.ace.getSession().setScrollTop(parseInt(b));t.diff()}function s(n){var i=n.ace.getSession().doc.getAllLines(),t=[];return i.forEach(function(n){t.push(n.length+1)}),t}function h(n,t,i,r,u){var t=n.editors[t],f;r<i&&(r=i);f=u+" "+(r>i?"lines":"targetOnly");r--;t.markers.push(t.ace.session.addMarker(new tt(i,0,r,1),f,"fullLine"))}function c(n){l(n);d(n);ft(n)}function l(n){n.editors.left.markers.forEach(function(n){this.editors.left.ace.getSession().removeMarker(n)},n);n.editors.right.markers.forEach(function(n){this.editors.right.ace.getSession().removeMarker(n)},n)}function rt(t,i,r,u,f){var o=t.editors.left.ace.getSession().getScrollTop(),s=t.editors.right.ace.getSession().getScrollTop();t.connectorYOffset=1;var h=-1,c=i*t.lineHeight-o+.5,l=t.gutterWidth+1,a=u*t.lineHeight-s+.5,v=-1,y=r*t.lineHeight-o+t.connectorYOffset+.5,p=t.gutterWidth+1,w=f*t.lineHeight-s+t.connectorYOffset+.5,b=g(h,c,l,a),k=g(p,w,v,y),d="L"+l+","+a+" "+p+","+w,nt="L"+v+","+y+" "+h+","+c,tt=b+" "+d+" "+k+" "+nt,e=document.createElementNS(n.SVG_NS,"path");e.setAttribute("d",tt);e.setAttribute("class",t.options.classes.connector);t.gutterSVG.appendChild(e)}function ut(n,t,i){var r;t.leftEndLine>t.leftStartLine&&n.options.left.copyLinkEnabled&&(r=w({className:n.options.classes.newCodeConnectorLink,topOffset:t.leftStartLine*n.lineHeight,tooltip:"Copy to right",diffIndex:i,arrowContent:n.options.classes.newCodeConnectorLinkContent}),n.copyRightContainer.appendChild(r));t.rightEndLine>t.rightStartLine&&n.options.right.copyLinkEnabled&&(r=w({className:n.options.classes.deletedCodeConnectorLink,topOffset:t.rightStartLine*n.lineHeight,tooltip:"Copy to left",diffIndex:i,arrowContent:n.options.classes.deletedCodeConnectorLinkContent}),n.copyLeftContainer.appendChild(r))}function ft(n){var t=n.editors.left.ace.getSession().getScrollTop(),i=n.editors.right.ace.getSession().getScrollTop();n.copyRightContainer.style.cssText="top: "+-t+"px";n.copyLeftContainer.style.cssText="top: "+-i+"px"}function a(i,r,u,f,e){var a={},c=/^\n/.test(e),l,h;if(r===n.DIFF_INSERT){var o=v(i.editors.left,u,e),s=y(i.editors.right,f),w=t(i.editors.right,s),g=t(i.editors.left,o.startLine),b=t(i.editors.left,o.startLine),k=s;b===0&&c&&(c=!1);o.startChar===0&&p(i.editors.right,f,c)&&(k=s+1);l=o.startLine===o.endLine;h=0;(o.startChar>0||l&&e.length<g)&&w>0&&o.startChar<g&&h++;a={leftStartLine:o.startLine,leftEndLine:o.endLine+1,rightStartLine:k,rightEndLine:k+h}}else{var o=v(i.editors.right,f,e),s=y(i.editors.left,u),w=t(i.editors.left,s),nt=t(i.editors.right,o.startLine),b=t(i.editors.right,o.startLine),d=s;b===0&&c&&(c=!1);o.startChar===0&&p(i.editors.left,u,c)&&(d=s+1);l=o.startLine===o.endLine;h=0;(o.startChar>0||l&&e.length<nt)&&w>0&&o.startChar<nt&&h++;a={leftStartLine:d,leftEndLine:d+h,rightStartLine:o.startLine,rightEndLine:o.endLine+1}}return a}function v(n,i,r){var u={startLine:0,startChar:0,endLine:0,endChar:0},e=i+r.length,f=0,o=!1,s=!1,h;return n.lineLengths.forEach(function(n,t){f+=n;!o&&i<f&&(u.startLine=t,u.startChar=i-f+n,o=!0);!s&&e<=f&&(u.endLine=t,u.endChar=e-f+n,s=!0)}),u.startChar>0&&t(n,u.startLine)===u.startChar&&(u.startLine++,u.startChar=0),u.endChar===0&&u.endLine--,h=/\n$/.test(r),u.startChar>0&&h&&u.endLine++,u}function t(n,t){return i(n,t).length}function i(n,t){return n.ace.getSession().doc.getLine(t)}function y(n,t){for(var r=n.ace.getSession().doc.getAllLines(),u=0,f=0,i=0;i<r.length;i++)if(f+=r[i].length+1,t<=f){u=i;break}return u}function p(n,t,i){for(var f=n.ace.getSession().doc.getAllLines(),e=0,o=!1,u,r=0;r<f.length;r++)if(e+=f[r].length+1,u=e,i&&u--,t===u){o=!0;break}return o}function w(n){var t=document.createElement("div"),r={"class":n.className,style:"top:"+n.topOffset+"px",title:n.tooltip,"data-diff-index":n.diffIndex},i;for(i in r)t.setAttribute(i,r[i]);return t.innerHTML=n.arrowContent,t}function b(t){t.gutterHeight=document.getElementById(t.options.classes.gutterID).clientHeight;t.gutterWidth=document.getElementById(t.options.classes.gutterID).clientWidth;var i=k(t,n.EDITOR_LEFT),r=k(t,n.EDITOR_RIGHT),u=Math.max(i,r,t.gutterHeight);t.gutterSVG=document.createElementNS(n.SVG_NS,"svg");t.gutterSVG.setAttribute("width",t.gutterWidth);t.gutterSVG.setAttribute("height",u);document.getElementById(t.options.classes.gutterID).appendChild(t.gutterSVG)}function k(t,i){var r=i===n.EDITOR_LEFT?t.editors.left:t.editors.right;return r.ace.getSession().getLength()*t.lineHeight}function et(n){n.copyRightContainer=document.createElement("div");n.copyRightContainer.setAttribute("class",n.options.classes.copyRightContainer);n.copyLeftContainer=document.createElement("div");n.copyLeftContainer.setAttribute("class",n.options.classes.copyLeftContainer);document.getElementById(n.options.classes.gutterID).appendChild(n.copyRightContainer);document.getElementById(n.options.classes.gutterID).appendChild(n.copyLeftContainer)}function ot(n){var t=document.getElementById(n.options.classes.gutterID),i;t!=undefined&&(i=t.getElementsByTagName("svg"),i[0]&&(t.removeChild(i[0]),b(n)))}function st(n){n.copyLeftContainer.innerHTML="";n.copyRightContainer.innerHTML=""}function ht(t,i){function f(i){return t.options.diffGranularity===n.DIFF_GRANULARITY_SPECIFIC?i<1:i<=1}var r=[],u;return i.forEach(function(n,t){var u,i;if(t===0){r.push(n);return}for(u=!1,i=0;i<r.length;i++)if(f(Math.abs(n.leftStartLine-r[i].leftEndLine))&&f(Math.abs(n.rightStartLine-r[i].rightEndLine))){r[i].leftStartLine=Math.min(n.leftStartLine,r[i].leftStartLine);r[i].rightStartLine=Math.min(n.rightStartLine,r[i].rightStartLine);r[i].leftEndLine=Math.max(n.leftEndLine,r[i].leftEndLine);r[i].rightEndLine=Math.max(n.rightEndLine,r[i].rightEndLine);u=!0;break}u||r.push(n)}),u=[],r.forEach(function(n){(n.leftStartLine!==n.leftEndLine||n.rightStartLine!==n.rightEndLine)&&u.push(n)}),u}function d(t){ot(t);st(t);t.diffs.forEach(function(t,i){this.options.showDiffs&&(h(this,n.EDITOR_LEFT,t.leftStartLine,t.leftEndLine,this.options.classes.diff),h(this,n.EDITOR_RIGHT,t.rightStartLine,t.rightEndLine,this.options.classes.diff),this.options.showConnectors&&rt(this,t.leftStartLine,t.leftEndLine,t.rightStartLine,t.rightEndLine),ut(this,t,i))},t)}function r(){var o,e,u,t,s,h,n=arguments[0]||{},f=1,a=arguments.length,c=!1,v=Object.prototype.toString,l=Object.prototype.hasOwnProperty,y={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object"},i={isFunction:function(n){return i.type(n)==="function"},isArray:Array.isArray||function(n){return i.type(n)==="array"},isWindow:function(n){return n!==null&&n===n.window},isNumeric:function(n){return!isNaN(parseFloat(n))&&isFinite(n)},type:function(n){return n===null?String(n):y[v.call(n)]||"object"},isPlainObject:function(n){if(!n||i.type(n)!=="object"||n.nodeType)return!1;try{if(n.constructor&&!l.call(n,"constructor")&&!l.call(n.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}var t;for(t in n);return t===undefined||l.call(n,t)}};for(typeof n=="boolean"&&(c=n,n=arguments[1]||{},f=2),typeof n=="object"||i.isFunction(n)||(n={}),a===f&&(n=this,--f),f;f<a;f++)if((o=arguments[f])!==null)for(e in o)(u=n[e],t=o[e],n!==t)&&(c&&t&&(i.isPlainObject(t)||(s=i.isArray(t)))?(s?(s=!1,h=u&&i.isArray(u)?u:[]):h=u&&i.isPlainObject(u)?u:{},n[e]=r(c,h,t)):t!==undefined&&(n[e]=t));return n}function ct(n){return document.getElementById(n.options.left.id).offsetHeight}function g(n,t,i,r){var f=i-n,u=n+f/2;return"M "+n+" "+t+" C "+u+","+t+" "+u+","+r+" "+i+","+r}function nt(n,t,i,r){var u=n==="document"?document:document.querySelector(n);u.addEventListener(t,function(n){for(var o=u.querySelectorAll(i),h=n.target,t,e,f=0,s=o.length;f<s;f++)for(t=h,e=o[f];t&&t!==u;){if(t===e)return r.call(e,n);t=t.parentNode}})}function lt(n,t,i){var r;return function(){var u=this,f=arguments,e=function(){r=null;i||n.apply(u,f)},o=i&&!r;clearTimeout(r);r=setTimeout(e,t);o&&n.apply(u,f)}}var tt=require("ace/range").Range,n={DIFF_EQUAL:0,DIFF_DELETE:-1,DIFF_INSERT:1,EDITOR_RIGHT:"right",EDITOR_LEFT:"left",RTL:"rtl",LTR:"ltr",SVG_NS:"http://www.w3.org/2000/svg",DIFF_GRANULARITY_SPECIFIC:"specific",DIFF_GRANULARITY_BROAD:"broad"};return u.prototype={setOptions:function(n){r(!0,this.options,n);this.diff()},getNumDiffs:function(){return this.diffs.length},getEditors:function(){return{left:this.editors.left.ace,right:this.editors.right.ace}},diff:function(){var r=new diff_match_patch,f=this.editors.left.ace.getSession().getValue(),e=this.editors.right.ace.getSession().getValue(),u=r.diff_main(e,f),i,t;(r.diff_cleanupSemantic(u),this.editors.left.lineLengths=s(this.editors.left),this.editors.right.lineLengths=s(this.editors.right),i=[],t={left:0,right:0},u.forEach(function(r){var f=r[0],u=r[1];u.length!==0&&(f===n.DIFF_EQUAL?(t.left+=u.length,t.right+=u.length):f===n.DIFF_DELETE?(i.push(a(this,n.DIFF_DELETE,t.left,t.right,u)),t.right+=u.length):f===n.DIFF_INSERT&&(i.push(a(this,n.DIFF_INSERT,t.left,t.right,u)),t.left+=u.length))},this),this.diffs=ht(this,i),this.diffs.length>this.options.maxDiffs)||(l(this),d(this))},destroy:function(){var r=this.editors.left.ace.getValue(),n,t,i;this.editors.left.ace.destroy();n=this.editors.left.ace.container;t=n.cloneNode(!1);t.textContent=r;n.parentNode.replaceChild(t,n);i=this.editors.right.ace.getValue();this.editors.right.ace.destroy();n=this.editors.right.ace.container;t=n.cloneNode(!1);t.textContent=i;n.parentNode.replaceChild(t,n);document.getElementById(this.options.classes.gutterID).innerHTML=""}},u}),function(n){function v(n){return ot.call(n)==="[object Function]"}function y(n){return ot.call(n)==="[object Array]"}function o(n,t){if(n)for(var i=0;i<n.length;i+=1)if(n[i]&&t(n[i],i,n))break}function lt(n,t){if(n)for(var i=n.length-1;i>-1;i-=1)if(n[i]&&t(n[i],i,n))break}function r(n,t){return bt.call(n,t)}function i(n,t){return r(n,t)&&n[t]}function c(n,t){var i;for(i in n)if(r(n,i)&&t(n[i],i))break}function nt(n,t,i,u){return t&&c(t,function(t,f){(i||!r(n,f))&&(u&&typeof t!="string"?(n[f]||(n[f]={}),nt(n[f],t,i,u)):n[f]=t)}),n}function u(n,t){return function(){return t.apply(n,arguments)}}function rt(){return document.getElementsByTagName("script")}function at(n){throw n;}function vt(t){if(!t)return t;var i=n;return o(t.split("."),function(n){i=i[n]}),i}function h(n,t,i,r){var u=new Error(t+"\nhttp://requirejs.org/docs/errors.html#"+n);return u.requireType=n,u.requireModules=r,i&&(u.originalError=i),u}function ni(f){function vi(n){for(var i,t=0;n[t];t+=1)if(i=n[t],i===".")n.splice(t,1),t-=1;else if(i==="..")if(t===1&&(n[2]===".."||n[0]===".."))break;else t>0&&(n.splice(t-1,2),t-=2)}function it(n,t,r){var p,w,f,s,e,h,c,o,b,a,k,u=t&&t.split("/"),d=u,v=l.map,y=v&&v["*"];if(n&&n.charAt(0)==="."&&(t?(d=i(l.pkgs,t)?u=[t]:u.slice(0,u.length-1),n=d.concat(n.split("/")),vi(n),w=i(l.pkgs,p=n[0]),n=n.join("/"),w&&n===p+"/"+w.main&&(n=p)):n.indexOf("./")===0&&(n=n.substring(2))),r&&v&&(u||y)){for(s=n.split("/"),e=s.length;e>0;e-=1){if(c=s.slice(0,e).join("/"),u)for(h=u.length;h>0;h-=1)if(f=i(v,u.slice(0,h).join("/")),f&&(f=i(f,c),f)){o=f;b=e;break}if(o)break;!a&&y&&i(y,c)&&(a=i(y,c),k=e)}!o&&a&&(o=a,b=k);o&&(s.splice(0,b,o),n=s.join("/"))}return n}function fi(n){e&&o(rt(),function(t){if(t.getAttribute("data-requiremodule")===n&&t.getAttribute("data-requirecontext")===s.contextName)return t.parentNode.removeChild(t),!0})}function ni(n){var t=i(l.paths,n);if(t&&y(t)&&t.length>1)return fi(n),t.shift(),s.require.undef(n),s.require([n]),!0}function ei(n){var i,t=n?n.indexOf("!"):-1;return t>-1&&(i=n.substring(0,t),n=n.substring(t+1,n.length)),[i,n]}function k(n,t,r,u){var a,h,l,o,f=null,c=t?t.name:null,y=n,v=!0,e="";return n||(v=!1,n="_@r"+(li+=1)),o=ei(n),f=o[0],n=o[1],f&&(f=it(f,c,u),h=i(w,f)),n&&(f?e=h&&h.normalize?h.normalize(n,function(n){return it(n,c,u)}):it(n,c,u):(e=it(n,c,u),o=ei(e),f=o[0],e=o[1],r=!0,a=s.nameToUrl(e))),l=f&&!h&&!r?"_unnormalized"+(ai+=1):"",{prefix:f,name:e,parentMap:t,unnormalized:!!l,url:a,originalName:y,isDefine:v,id:(f?f+"!"+e:e)+l}}function et(n){var r=n.id,t=i(p,r);return t||(t=p[r]=new s.Module(n)),t}function ht(n,t,u){var e=n.id,f=i(p,e);if(r(w,e)&&(!f||f.defineEmitComplete))t==="defined"&&u(w[e]);else if(f=et(n),f.error&&t==="error")u(f.error);else f.on(t,u)}function d(n,r){var f=n.requireModules,u=!1;if(r)r(n);else if(o(f,function(t){var r=i(p,t);r&&(r.error=n,r.events.error&&(u=!0,r.emit("error",n)))}),!u)t.onError(n)}function ti(){g.length&&(dt.apply(tt,[tt.length-1,0].concat(g)),g=[])}function ii(n){delete p[n];delete bt[n]}function oi(n,t,r){var u=n.map.id;n.error?n.emit("error",n.error):(t[u]=!0,o(n.depMaps,function(u,f){var e=u.id,o=i(p,e);!o||n.depMatched[f]||r[e]||(i(t,e)?(n.defineDep(f,w[e]),n.check()):oi(o,t,r))}),r[u]=!0)}function ri(){var n,t,r,a,v=l.waitSeconds*1e3,u=v&&s.startTime+v<(new Date).getTime(),i=[],y=[],f=!1,p=!0;if(!lt){if(lt=!0,c(bt,function(r){if((n=r.map,t=n.id,r.enabled)&&(n.isDefine||y.push(r),!r.error))if(!r.inited&&u)ni(t)?(a=!0,f=!0):(i.push(t),fi(t));else if(!r.inited&&r.fetched&&n.isDefine&&(f=!0,!n.prefix))return p=!1}),u&&i.length)return r=h("timeout","Load timeout for modules: "+i,null,i),r.contextName=s.contextName,d(r);p&&o(y,function(n){oi(n,{},{})});(!u||a)&&f&&(e||st)&&!pt&&(pt=setTimeout(function(){pt=0;ri()},50));lt=!1}}function ui(n){r(w,n[0])||et(k(n[0],null,!0)).init(n[1],n[2])}function si(n,t,i,r){n.detachEvent&&!ct?r&&n.detachEvent(r,t):n.removeEventListener(i,t,!1)}function hi(n){var t=n.currentTarget||n.srcElement;return si(t,s.onScriptLoad,"load","onreadystatechange"),si(t,s.onScriptError,"error"),{node:t,id:t&&t.getAttribute("data-requiremodule")}}function ci(){var n;for(ti();tt.length;){if(n=tt.shift(),n[0]===null)return d(h("mismatch","Mismatched anonymous define() module: "+n[n.length-1]));ui(n)}}var lt,yt,s,ut,pt,l={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},p={},bt={},kt={},tt=[],w={},ot={},li=1,ai=1;return ut={require:function(n){return n.require?n.require:n.require=s.makeRequire(n.map)},exports:function(n){return n.usingExports=!0,n.map.isDefine?n.exports?n.exports:n.exports=w[n.map.id]={}:void 0},module:function(n){return n.module?n.module:n.module={id:n.map.id,uri:n.map.url,config:function(){var t,r=i(l.pkgs,n.map.id);return t=r?i(l.config,n.map.id+"/"+r.main):i(l.config,n.map.id),t||{}},exports:w[n.map.id]}}},yt=function(n){this.events=i(kt,n.id)||{};this.map=n;this.shim=i(l.shim,n.id);this.depExports=[];this.depMaps=[];this.depMatched=[];this.pluginMaps={};this.depCount=0},yt.prototype={init:function(n,t,i,r){if(r=r||{},!this.inited){if(this.factory=t,i)this.on("error",i);else this.events.error&&(i=u(this,function(n){this.emit("error",n)}));this.depMaps=n&&n.slice(0);this.errback=i;this.inited=!0;this.ignore=r.ignore;r.enabled||this.enabled?this.enable():this.check()}},defineDep:function(n,t){this.depMatched[n]||(this.depMatched[n]=!0,this.depCount-=1,this.depExports[n]=t)},fetch:function(){if(!this.fetched){this.fetched=!0;s.startTime=(new Date).getTime();var n=this.map;if(this.shim)s.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],u(this,function(){return n.prefix?this.callPlugin():this.load()}));else return n.prefix?this.callPlugin():this.load()}},load:function(){var n=this.map.url;ot[n]||(ot[n]=!0,s.load(this.map.id,n))},check:function(){if(this.enabled&&!this.enabling){var i,r,u=this.map.id,e=this.depExports,n=this.exports,f=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(v(f)){if(this.events.error&&this.map.isDefine||t.onError!==at)try{n=s.execCb(u,f,e,n)}catch(o){i=o}else n=s.execCb(u,f,e,n);if(this.map.isDefine&&(r=this.module,r&&r.exports!==undefined&&r.exports!==this.exports?n=r.exports:n===undefined&&this.usingExports&&(n=this.exports)),i)return i.requireMap=this.map,i.requireModules=this.map.isDefine?[this.map.id]:null,i.requireType=this.map.isDefine?"define":"require",d(this.error=i)}else n=f;if(this.exports=n,this.map.isDefine&&!this.ignore&&(w[u]=n,t.onResourceLoad))t.onResourceLoad(s,this.map,this.depMaps);ii(u);this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var n=this.map,f=n.id,e=k(n.prefix);this.depMaps.push(e);ht(e,"defined",u(this,function(e){var o,a,v,y=this.map.name,g=this.map.parentMap?this.map.parentMap.name:null,w=s.makeRequire(n.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(e.normalize&&(y=e.normalize(y,function(n){return it(n,g,!0)})||""),a=k(n.prefix+"!"+y,this.map.parentMap),ht(a,"defined",u(this,function(n){this.init([],function(){return n},null,{enabled:!0,ignore:!0})})),v=i(p,a.id),v){if(this.depMaps.push(a),this.events.error)v.on("error",u(this,function(n){this.emit("error",n)}));v.enable()}return}o=u(this,function(n){this.init([],function(){return n},null,{enabled:!0})});o.error=u(this,function(n){this.inited=!0;this.error=n;n.requireModules=[f];c(p,function(n){n.map.id.indexOf(f+"_unnormalized")===0&&ii(n.map.id)});d(n)});o.fromText=u(this,function(i,u){var e=n.name,c=k(e),a=b;u&&(i=u);a&&(b=!1);et(c);r(l.config,f)&&(l.config[e]=l.config[f]);try{t.exec(i)}catch(v){return d(h("fromtexteval","fromText eval for "+f+" failed: "+v,v,[f]))}a&&(b=!0);this.depMaps.push(c);s.completeLoad(e);w([e],o)});e.load(n.name,w,o,l)}));s.enable(e,this);this.pluginMaps[e.id]=e},enable:function(){bt[this.map.id]=this;this.enabled=!0;this.enabling=!0;o(this.depMaps,u(this,function(n,t){var f,e,o;if(typeof n=="string"){if(n=k(n,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[t]=n,o=i(ut,n.id),o){this.depExports[t]=o(this);return}this.depCount+=1;ht(n,"defined",u(this,function(n){this.defineDep(t,n);this.check()}));this.errback&&ht(n,"error",u(this,this.errback))}f=n.id;e=p[f];r(ut,f)||!e||e.enabled||s.enable(n,this)}));c(this.pluginMaps,u(this,function(n){var t=i(p,n.id);t&&!t.enabled&&s.enable(n,this)}));this.enabling=!1;this.check()},on:function(n,t){var i=this.events[n];i||(i=this.events[n]=[]);i.push(t)},emit:function(n,t){o(this.events[n],function(n){n(t)});n==="error"&&delete this.events[n]}},s={config:l,contextName:f,registry:p,defined:w,urlFetched:ot,defQueue:tt,Module:yt,makeModuleMap:k,nextTick:t.nextTick,onError:d,configure:function(n){n.baseUrl&&n.baseUrl.charAt(n.baseUrl.length-1)!=="/"&&(n.baseUrl+="/");var t=l.pkgs,i=l.shim,r={paths:!0,config:!0,map:!0};c(n,function(n,t){r[t]?t==="map"?(l.map||(l.map={}),nt(l[t],n,!0,!0)):nt(l[t],n,!0):l[t]=n});n.shim&&(c(n.shim,function(n,t){y(n)&&(n={deps:n});(n.exports||n.init)&&!n.exportsFn&&(n.exportsFn=s.makeShimExports(n));i[t]=n}),l.shim=i);n.packages&&(o(n.packages,function(n){var i;n=typeof n=="string"?{name:n}:n;i=n.location;t[n.name]={name:n.name,location:i||n.name,main:(n.main||"main").replace(wt,"").replace(ft,"")}}),l.pkgs=t);c(p,function(n,t){n.inited||n.map.unnormalized||(n.map=k(t))});(n.deps||n.callback)&&s.require(n.deps||[],n.callback)},makeShimExports:function(t){function i(){var i;return t.init&&(i=t.init.apply(n,arguments)),i||t.exports&&vt(t.exports)}return i},makeRequire:function(n,u){function o(i,e,c){var l,y,a;return(u.enableBuildCallback&&e&&v(e)&&(e.__requireJsBuild=!0),typeof i=="string")?v(e)?d(h("requireargs","Invalid require call"),c):n&&r(ut,i)?ut[i](p[n.id]):t.get?t.get(s,i,n,o):(y=k(i,n,!1,!0),l=y.id,!r(w,l))?d(h("notloaded",'Module name "'+l+'" has not been loaded yet for context: '+f+(n?"":". Use require([])"))):w[l]:(ci(),s.nextTick(function(){ci();a=et(k(null,n));a.skipMap=u.skipMap;a.init(i,e,c,{enabled:!0});ri()}),o)}return u=u||{},nt(o,{isBrowser:e,toUrl:function(t){var r,i=t.lastIndexOf("."),u=t.split("/")[0],f=u==="."||u==="..";return i!==-1&&(!f||i>1)&&(r=t.substring(i,t.length),t=t.substring(0,i)),s.nameToUrl(it(t,n&&n.id,!0),r,!0)},defined:function(t){return r(w,k(t,n,!1,!0).id)},specified:function(t){return t=k(t,n,!1,!0).id,r(w,t)||r(p,t)}}),n||(o.undef=function(t){ti();var u=k(t,n,!0),r=i(p,t);delete w[t];delete ot[u.url];delete kt[t];r&&(r.events.defined&&(kt[t]=r.events),ii(t))}),o},enable:function(n){var t=i(p,n.id);t&&et(n).enable()},completeLoad:function(n){var u,t,f,e=i(l.shim,n)||{},o=e.exports;for(ti();tt.length;){if(t=tt.shift(),t[0]===null){if(t[0]=n,u)break;u=!0}else t[0]===n&&(u=!0);ui(t)}if(f=i(p,n),!u&&!r(w,n)&&f&&!f.inited)if(!l.enforceDefine||o&&vt(o))ui([n,e.deps||[],e.exportsFn]);else return ni(n)?void 0:d(h("nodefine","No define call for "+n,null,[n]));ri()},nameToUrl:function(n,r,u){var a,v,e,p,o,s,c,f,h;if(t.jsExtRegExp.test(n))f=n+(r||"");else{for(a=l.paths,v=l.pkgs,o=n.split("/"),s=o.length;s>0;s-=1)if(c=o.slice(0,s).join("/"),e=i(v,c),h=i(a,c),h){y(h)&&(h=h[0]);o.splice(0,s,h);break}else if(e){p=n===e.name?e.location+"/"+e.main:e.location;o.splice(0,s,p);break}f=o.join("/");f+=r||(/\?/.test(f)||u?"":".js");f=(f.charAt(0)==="/"||f.match(/^[\w\+\.\-]+:/)?"":l.baseUrl)+f}return l.urlArgs?f+((f.indexOf("?")===-1?"?":"&")+l.urlArgs):f},load:function(n,i){t.load(s,n,i)},execCb:function(n,t,i,r){return t.apply(r,i)},onScriptLoad:function(n){if(n.type==="load"||gt.test((n.currentTarget||n.srcElement).readyState)){a=null;var t=hi(n);s.completeLoad(t.id)}},onScriptError:function(n){var t=hi(n);if(!ni(t.id))return d(h("scripterror","Script error for: "+t.id,n,[t.id]))}},s.require=s.makeRequire(),s}function ti(){return a&&a.readyState==="interactive"?a:(lt(rt(),function(n){if(n.readyState==="interactive")return a=n}),a)}var t,tt,l,p,k,d,a,it,f,ut,yt=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,pt=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,ft=/\.js$/,wt=/^\.\//,et=Object.prototype,ot=et.toString,bt=et.hasOwnProperty,kt=Array.prototype,dt=kt.splice,e=!!(typeof window!="undefined"&&navigator&&window.document),st=!e&&typeof importScripts!="undefined",gt=e&&navigator.platform==="PLAYSTATION 3"?/^complete$/:/^(complete|loaded)$/,ht="_",ct=typeof opera!="undefined"&&opera.toString()==="[object Opera]",w={},s={},g=[],b=!1;if(typeof define=="undefined"){if(typeof requirejs!="undefined"){if(v(requirejs))return;s=requirejs;requirejs=undefined}typeof require=="undefined"||v(require)||(s=require,require=undefined);t=requirejs=function(n,r,u,f){var o,e,s=ht;return y(n)||typeof n=="string"||(e=n,y(r)?(n=r,r=u,u=f):n=[]),e&&e.context&&(s=e.context),o=i(w,s),o||(o=w[s]=t.s.newContext(s)),e&&o.configure(e),o.require(n,r,u)};t.config=function(n){return t(n)};t.nextTick=typeof setTimeout!="undefined"?function(n){setTimeout(n,4)}:function(n){n()};require||(require=t);t.version="2.1.8";t.jsExtRegExp=/^\/|:|\?|\.js$/;t.isBrowser=e;tt=t.s={contexts:w,newContext:ni};t({});o(["toUrl","undef","defined","specified"],function(n){t[n]=function(){var t=w[ht];return t.require[n].apply(t,arguments)}});e&&(l=tt.head=document.getElementsByTagName("head")[0],p=document.getElementsByTagName("base")[0],p&&(l=tt.head=p.parentNode));t.onError=at;t.createNode=function(n){var t=n.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return t.type=n.scriptType||"text/javascript",t.charset="utf-8",t.async=!0,t};t.load=function(n,i,r){var f=n&&n.config||{},u;if(e)return u=t.createNode(f,i,r),u.setAttribute("data-requirecontext",n.contextName),u.setAttribute("data-requiremodule",i),!u.attachEvent||u.attachEvent.toString&&u.attachEvent.toString().indexOf("[native code")<0||ct?(u.addEventListener("load",n.onScriptLoad,!1),u.addEventListener("error",n.onScriptError,!1)):(b=!0,u.attachEvent("onreadystatechange",n.onScriptLoad)),u.src=r,it=u,p?l.insertBefore(u,p):l.appendChild(u),it=null,u;if(st)try{importScripts(r);n.completeLoad(i)}catch(o){n.onError(h("importscripts","importScripts failed for "+i+" at "+r,o,[i]))}};e&&lt(rt(),function(n){return l||(l=n.parentNode),k=n.getAttribute("data-main"),k?(f=k,s.baseUrl||(d=f.split("/"),f=d.pop(),ut=d.length?d.join("/")+"/":"./",s.baseUrl=ut),f=f.replace(ft,""),t.jsExtRegExp.test(f)&&(f=k),s.deps=s.deps?s.deps.concat(f):[f],!0):void 0});define=function(n,t,i){var r,u;typeof n!="string"&&(i=t,t=n,n=null);y(t)||(i=t,t=null);!t&&v(i)&&(t=[],i.length&&(i.toString().replace(yt,"").replace(pt,function(n,i){t.push(i)}),t=(i.length===1?["require"]:["require","exports","module"]).concat(t)));b&&(r=it||ti(),r&&(n||(n=r.getAttribute("data-requiremodule")),u=w[r.getAttribute("data-requirecontext")]));(u?u.defQueue:g).push([n,t,i])};define.amd={jQuery:!0};t.exec=function(text){return eval(text)};t(s)}}(this),function(n){"use strict";var t=function(t,i){this.options=i;this.$elementFilestyle=[];this.$element=n(t)},i;t.prototype={clear:function(){this.$element.val("");this.$elementFilestyle.find(":text").val("");this.$elementFilestyle.find(".badge").remove()},destroy:function(){this.$element.removeAttr("style").removeData("filestyle").val("");this.$elementFilestyle.remove()},disabled:function(n){if(n===!0)this.options.disabled||(this.$element.attr("disabled","true"),this.$elementFilestyle.find("label").attr("disabled","true"),this.options.disabled=!0);else if(n===!1)this.options.disabled&&(this.$element.removeAttr("disabled"),this.$elementFilestyle.find("label").removeAttr("disabled"),this.options.disabled=!1);else return this.options.disabled},buttonBefore:function(n){if(n===!0)this.options.buttonBefore||(this.options.buttonBefore=!0,this.options.input&&(this.$elementFilestyle.remove(),this.constructor(),this.pushNameFiles()));else if(n===!1)this.options.buttonBefore&&(this.options.buttonBefore=!1,this.options.input&&(this.$elementFilestyle.remove(),this.constructor(),this.pushNameFiles()));else return this.options.buttonBefore},icon:function(n){if(n===!0)this.options.icon||(this.options.icon=!0,this.$elementFilestyle.find("label").prepend(this.htmlIcon()));else if(n===!1)this.options.icon&&(this.options.icon=!1,this.$elementFilestyle.find(".glyphicon").remove());else return this.options.icon},input:function(n){if(n===!0)this.options.input||(this.options.input=!0,this.options.buttonBefore?this.$elementFilestyle.append(this.htmlInput()):this.$elementFilestyle.prepend(this.htmlInput()),this.$elementFilestyle.find(".badge").remove(),this.pushNameFiles(),this.$elementFilestyle.find(".group-span-filestyle").addClass("input-group-btn"));else if(n===!1){if(this.options.input){this.options.input=!1;this.$elementFilestyle.find(":text").remove();var t=this.pushNameFiles();t.length>0&&this.options.badge&&this.$elementFilestyle.find("label").append(' <span class="badge">'+t.length+"<\/span>");this.$elementFilestyle.find(".group-span-filestyle").removeClass("input-group-btn")}}else return this.options.input},size:function(n){if(n!==undefined){var t=this.$elementFilestyle.find("label"),i=this.$elementFilestyle.find("input");t.removeClass("btn-lg btn-sm");i.removeClass("input-lg input-sm");n!="nr"&&(t.addClass("btn-"+n),i.addClass("input-"+n))}else return this.options.size},buttonText:function(n){if(n!==undefined)this.options.buttonText=n,this.$elementFilestyle.find("label span").html(this.options.buttonText);else return this.options.buttonText},buttonName:function(n){if(n!==undefined)this.options.buttonName=n,this.$elementFilestyle.find("label").attr({"class":"btn "+this.options.buttonName});else return this.options.buttonName},iconName:function(n){if(n!==undefined)this.$elementFilestyle.find(".glyphicon").attr({"class":".glyphicon "+this.options.iconName});else return this.options.iconName},htmlIcon:function(){return this.options.icon?'<span class="glyphicon '+this.options.iconName+'"><\/span> ':""},htmlInput:function(){return this.options.input?'<input type="text" class="form-control '+(this.options.size=="nr"?"":"input-"+this.options.size)+'" disabled> ':""},pushNameFiles:function(){var i="",n=[],t;for(this.$element[0].files===undefined?n[0]={name:this.$element[0]&&this.$element[0].value}:n=this.$element[0].files,t=0;t<n.length;t++)i+=n[t].name.split("\\").pop()+", ";return i!==""?this.$elementFilestyle.find(":text").val(i.replace(/\, $/g,"")):this.$elementFilestyle.find(":text").val(""),n},constructor:function(){var t=this,u="",i=t.$element.attr("id"),r="";i!==""&&i||(i="filestyle-"+n(".bootstrap-filestyle").length,t.$element.attr({id:i}));r='<span class="group-span-filestyle '+(t.options.input?"input-group-btn":"")+'"><label for="'+i+'" class="btn '+t.options.buttonName+" "+(t.options.size=="nr"?"":"btn-"+t.options.size)+'" '+(t.options.disabled?'disabled="true"':"")+">"+t.htmlIcon()+t.options.buttonText+"<\/label><\/span>";u=t.options.buttonBefore?r+t.htmlInput():t.htmlInput()+r;t.$elementFilestyle=n('<div class="bootstrap-filestyle input-group">'+u+"<\/div>");t.$elementFilestyle.find(".group-span-filestyle").attr("tabindex","0").keypress(function(n){if(n.keyCode===13||n.charCode===32)return t.$elementFilestyle.find("label").click(),!1});t.$element.css({position:"absolute",clip:"rect(0px 0px 0px 0px)"}).attr("tabindex","-1").after(t.$elementFilestyle);t.options.disabled&&t.$element.attr("disabled","true");t.$element.change(function(){var n=t.pushNameFiles();t.options.input==!1&&t.options.badge?t.$elementFilestyle.find(".badge").length==0?t.$elementFilestyle.find("label").append(' <span class="badge">'+n.length+"<\/span>"):n.length==0?t.$elementFilestyle.find(".badge").remove():t.$elementFilestyle.find(".badge").html(n.length):t.$elementFilestyle.find(".badge").remove()});window.navigator.userAgent.search(/firefox/i)>-1&&t.$elementFilestyle.find("label").click(function(){return t.$element.click(),!1})}};i=n.fn.filestyle;n.fn.filestyle=function(i,r){var u="",f=this.each(function(){if(n(this).attr("type")==="file"){var e=n(this),f=e.data("filestyle"),o=n.extend({},n.fn.filestyle.defaults,i,typeof i=="object"&&i);f||(e.data("filestyle",f=new t(this,o)),f.constructor());typeof i=="string"&&(u=f[i](r))}});return typeof u!==undefined?u:f};n.fn.filestyle.defaults={buttonText:"Choose file",iconName:"glyphicon-folder-open",buttonName:"btn-default",size:"nr",input:!0,badge:!0,icon:!0,buttonBefore:!1,disabled:!1};n.fn.filestyle.noConflict=function(){return n.fn.filestyle=i,this};n(function(){n(".filestyle").each(function(){var t=n(this),i={input:t.attr("data-input")==="false"?!1:!0,icon:t.attr("data-icon")==="false"?!1:!0,buttonBefore:t.attr("data-buttonBefore")==="true"?!0:!1,disabled:t.attr("data-disabled")==="true"?!0:!1,size:t.attr("data-size"),buttonText:t.attr("data-buttonText"),buttonName:t.attr("data-buttonName"),iconName:t.attr("data-iconName"),badge:t.attr("data-badge")==="false"?!1:!0};t.filestyle(i)})})}(window.jQuery);window.matchMedia=window.matchMedia||function(n){var u,i=n.documentElement,f=i.firstElementChild||i.firstChild,r=n.createElement("body"),t=n.createElement("div");return t.id="mq-test-1",t.style.cssText="position:absolute;top:-100em",r.style.background="none",r.appendChild(t),function(n){return t.innerHTML='&shy;<style media="'+n+'"> #mq-test-1 { width: 42px; }<\/style>',i.insertBefore(r,f),u=t.offsetWidth==42,i.removeChild(r),{matches:u,media:n}}}(document),function(n){function d(){a(!0)}if(n.respond={},respond.update=function(){},respond.mediaQueriesSupported=n.matchMedia&&n.matchMedia("only all").matches,!respond.mediaQueriesSupported){var t=n.document,i=t.documentElement,e=[],u=[],r=[],o={},v=30,f=t.getElementsByTagName("head")[0]||i,g=t.getElementsByTagName("base")[0],s=f.getElementsByTagName("link"),h=[],y=function(){for(var f=s,c=f.length,r=0,t,i,u,e;r<c;r++)t=f[r],i=t.href,u=t.media,e=t.rel&&t.rel.toLowerCase()==="stylesheet",!i||!e||o[i]||(t.styleSheet&&t.styleSheet.rawCssText?(w(t.styleSheet.rawCssText,i,u),o[i]=!0):(/^([a-zA-Z:]*\/\/)/.test(i)||g)&&i.replace(RegExp.$1,"").split("/")[0]!==n.location.host||h.push({href:i,media:u}));p()},p=function(){if(h.length){var n=h.shift();nt(n.href,function(t){w(t,n.href,n.media);o[n.href]=!0;p()})}},w=function(n,t,i){var o=n.match(/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi),s=o&&o.length||0,t=t.substring(0,t.lastIndexOf("/")),v=function(n){return n.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+t+"$2$3")},y=!s&&i,h=0,f,c,r,l,p;for(t.length&&(t+="/"),y&&(s=1);h<s;h++)for(f=0,y?(c=i,u.push(v(n))):(c=o[h].match(/@media *([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1,u.push(RegExp.$2&&v(RegExp.$2))),l=c.split(","),p=l.length;f<p;f++)r=l[f],e.push({media:r.split("(")[0].match(/(only\s+)?([a-zA-Z]+)\s?/)&&RegExp.$2||"all",rules:u.length-1,hasquery:r.indexOf("(")>-1,minw:r.match(/\(min\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:r.match(/\(max\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||"")});a()},c,b,k=function(){var u,r=t.createElement("div"),n=t.body,f=!1;return r.style.cssText="position:absolute;font-size:1em;width:1em",n||(n=f=t.createElement("body"),n.style.background="none"),n.appendChild(r),i.insertBefore(n,i.firstChild),u=r.offsetWidth,f?i.removeChild(n):n.removeChild(r),l=parseFloat(u)},l,a=function(n){var nt="clientWidth",tt=i[nt],it=t.compatMode==="CSS1Compat"&&tt||t.body[nt]||tt,d={},ot=s[s.length-1],rt=(new Date).getTime(),o,h,g;if(n&&c&&rt-c<v){clearTimeout(b);b=setTimeout(a,v);return}c=rt;for(o in e){var y=e[o],p=y.minw,w=y.maxw,ut=p===null,ft=w===null,et="em";!p||(p=parseFloat(p)*(p.indexOf(et)>-1?l||k():1));!w||(w=parseFloat(w)*(w.indexOf(et)>-1?l||k():1));y.hasquery&&(ut&&ft||!(ut||it>=p)||!(ft||it<=w))||(d[y.media]||(d[y.media]=[]),d[y.media].push(u[y.rules]))}for(o in r)r[o]&&r[o].parentNode===f&&f.removeChild(r[o]);for(o in d)h=t.createElement("style"),g=d[o].join("\n"),h.type="text/css",h.media=o,f.insertBefore(h,ot.nextSibling),h.styleSheet?h.styleSheet.cssText=g:h.appendChild(t.createTextNode(g)),r.push(h)},nt=function(n,t){var i=tt();i&&(i.open("GET",n,!0),i.onreadystatechange=function(){i.readyState==4&&(i.status==200||i.status==304)&&t(i.responseText)},i.readyState!=4)&&i.send(null)},tt=function(){var n=!1;try{n=new XMLHttpRequest}catch(t){n=new ActiveXObject("Microsoft.XMLHTTP")}return function(){return n}}();y();respond.update=y;n.addEventListener?n.addEventListener("resize",d,!1):n.attachEvent&&n.attachEvent("onresize",d)}}(this),function(n,t){typeof exports=="object"&&typeof module!="undefined"?module.exports=t():typeof define=="function"&&define.amd?define(t):n.moment=t()}(this,function(){"use strict";function t(){return af.apply(null,arguments)}function gs(n){af=n}function tt(n){return n instanceof Array||Object.prototype.toString.call(n)==="[object Array]"}function li(n){return n!=null&&Object.prototype.toString.call(n)==="[object Object]"}function nh(n){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(n).length===0;var t;for(t in n)if(n.hasOwnProperty(t))return!1;return!0}function p(n){return n===void 0}function dt(n){return typeof n=="number"||Object.prototype.toString.call(n)==="[object Number]"}function gi(n){return n instanceof Date||Object.prototype.toString.call(n)==="[object Date]"}function vf(n,t){for(var r=[],i=0;i<n.length;++i)r.push(t(n[i],i));return r}function l(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function yt(n,t){for(var i in t)l(t,i)&&(n[i]=t[i]);return l(t,"toString")&&(n.toString=t.toString),l(t,"valueOf")&&(n.valueOf=t.valueOf),n}function et(n,t,i,r){return yo(n,t,i,r,!0).utc()}function th(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function u(n){return n._pf==null&&(n._pf=th()),n._pf}function tu(n){if(n._isValid==null){var t=u(n),r=yf.call(t.parsedDateParts,function(n){return n!=null}),i=!isNaN(n._d.getTime())&&t.overflow<0&&!t.empty&&!t.invalidMonth&&!t.invalidWeekday&&!t.weekdayMismatch&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&r);if(n._strict&&(i=i&&t.charsLeftOver===0&&t.unusedTokens.length===0&&t.bigHour===undefined),Object.isFrozen!=null&&Object.isFrozen(n))return i;n._isValid=i}return n._isValid}function nr(n){var t=et(NaN);return n!=null?yt(u(t),n):u(t).userInvalidated=!0,t}function iu(n,t){var i,r,f;if(p(t._isAMomentObject)||(n._isAMomentObject=t._isAMomentObject),p(t._i)||(n._i=t._i),p(t._f)||(n._f=t._f),p(t._l)||(n._l=t._l),p(t._strict)||(n._strict=t._strict),p(t._tzm)||(n._tzm=t._tzm),p(t._isUTC)||(n._isUTC=t._isUTC),p(t._offset)||(n._offset=t._offset),p(t._pf)||(n._pf=u(t)),p(t._locale)||(n._locale=t._locale),tr.length>0)for(i=0;i<tr.length;i++)r=tr[i],f=t[r],p(f)||(n[r]=f);return n}function ai(n){iu(this,n);this._d=new Date(n._d!=null?n._d.getTime():NaN);this.isValid()||(this._d=new Date(NaN));ir===!1&&(ir=!0,t.updateOffset(this),ir=!1)}function pt(n){return n instanceof ai||n!=null&&n._isAMomentObject!=null}function d(n){return n<0?Math.ceil(n)||0:Math.floor(n)}function f(n){var t=+n,i=0;return t!==0&&isFinite(t)&&(i=d(t)),i}function pf(n,t,i){for(var e=Math.min(n.length,t.length),o=Math.abs(n.length-t.length),u=0,r=0;r<e;r++)(i&&n[r]!==t[r]||!i&&f(n[r])!==f(t[r]))&&u++;return u+o}function wf(n){t.suppressDeprecationWarnings===!1&&typeof console!="undefined"&&console.warn&&console.warn("Deprecation warning: "+n)}function g(n,i){var r=!0;return yt(function(){var e,u,f,o;if(t.deprecationHandler!=null&&t.deprecationHandler(null,n),r){for(e=[],f=0;f<arguments.length;f++){if(u="",typeof arguments[f]=="object"){u+="\n["+f+"] ";for(o in arguments[0])u+=o+": "+arguments[0][o]+", ";u=u.slice(0,-2)}else u=arguments[f];e.push(u)}wf(n+"\nArguments: "+Array.prototype.slice.call(e).join("")+"\n"+(new Error).stack);r=!1}return i.apply(this,arguments)},i)}function bf(n,i){t.deprecationHandler!=null&&t.deprecationHandler(n,i);ru[n]||(wf(i),ru[n]=!0)}function ot(n){return n instanceof Function||Object.prototype.toString.call(n)==="[object Function]"}function ih(n){var t,i;for(i in n)t=n[i],ot(t)?this[i]=t:this["_"+i]=t;this._config=n;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function kf(n,t){var r=yt({},n),i;for(i in t)l(t,i)&&(li(n[i])&&li(t[i])?(r[i]={},yt(r[i],n[i]),yt(r[i],t[i])):t[i]!=null?r[i]=t[i]:delete r[i]);for(i in n)l(n,i)&&!l(t,i)&&li(n[i])&&(r[i]=yt({},r[i]));return r}function uu(n){n!=null&&this.set(n)}function rh(n,t,i){var r=this._calendar[n]||this._calendar.sameElse;return ot(r)?r.call(t,i):r}function uh(n){var t=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return t||!i?t:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,function(n){return n.slice(1)}),this._longDateFormat[n])}function fh(){return this._invalidDate}function eh(n){return this._ordinal.replace("%d",n)}function oh(n,t,i,r){var u=this._relativeTime[i];return ot(u)?u(n,t,i,r):u.replace(/%d/i,n)}function sh(n,t){var i=this._relativeTime[n>0?"future":"past"];return ot(i)?i(t):i.replace(/%s/i,t)}function w(n,t){var i=n.toLowerCase();ui[i]=ui[i+"s"]=ui[t]=n}function nt(n){return typeof n=="string"?ui[n]||ui[n.toLowerCase()]:undefined}function fu(n){var r={},i,t;for(t in n)l(n,t)&&(i=nt(t),i&&(r[i]=n[t]));return r}function b(n,t){eu[n]=t}function hh(n){var t=[],i;for(i in n)t.push({unit:i,priority:eu[i]});return t.sort(function(n,t){return n.priority-t.priority}),t}function ct(n,t,i){var r=""+Math.abs(n),u=t-r.length,f=n>=0;return(f?i?"+":"":"-")+Math.pow(10,Math.max(0,u)).toString().substr(1)+r}function r(n,t,i,r){var u=r;typeof r=="string"&&(u=function(){return this[r]()});n&&(fi[n]=u);t&&(fi[t[0]]=function(){return ct(u.apply(this,arguments),t[1],t[2])});i&&(fi[i]=function(){return this.localeData().ordinal(u.apply(this,arguments),n)})}function ch(n){return n.match(/\[[\s\S]/)?n.replace(/^\[|\]$/g,""):n.replace(/\\/g,"")}function lh(n){for(var t=n.match(fe),i=0,r=t.length;i<r;i++)t[i]=fi[t[i]]?fi[t[i]]:ch(t[i]);return function(i){for(var f="",u=0;u<r;u++)f+=ot(t[u])?t[u].call(i,n):t[u];return f}}function ur(n,t){return n.isValid()?(t=ee(t,n.localeData()),ou[t]=ou[t]||lh(t),ou[t](n)):n.localeData().invalidDate()}function ee(n,t){function r(n){return t.longDateFormat(n)||n}var i=5;for(rr.lastIndex=0;i>=0&&rr.test(n);)n=n.replace(rr,r),rr.lastIndex=0,i-=1;return n}function i(n,t,i){cu[n]=ot(t)?t:function(n){return n&&i?i:t}}function vh(n,t){return l(cu,n)?cu[n](t._strict,t._locale):new RegExp(yh(n))}function yh(n){return gt(n.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(n,t,i,r,u){return t||i||r||u}))}function gt(n){return n.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function h(n,t){var i,r=t;for(typeof n=="string"&&(n=[n]),dt(t)&&(r=function(n,i){i[t]=f(n)}),i=0;i<n.length;i++)cr[n[i]]=r}function yi(n,t){h(n,function(n,i,r,u){r._w=r._w||{};t(n,r._w,r,u)})}function ph(n,t,i){t!=null&&l(cr,n)&&cr[n](t,i._a,i,n)}function pi(n){return lr(n)?366:365}function lr(n){return n%4==0&&n%100!=0||n%400==0}function kh(){return lr(this.year())}function ei(n,i){return function(r){return r!=null?(le(this,n,r),t.updateOffset(this,i),this):ar(this,n)}}function ar(n,t){return n.isValid()?n._d["get"+(n._isUTC?"UTC":"")+t]():NaN}function le(n,t,i){n.isValid()&&!isNaN(i)&&(t==="FullYear"&&lr(n.year())&&n.month()===1&&n.date()===29?n._d["set"+(n._isUTC?"UTC":"")+t](i,n.month(),vr(i,n.month())):n._d["set"+(n._isUTC?"UTC":"")+t](i))}function dh(n){return(n=nt(n),ot(this[n]))?this[n]():this}function gh(n,t){var r,i;if(typeof n=="object")for(n=fu(n),r=hh(n),i=0;i<r.length;i++)this[r[i].unit](n[r[i].unit]);else if(n=nt(n),ot(this[n]))return this[n](t);return this}function nc(n,t){return(n%t+t)%t}function vr(n,t){if(isNaN(n)||isNaN(t))return NaN;var i=nc(t,12);return n+=(t-i)/12,i===1?lr(n)?29:28:31-i%7%2}function tc(n,t){return n?tt(this._months)?this._months[n.month()]:this._months[(this._months.isFormat||au).test(t)?"format":"standalone"][n.month()]:tt(this._months)?this._months:this._months.standalone}function ic(n,t){return n?tt(this._monthsShort)?this._monthsShort[n.month()]:this._monthsShort[au.test(t)?"format":"standalone"][n.month()]:tt(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function rc(n,t,i){var u,r,e,f=n.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],u=0;u<12;++u)e=et([2e3,u]),this._shortMonthsParse[u]=this.monthsShort(e,"").toLocaleLowerCase(),this._longMonthsParse[u]=this.months(e,"").toLocaleLowerCase();return i?t==="MMM"?(r=a.call(this._shortMonthsParse,f),r!==-1?r:null):(r=a.call(this._longMonthsParse,f),r!==-1?r:null):t==="MMM"?(r=a.call(this._shortMonthsParse,f),r!==-1)?r:(r=a.call(this._longMonthsParse,f),r!==-1?r:null):(r=a.call(this._longMonthsParse,f),r!==-1)?r:(r=a.call(this._shortMonthsParse,f),r!==-1?r:null)}function uc(n,t,i){var r,u,f;if(this._monthsParseExact)return rc.call(this,n,t,i);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;r<12;r++)if((u=et([2e3,r]),i&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(u,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(u,"").replace(".","")+"$","i")),i||this._monthsParse[r]||(f="^"+this.months(u,"")+"|^"+this.monthsShort(u,""),this._monthsParse[r]=new RegExp(f.replace(".",""),"i")),i&&t==="MMMM"&&this._longMonthsParse[r].test(n))||i&&t==="MMM"&&this._shortMonthsParse[r].test(n)||!i&&this._monthsParse[r].test(n))return r}function ve(n,t){var i;if(!n.isValid())return n;if(typeof t=="string")if(/^\d+$/.test(t))t=f(t);else if(t=n.localeData().monthsParse(t),!dt(t))return n;return i=Math.min(n.date(),vr(n.year(),t)),n._d["set"+(n._isUTC?"UTC":"")+"Month"](t,i),n}function ye(n){return n!=null?(ve(this,n),t.updateOffset(this,!0),this):ar(this,"Month")}function fc(){return vr(this.year(),this.month())}function ec(n){return this._monthsParseExact?(l(this,"_monthsRegex")||be.call(this),n?this._monthsShortStrictRegex:this._monthsShortRegex):(l(this,"_monthsShortRegex")||(this._monthsShortRegex=pe),this._monthsShortStrictRegex&&n?this._monthsShortStrictRegex:this._monthsShortRegex)}function oc(n){return this._monthsParseExact?(l(this,"_monthsRegex")||be.call(this),n?this._monthsStrictRegex:this._monthsRegex):(l(this,"_monthsRegex")||(this._monthsRegex=we),this._monthsStrictRegex&&n?this._monthsStrictRegex:this._monthsRegex)}function be(){function f(n,t){return t.length-n.length}for(var i=[],r=[],t=[],u,n=0;n<12;n++)u=et([2e3,n]),i.push(this.monthsShort(u,"")),r.push(this.months(u,"")),t.push(this.months(u,"")),t.push(this.monthsShort(u,""));for(i.sort(f),r.sort(f),t.sort(f),n=0;n<12;n++)i[n]=gt(i[n]),r[n]=gt(r[n]);for(n=0;n<24;n++)t[n]=gt(t[n]);this._monthsRegex=new RegExp("^("+t.join("|")+")","i");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp("^("+r.join("|")+")","i");this._monthsShortStrictRegex=new RegExp("^("+i.join("|")+")","i")}function sc(n,t,i,r,u,f,e){var o=new Date(n,t,i,r,u,f,e);return n<100&&n>=0&&isFinite(o.getFullYear())&&o.setFullYear(n),o}function wi(n){var t=new Date(Date.UTC.apply(null,arguments));return n<100&&n>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(n),t}function yr(n,t,i){var r=7+t-i,u=(7+wi(n,0,r).getUTCDay()-t)%7;return-u+r-1}function ke(n,t,i,r,u){var s=(7+i-r)%7,h=yr(n,r,u),f=1+7*(t-1)+s+h,e,o;return f<=0?(e=n-1,o=pi(e)+f):f>pi(n)?(e=n+1,o=f-pi(n)):(e=n,o=f),{year:e,dayOfYear:o}}function bi(n,t,i){var e=yr(n.year(),t,i),r=Math.floor((n.dayOfYear()-e-1)/7)+1,f,u;return r<1?(u=n.year()-1,f=r+ti(u,t,i)):r>ti(n.year(),t,i)?(f=r-ti(n.year(),t,i),u=n.year()+1):(u=n.year(),f=r),{week:f,year:u}}function ti(n,t,i){var r=yr(n,t,i),u=yr(n+1,t,i);return(pi(n)-r+u)/7}function hc(n){return bi(n,this._week.dow,this._week.doy).week}function cc(){return this._week.dow}function lc(){return this._week.doy}function ac(n){var t=this.localeData().week(this);return n==null?t:this.add((n-t)*7,"d")}function vc(n){var t=bi(this,1,4).week;return n==null?t:this.add((n-t)*7,"d")}function yc(n,t){return typeof n!="string"?n:isNaN(n)?(n=t.weekdaysParse(n),typeof n=="number")?n:null:parseInt(n,10)}function pc(n,t){return typeof n=="string"?t.weekdaysParse(n)%7||7:isNaN(n)?null:n}function wc(n,t){return n?tt(this._weekdays)?this._weekdays[n.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][n.day()]:tt(this._weekdays)?this._weekdays:this._weekdays.standalone}function bc(n){return n?this._weekdaysShort[n.day()]:this._weekdaysShort}function kc(n){return n?this._weekdaysMin[n.day()]:this._weekdaysMin}function dc(n,t,i){var f,r,e,u=n.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],f=0;f<7;++f)e=et([2e3,1]).day(f),this._minWeekdaysParse[f]=this.weekdaysMin(e,"").toLocaleLowerCase(),this._shortWeekdaysParse[f]=this.weekdaysShort(e,"").toLocaleLowerCase(),this._weekdaysParse[f]=this.weekdays(e,"").toLocaleLowerCase();return i?t==="dddd"?(r=a.call(this._weekdaysParse,u),r!==-1?r:null):t==="ddd"?(r=a.call(this._shortWeekdaysParse,u),r!==-1?r:null):(r=a.call(this._minWeekdaysParse,u),r!==-1?r:null):t==="dddd"?(r=a.call(this._weekdaysParse,u),r!==-1)?r:(r=a.call(this._shortWeekdaysParse,u),r!==-1)?r:(r=a.call(this._minWeekdaysParse,u),r!==-1?r:null):t==="ddd"?(r=a.call(this._shortWeekdaysParse,u),r!==-1)?r:(r=a.call(this._weekdaysParse,u),r!==-1)?r:(r=a.call(this._minWeekdaysParse,u),r!==-1?r:null):(r=a.call(this._minWeekdaysParse,u),r!==-1)?r:(r=a.call(this._weekdaysParse,u),r!==-1)?r:(r=a.call(this._shortWeekdaysParse,u),r!==-1?r:null)}function gc(n,t,i){var r,u,f;if(this._weekdaysParseExact)return dc.call(this,n,t,i);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++)if((u=et([2e3,1]).day(r),i&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(u,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(u,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(u,"").replace(".",".?")+"$","i")),this._weekdaysParse[r]||(f="^"+this.weekdays(u,"")+"|^"+this.weekdaysShort(u,"")+"|^"+this.weekdaysMin(u,""),this._weekdaysParse[r]=new RegExp(f.replace(".",""),"i")),i&&t==="dddd"&&this._fullWeekdaysParse[r].test(n))||i&&t==="ddd"&&this._shortWeekdaysParse[r].test(n)||i&&t==="dd"&&this._minWeekdaysParse[r].test(n)||!i&&this._weekdaysParse[r].test(n))return r}function nl(n){if(!this.isValid())return n!=null?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return n!=null?(n=yc(n,this.localeData()),this.add(n-t,"d")):t}function tl(n){if(!this.isValid())return n!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return n==null?t:this.add(n-t,"d")}function il(n){if(!this.isValid())return n!=null?this:NaN;if(n!=null){var t=pc(n,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function rl(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||pu.call(this),n?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,"_weekdaysRegex")||(this._weekdaysRegex=to),this._weekdaysStrictRegex&&n?this._weekdaysStrictRegex:this._weekdaysRegex)}function ul(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||pu.call(this),n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=io),this._weekdaysShortStrictRegex&&n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function fl(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||pu.call(this),n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ro),this._weekdaysMinStrictRegex&&n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function pu(){function u(n,t){return t.length-n.length}for(var e=[],i=[],r=[],t=[],f,o,s,h,n=0;n<7;n++)f=et([2e3,1]).day(n),o=this.weekdaysMin(f,""),s=this.weekdaysShort(f,""),h=this.weekdays(f,""),e.push(o),i.push(s),r.push(h),t.push(o),t.push(s),t.push(h);for(e.sort(u),i.sort(u),r.sort(u),t.sort(u),n=0;n<7;n++)i[n]=gt(i[n]),r[n]=gt(r[n]),t[n]=gt(t[n]);this._weekdaysRegex=new RegExp("^("+t.join("|")+")","i");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp("^("+r.join("|")+")","i");this._weekdaysShortStrictRegex=new RegExp("^("+i.join("|")+")","i");this._weekdaysMinStrictRegex=new RegExp("^("+e.join("|")+")","i")}function wu(){return this.hours()%12||12}function el(){return this.hours()||24}function uo(n,t){r(n,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function fo(n,t){return t._meridiemParse}function ol(n){return(n+"").toLowerCase().charAt(0)==="p"}function sl(n,t,i){return n>11?i?"pm":"PM":i?"am":"AM"}function so(n){return n?n.toLowerCase().replace("_","-"):n}function cl(n){for(var r=0,i,t,f,u;r<n.length;){for(u=so(n[r]).split("-"),i=u.length,t=so(n[r+1]),t=t?t.split("-"):null;i>0;){if(f=pr(u.slice(0,i).join("-")),f)return f;if(t&&t.length>=i&&pf(u,t,!0)>=i-1)break;i--}r++}return di}function pr(n){var t=null,i;if(!y[n]&&typeof module!="undefined"&&module&&module.exports)try{t=di._abbr;i=require;i("./locale/"+n);oi(t)}catch(r){}return y[n]}function oi(n,t){var i;return n&&(i=p(t)?wt(n):bu(n,t),i?di=i:typeof console!="undefined"&&console.warn&&console.warn("Locale "+n+" not found. Did you forget to load it?")),di._abbr}function bu(n,t){if(t!==null){var r,i=oo;if(t.abbr=n,y[n]!=null)bf("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=y[n]._config;else if(t.parentLocale!=null)if(y[t.parentLocale]!=null)i=y[t.parentLocale]._config;else if(r=pr(t.parentLocale),r!=null)i=r._config;else return ki[t.parentLocale]||(ki[t.parentLocale]=[]),ki[t.parentLocale].push({name:n,config:t}),null;return y[n]=new uu(kf(i,t)),ki[n]&&ki[n].forEach(function(n){bu(n.name,n.config)}),oi(n),y[n]}return delete y[n],null}function ll(n,t){if(t!=null){var i,r,u=oo;r=pr(n);r!=null&&(u=r._config);t=kf(u,t);i=new uu(t);i.parentLocale=y[n];y[n]=i;oi(n)}else y[n]!=null&&(y[n].parentLocale!=null?y[n]=y[n].parentLocale:y[n]!=null&&delete y[n]);return y[n]}function wt(n){var t;if(n&&n._locale&&n._locale._abbr&&(n=n._locale._abbr),!n)return di;if(!tt(n)){if(t=pr(n),t)return t;n=[n]}return cl(n)}function al(){return df(y)}function ku(n){var i,t=n._a;return t&&u(n).overflow===-2&&(i=t[lt]<0||t[lt]>11?lt:t[st]<1||t[st]>vr(t[it],t[lt])?st:t[v]<0||t[v]>24||t[v]===24&&(t[rt]!==0||t[at]!==0||t[ni]!==0)?v:t[rt]<0||t[rt]>59?rt:t[at]<0||t[at]>59?at:t[ni]<0||t[ni]>999?ni:-1,u(n)._overflowDayOfYear&&(i<it||i>st)&&(i=st),u(n)._overflowWeeks&&i===-1&&(i=wh),u(n)._overflowWeekday&&i===-1&&(i=bh),u(n).overflow=i),n}function si(n,t,i){return n!=null?n:t!=null?t:i}function vl(n){var i=new Date(t.now());return n._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function du(n){var t,i,r=[],f,o,e;if(!n._d){for(f=vl(n),n._w&&n._a[st]==null&&n._a[lt]==null&&yl(n),n._dayOfYear!=null&&(e=si(n._a[it],f[it]),(n._dayOfYear>pi(e)||n._dayOfYear===0)&&(u(n)._overflowDayOfYear=!0),i=wi(e,0,n._dayOfYear),n._a[lt]=i.getUTCMonth(),n._a[st]=i.getUTCDate()),t=0;t<3&&n._a[t]==null;++t)n._a[t]=r[t]=f[t];for(;t<7;t++)n._a[t]=r[t]=n._a[t]==null?t===2?1:0:n._a[t];n._a[v]===24&&n._a[rt]===0&&n._a[at]===0&&n._a[ni]===0&&(n._nextDay=!0,n._a[v]=0);n._d=(n._useUTC?wi:sc).apply(null,r);o=n._useUTC?n._d.getUTCDay():n._d.getDay();n._tzm!=null&&n._d.setUTCMinutes(n._d.getUTCMinutes()-n._tzm);n._nextDay&&(n._a[v]=24);n._w&&typeof n._w.d!="undefined"&&n._w.d!==o&&(u(n).weekdayMismatch=!0)}}function yl(n){var t,o,f,i,r,e,h,s,l;t=n._w;t.GG!=null||t.W!=null||t.E!=null?(r=1,e=4,o=si(t.GG,n._a[it],bi(c(),1,4).year),f=si(t.W,1),i=si(t.E,1),(i<1||i>7)&&(s=!0)):(r=n._locale._week.dow,e=n._locale._week.doy,l=bi(c(),r,e),o=si(t.gg,n._a[it],l.year),f=si(t.w,l.week),t.d!=null?(i=t.d,(i<0||i>6)&&(s=!0)):t.e!=null?(i=t.e+r,(t.e<0||t.e>6)&&(s=!0)):i=r);f<1||f>ti(o,r,e)?u(n)._overflowWeeks=!0:s!=null?u(n)._overflowWeekday=!0:(h=ke(o,f,i,r,e),n._a[it]=h.year,n._dayOfYear=h.dayOfYear)}function ho(n){var t,r,o=n._i,i=pl.exec(o)||wl.exec(o),s,e,f,h;if(i){for(u(n).iso=!0,t=0,r=wr.length;t<r;t++)if(wr[t][1].exec(i[1])){e=wr[t][0];s=wr[t][2]!==!1;break}if(e==null){n._isValid=!1;return}if(i[3]){for(t=0,r=gu.length;t<r;t++)if(gu[t][1].exec(i[3])){f=(i[2]||" ")+gu[t][0];break}if(f==null){n._isValid=!1;return}}if(!s&&f!=null){n._isValid=!1;return}if(i[4])if(bl.exec(i[4]))h="Z";else{n._isValid=!1;return}n._f=e+(f||"")+(h||"");nf(n)}else n._isValid=!1}function dl(n,t,i,r,u,f){var e=[gl(n),vu.indexOf(t),parseInt(i,10),parseInt(r,10),parseInt(u,10)];return f&&e.push(parseInt(f,10)),e}function gl(n){var t=parseInt(n,10);return t<=49?2e3+t:t<=999?1900+t:t}function na(n){return n.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}function ta(n,t,i){if(n){var r=yu.indexOf(n),f=new Date(t[0],t[1],t[2]).getDay();if(r!==f)return u(i).weekdayMismatch=!0,i._isValid=!1,!1}return!0}function ia(n,t,i){if(n)return lo[n];if(t)return 0;var r=parseInt(i,10),u=r%100,f=(r-u)/100;return f*60+u}function ao(n){var t=co.exec(na(n._i)),i;if(t){if(i=dl(t[4],t[3],t[2],t[5],t[6],t[7]),!ta(t[1],i,n))return;n._a=i;n._tzm=ia(t[8],t[9],t[10]);n._d=wi.apply(null,n._a);n._d.setUTCMinutes(n._d.getUTCMinutes()-n._tzm);u(n).rfc2822=!0}else n._isValid=!1}function ra(n){var i=kl.exec(n._i);if(i!==null){n._d=new Date(+i[1]);return}if(ho(n),n._isValid===!1)delete n._isValid;else return;if(ao(n),n._isValid===!1)delete n._isValid;else return;t.createFromInputFallback(n)}function nf(n){if(n._f===t.ISO_8601){ho(n);return}if(n._f===t.RFC_2822){ao(n);return}n._a=[];u(n).empty=!0;for(var i=""+n._i,r,f,s,c=i.length,h=0,o=ee(n._f,n._locale).match(fe)||[],e=0;e<o.length;e++)f=o[e],r=(i.match(vh(f,n))||[])[0],r&&(s=i.substr(0,i.indexOf(r)),s.length>0&&u(n).unusedInput.push(s),i=i.slice(i.indexOf(r)+r.length),h+=r.length),fi[f]?(r?u(n).empty=!1:u(n).unusedTokens.push(f),ph(f,r,n)):n._strict&&!r&&u(n).unusedTokens.push(f);u(n).charsLeftOver=c-h;i.length>0&&u(n).unusedInput.push(i);n._a[v]<=12&&u(n).bigHour===!0&&n._a[v]>0&&(u(n).bigHour=undefined);u(n).parsedDateParts=n._a.slice(0);u(n).meridiem=n._meridiem;n._a[v]=ua(n._locale,n._a[v],n._meridiem);du(n);ku(n)}function ua(n,t,i){var r;return i==null?t:n.meridiemHour!=null?n.meridiemHour(t,i):n.isPM!=null?(r=n.isPM(i),r&&t<12&&(t+=12),r||t!==12||(t=0),t):t}function fa(n){var t,e,f,r,i;if(n._f.length===0){u(n).invalidFormat=!0;n._d=new Date(NaN);return}for(r=0;r<n._f.length;r++)(i=0,t=iu({},n),n._useUTC!=null&&(t._useUTC=n._useUTC),t._f=n._f[r],nf(t),tu(t))&&(i+=u(t).charsLeftOver,i+=u(t).unusedTokens.length*10,u(t).score=i,(f==null||i<f)&&(f=i,e=t));yt(n,e||t)}function ea(n){if(!n._d){var t=fu(n._i);n._a=vf([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(n){return n&&parseInt(n,10)});du(n)}}function oa(n){var t=new ai(ku(vo(n)));return t._nextDay&&(t.add(1,"d"),t._nextDay=undefined),t}function vo(n){var t=n._i,i=n._f;return(n._locale=n._locale||wt(n._l),t===null||i===undefined&&t==="")?nr({nullInput:!0}):(typeof t=="string"&&(n._i=t=n._locale.preparse(t)),pt(t))?new ai(ku(t)):(gi(t)?n._d=t:tt(i)?fa(n):i?nf(n):sa(n),tu(n)||(n._d=null),n)}function sa(n){var i=n._i;p(i)?n._d=new Date(t.now()):gi(i)?n._d=new Date(i.valueOf()):typeof i=="string"?ra(n):tt(i)?(n._a=vf(i.slice(0),function(n){return parseInt(n,10)}),du(n)):li(i)?ea(n):dt(i)?n._d=new Date(i):t.createFromInputFallback(n)}function yo(n,t,i,r,u){var f={};return(i===!0||i===!1)&&(r=i,i=undefined),(li(n)&&nh(n)||tt(n)&&n.length===0)&&(n=undefined),f._isAMomentObject=!0,f._useUTC=f._isUTC=u,f._l=i,f._i=n,f._f=t,f._strict=r,oa(f)}function c(n,t,i,r){return yo(n,t,i,r,!1)}function bo(n,t){var r,i;if(t.length===1&&tt(t[0])&&(t=t[0]),!t.length)return c();for(r=t[0],i=1;i<t.length;++i)(!t[i].isValid()||t[i][n](r))&&(r=t[i]);return r}function ha(){var n=[].slice.call(arguments,0);return bo("isBefore",n)}function ca(){var n=[].slice.call(arguments,0);return bo("isAfter",n)}function la(n){var i,r,t;for(i in n)if(!(a.call(hi,i)!==-1&&(n[i]==null||!isNaN(n[i]))))return!1;for(r=!1,t=0;t<hi.length;++t)if(n[hi[t]]){if(r)return!1;parseFloat(n[hi[t]])!==f(n[hi[t]])&&(r=!0)}return!0}function aa(){return this._isValid}function va(){return ut(NaN)}function br(n){var t=fu(n),i=t.year||0,r=t.quarter||0,u=t.month||0,f=t.week||0,e=t.day||0,o=t.hour||0,s=t.minute||0,h=t.second||0,c=t.millisecond||0;this._isValid=la(t);this._milliseconds=+c+h*1e3+s*6e4+o*36e5;this._days=+e+f*7;this._months=+u+r*3+i*12;this._data={};this._locale=wt();this._bubble()}function tf(n){return n instanceof br}function rf(n){return n<0?Math.round(-1*n)*-1:Math.round(n)}function go(n,t){r(n,0,0,function(){var n=this.utcOffset(),i="+";return n<0&&(n=-n,i="-"),i+ct(~~(n/60),2)+t+ct(~~n%60,2)})}function uf(n,t){var i=(t||"").match(n);if(i===null)return null;var e=i[i.length-1]||[],r=(e+"").match(ns)||["-",0,0],u=+(r[1]*60)+f(r[2]);return u===0?0:r[0]==="+"?u:-u}function ff(n,i){var r,u;return i._isUTC?(r=i.clone(),u=(pt(n)||gi(n)?n.valueOf():c(n).valueOf())-r.valueOf(),r._d.setTime(r._d.valueOf()+u),t.updateOffset(r,!1),r):c(n).local()}function ef(n){return-Math.round(n._d.getTimezoneOffset()/15)*15}function ya(n,i,r){var u=this._offset||0,f;if(!this.isValid())return n!=null?this:NaN;if(n!=null){if(typeof n=="string"){if(n=uf(hr,n),n===null)return this}else Math.abs(n)<16&&!r&&(n=n*60);return!this._isUTC&&i&&(f=ef(this)),this._offset=n,this._isUTC=!0,f!=null&&this.add(f,"m"),u!==n&&(!i||this._changeInProgress?es(this,ut(n-u,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?u:ef(this)}function pa(n,t){return n!=null?(typeof n!="string"&&(n=-n),this.utcOffset(n,t),this):-this.utcOffset()}function wa(n){return this.utcOffset(0,n)}function ba(n){return this._isUTC&&(this.utcOffset(0,n),this._isUTC=!1,n&&this.subtract(ef(this),"m")),this}function ka(){if(this._tzm!=null)this.utcOffset(this._tzm,!1,!0);else if(typeof this._i=="string"){var n=uf(ah,this._i);n!=null?this.utcOffset(n):this.utcOffset(0,!0)}return this}function da(n){return this.isValid()?(n=n?c(n).utcOffset():0,(this.utcOffset()-n)%60==0):!1}function ga(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function nv(){var n,t;return p(this._isDSTShifted)?(n={},iu(n,this),n=vo(n),n._a?(t=n._isUTC?et(n._a):c(n._a),this._isDSTShifted=this.isValid()&&pf(n._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted):this._isDSTShifted}function tv(){return this.isValid()?!this._isUTC:!1}function iv(){return this.isValid()?this._isUTC:!1}function ts(){return this.isValid()?this._isUTC&&this._offset===0:!1}function ut(n,t){var i=n,r=null,u,e,o;return tf(n)?i={ms:n._milliseconds,d:n._days,M:n._months}:dt(n)?(i={},t?i[t]=n:i.milliseconds=n):(r=is.exec(n))?(u=r[1]==="-"?-1:1,i={y:0,d:f(r[st])*u,h:f(r[v])*u,m:f(r[rt])*u,s:f(r[at])*u,ms:f(rf(r[ni]*1e3))*u}):(r=rs.exec(n))?(u=r[1]==="-"?-1:r[1]==="+"?1:1,i={y:ii(r[2],u),M:ii(r[3],u),w:ii(r[4],u),d:ii(r[5],u),h:ii(r[6],u),m:ii(r[7],u),s:ii(r[8],u)}):i==null?i={}:typeof i=="object"&&("from"in i||"to"in i)&&(o=rv(c(i.from),c(i.to)),i={},i.ms=o.milliseconds,i.M=o.months),e=new br(i),tf(n)&&l(n,"_locale")&&(e._locale=n._locale),e}function ii(n,t){var i=n&&parseFloat(n.replace(",","."));return(isNaN(i)?0:i)*t}function us(n,t){var i={milliseconds:0,months:0};return i.months=t.month()-n.month()+(t.year()-n.year())*12,n.clone().add(i.months,"M").isAfter(t)&&--i.months,i.milliseconds=+t-+n.clone().add(i.months,"M"),i}function rv(n,t){var i;return(n.isValid()&&t.isValid())?(t=ff(t,n),n.isBefore(t)?i=us(n,t):(i=us(t,n),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function fs(n,t){return function(i,r){var u,f;return r===null||isNaN(+r)||(bf(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),f=i,i=r,r=f),i=typeof i=="string"?+i:i,u=ut(i,r),es(this,u,n),this}}function es(n,i,r,u){var o=i._milliseconds,f=rf(i._days),e=rf(i._months);n.isValid()&&(u=u==null?!0:u,e&&ve(n,ar(n,"Month")+e*r),f&&le(n,"Date",ar(n,"Date")+f*r),o&&n._d.setTime(n._d.valueOf()+o*r),u&&t.updateOffset(n,f||e))}function uv(n,t){var i=n.diff(t,"days",!0);return i<-6?"sameElse":i<-1?"lastWeek":i<0?"lastDay":i<1?"sameDay":i<2?"nextDay":i<7?"nextWeek":"sameElse"}function fv(n,i){var u=n||c(),f=ff(u,this).startOf("day"),r=t.calendarFormat(this,f)||"sameElse",e=i&&(ot(i[r])?i[r].call(this,u):i[r]);return this.format(e||this.localeData().calendar(r,this,c(u)))}function ev(){return new ai(this)}function ov(n,t){var i=pt(n)?n:c(n);return(this.isValid()&&i.isValid())?(t=nt(p(t)?"millisecond":t),t==="millisecond"?this.valueOf()>i.valueOf():i.valueOf()<this.clone().startOf(t).valueOf()):!1}function sv(n,t){var i=pt(n)?n:c(n);return(this.isValid()&&i.isValid())?(t=nt(p(t)?"millisecond":t),t==="millisecond"?this.valueOf()<i.valueOf():this.clone().endOf(t).valueOf()<i.valueOf()):!1}function hv(n,t,i,r){return r=r||"()",(r[0]==="("?this.isAfter(n,i):!this.isBefore(n,i))&&(r[1]===")"?this.isBefore(t,i):!this.isAfter(t,i))}function cv(n,t){var i=pt(n)?n:c(n),r;return(this.isValid()&&i.isValid())?(t=nt(t||"millisecond"),t==="millisecond"?this.valueOf()===i.valueOf():(r=i.valueOf(),this.clone().startOf(t).valueOf()<=r&&r<=this.clone().endOf(t).valueOf())):!1}function lv(n,t){return this.isSame(n,t)||this.isAfter(n,t)}function av(n,t){return this.isSame(n,t)||this.isBefore(n,t)}function vv(n,t,i){var r,f,u;if(!this.isValid())return NaN;if(r=ff(n,this),!r.isValid())return NaN;f=(r.utcOffset()-this.utcOffset())*6e4;t=nt(t);switch(t){case"year":u=of(this,r)/12;break;case"month":u=of(this,r);break;case"quarter":u=of(this,r)/3;break;case"second":u=(this-r)/1e3;break;case"minute":u=(this-r)/6e4;break;case"hour":u=(this-r)/36e5;break;case"day":u=(this-r-f)/864e5;break;case"week":u=(this-r-f)/6048e5;break;default:u=this-r}return i?u:d(u)}function of(n,t){var r=(t.year()-n.year())*12+(t.month()-n.month()),i=n.clone().add(r,"months"),u,f;return t-i<0?(u=n.clone().add(r-1,"months"),f=(t-i)/(i-u)):(u=n.clone().add(r+1,"months"),f=(t-i)/(u-i)),-(r+f)||0}function yv(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function pv(n){if(!this.isValid())return null;var i=n!==!0,t=i?this.clone().utc():this;return t.year()<0||t.year()>9999?ur(t,i?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):ot(Date.prototype.toISOString)?i?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*6e4).toISOString().replace("Z",ur(t,"Z")):ur(t,i?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function wv(){var n,t;if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";n="moment";t="";this.isLocal()||(n=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z");var i="["+n+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",u=t+'[")]';return this.format(i+r+"-MM-DD[T]HH:mm:ss.SSS"+u)}function bv(n){n||(n=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var i=ur(this,n);return this.localeData().postformat(i)}function kv(n,t){return this.isValid()&&(pt(n)&&n.isValid()||c(n).isValid())?ut({to:this,from:n}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function dv(n){return this.from(c(),n)}function gv(n,t){return this.isValid()&&(pt(n)&&n.isValid()||c(n).isValid())?ut({from:this,to:n}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ny(n){return this.to(c(),n)}function hs(n){var t;return n===undefined?this._locale._abbr:(t=wt(n),t!=null&&(this._locale=t),this)}function cs(){return this._locale}function ty(n){n=nt(n);switch(n){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":case"date":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return n==="week"&&this.weekday(0),n==="isoWeek"&&this.isoWeekday(1),n==="quarter"&&this.month(Math.floor(this.month()/3)*3),this}function iy(n){return(n=nt(n),n===undefined||n==="millisecond")?this:(n==="date"&&(n="day"),this.startOf(n).add(1,n==="isoWeek"?"week":n).subtract(1,"ms"))}function ry(){return this._d.valueOf()-(this._offset||0)*6e4}function uy(){return Math.floor(this.valueOf()/1e3)}function fy(){return new Date(this.valueOf())}function ey(){var n=this;return[n.year(),n.month(),n.date(),n.hour(),n.minute(),n.second(),n.millisecond()]}function oy(){var n=this;return{years:n.year(),months:n.month(),date:n.date(),hours:n.hours(),minutes:n.minutes(),seconds:n.seconds(),milliseconds:n.milliseconds()}}function sy(){return this.isValid()?this.toISOString():null}function hy(){return tu(this)}function cy(){return yt({},u(this))}function ly(){return u(this).overflow}function ay(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function kr(n,t){r(0,[n,n.length],0,t)}function vy(n){return ls.call(this,n,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function yy(n){return ls.call(this,n,this.isoWeek(),this.isoWeekday(),1,4)}function py(){return ti(this.year(),1,4)}function wy(){var n=this.localeData()._week;return ti(this.year(),n.dow,n.doy)}function ls(n,t,i,r,u){var f;return n==null?bi(this,r,u).year:(f=ti(n,r,u),t>f&&(t=f),by.call(this,n,t,i,r,u))}function by(n,t,i,r,u){var e=ke(n,t,i,r,u),f=wi(e.year,0,e.dayOfYear);return this.year(f.getUTCFullYear()),this.month(f.getUTCMonth()),this.date(f.getUTCDate()),this}function ky(n){return n==null?Math.ceil((this.month()+1)/3):this.month((n-1)*3+this.month()%3)}function dy(n){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return n==null?t:this.add(n-t,"d")}function gy(n,t){t[ni]=f(("0."+n)*1e3)}function np(){return this._isUTC?"UTC":""}function tp(){return this._isUTC?"Coordinated Universal Time":""}function ip(n){return c(n*1e3)}function rp(){return c.apply(null,arguments).parseZone()}function ps(n){return n}function dr(n,t,i,r){var u=wt(),f=et().set(r,t);return u[i](f,n)}function ws(n,t,i){if(dt(n)&&(t=n,n=undefined),n=n||"",t!=null)return dr(n,t,i,"month");for(var u=[],r=0;r<12;r++)u[r]=dr(n,r,i,"month");return u}function cf(n,t,i,r){var o,f,u,e;if(typeof n=="boolean"?(dt(t)&&(i=t,t=undefined),t=t||""):(t=n,i=t,n=!1,dt(t)&&(i=t,t=undefined),t=t||""),o=wt(),f=n?o._week.dow:0,i!=null)return dr(t,(i+f)%7,r,"day");for(e=[],u=0;u<7;u++)e[u]=dr(t,(u+f)%7,r,"day");return e}function up(n,t){return ws(n,t,"months")}function fp(n,t){return ws(n,t,"monthsShort")}function ep(n,t,i){return cf(n,t,i,"weekdays")}function op(n,t,i){return cf(n,t,i,"weekdaysShort")}function sp(n,t,i){return cf(n,t,i,"weekdaysMin")}function hp(){var n=this._data;return this._milliseconds=ht(this._milliseconds),this._days=ht(this._days),this._months=ht(this._months),n.milliseconds=ht(n.milliseconds),n.seconds=ht(n.seconds),n.minutes=ht(n.minutes),n.hours=ht(n.hours),n.months=ht(n.months),n.years=ht(n.years),this}function bs(n,t,i,r){var u=ut(t,i);return n._milliseconds+=r*u._milliseconds,n._days+=r*u._days,n._months+=r*u._months,n._bubble()}function cp(n,t){return bs(this,n,t,1)}function lp(n,t){return bs(this,n,t,-1)}function ks(n){return n<0?Math.floor(n):Math.ceil(n)}function ap(){var r=this._milliseconds,n=this._days,t=this._months,i=this._data,u,f,e,s,o;return r>=0&&n>=0&&t>=0||r<=0&&n<=0&&t<=0||(r+=ks(lf(t)+n)*864e5,n=0,t=0),i.milliseconds=r%1e3,u=d(r/1e3),i.seconds=u%60,f=d(u/60),i.minutes=f%60,e=d(f/60),i.hours=e%24,n+=d(e/24),o=d(ds(n)),t+=o,n-=ks(lf(o)),s=d(t/12),t%=12,i.days=n,i.months=t,i.years=s,this}function ds(n){return n*4800/146097}function lf(n){return n*146097/4800}function vp(n){if(!this.isValid())return NaN;var t,r,i=this._milliseconds;if(n=nt(n),n==="month"||n==="year")return t=this._days+i/864e5,r=this._months+ds(t),n==="month"?r:r/12;t=this._days+Math.round(lf(this._months));switch(n){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return t*24+i/36e5;case"minute":return t*1440+i/6e4;case"second":return t*86400+i/1e3;case"millisecond":return Math.floor(t*864e5)+i;default:throw new Error("Unknown unit "+n);}}function yp(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+f(this._months/12)*31536e6:NaN}function kt(n){return function(){return this.as(n)}}function iw(){return ut(this)}function rw(n){return n=nt(n),this.isValid()?this[n+"s"]():NaN}function ri(n){return function(){return this.isValid()?this._data[n]:NaN}}function lw(){return d(this.days()/7)}function aw(n,t,i,r,u){return u.relativeTime(t||1,!!i,n,r)}function vw(n,t,i){var r=ut(n).abs(),u=vt(r.as("s")),e=vt(r.as("m")),o=vt(r.as("h")),s=vt(r.as("d")),h=vt(r.as("M")),c=vt(r.as("y")),f=u<=ft.ss&&["s",u]||u<ft.s&&["ss",u]||e<=1&&["m"]||e<ft.m&&["mm",e]||o<=1&&["h"]||o<ft.h&&["hh",o]||s<=1&&["d"]||s<ft.d&&["dd",s]||h<=1&&["M"]||h<ft.M&&["MM",h]||c<=1&&["y"]||["yy",c];return f[2]=t,f[3]=+n>0,f[4]=i,aw.apply(null,f)}function yw(n){return n===undefined?vt:typeof n=="function"?(vt=n,!0):!1}function pw(n,t){return ft[n]===undefined?!1:t===undefined?ft[n]:(ft[n]=t,n==="s"&&(ft.ss=t-1),!0)}function ww(n){if(!this.isValid())return this.localeData().invalidDate();var t=this.localeData(),i=vw(this,!n,t);return n&&(i=t.pastFuture(+this,i)),t.postformat(i)}function ci(n){return(n>0)-(n<0)||+n}function nu(){if(!this.isValid())return this.localeData().invalidDate();var t=gr(this._milliseconds)/1e3,y=gr(this._days),r=gr(this._months),i,s,h;i=d(t/60);s=d(i/60);t%=60;i%=60;h=d(r/12);r%=12;var c=h,l=r,a=y,u=s,f=i,e=t?t.toFixed(3).replace(/\.?0+$/,""):"",n=this.asSeconds();if(!n)return"P0D";var p=n<0?"-":"",v=ci(this._months)!==ci(n)?"-":"",w=ci(this._days)!==ci(n)?"-":"",o=ci(this._milliseconds)!==ci(n)?"-":"";return p+"P"+(c?v+c+"Y":"")+(l?v+l+"M":"")+(a?w+a+"D":"")+(u||f||e?"T":"")+(u?o+u+"H":"")+(f?o+f+"M":"")+(e?o+e+"S":"")}var af,yf,tr,ir,ru,df,gf,ne,te,ie,re,ue,ui,eu,cr,lu,a,au,ae,vu,pe,we,de,ge,yu,no,to,io,ro,eo,co,lo,po,wo,ko,hi,ns,is,rs,os,ss,sf,hf,as,vs,bt,ys,n,o,ht,vt,ft,gr,e;yf=Array.prototype.some?Array.prototype.some:function(n){for(var i=Object(this),r=i.length>>>0,t=0;t<r;t++)if(t in i&&n.call(this,i[t],t,i))return!0;return!1};tr=t.momentProperties=[];ir=!1;ru={};t.suppressDeprecationWarnings=!1;t.deprecationHandler=null;df=Object.keys?Object.keys:function(n){var t,i=[];for(t in n)l(n,t)&&i.push(t);return i};gf={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};ne={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};te="Invalid date";ie="%d";re=/\d{1,2}/;ue={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};ui={};eu={};var fe=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,rr=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ou={},fi={};var oe=/\d/,k=/\d\d/,se=/\d{3}/,su=/\d{4}/,fr=/[+-]?\d{6}/,s=/\d\d?/,he=/\d\d\d\d?/,ce=/\d\d\d\d\d\d?/,er=/\d{1,3}/,hu=/\d{1,4}/,or=/[+-]?\d{1,6}/,sr=/[+-]?\d+/,ah=/Z|[+-]\d\d:?\d\d/gi,hr=/Z|[+-]\d\d(?::?\d\d)?/gi,vi=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,cu={};cr={};var it=0,lt=1,st=2,v=3,rt=4,at=5,ni=6,wh=7,bh=8;r("Y",0,0,function(){var n=this.year();return n<=9999?""+n:"+"+n});r(0,["YY",2],0,function(){return this.year()%100});r(0,["YYYY",4],0,"year");r(0,["YYYYY",5],0,"year");r(0,["YYYYYY",6,!0],0,"year");w("year","y");b("year",1);i("Y",sr);i("YY",s,k);i("YYYY",hu,su);i("YYYYY",or,fr);i("YYYYYY",or,fr);h(["YYYYY","YYYYYY"],it);h("YYYY",function(n,i){i[it]=n.length===2?t.parseTwoDigitYear(n):f(n)});h("YY",function(n,i){i[it]=t.parseTwoDigitYear(n)});h("Y",function(n,t){t[it]=parseInt(n,10)});t.parseTwoDigitYear=function(n){return f(n)+(f(n)>68?1900:2e3)};lu=ei("FullYear",!0);a=Array.prototype.indexOf?Array.prototype.indexOf:function(n){for(var t=0;t<this.length;++t)if(this[t]===n)return t;return-1};r("M",["MM",2],"Mo",function(){return this.month()+1});r("MMM",0,0,function(n){return this.localeData().monthsShort(this,n)});r("MMMM",0,0,function(n){return this.localeData().months(this,n)});w("month","M");b("month",8);i("M",s);i("MM",s,k);i("MMM",function(n,t){return t.monthsShortRegex(n)});i("MMMM",function(n,t){return t.monthsRegex(n)});h(["M","MM"],function(n,t){t[lt]=f(n)-1});h(["MMM","MMMM"],function(n,t,i,r){var f=i._locale.monthsParse(n,r,i._strict);f!=null?t[lt]=f:u(i).invalidMonth=n});au=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/;ae="January_February_March_April_May_June_July_August_September_October_November_December".split("_");vu="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");pe=vi;we=vi;r("w",["ww",2],"wo","week");r("W",["WW",2],"Wo","isoWeek");w("week","w");w("isoWeek","W");b("week",5);b("isoWeek",5);i("w",s);i("ww",s,k);i("W",s);i("WW",s,k);yi(["w","ww","W","WW"],function(n,t,i,r){t[r.substr(0,1)]=f(n)});de={dow:0,doy:6};r("d",0,"do","day");r("dd",0,0,function(n){return this.localeData().weekdaysMin(this,n)});r("ddd",0,0,function(n){return this.localeData().weekdaysShort(this,n)});r("dddd",0,0,function(n){return this.localeData().weekdays(this,n)});r("e",0,0,"weekday");r("E",0,0,"isoWeekday");w("day","d");w("weekday","e");w("isoWeekday","E");b("day",11);b("weekday",11);b("isoWeekday",11);i("d",s);i("e",s);i("E",s);i("dd",function(n,t){return t.weekdaysMinRegex(n)});i("ddd",function(n,t){return t.weekdaysShortRegex(n)});i("dddd",function(n,t){return t.weekdaysRegex(n)});yi(["dd","ddd","dddd"],function(n,t,i,r){var f=i._locale.weekdaysParse(n,r,i._strict);f!=null?t.d=f:u(i).invalidWeekday=n});yi(["d","e","E"],function(n,t,i,r){t[r]=f(n)});ge="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");yu="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");no="Su_Mo_Tu_We_Th_Fr_Sa".split("_");to=vi;io=vi;ro=vi;r("H",["HH",2],0,"hour");r("h",["hh",2],0,wu);r("k",["kk",2],0,el);r("hmm",0,0,function(){return""+wu.apply(this)+ct(this.minutes(),2)});r("hmmss",0,0,function(){return""+wu.apply(this)+ct(this.minutes(),2)+ct(this.seconds(),2)});r("Hmm",0,0,function(){return""+this.hours()+ct(this.minutes(),2)});r("Hmmss",0,0,function(){return""+this.hours()+ct(this.minutes(),2)+ct(this.seconds(),2)});uo("a",!0);uo("A",!1);w("hour","h");b("hour",13);i("a",fo);i("A",fo);i("H",s);i("h",s);i("k",s);i("HH",s,k);i("hh",s,k);i("kk",s,k);i("hmm",he);i("hmmss",ce);i("Hmm",he);i("Hmmss",ce);h(["H","HH"],v);h(["k","kk"],function(n,t){var i=f(n);t[v]=i===24?0:i});h(["a","A"],function(n,t,i){i._isPm=i._locale.isPM(n);i._meridiem=n});h(["h","hh"],function(n,t,i){t[v]=f(n);u(i).bigHour=!0});h("hmm",function(n,t,i){var r=n.length-2;t[v]=f(n.substr(0,r));t[rt]=f(n.substr(r));u(i).bigHour=!0});h("hmmss",function(n,t,i){var r=n.length-4,e=n.length-2;t[v]=f(n.substr(0,r));t[rt]=f(n.substr(r,2));t[at]=f(n.substr(e));u(i).bigHour=!0});h("Hmm",function(n,t){var i=n.length-2;t[v]=f(n.substr(0,i));t[rt]=f(n.substr(i))});h("Hmmss",function(n,t){var i=n.length-4,r=n.length-2;t[v]=f(n.substr(0,i));t[rt]=f(n.substr(i,2));t[at]=f(n.substr(r))});eo=/[ap]\.?m?\.?/i;var hl=ei("Hours",!0),oo={calendar:gf,longDateFormat:ne,invalidDate:te,ordinal:ie,dayOfMonthOrdinalParse:re,relativeTime:ue,months:ae,monthsShort:vu,week:de,weekdays:ge,weekdaysMin:no,weekdaysShort:yu,meridiemParse:eo},y={},ki={},di;var pl=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,wl=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bl=/Z|[+-]\d\d(?::?\d\d)?/,wr=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],gu=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],kl=/^\/?Date\((\-?\d+)/i;for(co=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,lo={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480},t.createFromInputFallback=g("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(n){n._d=new Date(n._i+(n._useUTC?" UTC":""))}),t.ISO_8601=function(){},t.RFC_2822=function(){},po=g("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var n=c.apply(null,arguments);return this.isValid()&&n.isValid()?n<this?this:n:nr()}),wo=g("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var n=c.apply(null,arguments);return this.isValid()&&n.isValid()?n>this?this:n:nr()}),ko=function(){return Date.now?Date.now():+new Date},hi=["year","quarter","month","week","day","hour","minute","second","millisecond"],go("Z",":"),go("ZZ",""),i("Z",hr),i("ZZ",hr),h(["Z","ZZ"],function(n,t,i){i._useUTC=!0;i._tzm=uf(hr,n)}),ns=/([\+\-]|\d\d)/gi,t.updateOffset=function(){},is=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,rs=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,ut.fn=br.prototype,ut.invalid=va,os=fs(1,"add"),ss=fs(-1,"subtract"),t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",t.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]",sf=g("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(n){return n===undefined?this.localeData():this.locale(n)}),r(0,["gg",2],0,function(){return this.weekYear()%100}),r(0,["GG",2],0,function(){return this.isoWeekYear()%100}),kr("gggg","weekYear"),kr("ggggg","weekYear"),kr("GGGG","isoWeekYear"),kr("GGGGG","isoWeekYear"),w("weekYear","gg"),w("isoWeekYear","GG"),b("weekYear",1),b("isoWeekYear",1),i("G",sr),i("g",sr),i("GG",s,k),i("gg",s,k),i("GGGG",hu,su),i("gggg",hu,su),i("GGGGG",or,fr),i("ggggg",or,fr),yi(["gggg","ggggg","GGGG","GGGGG"],function(n,t,i,r){t[r.substr(0,2)]=f(n)}),yi(["gg","GG"],function(n,i,r,u){i[u]=t.parseTwoDigitYear(n)}),r("Q",0,"Qo","quarter"),w("quarter","Q"),b("quarter",7),i("Q",oe),h("Q",function(n,t){t[lt]=(f(n)-1)*3}),r("D",["DD",2],"Do","date"),w("date","D"),b("date",9),i("D",s),i("DD",s,k),i("Do",function(n,t){return n?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),h(["D","DD"],st),h("Do",function(n,t){t[st]=f(n.match(s)[0])}),hf=ei("Date",!0),r("DDD",["DDDD",3],"DDDo","dayOfYear"),w("dayOfYear","DDD"),b("dayOfYear",4),i("DDD",er),i("DDDD",se),h(["DDD","DDDD"],function(n,t,i){i._dayOfYear=f(n)}),r("m",["mm",2],0,"minute"),w("minute","m"),b("minute",14),i("m",s),i("mm",s,k),h(["m","mm"],rt),as=ei("Minutes",!1),r("s",["ss",2],0,"second"),w("second","s"),b("second",15),i("s",s),i("ss",s,k),h(["s","ss"],at),vs=ei("Seconds",!1),r("S",0,0,function(){return~~(this.millisecond()/100)}),r(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),r(0,["SSS",3],0,"millisecond"),r(0,["SSSS",4],0,function(){return this.millisecond()*10}),r(0,["SSSSS",5],0,function(){return this.millisecond()*100}),r(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),r(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),r(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),r(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),w("millisecond","ms"),b("millisecond",16),i("S",er,oe),i("SS",er,k),i("SSS",er,se),bt="SSSS";bt.length<=9;bt+="S")i(bt,/\d+/);for(bt="S";bt.length<=9;bt+="S")h(bt,gy);ys=ei("Milliseconds",!1);r("z",0,0,"zoneAbbr");r("zz",0,0,"zoneName");n=ai.prototype;n.add=os;n.calendar=fv;n.clone=ev;n.diff=vv;n.endOf=iy;n.format=bv;n.from=kv;n.fromNow=dv;n.to=gv;n.toNow=ny;n.get=dh;n.invalidAt=ly;n.isAfter=ov;n.isBefore=sv;n.isBetween=hv;n.isSame=cv;n.isSameOrAfter=lv;n.isSameOrBefore=av;n.isValid=hy;n.lang=sf;n.locale=hs;n.localeData=cs;n.max=wo;n.min=po;n.parsingFlags=cy;n.set=gh;n.startOf=ty;n.subtract=ss;n.toArray=ey;n.toObject=oy;n.toDate=fy;n.toISOString=pv;n.inspect=wv;n.toJSON=sy;n.toString=yv;n.unix=uy;n.valueOf=ry;n.creationData=ay;n.year=lu;n.isLeapYear=kh;n.weekYear=vy;n.isoWeekYear=yy;n.quarter=n.quarters=ky;n.month=ye;n.daysInMonth=fc;n.week=n.weeks=ac;n.isoWeek=n.isoWeeks=vc;n.weeksInYear=wy;n.isoWeeksInYear=py;n.date=hf;n.day=n.days=nl;n.weekday=tl;n.isoWeekday=il;n.dayOfYear=dy;n.hour=n.hours=hl;n.minute=n.minutes=as;n.second=n.seconds=vs;n.millisecond=n.milliseconds=ys;n.utcOffset=ya;n.utc=wa;n.local=ba;n.parseZone=ka;n.hasAlignedHourOffset=da;n.isDST=ga;n.isLocal=tv;n.isUtcOffset=iv;n.isUtc=ts;n.isUTC=ts;n.zoneAbbr=np;n.zoneName=tp;n.dates=g("dates accessor is deprecated. Use date instead.",hf);n.months=g("months accessor is deprecated. Use month instead",ye);n.years=g("years accessor is deprecated. Use year instead",lu);n.zone=g("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",pa);n.isDSTShifted=g("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",nv);o=uu.prototype;o.calendar=rh;o.longDateFormat=uh;o.invalidDate=fh;o.ordinal=eh;o.preparse=ps;o.postformat=ps;o.relativeTime=oh;o.pastFuture=sh;o.set=ih;o.months=tc;o.monthsShort=ic;o.monthsParse=uc;o.monthsRegex=oc;o.monthsShortRegex=ec;o.week=hc;o.firstDayOfYear=lc;o.firstDayOfWeek=cc;o.weekdays=wc;o.weekdaysMin=kc;o.weekdaysShort=bc;o.weekdaysParse=gc;o.weekdaysRegex=rl;o.weekdaysShortRegex=ul;o.weekdaysMinRegex=fl;o.isPM=ol;o.meridiem=sl;oi("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(n){var t=n%10,i=f(n%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return n+i}});t.lang=g("moment.lang is deprecated. Use moment.locale instead.",oi);t.langData=g("moment.langData is deprecated. Use moment.localeData instead.",wt);ht=Math.abs;var pp=kt("ms"),wp=kt("s"),bp=kt("m"),kp=kt("h"),dp=kt("d"),gp=kt("w"),nw=kt("M"),tw=kt("y");var uw=ri("milliseconds"),fw=ri("seconds"),ew=ri("minutes"),ow=ri("hours"),sw=ri("days"),hw=ri("months"),cw=ri("years");return vt=Math.round,ft={ss:44,s:45,m:45,h:22,d:26,M:11},gr=Math.abs,e=br.prototype,e.isValid=aa,e.abs=hp,e.add=cp,e.subtract=lp,e.as=vp,e.asMilliseconds=pp,e.asSeconds=wp,e.asMinutes=bp,e.asHours=kp,e.asDays=dp,e.asWeeks=gp,e.asMonths=nw,e.asYears=tw,e.valueOf=yp,e._bubble=ap,e.clone=iw,e.get=rw,e.milliseconds=uw,e.seconds=fw,e.minutes=ew,e.hours=ow,e.days=sw,e.weeks=lw,e.months=hw,e.years=cw,e.humanize=ww,e.toISOString=nu,e.toString=nu,e.toJSON=nu,e.locale=hs,e.localeData=cs,e.toIsoString=g("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",nu),e.lang=sf,r("X",0,0,"unix"),r("x",0,0,"valueOf"),i("x",sr),i("X",/[+-]?\d+(\.\d{1,3})?/),h("X",function(n,t,i){i._d=new Date(parseFloat(n,10)*1e3)}),h("x",function(n,t,i){i._d=new Date(f(n))}),t.version="2.22.1",gs(c),t.fn=n,t.min=ha,t.max=ca,t.now=ko,t.utc=et,t.unix=ip,t.months=up,t.isDate=gi,t.locale=oi,t.invalid=nr,t.duration=ut,t.isMoment=pt,t.weekdays=ep,t.parseZone=rp,t.localeData=wt,t.isDuration=tf,t.monthsShort=fp,t.weekdaysMin=sp,t.defineLocale=bu,t.updateLocale=ll,t.locales=al,t.weekdaysShort=op,t.normalizeUnits=nt,t.relativeTimeRounding=yw,t.relativeTimeThreshold=pw,t.calendarFormat=uv,t.prototype=n,t.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"YYYY-[W]WW",MONTH:"YYYY-MM"},t});define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(n,t){t.isDark=!1;t.cssClass="ace-chrome";t.cssText='.ace-chrome .ace_gutter {background: #ebebeb;color: #333;overflow : hidden;}.ace-chrome .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-chrome {background-color: #FFFFFF;color: black;}.ace-chrome .ace_cursor {color: black;}.ace-chrome .ace_invisible {color: rgb(191, 191, 191);}.ace-chrome .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-chrome .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-chrome .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-chrome .ace_invalid {background-color: rgb(153, 0, 0);color: white;}.ace-chrome .ace_fold {}.ace-chrome .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-chrome .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-chrome .ace_support.ace_type,.ace-chrome .ace_support.ace_class.ace-chrome .ace_support.ace_other {color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter {font-style:italic;color:#FD971F;}.ace-chrome .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-chrome .ace_comment {color: #236e24;}.ace-chrome .ace_comment.ace_doc {color: #236e24;}.ace-chrome .ace_comment.ace_doc.ace_tag {color: #236e24;}.ace-chrome .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-chrome .ace_variable {color: rgb(49, 132, 149);}.ace-chrome .ace_xml-pe {color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-chrome .ace_heading {color: rgb(12, 7, 255);}.ace-chrome .ace_list {color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_gutter-active-line {background-color : #dcdcdc;}.ace-chrome .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_keyword,.ace-chrome .ace_meta.ace_tag {color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-chrome .ace_string {color: #1A1AA6;}.ace-chrome .ace_entity.ace_other.ace_attribute-name {color: #994409;}.ace-chrome .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var i=n("../lib/dom");i.importCssString(t.cssText,t.cssClass)});define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(n,t){"use strict";var u=n("../lib/oop"),r=n("./text_highlight_rules").TextHighlightRules,i=function(){var n="[_:a-zA-ZÀ-￿][-_:.a-zA-Z0-9À-￿]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.xml-decl.xml","keyword.xml-decl.xml"],regex:"(<\\?)(xml)(?=[\\s])",next:"xml_decl",caseInsensitive:!0},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+n+")",next:"processing_instruction"},{token:"comment.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"<\/"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],xml_decl:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:"(?:"+n+":)?"+n+""},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],processing_instruction:[{token:"punctuation.instruction.xml",regex:"\\?>",next:"start"},{defaultToken:"instruction.xml"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+n+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(<\/))((?:"+n+":)?"+n+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:"(?:"+n+":)?"+n+""},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]};this.constructor===i&&this.normalizeRules()};(function(){this.embedTagRules=function(n,t,i){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+i+".tag-name.xml"],regex:"(<)("+i+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:t+"start"}]});this.$rules[i+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(n,t,i){return i.splice(0),this.token}}];this.embedRules(n,t,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+i+".tag-name.xml"],regex:"(<\/)("+i+"(?=\\s|>|$))",next:i+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(r.prototype);u.inherits(i,r);t.XmlHighlightRules=i});define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,t){"use strict";function i(n,t){return n.type.lastIndexOf(t+".xml")>-1}var f=n("../../lib/oop"),e=n("../behaviour").Behaviour,r=n("../../token_iterator").TokenIterator,o=n("../../lib/lang"),u=function(){this.add("string_dquotes","insertion",function(n,t,u,f,e){var s,h,v;if(e=='"'||e=="'"){if(s=e,h=f.doc.getTextRange(u.getSelectionRange()),h!==""&&h!=="'"&&h!='"'&&u.getWrapBehavioursEnabled())return{text:s+h+s,selection:!1};var c=u.getCursorPosition(),y=f.doc.getLine(c.row),l=y.substring(c.column,c.column+1),a=new r(f,c.row,c.column),o=a.getCurrentToken();if(l==s&&(i(o,"attribute-value")||i(o,"string")))return{text:"",selection:[1,1]};if(o||(o=a.stepBackward()),!o)return;while(i(o,"tag-whitespace")||i(o,"whitespace"))o=a.stepBackward();if(v=!l||l.match(/\s/),i(o,"attribute-equals")&&(v||l==">")||i(o,"decl-attribute-equals")&&(v||l=="?"))return{text:s+s,selection:[1,1]}}});this.add("string_dquotes","deletion",function(n,t,i,r,u){var f=r.doc.getTextRange(u),e,o;if(!u.isMultiLine()&&(f=='"'||f=="'")&&(e=r.doc.getLine(u.start.row),o=e.substring(u.start.column+1,u.start.column+2),o==f))return u.end.column++,u});this.add("autoclosing","insertion",function(n,t,u,f,e){var l,v,a,y,p,c;if(e==">"){var h=u.getSelectionRange().start,s=new r(f,h.row,h.column),o=s.getCurrentToken()||s.stepBackward();if(!o||!(i(o,"tag-name")||i(o,"tag-whitespace")||i(o,"attribute-name")||i(o,"attribute-equals")||i(o,"attribute-value")))return;if(i(o,"reference.attribute-value"))return;if(i(o,"attribute-value")&&(l=o.value.charAt(0),(l=='"'||l=="'")&&(v=o.value.charAt(o.value.length-1),a=s.getCurrentTokenColumn()+o.value.length,a>h.column||a==h.column&&l!=v)))return;while(!i(o,"tag-name"))if(o=s.stepBackward(),o.value=="<"){o=s.stepForward();break}return(y=s.getCurrentTokenRow(),p=s.getCurrentTokenColumn(),i(s.stepBackward(),"end-tag-open"))?void 0:(c=o.value,y==h.row&&(c=c.substring(0,h.column-p)),this.voidElements.hasOwnProperty(c.toLowerCase()))?void 0:{text:"><\/"+c+">",selection:[1,1]}}});this.add("autoindent","insertion",function(n,t,i,u,f){var l,a;if(f=="\n"){var o=i.getCursorPosition(),c=u.getLine(o.row),s=new r(u,o.row,o.column),e=s.getCurrentToken();if(e&&e.type.indexOf("tag-close")!==-1){if(e.value=="/>")return;while(e&&e.type.indexOf("tag-name")===-1)e=s.stepBackward();if(!e)return;if(l=e.value,a=s.getCurrentTokenRow(),e=s.stepBackward(),!e||e.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[l]){var v=u.getTokenAt(o.row,o.column+1),c=u.getLine(a),y=this.$getIndent(c),h=y+u.getTabString();return v&&v.value==="<\/"?{text:"\n"+h+"\n"+y,selection:[1,h.length,1,h.length]}:{text:"\n"+h}}}}})};f.inherits(u,e);t.XmlBehaviour=u});define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/range","ace/mode/folding/fold_mode","ace/token_iterator"],function(n,t){"use strict";function i(n,t){return n.type.lastIndexOf(t+".xml")>-1}var f=n("../../lib/oop"),h=n("../../lib/lang"),r=n("../../range").Range,e=n("./fold_mode").FoldMode,o=n("../../token_iterator").TokenIterator,s=t.FoldMode=function(n,t){e.call(this);this.voidElements=n||{};this.optionalEndTags=f.mixin({},this.voidElements);t&&f.mixin(this.optionalEndTags,t)},u;f.inherits(s,e);u=function(){this.tagName="";this.closing=!1;this.selfClosing=!1;this.start={row:0,column:0};this.end={row:0,column:0}},function(){this.getFoldWidget=function(n,t,i){var r=this._getFirstTagInLine(n,i);return r?r.closing||!r.tagName&&r.selfClosing?t=="markbeginend"?"end":"":!r.tagName||r.selfClosing||this.voidElements.hasOwnProperty(r.tagName.toLowerCase())?"":this._findEndTagInLine(n,i,r.tagName,r.end.column)?"":"start":""};this._getFirstTagInLine=function(n,t){for(var o=n.getTokens(t),f=new u,r,e=0;e<o.length;e++){if(r=o[e],i(r,"tag-open")){if(f.end.column=f.start.column+r.value.length,f.closing=i(r,"end-tag-open"),r=o[++e],!r)return null;for(f.tagName=r.value,f.end.column+=r.value.length,e++;e<o.length;e++)if(r=o[e],f.end.column+=r.value.length,i(r,"tag-close")){f.selfClosing=r.value=="/>";break}return f}if(i(r,"tag-close"))return f.selfClosing=r.value=="/>",f;f.start.column+=r.value.length}return null};this._findEndTagInLine=function(n,t,r,u){for(var o=n.getTokens(t),s=0,f,e=0;e<o.length;e++)if((f=o[e],s+=f.value.length,!(s<u))&&i(f,"end-tag-open")&&(f=o[e+1],f&&f.value==r))return!0;return!1};this._readTagForward=function(n){var t=n.getCurrentToken(),r;if(!t)return null;r=new u;do if(i(t,"tag-open"))r.closing=i(t,"end-tag-open"),r.start.row=n.getCurrentTokenRow(),r.start.column=n.getCurrentTokenColumn();else if(i(t,"tag-name"))r.tagName=t.value;else if(i(t,"tag-close"))return r.selfClosing=t.value=="/>",r.end.row=n.getCurrentTokenRow(),r.end.column=n.getCurrentTokenColumn()+t.value.length,n.stepForward(),r;while(t=n.stepForward());return null};this._readTagBackward=function(n){var t=n.getCurrentToken(),r;if(!t)return null;r=new u;do{if(i(t,"tag-open"))return r.closing=i(t,"end-tag-open"),r.start.row=n.getCurrentTokenRow(),r.start.column=n.getCurrentTokenColumn(),n.stepBackward(),r;i(t,"tag-name")?r.tagName=t.value:i(t,"tag-close")&&(r.selfClosing=t.value=="/>",r.end.row=n.getCurrentTokenRow(),r.end.column=n.getCurrentTokenColumn()+t.value.length)}while(t=n.stepBackward());return null};this._pop=function(n,t){while(n.length){var i=n[n.length-1];if(!t||i.tagName==t.tagName)return n.pop();if(this.optionalEndTags.hasOwnProperty(i.tagName)){n.pop();continue}return null}};this.getFoldWidgetRange=function(n,t,i){var f=this._getFirstTagInLine(n,i),c,e,u,h,s,l;if(!f)return null;if(c=f.closing||f.selfClosing,e=[],c)for(s=new o(n,i,f.end.column),l={row:i,column:f.start.column};u=this._readTagBackward(s);){if(u.selfClosing){if(!e.length)return u.start.column+=u.tagName.length+2,u.end.column-=2,r.fromPoints(u.start,u.end);continue}if(u.closing)e.push(u);else if(this._pop(e,u),e.length==0)return u.start.column+=u.tagName.length+2,u.start.row==u.end.row&&u.start.column<u.end.column&&(u.start.column=u.end.column),r.fromPoints(u.start,l)}else for(s=new o(n,i,f.start.column),h={row:i,column:f.start.column+f.tagName.length+2},f.start.row==f.end.row&&(h.column=f.end.column);u=this._readTagForward(s);){if(u.selfClosing){if(!e.length)return u.start.column+=u.tagName.length+2,u.end.column-=2,r.fromPoints(u.start,u.end);continue}if(u.closing){if(this._pop(e,u),e.length==0)return r.fromPoints(h,u.start)}else e.push(u)}}}.call(s.prototype)});define("ace/mode/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/xml_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/xml","ace/worker/worker_client"],function(n,t){"use strict";var r=n("../lib/oop"),u=n("../lib/lang"),f=n("./text").Mode,e=n("./xml_highlight_rules").XmlHighlightRules,o=n("./behaviour/xml").XmlBehaviour,s=n("./folding/xml").FoldMode,h=n("../worker/worker_client").WorkerClient,i=function(){this.HighlightRules=e;this.$behaviour=new o;this.foldingRules=new s};r.inherits(i,f),function(){this.voidElements=u.arrayToMap([]);this.blockComment={start:"<!--",end:"-->"};this.createWorker=function(n){var t=new h(["ace"],"ace/mode/xml_worker","Worker");return t.attachToDocument(n.getDocument()),t.on("error",function(t){n.setAnnotations(t.data)}),t.on("terminate",function(){n.clearAnnotations()}),t};this.$id="ace/mode/xml"}.call(i.prototype);t.Mode=i}),function(n){function r(n,t){for(var r=n,u="",i,f;r;){if(i=t[r],typeof i=="string")return i+u;if(i)return i.location.replace(/\/*$/,"/")+(u||i.main||i.name);if(i===!1)return"";if(f=r.lastIndexOf("/"),f===-1)break;u=r.substr(f)+u;r=r.slice(0,f)}return n}if((typeof n.window=="undefined"||!n.document)&&(!n.require||!n.define)){n.console||(n.console=function(){var n=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:n})},n.console.error=n.console.warn=n.console.log=n.console.trace=n.console);n.window=n;n.ace=n;n.onerror=function(n,t,i,r,u){postMessage({type:"error",data:{message:n,data:u.data,file:t,line:i,col:r,stack:u.stack}})};n.normalizeModule=function(t,i){var r,u,f;if(i.indexOf("!")!==-1)return r=i.split("!"),n.normalizeModule(t,r[0])+"!"+n.normalizeModule(t,r[1]);if(i.charAt(0)==".")for(u=t.split("/").slice(0,-1).join("/"),i=(u?u+"/":"")+i;i.indexOf(".")!==-1&&f!=i;)f=i,i=i.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"");return i};n.require=function(t,i){var u,f;if(i||(i=t,t=null),!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");return(i=n.normalizeModule(t,i),u=n.require.modules[i],u)?(u.initialized||(u.initialized=!0,u.exports=u.factory().exports),u.exports):n.require.tlns?(f=r(i,n.require.tlns),f.slice(-3)!=".js"&&(f+=".js"),n.require.id=i,n.require.modules[i]={},importScripts(f),n.require(t,i)):console.log("unable to load "+i)};n.require.modules={};n.require.tlns={};n.define=function(t,i,r){if(arguments.length==2?(r=i,typeof t!="string"&&(i=t,t=n.require.id)):arguments.length==1&&(r=t,i=[],t=n.require.id),typeof r!="function"){n.require.modules[t]={exports:r,initialized:!0};return}i.length||(i=["require","exports","module"]);var u=function(i){return n.require(t,i)};n.require.modules[t]={exports:{},factory:function(){var n=this,t=r.apply(this,i.map(function(t){switch(t){case"require":return u;case"exports":return n.exports;case"module":return n;default:return u(t)}}));return t&&(n.exports=t),n}}};n.define.amd={};require.tlns={};n.initBaseUrls=function(n){for(var t in n)require.tlns[t]=n[t]};n.initSender=function(){var i=n.require("ace/lib/event_emitter").EventEmitter,r=n.require("ace/lib/oop"),t=function(){};return function(){r.implement(this,i);this.callback=function(n,t){postMessage({type:"call",id:t,data:n})};this.emit=function(n,t){postMessage({type:"event",name:n,data:t})}}.call(t.prototype),new t};var t=n.main=null,i=n.sender=null;n.onmessage=function(r){var u=r.data,f;if(u.event&&i)i._signal(u.event,u.data);else if(u.command)if(t[u.command])t[u.command].apply(t,u.args);else{if(!n[u.command])throw new Error("Unknown command:"+u.command);n[u.command].apply(n,u.args)}else u.init&&(n.initBaseUrls(u.tlns),require("ace/lib/es5-shim"),i=n.sender=n.initSender(),f=require(u.module)[u.classname],t=n.main=new f(i))}}}(this);define("ace/lib/oop",["require","exports","module"],function(n,t){"use strict";t.inherits=function(n,t){n.super_=t;n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})};t.mixin=function(n,t){for(var i in t)n[i]=t[i];return n};t.implement=function(n,i){t.mixin(n,i)}});define("ace/lib/lang",["require","exports","module"],function(n,t){"use strict";t.last=function(n){return n[n.length-1]};t.stringReverse=function(n){return n.split("").reverse().join("")};t.stringRepeat=function(n,t){for(var i="";t>0;)t&1&&(i+=n),(t>>=1)&&(n+=n);return i};var r=/^\s\s*/,u=/\s\s*$/;t.stringTrimLeft=function(n){return n.replace(r,"")};t.stringTrimRight=function(n){return n.replace(u,"")};t.copyObject=function(n){var i={},t;for(t in n)i[t]=n[t];return i};t.copyArray=function(n){for(var i=[],t=0,r=n.length;t<r;t++)i[t]=n[t]&&typeof n[t]=="object"?this.copyObject(n[t]):n[t];return i};t.deepCopy=function i(n){var r,t;if(typeof n!="object"||!n)return n;if(Array.isArray(n)){for(r=[],t=0;t<n.length;t++)r[t]=i(n[t]);return r}if(Object.prototype.toString.call(n)!=="[object Object]")return n;r={};for(t in n)r[t]=i(n[t]);return r};t.arrayToMap=function(n){for(var i={},t=0;t<n.length;t++)i[n[t]]=1;return i};t.createMap=function(n){var i=Object.create(null),t;for(t in n)i[t]=n[t];return i};t.arrayRemove=function(n,t){for(var i=0;i<=n.length;i++)t===n[i]&&n.splice(i,1)};t.escapeRegExp=function(n){return n.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")};t.escapeHTML=function(n){return n.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")};t.getMatchOffsets=function(n,t){var i=[];return n.replace(t,function(n){i.push({offset:arguments[arguments.length-2],length:n.length})}),i};t.deferredCall=function(n){var i=null,r=function(){i=null;n()},t=function(n){return t.cancel(),i=setTimeout(r,n||0),t};return t.schedule=t,t.call=function(){return this.cancel(),n(),t},t.cancel=function(){return clearTimeout(i),i=null,t},t.isPending=function(){return i},t};t.delayedCall=function(n,t){var i=null,u=function(){i=null;n()},r=function(n){i==null&&(i=setTimeout(u,n||t))};return r.delay=function(n){i&&clearTimeout(i);i=setTimeout(u,n||t)},r.schedule=r,r.call=function(){this.cancel();n()},r.cancel=function(){i&&clearTimeout(i);i=null},r.isPending=function(){return i},r}});define("ace/range",["require","exports","module"],function(n,t){"use strict";var r=function(n,t){return n.row-t.row||n.column-t.column},i=function(n,t,i,r){this.start={row:n,column:t};this.end={row:i,column:r}};(function(){this.isEqual=function(n){return this.start.row===n.start.row&&this.end.row===n.end.row&&this.start.column===n.start.column&&this.end.column===n.end.column};this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"};this.contains=function(n,t){return this.compare(n,t)==0};this.compareRange=function(n){var t,r=n.end,i=n.start;return t=this.compare(r.row,r.column),t==1?(t=this.compare(i.row,i.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(i.row,i.column),t==-1?-1:t==1?42:0)};this.comparePoint=function(n){return this.compare(n.row,n.column)};this.containsRange=function(n){return this.comparePoint(n.start)==0&&this.comparePoint(n.end)==0};this.intersects=function(n){var t=this.compareRange(n);return t==-1||t==0||t==1};this.isEnd=function(n,t){return this.end.row==n&&this.end.column==t};this.isStart=function(n,t){return this.start.row==n&&this.start.column==t};this.setStart=function(n,t){typeof n=="object"?(this.start.column=n.column,this.start.row=n.row):(this.start.row=n,this.start.column=t)};this.setEnd=function(n,t){typeof n=="object"?(this.end.column=n.column,this.end.row=n.row):(this.end.row=n,this.end.column=t)};this.inside=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)||this.isStart(n,t)?!1:!0:!1};this.insideStart=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)?!1:!0:!1};this.insideEnd=function(n,t){return this.compare(n,t)==0?this.isStart(n,t)?!1:!0:!1};this.compare=function(n,t){return!this.isMultiLine()&&n===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:n<this.start.row?-1:n>this.end.row?1:this.start.row===n?t>=this.start.column?0:-1:this.end.row===n?t<=this.end.column?0:1:0};this.compareStart=function(n,t){return this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.compareEnd=function(n,t){return this.end.row==n&&this.end.column==t?1:this.compare(n,t)};this.compareInside=function(n,t){return this.end.row==n&&this.end.column==t?1:this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.clipRows=function(n,t){var r,u;return this.end.row>t?r={row:t+1,column:0}:this.end.row<n&&(r={row:n,column:0}),this.start.row>t?u={row:t+1,column:0}:this.start.row<n&&(u={row:n,column:0}),i.fromPoints(u||this.start,r||this.end)};this.extend=function(n,t){var r=this.compare(n,t),u,f;return r==0?this:(r==-1?u={row:n,column:t}:f={row:n,column:t},i.fromPoints(u||this.start,f||this.end))};this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column};this.isMultiLine=function(){return this.start.row!==this.end.row};this.clone=function(){return i.fromPoints(this.start,this.end)};this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)};this.toScreenRange=function(n){var t=n.documentToScreenPosition(this.start),r=n.documentToScreenPosition(this.end);return new i(t.row,t.column,r.row,r.column)};this.moveBy=function(n,t){this.start.row+=n;this.start.column+=t;this.end.row+=n;this.end.column+=t}}).call(i.prototype);i.fromPoints=function(n,t){return new i(n.row,n.column,t.row,t.column)};i.comparePoints=r;i.comparePoints=function(n,t){return n.row-t.row||n.column-t.column};t.Range=i});define("ace/apply_delta",["require","exports","module"],function(n,t){"use strict";t.applyDelta=function(n,t){var i=t.start.row,u=t.start.column,r=n[i]||"",o,s,e,f;switch(t.action){case"insert":o=t.lines;o.length===1?n[i]=r.substring(0,u)+t.lines[0]+r.substring(u):(s=[i,1].concat(t.lines),n.splice.apply(n,s),n[i]=r.substring(0,u)+n[i],n[i+t.lines.length-1]+=r.substring(u));break;case"remove":e=t.end.column;f=t.end.row;i===f?n[i]=r.substring(0,u)+r.substring(e):n.splice(i,f-i+1,r.substring(0,u)+n[f].substring(e))}}});define("ace/lib/event_emitter",["require","exports","module"],function(n,t){"use strict";var i={},r=function(){this.propagationStopped=!0},u=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(n,t){var i,f,e;if(this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={}),i=this._eventRegistry[n]||[],f=this._defaultHandlers[n],i.length||f){for(typeof t=="object"&&t||(t={}),t.type||(t.type=n),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=u),i=i.slice(),e=0;e<i.length;e++)if(i[e](t,this),t.propagationStopped)break;if(f&&!t.defaultPrevented)return f(t,this)}};i._signal=function(n,t){var i=(this._eventRegistry||{})[n],r;if(i)for(i=i.slice(),r=0;r<i.length;r++)i[r](t,this)};i.once=function(n,t){var i=this;t&&this.addEventListener(n,function r(){i.removeEventListener(n,r);t.apply(null,arguments)})};i.setDefaultHandler=function(n,t){var i=this._defaultHandlers,f,r,u;i||(i=this._defaultHandlers={_disabled_:{}});i[n]&&(f=i[n],r=i._disabled_[n],r||(i._disabled_[n]=r=[]),r.push(f),u=r.indexOf(t),u!=-1&&r.splice(u,1));i[n]=t};i.removeDefaultHandler=function(n,t){var r=this._defaultHandlers,i,f,u;r&&(i=r._disabled_[n],r[n]==t?(f=r[n],i&&this.setDefaultHandler(n,i.pop())):i&&(u=i.indexOf(t),u!=-1&&i.splice(u,1)))};i.on=i.addEventListener=function(n,t,i){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[n];return r||(r=this._eventRegistry[n]=[]),r.indexOf(t)==-1&&r[i?"unshift":"push"](t),t};i.off=i.removeListener=i.removeEventListener=function(n,t){var i,r;(this._eventRegistry=this._eventRegistry||{},i=this._eventRegistry[n],i)&&(r=i.indexOf(t),r!==-1&&i.splice(r,1))};i.removeAllListeners=function(n){this._eventRegistry&&(this._eventRegistry[n]=[])};t.EventEmitter=i});define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(n,t){"use strict";var i=n("./lib/oop"),r=n("./lib/event_emitter").EventEmitter,u=t.Anchor=function(n,t,i){this.$onChange=this.onChange.bind(this);this.attach(n);typeof i=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){function n(n,t,i){var r=i?n.column<=t.column:n.column<t.column;return n.row<t.row||n.row==t.row&&r}function t(t,i,r){var f=t.action=="insert",o=(f?1:-1)*(t.end.row-t.start.row),s=(f?1:-1)*(t.end.column-t.start.column),u=t.start,e=f?u:t.end;return n(i,u,r)?{row:i.row,column:i.column}:n(e,i,!r)?{row:i.row+o,column:i.column+(i.row==e.row?s:0)}:{row:u.row,column:u.column}}i.implement(this,r);this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)};this.getDocument=function(){return this.document};this.$insertRight=!1;this.onChange=function(n){if((n.start.row!=n.end.row||n.start.row==this.row)&&!(n.start.row>this.row)){var i=t(n,{row:this.row,column:this.column},this.$insertRight);this.setPosition(i.row,i.column,!0)}};this.setPosition=function(n,t,i){var r,u;(r=i?{row:n,column:t}:this.$clipPositionToDocument(n,t),this.row!=r.row||this.column!=r.column)&&(u={row:this.row,column:this.column},this.row=r.row,this.column=r.column,this._signal("change",{old:u,value:r}))};this.detach=function(){this.document.removeEventListener("change",this.$onChange)};this.attach=function(n){this.document=n||this.document;this.document.on("change",this.$onChange)};this.$clipPositionToDocument=function(n,t){var i={};return n>=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):n<0?(i.row=0,i.column=0):(i.row=n,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),t<0&&(i.column=0),i}}).call(u.prototype)});define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(n,t){"use strict";var u=n("./lib/oop"),f=n("./apply_delta").applyDelta,e=n("./lib/event_emitter").EventEmitter,i=n("./range").Range,o=n("./anchor").Anchor,r=function(n){this.$lines=[""];n.length===0?this.$lines=[""]:Array.isArray(n)?this.insertMergedLines({row:0,column:0},n):this.insert({row:0,column:0},n)};(function(){u.implement(this,e);this.setValue=function(n){var t=this.getLength()-1;this.remove(new i(0,0,t,this.getLine(t).length));this.insert({row:0,column:0},n)};this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())};this.createAnchor=function(n,t){return new o(this,n,t)};this.$split="aaa".split(/a/).length===0?function(n){return n.replace(/\r\n|\r/g,"\n").split("\n")}:function(n){return n.split(/\r\n|\r|\n/)};this.$detectNewLine=function(n){var t=n.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n";this._signal("changeNewLineMode")};this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}};this.$autoNewLine="";this.$newLineMode="auto";this.setNewLineMode=function(n){this.$newLineMode!==n&&(this.$newLineMode=n,this._signal("changeNewLineMode"))};this.getNewLineMode=function(){return this.$newLineMode};this.isNewLine=function(n){return n=="\r\n"||n=="\r"||n=="\n"};this.getLine=function(n){return this.$lines[n]||""};this.getLines=function(n,t){return this.$lines.slice(n,t+1)};this.getAllLines=function(){return this.getLines(0,this.getLength())};this.getLength=function(){return this.$lines.length};this.getTextRange=function(n){return this.getLinesForRange(n).join(this.getNewLineCharacter())};this.getLinesForRange=function(n){var t,i;return n.start.row===n.end.row?t=[this.getLine(n.start.row).substring(n.start.column,n.end.column)]:(t=this.getLines(n.start.row,n.end.row),t[0]=(t[0]||"").substring(n.start.column),i=t.length-1,n.end.row-n.start.row==i&&(t[i]=t[i].substring(0,n.end.column))),t};this.insertLines=function(n,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(n,t)};this.removeLines=function(n,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(n,t)};this.insertNewLine=function(n){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(n,["",""])};this.insert=function(n,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(n,this.$split(t))};this.insertInLine=function(n,t){var r=this.clippedPos(n.row,n.column),i=this.pos(n.row,n.column+t.length);return this.applyDelta({start:r,end:i,action:"insert",lines:[t]},!0),this.clonePos(i)};this.clippedPos=function(n,t){var i=this.getLength(),r;return n===undefined?n=i:n<0?n=0:n>=i&&(n=i-1,t=undefined),r=this.getLine(n),t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:n,column:t}};this.clonePos=function(n){return{row:n.row,column:n.column}};this.pos=function(n,t){return{row:n,column:t}};this.$clipPosition=function(n){var t=this.getLength();return n.row>=t?(n.row=Math.max(0,t-1),n.column=this.getLine(t-1).length):(n.row=Math.max(0,n.row),n.column=Math.min(Math.max(n.column,0),this.getLine(n.row).length)),n};this.insertFullLines=function(n,t){n=Math.min(Math.max(n,0),this.getLength());var i=0;n<this.getLength()?(t=t.concat([""]),i=0):(t=[""].concat(t),n--,i=this.$lines[n].length);this.insertMergedLines({row:n,column:i},t)};this.insertMergedLines=function(n,t){var i=this.clippedPos(n.row,n.column),r={row:i.row+t.length-1,column:(t.length==1?i.column:0)+t[t.length-1].length};return this.applyDelta({start:i,end:r,action:"insert",lines:t}),this.clonePos(r)};this.remove=function(n){var t=this.clippedPos(n.start.row,n.start.column),i=this.clippedPos(n.end.row,n.end.column);return this.applyDelta({start:t,end:i,action:"remove",lines:this.getLinesForRange({start:t,end:i})}),this.clonePos(t)};this.removeInLine=function(n,t,i){var r=this.clippedPos(n,t),u=this.clippedPos(n,i);return this.applyDelta({start:r,end:u,action:"remove",lines:this.getLinesForRange({start:r,end:u})},!0),this.clonePos(r)};this.removeFullLines=function(n,t){n=Math.min(Math.max(0,n),this.getLength()-1);t=Math.min(Math.max(0,t),this.getLength()-1);var u=t==this.getLength()-1&&n>0,f=t<this.getLength()-1,e=u?n-1:n,s=u?this.getLine(e).length:0,o=f?t+1:t,h=f?0:this.getLine(o).length,r=new i(e,s,o,h),c=this.$lines.slice(n,t+1);return this.applyDelta({start:r.start,end:r.end,action:"remove",lines:this.getLinesForRange(r)}),c};this.removeNewLine=function(n){n<this.getLength()-1&&n>=0&&this.applyDelta({start:this.pos(n,this.getLine(n).length),end:this.pos(n+1,0),action:"remove",lines:["",""]})};this.replace=function(n,t){if(n instanceof i||(n=i.fromPoints(n.start,n.end)),t.length===0&&n.isEmpty())return n.start;if(t==this.getTextRange(n))return n.end;this.remove(n);var r;return r=t?this.insert(n.start,t):n.start,r};this.applyDeltas=function(n){for(var t=0;t<n.length;t++)this.applyDelta(n[t])};this.revertDeltas=function(n){for(var t=n.length-1;t>=0;t--)this.revertDelta(n[t])};this.applyDelta=function(n,t){var r=n.action=="insert";(r?n.lines.length<=1&&!n.lines[0]:!i.comparePoints(n.start,n.end))||(r&&n.lines.length>2e4&&this.$splitAndapplyLargeDelta(n,2e4),f(this.$lines,n,t),this._signal("change",n))};this.$splitAndapplyLargeDelta=function(n,t){var o=n.lines,s=o.length,f=n.start.row,e=n.start.column,r=0,i=0,u;do{if(r=i,i+=t-1,u=o.slice(r,i),i>s){n.lines=u;n.start.row=f+r;n.start.column=e;break}u.push("");this.applyDelta({start:this.pos(f+r,e),end:this.pos(f+i,e=0),action:n.action,lines:u},!0)}while(1)};this.revertDelta=function(n){this.applyDelta({start:this.clonePos(n.start),end:this.clonePos(n.end),action:n.action=="insert"?"remove":"insert",lines:n.lines.slice()})};this.indexToPosition=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,i=t||0,u=r.length;i<u;i++)if(n-=r[i].length+f,n<0)return{row:i,column:n+r[i].length+f};return{row:u-1,column:r[u-1].length}};this.positionToIndex=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,u=0,e=Math.min(n.row,r.length),i=t||0;i<e;++i)u+=r[i].length+f;return u+n.column}}).call(r.prototype);t.Document=r});define("ace/worker/mirror",["require","exports","module","ace/range","ace/document","ace/lib/lang"],function(n,t){"use strict";var f=n("../range").Range,i=n("../document").Document,r=n("../lib/lang"),u=t.Mirror=function(n){this.sender=n;var u=this.doc=new i(""),f=this.deferredUpdate=r.delayedCall(this.onUpdate.bind(this)),t=this;n.on("change",function(n){var i=n.data,r,e;if(i[0].start)u.applyDeltas(i);else for(r=0;r<i.length;r+=2)e=Array.isArray(i[r+1])?{action:"insert",start:i[r],lines:i[r+1]}:{action:"remove",start:i[r],end:i[r+1]},u.applyDelta(e,!0);if(t.$timeout)return f.schedule(t.$timeout);t.onUpdate()})};(function(){this.$timeout=500;this.setTimeout=function(n){this.$timeout=n};this.setValue=function(n){this.doc.setValue(n);this.deferredUpdate.schedule(this.$timeout)};this.getValue=function(n){this.sender.callback(this.doc.getValue(),n)};this.onUpdate=function(){};this.isPending=function(){return this.deferredUpdate.isPending()}}).call(u.prototype)});define("ace/mode/xml/sax",["require","exports","module"],function(){function l(){}function w(n,t,i,r,u){function at(n){if(n>65535){n-=65536;var t=55296+(n>>10),i=56320+(n&1023);return String.fromCharCode(t,i)}return String.fromCharCode(n)}function p(n){var t=n.slice(1,-1);return t in i?i[t]:t.charAt(0)==="#"?at(parseInt(t.substr(1).replace("x","0x"))):(u.error("entity not found:"+n),n)}function ot(t){var i=n.substring(c,t).replace(/&#?\w+;/g,p);o&&a(c);r.characters(i,0,t-c);c=t}function a(t,i){while(t>=st&&(i=vt.exec(n)))w=i.index,st=w+i[0].length,o.lineNumber++;o.columnNumber=t-w+1}for(var w=0,st=0,vt=/.+(?:\r\n?|\n)|.*$/g,o=r.locator,it=[{currentNSMap:t}],yt={},c=0,rt,ut,e,y,l,ft,ht,lt,f,et;;){if(f=n.indexOf("<",c),f<0){n.substr(c).match(/^\s*$/)||(rt=r.document,ut=rt.createTextNode(n.substr(c)),rt.appendChild(ut),r.currentElement=ut);return}f>c&&ot(f);switch(n.charAt(f+1)){case"/":if(e=n.indexOf(">",f+3),y=n.substring(f+2,e),!(it.length>1)){u.fatalError("end tag name not found for: "+y);break}if(l=it.pop(),ft=l.localNSMap,l.tagName!=y&&u.fatalError("end tag name: "+y+" does not match the current start tagName: "+l.tagName),r.endElement(l.uri,l.localName,y),ft)for(ht in ft)r.endPrefixMapping(ht);e++;break;case"?":o&&a(f);e=tt(n,f,r);break;case"!":o&&a(f);e=nt(n,f,r,u);break;default:try{o&&a(f);var s=new v,e=b(n,f,s,p,u),ct=s.length;if(ct&&o){for(lt=h(o,{}),f=0;f<ct;f++)et=s[f],a(et.offset),et.offset=h(o,{});h(lt,o)}!s.closed&&g(n,e,s.tagName,yt)&&(s.closed=!0,i.nbsp||u.warning("unclosed xml attribute"));k(s,r,it);s.uri==="http://www.w3.org/1999/xhtml"&&!s.closed?e=d(n,e,s.tagName,p,r):e++}catch(pt){u.error("element parse error: "+pt);e=-1}}e<0?ot(f+1):c=e}}function h(n,t){return t.lineNumber=n.lineNumber,t.columnNumber=n.columnNumber,t}function b(e,h,c,l,a){for(var w,p=++h,v=o,b,y;;){b=e.charAt(p);switch(b){case"=":if(v===n)w=e.slice(h,p),v=u;else{if(v!==t)throw new Error("attribute equal must after attrName");v=u}break;case"'":case'"':if(v===u){if(h=p+1,p=e.indexOf(b,h),!(p>0))throw new Error("attribute value no end '"+b+"' match");y=e.slice(h,p).replace(/&#?\w+;/g,l);c.add(w,y,h-1);v=r}else{if(v!=i)throw new Error('attribute value must after "="');y=e.slice(h,p).replace(/&#?\w+;/g,l);c.add(w,y,h);a.warning('attribute "'+w+'" missed start quot('+b+")!!");h=p+1;v=r}break;case"/":switch(v){case o:c.setTagName(e.slice(h,p));case r:case f:case s:v=s;c.closed=!0;case i:case n:case t:break;default:throw new Error("attribute invalid close char('/')");}break;case"":a.error("unexpected end of input");case">":switch(v){case o:c.setTagName(e.slice(h,p));break;case i:case n:y=e.slice(h,p);y.slice(-1)==="/"&&(c.closed=!0,y=y.slice(0,-1));case t:v===t&&(y=w);v==i?(a.warning('attribute "'+y+'" missed quot(")!!'),c.add(w,y.replace(/&#?\w+;/g,l),h)):(a.warning('attribute "'+y+'" missed value!! "'+y+'" instead!!'),c.add(y,y,h));break;case u:throw new Error("attribute value missed!!");}return p;case"":b=" ";default:if(b<=" ")switch(v){case o:c.setTagName(e.slice(h,p));v=f;break;case n:w=e.slice(h,p);v=t;break;case i:y=e.slice(h,p).replace(/&#?\w+;/g,l);a.warning('attribute "'+y+'" missed quot(")!!');c.add(w,y,h);case r:v=f}else switch(v){case t:a.warning('attribute "'+w+'" missed value!! "'+w+'" instead!!');c.add(w,w,h);h=p;v=n;break;case r:a.warning('attribute space is required"'+w+'"!!');case f:v=n;h=p;break;case u:v=i;h=p;break;case s:throw new Error("elements closed character '/' and '>' must be connected to");}}p++}}function k(n,t,i){for(var o=n.tagName,s=null,h=i[i.length-1].currentNSMap,c=n.length,r,f,y;c--;){var u=n[c],l=u.qName,p=u.value,f=l.indexOf(":");if(f>0)var r=u.prefix=l.slice(0,f),e=l.slice(f+1),v=r==="xmlns"&&e;else e=l,r=null,v=l==="xmlns"&&"";u.localName=e;v!==!1&&(s==null&&(s={},a(h,h={})),h[v]=s[v]=p,u.uri="http://www.w3.org/2000/xmlns/",t.startPrefixMapping(v,p))}for(c=n.length;c--;)u=n[c],r=u.prefix,r&&(r==="xml"&&(u.uri="http://www.w3.org/XML/1998/namespace"),r!=="xmlns"&&(u.uri=h[r]));if(f=o.indexOf(":"),f>0?(r=n.prefix=o.slice(0,f),e=n.localName=o.slice(f+1)):(r=null,e=n.localName=o),y=n.uri=h[r||""],t.startElement(y,e,o,n),n.closed){if(t.endElement(y,e,o),s)for(r in s)t.endPrefixMapping(r)}else n.currentNSMap=h,n.localNSMap=s,i.push(n)}function d(n,t,i,r,u){if(/^(?:script|textarea)$/i.test(i)){var e=n.indexOf("<\/"+i+">",t),f=n.substring(t+1,e);if(/[&<]/.test(f))return/^script$/i.test(i)?(u.characters(f,0,f.length),e):(f=f.replace(/&#?\w+;/g,r),u.characters(f,0,f.length),e)}return t+1}function g(n,t,i,r){var u=r[i];return u==null&&(u=r[i]=n.lastIndexOf("<\/"+i+">")),u<t}function a(n,t){for(var i in n)t[i]=n[i]}function nt(n,t,i,r){var c=n.charAt(t+2),u,f,e;switch(c){case"-":return n.charAt(t+3)==="-"?(u=n.indexOf("-->",t+4),u>t?(i.comment(n,t+4,u-t-4),u+3):(r.error("Unclosed comment"),-1)):-1;default:if(n.substr(t+3,6)=="CDATA[")return u=n.indexOf("]\]>",t+9),i.startCDATA(),i.characters(n,t+9,u-t-9),i.endCDATA(),u+3;if(f=it(n,t),e=f.length,e>1&&/!doctype/i.test(f[0][0])){var l=f[1][0],o=e>3&&/^public$/i.test(f[2][0])&&f[3][0],s=e>4&&f[4][0],h=f[e-1];return i.startDTD(l,o&&o.replace(/^(['"])(.*?)\1$/,"$2"),s&&s.replace(/^(['"])(.*?)\1$/,"$2")),i.endDTD(),h.index+h[0].length}}return-1}function tt(n,t,i){var u=n.indexOf("?>",t),r,f;return u?(r=n.substring(t,u).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/),r)?(f=r[0].length,i.processingInstruction(r[1],r[2]),u+2):-1:-1}function v(){}function e(n,t){return n.__proto__=t,n}function it(n,t){var i,u=[],r=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(r.lastIndex=t,r.exec(n);i=r.exec(n);)if(u.push(i),i[1])return u}var c=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,y=new RegExp("[\\-\\.0-9"+c.source.slice(1,-1)+"·̀-ͯ\\ux203F-⁀]"),p=new RegExp("^"+c.source+y.source+"*(?::"+c.source+y.source+"*)?$"),o=0,n=1,t=2,u=3,i=4,r=5,f=6,s=7;return l.prototype={parse:function(n,t,i){var r=this.domBuilder;r.startDocument();a(t,t={});w(n,t,i,r,this.errorHandler);r.endDocument()}},v.prototype={setTagName:function(n){if(!p.test(n))throw new Error("invalid tagName:"+n);this.tagName=n},add:function(n,t,i){if(!p.test(n))throw new Error("invalid attribute:"+n);this[this.length++]={qName:n,value:t,offset:i}},length:0,getLocalName:function(n){return this[n].localName},getOffset:function(n){return this[n].offset},getQName:function(n){return this[n].qName},getURI:function(n){return this[n].uri},getValue:function(n){return this[n].value}},e({},e.prototype)instanceof e||(e=function(n,t){function i(){}i.prototype=t;i=new i;for(t in n)i[t]=n[t];return i}),l});define("ace/mode/xml/dom",["require","exports","module"],function(){function c(n,t){for(var i in n)t[i]=n[i]}function r(n,t){var i=n.prototype,u;if(Object.create&&(u=Object.create(t.prototype),i.__proto__=u),!(i instanceof t)){function r(){}r.prototype=t.prototype;r=new r;c(i,r);n.prototype=i=r}i.constructor!=n&&(typeof n!="function"&&console.error("unknow Class:"+n),i.constructor=n)}function o(t,i){if(i instanceof Error)var r=i;else r=this,Error.call(this,n[t]),this.message=n[t],Error.captureStackTrace&&Error.captureStackTrace(this,o);return r.code=t,i&&(this.message=this.message+": "+i),r}function f(){}function l(n,t){this._node=n;this._refresh=t;nt(this)}function nt(n){var i=n._node._inc||n._node.ownerDocument._inc,t;n._inc!=i&&(t=n._refresh(n._node),ni(n,"length",t.length),c(t,n),n._inc=i)}function y(){}function ht(n,t){for(var i=n.length;i--;)if(n[i]===t)return i}function ct(n,t,i,r){if(r?t[ht(t,r)]=i:t[t.length++]=i,n){i.ownerElement=n;var u=n.ownerDocument;u&&(r&&yt(u,n,r),hi(u,n,i))}}function lt(n,t,i){var r=ht(t,i),u,f;if(!(r>=0))throw o(yi,new Error);for(u=t.length-1;r<u;)t[r]=t[++r];t.length=u;n&&(f=n.ownerDocument,f&&(yt(f,n,i),i.ownerElement=null))}function at(n){if(this._features={},n)for(var t in n)this._features=n[t]}function i(){}function vt(n){return n=="<"&&"&lt;"||n==">"&&"&gt;"||n=="&"&&"&amp;"||n=='"'&&"&quot;"||"&#"+n.charCodeAt()+";"}function p(n,t){if(t(n))return!0;if(n=n.firstChild)do if(p(n,t))return!0;while(n=n.nextSibling)}function a(){}function hi(n,t,i){n&&n._inc++;var r=i.namespaceURI;r=="http://www.w3.org/2000/xmlns/"&&(t._nsMap[i.prefix?i.localName:""]=i.value)}function yt(n,t,i){n&&n._inc++;var r=i.namespaceURI;r=="http://www.w3.org/2000/xmlns/"&&delete t._nsMap[i.prefix?i.localName:""]}function tt(n,t,i){var r,u,f;if(n&&n._inc)if(n._inc++,r=t.childNodes,i)r[r.length++]=i;else{for(u=t.firstChild,f=0;u;)r[f++]=u,u=u.nextSibling;r.length=f}}function pt(n,t){var i=t.previousSibling,r=t.nextSibling;return i?i.nextSibling=r:n.firstChild=r,r?r.previousSibling=i:n.lastChild=i,tt(n.ownerDocument,n),t}function wt(n,t,i){var o=t.parentNode,r,u,f;if(o&&o.removeChild(t),t.nodeType===e){if(r=t.firstChild,r==null)return t;u=t.lastChild}else r=u=t;f=i?i.previousSibling:n.lastChild;r.previousSibling=f;u.nextSibling=i;f?f.nextSibling=r:n.firstChild=r;i==null?n.lastChild=u:i.previousSibling=u;do r.parentNode=n;while(r!==u&&(r=r.nextSibling));return tt(n.ownerDocument||n,n),t.nodeType==e&&(t.firstChild=t.lastChild=null),t}function ci(n,t){var r=t.parentNode,i;return r&&(i=n.lastChild,r.removeChild(t),i=n.lastChild),i=n.lastChild,t.parentNode=n,t.previousSibling=i,t.nextSibling=null,i?i.nextSibling=t:n.firstChild=t,n.lastChild=t,tt(n.ownerDocument,n,t),t}function s(){this._nsMap={}}function w(){}function v(){}function it(){}function rt(){}function ut(){}function ft(){}function bt(){}function kt(){}function et(){}function b(){}function ot(){}function dt(){}function k(n,t){var f,i,s,r,c;switch(n.nodeType){case h:var l=n.attributes,a=l.length,i=n.firstChild,u=n.tagName,o=li===n.namespaceURI;for(t.push("<",u),f=0;f<a;f++)k(l.item(f),t,o);if(i||o&&!/^(?:meta|link|img|br|hr|input|button)$/i.test(u)){if(t.push(">"),o&&/^script$/i.test(u))i&&t.push(i.data);else while(i)k(i,t),i=i.nextSibling;t.push("<\/",u,">")}else t.push("/>");return;case fi:case e:for(i=n.firstChild;i;)k(i,t),i=i.nextSibling;return;case d:return t.push(" ",n.name,'="',n.value.replace(/[<&"]/g,vt),'"');case g:return t.push(n.data.replace(/[<&]/g,vt));case ti:return t.push("<![CDATA[",n.data,"]\]>");case ui:return t.push("<!--",n.data,"-->");case ei:s=n.publicId;r=n.systemId;t.push("<!DOCTYPE ",n.name);s?(t.push(' PUBLIC "',s),r&&r!="."&&t.push('" "',r),t.push('">')):r&&r!="."?t.push(' SYSTEM "',r,'">'):(c=n.internalSubset,c&&t.push(" [",c,"]"),t.push(">"));return;case ri:return t.push("<?",n.target," ",n.data,"?>");case ii:return t.push("&",n.nodeName,";");default:t.push("??",n.nodeName)}}function gt(n,t,i){var r,u;switch(t.nodeType){case h:r=t.cloneNode(!1);r.ownerDocument=n;break;case d:i=!0}if(r||(r=t.cloneNode(!1)),r.ownerDocument=n,r.parentNode=null,i)for(u=t.firstChild;u;)r.appendChild(gt(n,u,i)),u=u.nextSibling;return r}function st(n,t,i){var r=new t.constructor,e,o,s,u;for(e in t)o=t[e],typeof o!="object"&&o!=r[e]&&(r[e]=o);t.childNodes&&(r.childNodes=new f);r.ownerDocument=n;switch(r.nodeType){case h:var c=t.attributes,l=r.attributes=new y,a=c.length;for(l._ownerElement=r,s=0;s<a;s++)r.setAttributeNode(st(n,c.item(s),!0));break;case d:i=!0}if(i)for(u=t.firstChild;u;)r.appendChild(st(n,u,i)),u=u.nextSibling;return r}function ni(n,t,i){n[t]=i}var li="http://www.w3.org/1999/xhtml",u={},h=u.ELEMENT_NODE=1,d=u.ATTRIBUTE_NODE=2,g=u.TEXT_NODE=3,ti=u.CDATA_SECTION_NODE=4,ii=u.ENTITY_REFERENCE_NODE=5,ai=u.ENTITY_NODE=6,ri=u.PROCESSING_INSTRUCTION_NODE=7,ui=u.COMMENT_NODE=8,fi=u.DOCUMENT_NODE=9,ei=u.DOCUMENT_TYPE_NODE=10,e=u.DOCUMENT_FRAGMENT_NODE=11,vi=u.NOTATION_NODE=12,t={},n={},pi=t.INDEX_SIZE_ERR=(n[1]="Index size error",1),wi=t.DOMSTRING_SIZE_ERR=(n[2]="DOMString size error",2),bi=t.HIERARCHY_REQUEST_ERR=(n[3]="Hierarchy request error",3),ki=t.WRONG_DOCUMENT_ERR=(n[4]="Wrong document",4),di=t.INVALID_CHARACTER_ERR=(n[5]="Invalid character",5),gi=t.NO_DATA_ALLOWED_ERR=(n[6]="No data allowed",6),nr=t.NO_MODIFICATION_ALLOWED_ERR=(n[7]="No modification allowed",7),yi=t.NOT_FOUND_ERR=(n[8]="Not found",8),tr=t.NOT_SUPPORTED_ERR=(n[9]="Not supported",9),oi=t.INUSE_ATTRIBUTE_ERR=(n[10]="Attribute in use",10),ir=t.INVALID_STATE_ERR=(n[11]="Invalid state",11),rr=t.SYNTAX_ERR=(n[12]="Syntax error",12),ur=t.INVALID_MODIFICATION_ERR=(n[13]="Invalid modification",13),fr=t.NAMESPACE_ERR=(n[14]="Invalid namespace",14),er=t.INVALID_ACCESS_ERR=(n[15]="Invalid access",15);o.prototype=Error.prototype;c(t,o);f.prototype={length:0,item:function(n){return this[n]||null}};l.prototype.item=function(n){return nt(this),this[n]};r(l,f);y.prototype={length:0,item:f.prototype.item,getNamedItem:function(n){for(var i=this.length,t;i--;)if(t=this[i],t.nodeName==n)return t},setNamedItem:function(n){var i=n.ownerElement,t;if(i&&i!=this._ownerElement)throw new o(oi);return t=this.getNamedItem(n.nodeName),ct(this._ownerElement,this,n,t),t},setNamedItemNS:function(n){var i=n.ownerElement,t;if(i&&i!=this._ownerElement)throw new o(oi);return t=this.getNamedItemNS(n.namespaceURI,n.localName),ct(this._ownerElement,this,n,t),t},removeNamedItem:function(n){var t=this.getNamedItem(n);return lt(this._ownerElement,this,t),t},removeNamedItemNS:function(n,t){var i=this.getNamedItemNS(n,t);return lt(this._ownerElement,this,i),i},getNamedItemNS:function(n,t){for(var r=this.length,i;r--;)if(i=this[r],i.localName==t&&i.namespaceURI==n)return i;return null}};at.prototype={hasFeature:function(n,t){var i=this._features[n.toLowerCase()];return i&&(!t||t in i)?!0:!1},createDocument:function(n,t,i){var r=new a,u;return r.implementation=this,r.childNodes=new f,r.doctype=i,i&&r.appendChild(i),t&&(u=r.createElementNS(n,t),r.appendChild(u)),r},createDocumentType:function(n,t,i){var r=new ft;return r.name=n,r.nodeName=n,r.publicId=t,r.systemId=i,r}};i.prototype={firstChild:null,lastChild:null,previousSibling:null,nextSibling:null,attributes:null,parentNode:null,childNodes:null,ownerDocument:null,nodeValue:null,namespaceURI:null,prefix:null,localName:null,insertBefore:function(n,t){return wt(this,n,t)},replaceChild:function(n,t){this.insertBefore(n,t);t&&this.removeChild(t)},removeChild:function(n){return pt(this,n)},appendChild:function(n){return this.insertBefore(n,null)},hasChildNodes:function(){return this.firstChild!=null},cloneNode:function(n){return st(this.ownerDocument||this,this,n)},normalize:function(){for(var n=this.firstChild,t;n;)t=n.nextSibling,t&&t.nodeType==g&&n.nodeType==g?(this.removeChild(t),n.appendData(t.data)):(n.normalize(),n=t)},isSupported:function(n,t){return this.ownerDocument.implementation.hasFeature(n,t)},hasAttributes:function(){return this.attributes.length>0},lookupPrefix:function(n){for(var t=this,i,r;t;){if(i=t._nsMap,i)for(r in i)if(i[r]==n)return r;t=t.nodeType==2?t.ownerDocument:t.parentNode}return null},lookupNamespaceURI:function(n){for(var t=this,i;t;){if(i=t._nsMap,i&&n in i)return i[n];t=t.nodeType==2?t.ownerDocument:t.parentNode}return null},isDefaultNamespace:function(n){var t=this.lookupPrefix(n);return t==null}};c(u,i);c(u,i.prototype);a.prototype={nodeName:"#document",nodeType:fi,doctype:null,documentElement:null,_inc:1,insertBefore:function(n,t){var i,r;if(n.nodeType==e){for(i=n.firstChild;i;)r=i.nextSibling,this.insertBefore(i,t),i=r;return n}return this.documentElement==null&&n.nodeType==1&&(this.documentElement=n),wt(this,n,t),n.ownerDocument=this,n},removeChild:function(n){return this.documentElement==n&&(this.documentElement=null),pt(this,n)},importNode:function(n,t){return gt(this,n,t)},getElementById:function(n){var t=null;return p(this.documentElement,function(i){if(i.nodeType==1&&i.getAttribute("id")==n)return t=i,!0}),t},createElement:function(n){var t=new s,i;return t.ownerDocument=this,t.nodeName=n,t.tagName=n,t.childNodes=new f,i=t.attributes=new y,i._ownerElement=t,t},createDocumentFragment:function(){var n=new b;return n.ownerDocument=this,n.childNodes=new f,n},createTextNode:function(n){var t=new it;return t.ownerDocument=this,t.appendData(n),t},createComment:function(n){var t=new rt;return t.ownerDocument=this,t.appendData(n),t},createCDATASection:function(n){var t=new ut;return t.ownerDocument=this,t.appendData(n),t},createProcessingInstruction:function(n,t){var i=new ot;return i.ownerDocument=this,i.tagName=i.target=n,i.nodeValue=i.data=t,i},createAttribute:function(n){var t=new w;return t.ownerDocument=this,t.name=n,t.nodeName=n,t.localName=n,t.specified=!0,t},createEntityReference:function(n){var t=new et;return t.ownerDocument=this,t.nodeName=n,t},createElementNS:function(n,t){var i=new s,r=t.split(":"),u=i.attributes=new y;return i.childNodes=new f,i.ownerDocument=this,i.nodeName=t,i.tagName=t,i.namespaceURI=n,r.length==2?(i.prefix=r[0],i.localName=r[1]):i.localName=t,u._ownerElement=i,i},createAttributeNS:function(n,t){var i=new w,r=t.split(":");return i.ownerDocument=this,i.nodeName=t,i.name=t,i.namespaceURI=n,i.specified=!0,r.length==2?(i.prefix=r[0],i.localName=r[1]):i.localName=t,i}};r(a,i);s.prototype={nodeType:h,hasAttribute:function(n){return this.getAttributeNode(n)!=null},getAttribute:function(n){var t=this.getAttributeNode(n);return t&&t.value||""},getAttributeNode:function(n){return this.attributes.getNamedItem(n)},setAttribute:function(n,t){var i=this.ownerDocument.createAttribute(n);i.value=i.nodeValue=""+t;this.setAttributeNode(i)},removeAttribute:function(n){var t=this.getAttributeNode(n);t&&this.removeAttributeNode(t)},appendChild:function(n){return n.nodeType===e?this.insertBefore(n,null):ci(this,n)},setAttributeNode:function(n){return this.attributes.setNamedItem(n)},setAttributeNodeNS:function(n){return this.attributes.setNamedItemNS(n)},removeAttributeNode:function(n){return this.attributes.removeNamedItem(n.nodeName)},removeAttributeNS:function(n,t){var i=this.getAttributeNodeNS(n,t);i&&this.removeAttributeNode(i)},hasAttributeNS:function(n,t){return this.getAttributeNodeNS(n,t)!=null},getAttributeNS:function(n,t){var i=this.getAttributeNodeNS(n,t);return i&&i.value||""},setAttributeNS:function(n,t,i){var r=this.ownerDocument.createAttributeNS(n,t);r.value=r.nodeValue=""+i;this.setAttributeNode(r)},getAttributeNodeNS:function(n,t){return this.attributes.getNamedItemNS(n,t)},getElementsByTagName:function(n){return new l(this,function(t){var i=[];return p(t,function(r){r!==t&&r.nodeType==h&&(n==="*"||r.tagName==n)&&i.push(r)}),i})},getElementsByTagNameNS:function(n,t){return new l(this,function(i){var r=[];return p(i,function(u){u!==i&&u.nodeType===h&&(n==="*"||u.namespaceURI===n)&&(t==="*"||u.localName==t)&&r.push(u)}),r})}};a.prototype.getElementsByTagName=s.prototype.getElementsByTagName;a.prototype.getElementsByTagNameNS=s.prototype.getElementsByTagNameNS;r(s,i);w.prototype.nodeType=d;r(w,i);v.prototype={data:"",substringData:function(n,t){return this.data.substring(n,n+t)},appendData:function(n){n=this.data+n;this.nodeValue=this.data=n;this.length=n.length},insertData:function(n,t){this.replaceData(n,0,t)},appendChild:function(){throw new Error(n[3]);},deleteData:function(n,t){this.replaceData(n,t,"")},replaceData:function(n,t,i){var r=this.data.substring(0,n),u=this.data.substring(n+t);i=r+i+u;this.nodeValue=this.data=i;this.length=i.length}};r(v,i);it.prototype={nodeName:"#text",nodeType:g,splitText:function(n){var t=this.data,r=t.substring(n),i;return t=t.substring(0,n),this.data=this.nodeValue=t,this.length=t.length,i=this.ownerDocument.createTextNode(r),this.parentNode&&this.parentNode.insertBefore(i,this.nextSibling),i}};r(it,v);rt.prototype={nodeName:"#comment",nodeType:ui};r(rt,v);ut.prototype={nodeName:"#cdata-section",nodeType:ti};r(ut,v);ft.prototype.nodeType=ei;r(ft,i);bt.prototype.nodeType=vi;r(bt,i);kt.prototype.nodeType=ai;r(kt,i);et.prototype.nodeType=ii;r(et,i);b.prototype.nodeName="#document-fragment";b.prototype.nodeType=e;r(b,i);ot.prototype.nodeType=ri;r(ot,i);dt.prototype.serializeToString=function(n){var t=[];return k(n,t),t.join("")};i.prototype.toString=function(){return dt.prototype.serializeToString(this)};try{if(Object.defineProperty){Object.defineProperty(l.prototype,"length",{get:function(){return nt(this),this.$$length}});Object.defineProperty(i.prototype,"textContent",{get:function(){return si(this)},set:function(n){switch(this.nodeType){case 1:case 11:while(this.firstChild)this.removeChild(this.firstChild);(n||String(n))&&this.appendChild(this.ownerDocument.createTextNode(n));break;default:this.data=n;this.value=value;this.nodeValue=n}}});function si(n){switch(n.nodeType){case 1:case 11:var t=[];for(n=n.firstChild;n;)n.nodeType!==7&&n.nodeType!==8&&t.push(si(n)),n=n.nextSibling;return t.join("");default:return n.nodeValue}}ni=function(n,t,i){n["$$"+t]=i}}}catch(or){}return at});define("ace/mode/xml/dom-parser",["require","exports","module","ace/mode/xml/sax","ace/mode/xml/dom"],function(n){"use strict";function f(n){this.options=n||{locator:{}}}function o(n,t,u){function f(t){var i=n[t],f;if(!i)if(o)i=n.length==2?function(i){n(t,i)}:n;else for(f=arguments.length;--f;)if(i=n[arguments[f]])break;e[t]=i&&function(n){i(n+r(u),n,u)}||function(){}}if(!n){if(t instanceof i)return t;n=t}var e={},o=n instanceof Function;return u=u||{},f("warning","warn"),f("error","warn","warning"),f("fatalError","warn","warning","error"),e}function i(){this.cdata=!1}function t(n,t){t.lineNumber=n.lineNumber;t.columnNumber=n.columnNumber}function r(n){if(n)return"\n@"+(n.systemId||"")+"#[line:"+n.lineNumber+",col:"+n.columnNumber+"]"}function e(n,t,i){return typeof n=="string"?n.substr(t,i):n.length>=t+i||t?new java.lang.String(n,t,i)+"":n}function u(n,t){n.currentElement?n.currentElement.appendChild(t):n.document.appendChild(t)}var s=n("./sax"),h=n("./dom");return f.prototype.parseFromString=function(n,t){var r=this.options,u=new s,f=r.domBuilder||new i,l=r.errorHandler,e=r.locator,c=r.xmlns||{},h={lt:"<",gt:">",amp:"&",quot:'"',apos:"'"};return e&&f.setDocumentLocator(e),u.errorHandler=o(l,f,e),u.domBuilder=r.domBuilder||f,/\/x?html?$/.test(t)&&(h.nbsp=" ",h.copy="©",c[""]="http://www.w3.org/1999/xhtml"),n?u.parse(n,c,h):u.errorHandler.error("invalid document source"),f.document},i.prototype={startDocument:function(){this.document=(new h).createDocument(null,null,null);this.locator&&(this.document.documentURI=this.locator.systemId)},startElement:function(n,i,r,f){var h=this.document,s=h.createElementNS(n,r||i),c=f.length,e;for(u(this,s),this.currentElement=s,this.locator&&t(this.locator,s),e=0;e<c;e++){var n=f.getURI(e),l=f.getValue(e),r=f.getQName(e),o=h.createAttributeNS(n,r);o.getOffset&&t(o.getOffset(1),o);o.value=o.nodeValue=l;s.setAttributeNode(o)}},endElement:function(){var n=this.currentElement,t=n.tagName;this.currentElement=n.parentNode},startPrefixMapping:function(){},endPrefixMapping:function(){},processingInstruction:function(n,i){var r=this.document.createProcessingInstruction(n,i);this.locator&&t(this.locator,r);u(this,r)},ignorableWhitespace:function(){},characters:function(n){var i;n=e.apply(this,arguments);this.currentElement&&n&&(this.cdata?(i=this.document.createCDATASection(n),this.currentElement.appendChild(i)):(i=this.document.createTextNode(n),this.currentElement.appendChild(i)),this.locator&&t(this.locator,i))},skippedEntity:function(){},endDocument:function(){this.document.normalize()},setDocumentLocator:function(n){(this.locator=n)&&(n.lineNumber=0)},comment:function(n){n=e.apply(this,arguments);var i=this.document.createComment(n);this.locator&&t(this.locator,i);u(this,i)},startCDATA:function(){this.cdata=!0},endCDATA:function(){this.cdata=!1},startDTD:function(n,i,r){var f=this.document.implementation,e;f&&f.createDocumentType&&(e=f.createDocumentType(n,i,r),this.locator&&t(this.locator,e),u(this,e))},warning:function(n){console.warn(n,r(this.locator))},error:function(n){console.error(n,r(this.locator))},fatalError:function(n){throw console.error(n,r(this.locator)),n;}},"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(n){i.prototype[n]=function(){return null}}),{DOMParser:f}});define("ace/mode/xml_worker",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/worker/mirror","ace/mode/xml/dom-parser"],function(n,t){"use strict";var u=n("../lib/oop"),e=n("../lib/lang"),i=n("../worker/mirror").Mirror,f=n("./xml/dom-parser").DOMParser,r=t.Worker=function(n){i.call(this,n);this.setTimeout(400);this.context=null};u.inherits(r,i),function(){this.setOptions=function(n){this.context=n.context};this.onUpdate=function(){var i=this.doc.getValue(),t,n;i&&(t=new f,n=[],t.options.errorHandler={fatalError:function(t,i,r){n.push({row:r.lineNumber,column:r.columnNumber,text:i,type:"error"})},error:function(t,i,r){n.push({row:r.lineNumber,column:r.columnNumber,text:i,type:"error"})},warning:function(t,i,r){n.push({row:r.lineNumber,column:r.columnNumber,text:i,type:"warning"})}},t.parseFromString(i),this.sender.emit("error",n))}}.call(r.prototype)});define("ace/lib/es5-shim",["require","exports","module"],function(){function c(){}function y(n){try{return Object.defineProperty(n,"sentinel",{}),"sentinel"in n}catch(t){}}function p(n){return n=+n,n!==n?n=0:n!==0&&n!==1/0&&n!==-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}var k,v,r,d,g,nt,tt,h,lt,f,ut,ft,u;Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,r,i;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);return r=o.call(arguments,1),i=function(){if(this instanceof i){var u=t.apply(this,r.concat(o.call(arguments)));return Object(u)===u?u:this}return t.apply(n,r.concat(o.call(arguments)))},t.prototype&&(c.prototype=t.prototype,i.prototype=new c,c.prototype=null),i});var e=Function.prototype.call,et=Array.prototype,t=Object.prototype,o=et.slice,n=e.bind(t.toString),i=e.bind(t.hasOwnProperty),w,b,l,a,s;if((s=i(t,"__defineGetter__"))&&(w=e.bind(t.__defineGetter__),b=e.bind(t.__defineSetter__),l=e.bind(t.__lookupGetter__),a=e.bind(t.__lookupSetter__)),[1,2].splice(0).length!=2&&(function(){function i(n){var t=new Array(n+2);return t[0]=t[1]=0,t}var n=[],t;return n.splice.apply(n,i(20)),n.splice.apply(n,i(26)),t=n.length,n.splice(5,0,"XXX"),t+1==n.length,t+1==n.length?!0:void 0}()?(k=Array.prototype.splice,Array.prototype.splice=function(n,t){return arguments.length?k.apply(this,[n===void 0?0:n,t===void 0?this.length-n:t].concat(o.call(arguments,2))):[]}):Array.prototype.splice=function(n,t){var r=this.length,i;n>0?n>r&&(n=r):n==void 0?n=0:n<0&&(n=Math.max(r+n,0));n+t<r||(t=r-n);var a=this.slice(n,n+t),e=o.call(arguments,2),f=e.length;if(n===r)f&&this.push.apply(this,e);else{var h=Math.min(t,r-n),u=n+h,s=u+f-h,l=r-u,c=r-h;if(s<u)for(i=0;i<l;++i)this[s+i]=this[u+i];else if(s>u)for(i=l;i--;)this[s+i]=this[u+i];if(f&&n===c)this.length=c,this.push.apply(this,e);else for(this.length=c+f,i=0;i<f;++i)this[n+i]=e[i]}return a}),Array.isArray||(Array.isArray=function(t){return n(t)=="[object Array]"}),v=Object("a"),r=v[0]!="a"||!(0 in v),Array.prototype.forEach||(Array.prototype.forEach=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=arguments[1],i=-1,s=f.length>>>0;if(n(t)!="[object Function]")throw new TypeError;while(++i<s)i in f&&t.call(o,f[i],i,e)}),Array.prototype.map||(Array.prototype.map=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=Array(o),h=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)i in f&&(s[i]=t.call(h,f[i],i,e));return s}),Array.prototype.filter||(Array.prototype.filter=function(t){var o=u(this),f=r&&n(this)=="[object String]"?this.split(""):o,h=f.length>>>0,s=[],e,c=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<h;i++)i in f&&(e=f[i],t.call(c,e,i,o)&&s.push(e));return s}),Array.prototype.every||(Array.prototype.every=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&!t.call(s,f[i],i,e))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&t.call(s,f[i],i,e))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(t){var s=u(this),f=r&&n(this)=="[object String]"?this.split(""):s,o=f.length>>>0,i,e;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!o&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");if(i=0,arguments.length>=2)e=arguments[1];else do{if(i in f){e=f[i++];break}if(++i>=o)throw new TypeError("reduce of empty array with no initial value");}while(1);for(;i<o;i++)i in f&&(e=t.call(void 0,e,f[i],i,s));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(t){var o=u(this),e=r&&n(this)=="[object String]"?this.split(""):o,s=e.length>>>0,f,i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!s&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");if(i=s-1,arguments.length>=2)f=arguments[1];else do{if(i in e){f=e[i--];break}if(--i<0)throw new TypeError("reduceRight of empty array with no initial value");}while(1);do i in this&&(f=t.call(void 0,f,e[i],i,o));while(i--);return f}),Array.prototype.indexOf&&[0,1].indexOf(1,2)==-1||(Array.prototype.indexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=0,arguments.length>1&&(i=p(arguments[1])),i=i>=0?i:Math.max(0,e+i);i<e;i++)if(i in f&&f[i]===t)return i;return-1}),Array.prototype.lastIndexOf&&[0,1].lastIndexOf(0,-3)==-1||(Array.prototype.lastIndexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=e-1,arguments.length>1&&(i=Math.min(i,p(arguments[1]))),i=i>=0?i:e-Math.abs(i);i>=0;i--)if(i in f&&t===f[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(n){return n.__proto__||(n.constructor?n.constructor.prototype:t)}),Object.getOwnPropertyDescriptor||(d="Object.getOwnPropertyDescriptor called on a non-object: ",Object.getOwnPropertyDescriptor=function(n,r){var u,o,f,e;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(d+n);if(i(n,r))return(u={enumerable:!0,configurable:!0},s&&(o=n.__proto__,n.__proto__=t,f=l(n,r),e=a(n,r),n.__proto__=o,f||e))?(f&&(u.get=f),e&&(u.set=e),u):(u.value=n[r],u)}),Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(n){return Object.keys(n)}),Object.create||(g=Object.prototype.__proto__===null?function(){return{__proto__:null}}:function(){var n={},t;for(t in n)n[t]=null;return n.constructor=n.hasOwnProperty=n.propertyIsEnumerable=n.isPrototypeOf=n.toLocaleString=n.toString=n.valueOf=n.__proto__=null,n},Object.create=function(n,t){var i,r;if(n===null)i=g();else{if(typeof n!="object")throw new TypeError("typeof prototype["+typeof n+"] != 'object'");r=function(){};r.prototype=n;i=new r;i.__proto__=n}return t!==void 0&&Object.defineProperties(i,t),i}),Object.defineProperty&&(nt=y({}),tt=typeof document=="undefined"||y(document.createElement("div")),nt&&tt||(h=Object.defineProperty)),!Object.defineProperty||h){var ot="Property description must be an object: ",st="Object.defineProperty called on non-object: ",ht="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(n,r,u){if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(st+n);if(typeof u!="object"&&typeof u!="function"||u===null)throw new TypeError(ot+u);if(h)try{return h.call(Object,n,r,u)}catch(e){}if(i(u,"value"))if(s&&(l(n,r)||a(n,r))){var f=n.__proto__;n.__proto__=t;delete n[r];n[r]=u.value;n.__proto__=f}else n[r]=u.value;else{if(!s)throw new TypeError(ht);i(u,"get")&&w(n,r,u.get);i(u,"set")&&b(n,r,u.set)}return n}}Object.defineProperties||(Object.defineProperties=function(n,t){for(var r in t)i(t,r)&&Object.defineProperty(n,r,t[r]);return n});Object.seal||(Object.seal=function(n){return n});Object.freeze||(Object.freeze=function(n){return n});try{Object.freeze(function(){})}catch(at){Object.freeze=function(n){return function(t){return typeof t=="function"?t:n(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(n){return n}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(n){var t,r;if(Object(n)===n)throw new TypeError;for(t="";i(n,t);)t+="?";return n[t]=!0,r=i(n,t),delete n[t],r}),!Object.keys){var it=!0,rt=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],ct=rt.length;for(lt in{toString:null})it=!1;Object.keys=function(n){var t,u,r,e,f;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError("Object.keys called on a non-object");t=[];for(u in n)i(n,u)&&t.push(u);if(it)for(r=0,e=ct;r<e;r++)f=rt[r],i(n,f)&&t.push(f);return t}}Date.now||(Date.now=function(){return(new Date).getTime()});f="\t\n\x0b\f\r   ᠎             　\u2028\u2029﻿";(!String.prototype.trim||f.trim())&&(f="["+f+"]",ut=new RegExp("^"+f+f+"*"),ft=new RegExp(f+f+"*$"),String.prototype.trim=function(){return String(this).replace(ut,"").replace(ft,"")});u=function(n){if(n==null)throw new TypeError("can't convert "+n+" to object");return Object(n)}}),function(n){function r(n,t){for(var r=n,u="",i,f;r;){if(i=t[r],typeof i=="string")return i+u;if(i)return i.location.replace(/\/*$/,"/")+(u||i.main||i.name);if(i===!1)return"";if(f=r.lastIndexOf("/"),f===-1)break;u=r.substr(f)+u;r=r.slice(0,f)}return n}if((typeof n.window=="undefined"||!n.document)&&(!n.require||!n.define)){n.console||(n.console=function(){var n=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:n})},n.console.error=n.console.warn=n.console.log=n.console.trace=n.console);n.window=n;n.ace=n;n.onerror=function(n,t,i,r,u){postMessage({type:"error",data:{message:n,data:u.data,file:t,line:i,col:r,stack:u.stack}})};n.normalizeModule=function(t,i){var r,u,f;if(i.indexOf("!")!==-1)return r=i.split("!"),n.normalizeModule(t,r[0])+"!"+n.normalizeModule(t,r[1]);if(i.charAt(0)==".")for(u=t.split("/").slice(0,-1).join("/"),i=(u?u+"/":"")+i;i.indexOf(".")!==-1&&f!=i;)f=i,i=i.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"");return i};n.require=function(t,i){var u,f;if(i||(i=t,t=null),!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");return(i=n.normalizeModule(t,i),u=n.require.modules[i],u)?(u.initialized||(u.initialized=!0,u.exports=u.factory().exports),u.exports):n.require.tlns?(f=r(i,n.require.tlns),f.slice(-3)!=".js"&&(f+=".js"),n.require.id=i,n.require.modules[i]={},importScripts(f),n.require(t,i)):console.log("unable to load "+i)};n.require.modules={};n.require.tlns={};n.define=function(t,i,r){if(arguments.length==2?(r=i,typeof t!="string"&&(i=t,t=n.require.id)):arguments.length==1&&(r=t,i=[],t=n.require.id),typeof r!="function"){n.require.modules[t]={exports:r,initialized:!0};return}i.length||(i=["require","exports","module"]);var u=function(i){return n.require(t,i)};n.require.modules[t]={exports:{},factory:function(){var n=this,t=r.apply(this,i.map(function(t){switch(t){case"require":return u;case"exports":return n.exports;case"module":return n;default:return u(t)}}));return t&&(n.exports=t),n}}};n.define.amd={};require.tlns={};n.initBaseUrls=function(n){for(var t in n)require.tlns[t]=n[t]};n.initSender=function(){var i=n.require("ace/lib/event_emitter").EventEmitter,r=n.require("ace/lib/oop"),t=function(){};return function(){r.implement(this,i);this.callback=function(n,t){postMessage({type:"call",id:t,data:n})};this.emit=function(n,t){postMessage({type:"event",name:n,data:t})}}.call(t.prototype),new t};var t=n.main=null,i=n.sender=null;n.onmessage=function(r){var u=r.data,f;if(u.event&&i)i._signal(u.event,u.data);else if(u.command)if(t[u.command])t[u.command].apply(t,u.args);else{if(!n[u.command])throw new Error("Unknown command:"+u.command);n[u.command].apply(n,u.args)}else u.init&&(n.initBaseUrls(u.tlns),require("ace/lib/es5-shim"),i=n.sender=n.initSender(),f=require(u.module)[u.classname],t=n.main=new f(i))}}}(this);define("ace/lib/oop",["require","exports","module"],function(n,t){"use strict";t.inherits=function(n,t){n.super_=t;n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})};t.mixin=function(n,t){for(var i in t)n[i]=t[i];return n};t.implement=function(n,i){t.mixin(n,i)}});define("ace/range",["require","exports","module"],function(n,t){"use strict";var r=function(n,t){return n.row-t.row||n.column-t.column},i=function(n,t,i,r){this.start={row:n,column:t};this.end={row:i,column:r}};(function(){this.isEqual=function(n){return this.start.row===n.start.row&&this.end.row===n.end.row&&this.start.column===n.start.column&&this.end.column===n.end.column};this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"};this.contains=function(n,t){return this.compare(n,t)==0};this.compareRange=function(n){var t,r=n.end,i=n.start;return t=this.compare(r.row,r.column),t==1?(t=this.compare(i.row,i.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(i.row,i.column),t==-1?-1:t==1?42:0)};this.comparePoint=function(n){return this.compare(n.row,n.column)};this.containsRange=function(n){return this.comparePoint(n.start)==0&&this.comparePoint(n.end)==0};this.intersects=function(n){var t=this.compareRange(n);return t==-1||t==0||t==1};this.isEnd=function(n,t){return this.end.row==n&&this.end.column==t};this.isStart=function(n,t){return this.start.row==n&&this.start.column==t};this.setStart=function(n,t){typeof n=="object"?(this.start.column=n.column,this.start.row=n.row):(this.start.row=n,this.start.column=t)};this.setEnd=function(n,t){typeof n=="object"?(this.end.column=n.column,this.end.row=n.row):(this.end.row=n,this.end.column=t)};this.inside=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)||this.isStart(n,t)?!1:!0:!1};this.insideStart=function(n,t){return this.compare(n,t)==0?this.isEnd(n,t)?!1:!0:!1};this.insideEnd=function(n,t){return this.compare(n,t)==0?this.isStart(n,t)?!1:!0:!1};this.compare=function(n,t){return!this.isMultiLine()&&n===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:n<this.start.row?-1:n>this.end.row?1:this.start.row===n?t>=this.start.column?0:-1:this.end.row===n?t<=this.end.column?0:1:0};this.compareStart=function(n,t){return this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.compareEnd=function(n,t){return this.end.row==n&&this.end.column==t?1:this.compare(n,t)};this.compareInside=function(n,t){return this.end.row==n&&this.end.column==t?1:this.start.row==n&&this.start.column==t?-1:this.compare(n,t)};this.clipRows=function(n,t){var r,u;return this.end.row>t?r={row:t+1,column:0}:this.end.row<n&&(r={row:n,column:0}),this.start.row>t?u={row:t+1,column:0}:this.start.row<n&&(u={row:n,column:0}),i.fromPoints(u||this.start,r||this.end)};this.extend=function(n,t){var r=this.compare(n,t),u,f;return r==0?this:(r==-1?u={row:n,column:t}:f={row:n,column:t},i.fromPoints(u||this.start,f||this.end))};this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column};this.isMultiLine=function(){return this.start.row!==this.end.row};this.clone=function(){return i.fromPoints(this.start,this.end)};this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)};this.toScreenRange=function(n){var t=n.documentToScreenPosition(this.start),r=n.documentToScreenPosition(this.end);return new i(t.row,t.column,r.row,r.column)};this.moveBy=function(n,t){this.start.row+=n;this.start.column+=t;this.end.row+=n;this.end.column+=t}}).call(i.prototype);i.fromPoints=function(n,t){return new i(n.row,n.column,t.row,t.column)};i.comparePoints=r;i.comparePoints=function(n,t){return n.row-t.row||n.column-t.column};t.Range=i});define("ace/apply_delta",["require","exports","module"],function(n,t){"use strict";t.applyDelta=function(n,t){var i=t.start.row,u=t.start.column,r=n[i]||"",o,s,e,f;switch(t.action){case"insert":o=t.lines;o.length===1?n[i]=r.substring(0,u)+t.lines[0]+r.substring(u):(s=[i,1].concat(t.lines),n.splice.apply(n,s),n[i]=r.substring(0,u)+n[i],n[i+t.lines.length-1]+=r.substring(u));break;case"remove":e=t.end.column;f=t.end.row;i===f?n[i]=r.substring(0,u)+r.substring(e):n.splice(i,f-i+1,r.substring(0,u)+n[f].substring(e))}}});define("ace/lib/event_emitter",["require","exports","module"],function(n,t){"use strict";var i={},r=function(){this.propagationStopped=!0},u=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(n,t){var i,f,e;if(this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={}),i=this._eventRegistry[n]||[],f=this._defaultHandlers[n],i.length||f){for(typeof t=="object"&&t||(t={}),t.type||(t.type=n),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=u),i=i.slice(),e=0;e<i.length;e++)if(i[e](t,this),t.propagationStopped)break;if(f&&!t.defaultPrevented)return f(t,this)}};i._signal=function(n,t){var i=(this._eventRegistry||{})[n],r;if(i)for(i=i.slice(),r=0;r<i.length;r++)i[r](t,this)};i.once=function(n,t){var i=this;t&&this.addEventListener(n,function r(){i.removeEventListener(n,r);t.apply(null,arguments)})};i.setDefaultHandler=function(n,t){var i=this._defaultHandlers,f,r,u;i||(i=this._defaultHandlers={_disabled_:{}});i[n]&&(f=i[n],r=i._disabled_[n],r||(i._disabled_[n]=r=[]),r.push(f),u=r.indexOf(t),u!=-1&&r.splice(u,1));i[n]=t};i.removeDefaultHandler=function(n,t){var r=this._defaultHandlers,i,f,u;r&&(i=r._disabled_[n],r[n]==t?(f=r[n],i&&this.setDefaultHandler(n,i.pop())):i&&(u=i.indexOf(t),u!=-1&&i.splice(u,1)))};i.on=i.addEventListener=function(n,t,i){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[n];return r||(r=this._eventRegistry[n]=[]),r.indexOf(t)==-1&&r[i?"unshift":"push"](t),t};i.off=i.removeListener=i.removeEventListener=function(n,t){var i,r;(this._eventRegistry=this._eventRegistry||{},i=this._eventRegistry[n],i)&&(r=i.indexOf(t),r!==-1&&i.splice(r,1))};i.removeAllListeners=function(n){this._eventRegistry&&(this._eventRegistry[n]=[])};t.EventEmitter=i});define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(n,t){"use strict";var i=n("./lib/oop"),r=n("./lib/event_emitter").EventEmitter,u=t.Anchor=function(n,t,i){this.$onChange=this.onChange.bind(this);this.attach(n);typeof i=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,i)};(function(){function n(n,t,i){var r=i?n.column<=t.column:n.column<t.column;return n.row<t.row||n.row==t.row&&r}function t(t,i,r){var f=t.action=="insert",o=(f?1:-1)*(t.end.row-t.start.row),s=(f?1:-1)*(t.end.column-t.start.column),u=t.start,e=f?u:t.end;return n(i,u,r)?{row:i.row,column:i.column}:n(e,i,!r)?{row:i.row+o,column:i.column+(i.row==e.row?s:0)}:{row:u.row,column:u.column}}i.implement(this,r);this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)};this.getDocument=function(){return this.document};this.$insertRight=!1;this.onChange=function(n){if((n.start.row!=n.end.row||n.start.row==this.row)&&!(n.start.row>this.row)){var i=t(n,{row:this.row,column:this.column},this.$insertRight);this.setPosition(i.row,i.column,!0)}};this.setPosition=function(n,t,i){var r,u;(r=i?{row:n,column:t}:this.$clipPositionToDocument(n,t),this.row!=r.row||this.column!=r.column)&&(u={row:this.row,column:this.column},this.row=r.row,this.column=r.column,this._signal("change",{old:u,value:r}))};this.detach=function(){this.document.removeEventListener("change",this.$onChange)};this.attach=function(n){this.document=n||this.document;this.document.on("change",this.$onChange)};this.$clipPositionToDocument=function(n,t){var i={};return n>=this.document.getLength()?(i.row=Math.max(0,this.document.getLength()-1),i.column=this.document.getLine(i.row).length):n<0?(i.row=0,i.column=0):(i.row=n,i.column=Math.min(this.document.getLine(i.row).length,Math.max(0,t))),t<0&&(i.column=0),i}}).call(u.prototype)});define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(n,t){"use strict";var u=n("./lib/oop"),f=n("./apply_delta").applyDelta,e=n("./lib/event_emitter").EventEmitter,i=n("./range").Range,o=n("./anchor").Anchor,r=function(n){this.$lines=[""];n.length===0?this.$lines=[""]:Array.isArray(n)?this.insertMergedLines({row:0,column:0},n):this.insert({row:0,column:0},n)};(function(){u.implement(this,e);this.setValue=function(n){var t=this.getLength()-1;this.remove(new i(0,0,t,this.getLine(t).length));this.insert({row:0,column:0},n)};this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())};this.createAnchor=function(n,t){return new o(this,n,t)};this.$split="aaa".split(/a/).length===0?function(n){return n.replace(/\r\n|\r/g,"\n").split("\n")}:function(n){return n.split(/\r\n|\r|\n/)};this.$detectNewLine=function(n){var t=n.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n";this._signal("changeNewLineMode")};this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}};this.$autoNewLine="";this.$newLineMode="auto";this.setNewLineMode=function(n){this.$newLineMode!==n&&(this.$newLineMode=n,this._signal("changeNewLineMode"))};this.getNewLineMode=function(){return this.$newLineMode};this.isNewLine=function(n){return n=="\r\n"||n=="\r"||n=="\n"};this.getLine=function(n){return this.$lines[n]||""};this.getLines=function(n,t){return this.$lines.slice(n,t+1)};this.getAllLines=function(){return this.getLines(0,this.getLength())};this.getLength=function(){return this.$lines.length};this.getTextRange=function(n){return this.getLinesForRange(n).join(this.getNewLineCharacter())};this.getLinesForRange=function(n){var t,i;return n.start.row===n.end.row?t=[this.getLine(n.start.row).substring(n.start.column,n.end.column)]:(t=this.getLines(n.start.row,n.end.row),t[0]=(t[0]||"").substring(n.start.column),i=t.length-1,n.end.row-n.start.row==i&&(t[i]=t[i].substring(0,n.end.column))),t};this.insertLines=function(n,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(n,t)};this.removeLines=function(n,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(n,t)};this.insertNewLine=function(n){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(n,["",""])};this.insert=function(n,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(n,this.$split(t))};this.insertInLine=function(n,t){var r=this.clippedPos(n.row,n.column),i=this.pos(n.row,n.column+t.length);return this.applyDelta({start:r,end:i,action:"insert",lines:[t]},!0),this.clonePos(i)};this.clippedPos=function(n,t){var i=this.getLength(),r;return n===undefined?n=i:n<0?n=0:n>=i&&(n=i-1,t=undefined),r=this.getLine(n),t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:n,column:t}};this.clonePos=function(n){return{row:n.row,column:n.column}};this.pos=function(n,t){return{row:n,column:t}};this.$clipPosition=function(n){var t=this.getLength();return n.row>=t?(n.row=Math.max(0,t-1),n.column=this.getLine(t-1).length):(n.row=Math.max(0,n.row),n.column=Math.min(Math.max(n.column,0),this.getLine(n.row).length)),n};this.insertFullLines=function(n,t){n=Math.min(Math.max(n,0),this.getLength());var i=0;n<this.getLength()?(t=t.concat([""]),i=0):(t=[""].concat(t),n--,i=this.$lines[n].length);this.insertMergedLines({row:n,column:i},t)};this.insertMergedLines=function(n,t){var i=this.clippedPos(n.row,n.column),r={row:i.row+t.length-1,column:(t.length==1?i.column:0)+t[t.length-1].length};return this.applyDelta({start:i,end:r,action:"insert",lines:t}),this.clonePos(r)};this.remove=function(n){var t=this.clippedPos(n.start.row,n.start.column),i=this.clippedPos(n.end.row,n.end.column);return this.applyDelta({start:t,end:i,action:"remove",lines:this.getLinesForRange({start:t,end:i})}),this.clonePos(t)};this.removeInLine=function(n,t,i){var r=this.clippedPos(n,t),u=this.clippedPos(n,i);return this.applyDelta({start:r,end:u,action:"remove",lines:this.getLinesForRange({start:r,end:u})},!0),this.clonePos(r)};this.removeFullLines=function(n,t){n=Math.min(Math.max(0,n),this.getLength()-1);t=Math.min(Math.max(0,t),this.getLength()-1);var u=t==this.getLength()-1&&n>0,f=t<this.getLength()-1,e=u?n-1:n,s=u?this.getLine(e).length:0,o=f?t+1:t,h=f?0:this.getLine(o).length,r=new i(e,s,o,h),c=this.$lines.slice(n,t+1);return this.applyDelta({start:r.start,end:r.end,action:"remove",lines:this.getLinesForRange(r)}),c};this.removeNewLine=function(n){n<this.getLength()-1&&n>=0&&this.applyDelta({start:this.pos(n,this.getLine(n).length),end:this.pos(n+1,0),action:"remove",lines:["",""]})};this.replace=function(n,t){if(n instanceof i||(n=i.fromPoints(n.start,n.end)),t.length===0&&n.isEmpty())return n.start;if(t==this.getTextRange(n))return n.end;this.remove(n);var r;return r=t?this.insert(n.start,t):n.start,r};this.applyDeltas=function(n){for(var t=0;t<n.length;t++)this.applyDelta(n[t])};this.revertDeltas=function(n){for(var t=n.length-1;t>=0;t--)this.revertDelta(n[t])};this.applyDelta=function(n,t){var r=n.action=="insert";(r?n.lines.length<=1&&!n.lines[0]:!i.comparePoints(n.start,n.end))||(r&&n.lines.length>2e4&&this.$splitAndapplyLargeDelta(n,2e4),f(this.$lines,n,t),this._signal("change",n))};this.$splitAndapplyLargeDelta=function(n,t){var o=n.lines,s=o.length,f=n.start.row,e=n.start.column,r=0,i=0,u;do{if(r=i,i+=t-1,u=o.slice(r,i),i>s){n.lines=u;n.start.row=f+r;n.start.column=e;break}u.push("");this.applyDelta({start:this.pos(f+r,e),end:this.pos(f+i,e=0),action:n.action,lines:u},!0)}while(1)};this.revertDelta=function(n){this.applyDelta({start:this.clonePos(n.start),end:this.clonePos(n.end),action:n.action=="insert"?"remove":"insert",lines:n.lines.slice()})};this.indexToPosition=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,i=t||0,u=r.length;i<u;i++)if(n-=r[i].length+f,n<0)return{row:i,column:n+r[i].length+f};return{row:u-1,column:r[u-1].length}};this.positionToIndex=function(n,t){for(var r=this.$lines||this.getAllLines(),f=this.getNewLineCharacter().length,u=0,e=Math.min(n.row,r.length),i=t||0;i<e;++i)u+=r[i].length+f;return u+n.column}}).call(r.prototype);t.Document=r});define("ace/lib/lang",["require","exports","module"],function(n,t){"use strict";t.last=function(n){return n[n.length-1]};t.stringReverse=function(n){return n.split("").reverse().join("")};t.stringRepeat=function(n,t){for(var i="";t>0;)t&1&&(i+=n),(t>>=1)&&(n+=n);return i};var r=/^\s\s*/,u=/\s\s*$/;t.stringTrimLeft=function(n){return n.replace(r,"")};t.stringTrimRight=function(n){return n.replace(u,"")};t.copyObject=function(n){var i={},t;for(t in n)i[t]=n[t];return i};t.copyArray=function(n){for(var i=[],t=0,r=n.length;t<r;t++)i[t]=n[t]&&typeof n[t]=="object"?this.copyObject(n[t]):n[t];return i};t.deepCopy=function i(n){var r,t;if(typeof n!="object"||!n)return n;if(Array.isArray(n)){for(r=[],t=0;t<n.length;t++)r[t]=i(n[t]);return r}if(Object.prototype.toString.call(n)!=="[object Object]")return n;r={};for(t in n)r[t]=i(n[t]);return r};t.arrayToMap=function(n){for(var i={},t=0;t<n.length;t++)i[n[t]]=1;return i};t.createMap=function(n){var i=Object.create(null),t;for(t in n)i[t]=n[t];return i};t.arrayRemove=function(n,t){for(var i=0;i<=n.length;i++)t===n[i]&&n.splice(i,1)};t.escapeRegExp=function(n){return n.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")};t.escapeHTML=function(n){return n.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")};t.getMatchOffsets=function(n,t){var i=[];return n.replace(t,function(n){i.push({offset:arguments[arguments.length-2],length:n.length})}),i};t.deferredCall=function(n){var i=null,r=function(){i=null;n()},t=function(n){return t.cancel(),i=setTimeout(r,n||0),t};return t.schedule=t,t.call=function(){return this.cancel(),n(),t},t.cancel=function(){return clearTimeout(i),i=null,t},t.isPending=function(){return i},t};t.delayedCall=function(n,t){var i=null,u=function(){i=null;n()},r=function(n){i==null&&(i=setTimeout(u,n||t))};return r.delay=function(n){i&&clearTimeout(i);i=setTimeout(u,n||t)},r.schedule=r,r.call=function(){this.cancel();n()},r.cancel=function(){i&&clearTimeout(i);i=null},r.isPending=function(){return i},r}});define("ace/worker/mirror",["require","exports","module","ace/range","ace/document","ace/lib/lang"],function(n,t){"use strict";var f=n("../range").Range,i=n("../document").Document,r=n("../lib/lang"),u=t.Mirror=function(n){this.sender=n;var u=this.doc=new i(""),f=this.deferredUpdate=r.delayedCall(this.onUpdate.bind(this)),t=this;n.on("change",function(n){var i=n.data,r,e;if(i[0].start)u.applyDeltas(i);else for(r=0;r<i.length;r+=2)e=Array.isArray(i[r+1])?{action:"insert",start:i[r],lines:i[r+1]}:{action:"remove",start:i[r],end:i[r+1]},u.applyDelta(e,!0);if(t.$timeout)return f.schedule(t.$timeout);t.onUpdate()})};(function(){this.$timeout=500;this.setTimeout=function(n){this.$timeout=n};this.setValue=function(n){this.doc.setValue(n);this.deferredUpdate.schedule(this.$timeout)};this.getValue=function(n){this.sender.callback(this.doc.getValue(),n)};this.onUpdate=function(){};this.isPending=function(){return this.deferredUpdate.isPending()}}).call(u.prototype)});define("ace/mode/json/json_parse",["require","exports","module"],function(){"use strict";var u,n,o={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},e,r=function(n){throw{name:"SyntaxError",message:n,at:u,text:e};},t=function(t){return t&&t!==n&&r("Expected '"+t+"' instead of '"+n+"'"),n=e.charAt(u),u+=1,n},s=function(){var u,i="";for(n==="-"&&(i="-",t("-"));n>="0"&&n<="9";)i+=n,t();if(n===".")for(i+=".";t()&&n>="0"&&n<="9";)i+=n;if(n==="e"||n==="E")for(i+=n,t(),(n==="-"||n==="+")&&(i+=n,t());n>="0"&&n<="9";)i+=n,t();if(u=+i,!isNaN(u))return u;r("Bad number")},h=function(){var f,e,i="",u;if(n==='"')while(t()){if(n==='"')return t(),i;if(n==="\\")if(t(),n==="u"){for(u=0,e=0;e<4;e+=1){if(f=parseInt(t(),16),!isFinite(f))break;u=u*16+f}i+=String.fromCharCode(u)}else{if(typeof o[n]!="string")break;i+=o[n]}else i+=n}r("Bad string")},i=function(){while(n&&n<=" ")t()},c=function(){switch(n){case"t":return t("t"),t("r"),t("u"),t("e"),!0;case"f":return t("f"),t("a"),t("l"),t("s"),t("e"),!1;case"n":return t("n"),t("u"),t("l"),t("l"),null}r("Unexpected '"+n+"'")},f,l=function(){var u=[];if(n==="["){if(t("["),i(),n==="]")return t("]"),u;while(n){if(u.push(f()),i(),n==="]")return t("]"),u;t(",");i()}}r("Bad array")},a=function(){var u,e={};if(n==="{"){if(t("{"),i(),n==="}")return t("}"),e;while(n){if(u=h(),i(),t(":"),Object.hasOwnProperty.call(e,u)&&r('Duplicate key "'+u+'"'),e[u]=f(),i(),n==="}")return t("}"),e;t(",");i()}}r("Bad object")};return f=function(){i();switch(n){case"{":return a();case"[":return l();case'"':return h();case"-":return s();default:return n>="0"&&n<="9"?s():c()}},function(t,o){var s;return e=t,u=0,n=" ",s=f(),i(),n&&r("Syntax error"),typeof o=="function"?function h(n,t){var r,u,i=n[t];if(i&&typeof i=="object")for(r in i)Object.hasOwnProperty.call(i,r)&&(u=h(i,r),u!==undefined?i[r]=u:delete i[r]);return o.call(n,t,i)}({"":s},""):s}});define("ace/mode/json_worker",["require","exports","module","ace/lib/oop","ace/worker/mirror","ace/mode/json/json_parse"],function(n,t){"use strict";var u=n("../lib/oop"),i=n("../worker/mirror").Mirror,f=n("./json/json_parse"),r=t.JsonWorker=function(n){i.call(this,n);this.setTimeout(200)};u.inherits(r,i),function(){this.onUpdate=function(){var t=this.doc.getValue(),i=[],n;try{t&&f(t)}catch(r){n=this.doc.indexToPosition(r.at-1);i.push({row:n.row,column:n.column,text:r.message,type:"error"})}this.sender.emit("annotate",i)}}.call(r.prototype)});define("ace/lib/es5-shim",["require","exports","module"],function(){function c(){}function y(n){try{return Object.defineProperty(n,"sentinel",{}),"sentinel"in n}catch(t){}}function p(n){return n=+n,n!==n?n=0:n!==0&&n!==1/0&&n!==-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n))),n}var k,v,r,d,g,nt,tt,h,lt,f,ut,ft,u;Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,r,i;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);return r=o.call(arguments,1),i=function(){if(this instanceof i){var u=t.apply(this,r.concat(o.call(arguments)));return Object(u)===u?u:this}return t.apply(n,r.concat(o.call(arguments)))},t.prototype&&(c.prototype=t.prototype,i.prototype=new c,c.prototype=null),i});var e=Function.prototype.call,et=Array.prototype,t=Object.prototype,o=et.slice,n=e.bind(t.toString),i=e.bind(t.hasOwnProperty),w,b,l,a,s;if((s=i(t,"__defineGetter__"))&&(w=e.bind(t.__defineGetter__),b=e.bind(t.__defineSetter__),l=e.bind(t.__lookupGetter__),a=e.bind(t.__lookupSetter__)),[1,2].splice(0).length!=2&&(function(){function i(n){var t=new Array(n+2);return t[0]=t[1]=0,t}var n=[],t;return n.splice.apply(n,i(20)),n.splice.apply(n,i(26)),t=n.length,n.splice(5,0,"XXX"),t+1==n.length,t+1==n.length?!0:void 0}()?(k=Array.prototype.splice,Array.prototype.splice=function(n,t){return arguments.length?k.apply(this,[n===void 0?0:n,t===void 0?this.length-n:t].concat(o.call(arguments,2))):[]}):Array.prototype.splice=function(n,t){var r=this.length,i;n>0?n>r&&(n=r):n==void 0?n=0:n<0&&(n=Math.max(r+n,0));n+t<r||(t=r-n);var a=this.slice(n,n+t),e=o.call(arguments,2),f=e.length;if(n===r)f&&this.push.apply(this,e);else{var h=Math.min(t,r-n),u=n+h,s=u+f-h,l=r-u,c=r-h;if(s<u)for(i=0;i<l;++i)this[s+i]=this[u+i];else if(s>u)for(i=l;i--;)this[s+i]=this[u+i];if(f&&n===c)this.length=c,this.push.apply(this,e);else for(this.length=c+f,i=0;i<f;++i)this[n+i]=e[i]}return a}),Array.isArray||(Array.isArray=function(t){return n(t)=="[object Array]"}),v=Object("a"),r=v[0]!="a"||!(0 in v),Array.prototype.forEach||(Array.prototype.forEach=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=arguments[1],i=-1,s=f.length>>>0;if(n(t)!="[object Function]")throw new TypeError;while(++i<s)i in f&&t.call(o,f[i],i,e)}),Array.prototype.map||(Array.prototype.map=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=Array(o),h=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)i in f&&(s[i]=t.call(h,f[i],i,e));return s}),Array.prototype.filter||(Array.prototype.filter=function(t){var o=u(this),f=r&&n(this)=="[object String]"?this.split(""):o,h=f.length>>>0,s=[],e,c=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<h;i++)i in f&&(e=f[i],t.call(c,e,i,o)&&s.push(e));return s}),Array.prototype.every||(Array.prototype.every=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&!t.call(s,f[i],i,e))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(t){var e=u(this),f=r&&n(this)=="[object String]"?this.split(""):e,o=f.length>>>0,s=arguments[1],i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");for(i=0;i<o;i++)if(i in f&&t.call(s,f[i],i,e))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(t){var s=u(this),f=r&&n(this)=="[object String]"?this.split(""):s,o=f.length>>>0,i,e;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!o&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");if(i=0,arguments.length>=2)e=arguments[1];else do{if(i in f){e=f[i++];break}if(++i>=o)throw new TypeError("reduce of empty array with no initial value");}while(1);for(;i<o;i++)i in f&&(e=t.call(void 0,e,f[i],i,s));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(t){var o=u(this),e=r&&n(this)=="[object String]"?this.split(""):o,s=e.length>>>0,f,i;if(n(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!s&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");if(i=s-1,arguments.length>=2)f=arguments[1];else do{if(i in e){f=e[i--];break}if(--i<0)throw new TypeError("reduceRight of empty array with no initial value");}while(1);do i in this&&(f=t.call(void 0,f,e[i],i,o));while(i--);return f}),Array.prototype.indexOf&&[0,1].indexOf(1,2)==-1||(Array.prototype.indexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=0,arguments.length>1&&(i=p(arguments[1])),i=i>=0?i:Math.max(0,e+i);i<e;i++)if(i in f&&f[i]===t)return i;return-1}),Array.prototype.lastIndexOf&&[0,1].lastIndexOf(0,-3)==-1||(Array.prototype.lastIndexOf=function(t){var f=r&&n(this)=="[object String]"?this.split(""):u(this),e=f.length>>>0,i;if(!e)return-1;for(i=e-1,arguments.length>1&&(i=Math.min(i,p(arguments[1]))),i=i>=0?i:e-Math.abs(i);i>=0;i--)if(i in f&&t===f[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(n){return n.__proto__||(n.constructor?n.constructor.prototype:t)}),Object.getOwnPropertyDescriptor||(d="Object.getOwnPropertyDescriptor called on a non-object: ",Object.getOwnPropertyDescriptor=function(n,r){var u,o,f,e;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(d+n);if(i(n,r))return(u={enumerable:!0,configurable:!0},s&&(o=n.__proto__,n.__proto__=t,f=l(n,r),e=a(n,r),n.__proto__=o,f||e))?(f&&(u.get=f),e&&(u.set=e),u):(u.value=n[r],u)}),Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(n){return Object.keys(n)}),Object.create||(g=Object.prototype.__proto__===null?function(){return{__proto__:null}}:function(){var n={},t;for(t in n)n[t]=null;return n.constructor=n.hasOwnProperty=n.propertyIsEnumerable=n.isPrototypeOf=n.toLocaleString=n.toString=n.valueOf=n.__proto__=null,n},Object.create=function(n,t){var i,r;if(n===null)i=g();else{if(typeof n!="object")throw new TypeError("typeof prototype["+typeof n+"] != 'object'");r=function(){};r.prototype=n;i=new r;i.__proto__=n}return t!==void 0&&Object.defineProperties(i,t),i}),Object.defineProperty&&(nt=y({}),tt=typeof document=="undefined"||y(document.createElement("div")),nt&&tt||(h=Object.defineProperty)),!Object.defineProperty||h){var ot="Property description must be an object: ",st="Object.defineProperty called on non-object: ",ht="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(n,r,u){if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(st+n);if(typeof u!="object"&&typeof u!="function"||u===null)throw new TypeError(ot+u);if(h)try{return h.call(Object,n,r,u)}catch(e){}if(i(u,"value"))if(s&&(l(n,r)||a(n,r))){var f=n.__proto__;n.__proto__=t;delete n[r];n[r]=u.value;n.__proto__=f}else n[r]=u.value;else{if(!s)throw new TypeError(ht);i(u,"get")&&w(n,r,u.get);i(u,"set")&&b(n,r,u.set)}return n}}Object.defineProperties||(Object.defineProperties=function(n,t){for(var r in t)i(t,r)&&Object.defineProperty(n,r,t[r]);return n});Object.seal||(Object.seal=function(n){return n});Object.freeze||(Object.freeze=function(n){return n});try{Object.freeze(function(){})}catch(at){Object.freeze=function(n){return function(t){return typeof t=="function"?t:n(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(n){return n}),Object.isSealed||(Object.isSealed=function(){return!1}),Object.isFrozen||(Object.isFrozen=function(){return!1}),Object.isExtensible||(Object.isExtensible=function(n){var t,r;if(Object(n)===n)throw new TypeError;for(t="";i(n,t);)t+="?";return n[t]=!0,r=i(n,t),delete n[t],r}),!Object.keys){var it=!0,rt=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],ct=rt.length;for(lt in{toString:null})it=!1;Object.keys=function(n){var t,u,r,e,f;if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError("Object.keys called on a non-object");t=[];for(u in n)i(n,u)&&t.push(u);if(it)for(r=0,e=ct;r<e;r++)f=rt[r],i(n,f)&&t.push(f);return t}}Date.now||(Date.now=function(){return(new Date).getTime()});f="\t\n\x0b\f\r   ᠎             　\u2028\u2029﻿";(!String.prototype.trim||f.trim())&&(f="["+f+"]",ut=new RegExp("^"+f+f+"*"),ft=new RegExp(f+f+"*$"),String.prototype.trim=function(){return String(this).replace(ut,"").replace(ft,"")});u=function(n){if(n==null)throw new TypeError("can't convert "+n+" to object");return Object(n)}});define("ace/ext/searchbox",["require","exports","module","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/keyboard/hash_handler","ace/lib/keys"],function(n,t){"use strict";var r=n("../lib/dom"),o=n("../lib/lang"),i=n("../lib/event"),f=n("../keyboard/hash_handler").HashHandler,s=n("../lib/keys"),e,u;r.importCssString(".ace_search {background-color: #ddd;border: 1px solid #cbcbcb;border-top: 0 none;max-width: 325px;overflow: hidden;margin: 0;padding: 4px;padding-right: 6px;padding-bottom: 0;position: absolute;top: 0px;z-index: 99;white-space: normal;}.ace_search.left {border-left: 0 none;border-radius: 0px 0px 5px 0px;left: 0;}.ace_search.right {border-radius: 0px 0px 0px 5px;border-right: 0 none;right: 0;}.ace_search_form, .ace_replace_form {border-radius: 3px;border: 1px solid #cbcbcb;float: left;margin-bottom: 4px;overflow: hidden;}.ace_search_form.ace_nomatch {outline: 1px solid red;}.ace_search_field {background-color: white;border-right: 1px solid #cbcbcb;border: 0 none;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;float: left;height: 22px;outline: 0;padding: 0 7px;width: 214px;margin: 0;}.ace_searchbtn,.ace_replacebtn {background: #fff;border: 0 none;border-left: 1px solid #dcdcdc;cursor: pointer;float: left;height: 22px;margin: 0;position: relative;}.ace_searchbtn:last-child,.ace_replacebtn:last-child {border-top-right-radius: 3px;border-bottom-right-radius: 3px;}.ace_searchbtn:disabled {background: none;cursor: default;}.ace_searchbtn {background-position: 50% 50%;background-repeat: no-repeat;width: 27px;}.ace_searchbtn.prev {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADFJREFUeNpiSU1NZUAC/6E0I0yACYskCpsJiySKIiY0SUZk40FyTEgCjGgKwTRAgAEAQJUIPCE+qfkAAAAASUVORK5CYII=);    }.ace_searchbtn.next {background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpiTE1NZQCC/0DMyIAKwGJMUAYDEo3M/s+EpvM/mkKwCQxYjIeLMaELoLMBAgwAU7UJObTKsvAAAAAASUVORK5CYII=);    }.ace_searchbtn_close {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;border-radius: 50%;border: 0 none;color: #656565;cursor: pointer;float: right;font: 16px/16px Arial;height: 14px;margin: 5px 1px 9px 5px;padding: 0;text-align: center;width: 14px;}.ace_searchbtn_close:hover {background-color: #656565;background-position: 50% 100%;color: white;}.ace_replacebtn.prev {width: 54px}.ace_replacebtn.next {width: 27px}.ace_button {margin-left: 2px;cursor: pointer;-webkit-user-select: none;-moz-user-select: none;-o-user-select: none;-ms-user-select: none;user-select: none;overflow: hidden;opacity: 0.7;border: 1px solid rgba(100,100,100,0.23);padding: 1px;-moz-box-sizing: border-box;box-sizing:    border-box;color: black;}.ace_button:hover {background-color: #eee;opacity:1;}.ace_button:active {background-color: #ddd;}.ace_button.checked {border-color: #3399ff;opacity:1;}.ace_search_options{margin-bottom: 3px;text-align: right;-webkit-user-select: none;-moz-user-select: none;-o-user-select: none;-ms-user-select: none;user-select: none;}","ace_searchbox");e='<div class="ace_search right">    <button type="button" action="hide" class="ace_searchbtn_close"><\/button>    <div class="ace_search_form">        <input class="ace_search_field" placeholder="Search for" spellcheck="false"><\/input>        <button type="button" action="findNext" class="ace_searchbtn next"><\/button>        <button type="button" action="findPrev" class="ace_searchbtn prev"><\/button>        <button type="button" action="findAll" class="ace_searchbtn" title="Alt-Enter">All<\/button>    <\/div>    <div class="ace_replace_form">        <input class="ace_search_field" placeholder="Replace with" spellcheck="false"><\/input>        <button type="button" action="replaceAndFindNext" class="ace_replacebtn">Replace<\/button>        <button type="button" action="replaceAll" class="ace_replacebtn">All<\/button>    <\/div>    <div class="ace_search_options">        <span action="toggleRegexpMode" class="ace_button" title="RegExp Search">.*<\/span>        <span action="toggleCaseSensitive" class="ace_button" title="CaseSensitive Search">Aa<\/span>        <span action="toggleWholeWords" class="ace_button" title="Whole Word Search">\\b<\/span>    <\/div><\/div>'.replace(/>\s+/g,">");u=function(n){var t=r.createElement("div");t.innerHTML=e;this.element=t.firstChild;this.$init();this.setEditor(n)},function(){this.setEditor=function(n){n.searchBox=this;n.container.appendChild(this.element);this.editor=n};this.$initElements=function(n){this.searchBox=n.querySelector(".ace_search_form");this.replaceBox=n.querySelector(".ace_replace_form");this.searchOptions=n.querySelector(".ace_search_options");this.regExpOption=n.querySelector("[action=toggleRegexpMode]");this.caseSensitiveOption=n.querySelector("[action=toggleCaseSensitive]");this.wholeWordOption=n.querySelector("[action=toggleWholeWords]");this.searchInput=this.searchBox.querySelector(".ace_search_field");this.replaceInput=this.replaceBox.querySelector(".ace_search_field")};this.$init=function(){var t=this.element,n;this.$initElements(t);n=this;i.addListener(t,"mousedown",function(t){setTimeout(function(){n.activeInput.focus()},0);i.stopPropagation(t)});i.addListener(t,"click",function(t){var u=t.target||t.srcElement,r=u.getAttribute("action");r&&n[r]?n[r]():n.$searchBarKb.commands[r]&&n.$searchBarKb.commands[r].exec(n);i.stopPropagation(t)});i.addCommandKeyListener(t,function(t,r,u){var e=s.keyCodeToString(u),f=n.$searchBarKb.findKeyCommand(r,e);f&&f.exec&&(f.exec(n),i.stopEvent(t))});this.$onChange=o.delayedCall(function(){n.find(!1,!1)});i.addListener(this.searchInput,"input",function(){n.$onChange.schedule(20)});i.addListener(this.searchInput,"focus",function(){n.activeInput=n.searchInput;n.searchInput.value&&n.highlight()});i.addListener(this.replaceInput,"focus",function(){n.activeInput=n.replaceInput;n.searchInput.value&&n.highlight()})};this.$closeSearchBarKb=new f([{bindKey:"Esc",name:"closeSearchBar",exec:function(n){n.searchBox.hide()}}]);this.$searchBarKb=new f;this.$searchBarKb.bindKeys({"Ctrl-f|Command-f":function(n){var t=n.isReplace=!n.isReplace;n.replaceBox.style.display=t?"":"none";n.searchInput.focus()},"Ctrl-H|Command-Option-F":function(n){n.replaceBox.style.display="";n.replaceInput.focus()},"Ctrl-G|Command-G":function(n){n.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(n){n.findPrev()},esc:function(n){setTimeout(function(){n.hide()})},Return:function(n){n.activeInput==n.replaceInput&&n.replace();n.findNext()},"Shift-Return":function(n){n.activeInput==n.replaceInput&&n.replace();n.findPrev()},"Alt-Return":function(n){n.activeInput==n.replaceInput&&n.replaceAll();n.findAll()},Tab:function(n){(n.activeInput==n.replaceInput?n.searchInput:n.replaceInput).focus()}});this.$searchBarKb.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(n){n.regExpOption.checked=!n.regExpOption.checked;n.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(n){n.caseSensitiveOption.checked=!n.caseSensitiveOption.checked;n.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(n){n.wholeWordOption.checked=!n.wholeWordOption.checked;n.$syncOptions()}}]);this.$syncOptions=function(){r.setCssClass(this.regExpOption,"checked",this.regExpOption.checked);r.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked);r.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked);this.find(!1,!1)};this.highlight=function(n){this.editor.session.highlight(n||this.editor.$search.$options.re);this.editor.renderer.updateBackMarkers()};this.find=function(n,t,i){var u=this.editor.find(this.searchInput.value,{skipCurrent:n,backwards:t,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:i});r.setCssClass(this.searchBox,"ace_nomatch",!u&&this.searchInput.value);this.highlight()};this.findNext=function(){this.find(!0,!1)};this.findPrev=function(){this.find(!0,!0)};this.findAll=function(){var t=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),n=!t&&this.searchInput.value;r.setCssClass(this.searchBox,"ace_nomatch",n);this.editor._emit("findSearchBox",{match:!n});this.highlight();this.hide()};this.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)};this.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())};this.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)};this.hide=function(){this.element.style.display="none";this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb);this.editor.focus()};this.show=function(n,t){this.element.style.display="";this.replaceBox.style.display=t?"":"none";this.isReplace=t;n&&(this.searchInput.value=n);this.find(!1,!1,!0);this.searchInput.focus();this.searchInput.select();this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb)};this.isFocused=function(){var n=document.activeElement;return n==this.searchInput||n==this.replaceInput}}.call(u.prototype);t.SearchBox=u;t.Search=function(n,t){var i=n.searchBox||new u(n);i.show(n.session.getTextRange(),t)}}),function(){window.require(["ace/ext/searchbox"],function(){})}();define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(n,t){"use strict";var r=n("../lib/oop"),u=n("./text_highlight_rules").TextHighlightRules,i=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"invalid.illegal",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"invalid.illegal",regex:"\\/\\/.*$"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:'"',next:"start"},{token:"string",regex:"",next:"start"}]}};r.inherits(i,u);t.JsonHighlightRules=i});define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(n,t){"use strict";var r=n("../range").Range,i=function(){};(function(){this.checkOutdent=function(n,t){return/^\s+$/.test(n)?/^\s*\}/.test(t):!1};this.autoOutdent=function(n,t){var o=n.getLine(t),f=o.match(/^(\s*\})/),u,i,e;if(!f||(u=f[1].length,i=n.findMatchingBracket({row:t,column:u}),!i||i.row==t))return 0;e=this.$getIndent(n.getLine(i.row));n.replace(new r(t,0,t,u-1),e)};this.$getIndent=function(n){return n.match(/^\s*/)[0]}}).call(i.prototype);t.MatchingBraceOutdent=i});define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(n,t){"use strict";var u=n("../../lib/oop"),i=n("../../range").Range,f=n("./fold_mode").FoldMode,r=t.FoldMode=function(n){n&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+n.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+n.end)))};u.inherits(r,f),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/;this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/;this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/;this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/;this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/;this._getFoldWidgetBase=this.getFoldWidget;this.getFoldWidget=function(n,t,i){var r=n.getLine(i),u;return this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r)?"":(u=this._getFoldWidgetBase(n,t,i),!u&&this.startRegionRe.test(r)?"start":u)};this.getFoldWidgetRange=function(n,t,i,r){var o=n.getLine(i),e,u,f;return this.startRegionRe.test(o)?this.getCommentRegionBlock(n,o,i):(u=o.match(this.foldingStartMarker),u)?(f=u.index,u[1])?this.openingBracketBlock(n,u[1],i,f):(e=n.getCommentFoldRange(i,f+u[0].length,1),e&&!e.isMultiLine()&&(r?e=this.getSectionRange(n,i):t!="all"&&(e=null)),e):t==="markbegin"?void 0:(u=o.match(this.foldingStopMarker),u?(f=u.index+u[0].length,u[1]?this.closingBracketBlock(n,u[1],i,f):n.getCommentFoldRange(i,f,-1)):void 0)};this.getSectionRange=function(n,t){var u=n.getLine(t),o=u.search(/\S/),s=t,c=u.length,f,h,e,r;for(t+=1,f=t,h=n.getLength();++t<h;)if(u=n.getLine(t),e=u.search(/\S/),e!==-1){if(o>e)break;if(r=this.getFoldWidgetRange(n,"all",t),r){if(r.start.row<=s)break;if(r.isMultiLine())t=r.end.row;else if(o==e)break}f=t}return new i(s,c,f,n.getLine(f).length)};this.getCommentRegionBlock=function(n,t,r){for(var s=t.search(/\s*$/),h=n.getLength(),o=r,u=1,f,e;++r<h;)if((t=n.getLine(r),f=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/.exec(t),f)&&(f[1]?u--:u++,!u))break;return e=r,e>o?new i(o,s,e,t.length):void 0}}.call(r.prototype)});define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(n,t){"use strict";var r=n("../lib/oop"),u=n("./text").Mode,f=n("./json_highlight_rules").JsonHighlightRules,e=n("./matching_brace_outdent").MatchingBraceOutdent,o=n("./behaviour/cstyle").CstyleBehaviour,s=n("./folding/cstyle").FoldMode,h=n("../worker/worker_client").WorkerClient,i=function(){this.HighlightRules=f;this.$outdent=new e;this.$behaviour=new o;this.foldingRules=new s};r.inherits(i,u),function(){this.getNextLineIndent=function(n,t,i){var r=this.$getIndent(t),u;return n=="start"&&(u=t.match(/^.*[\{\(\[]\s*$/),u&&(r+=i)),r};this.checkOutdent=function(n,t,i){return this.$outdent.checkOutdent(t,i)};this.autoOutdent=function(n,t,i){this.$outdent.autoOutdent(t,i)};this.createWorker=function(n){var t=new h(["ace"],"ace/mode/json_worker","JsonWorker");return t.attachToDocument(n.getDocument()),t.on("annotate",function(t){n.setAnnotations(t.data)}),t.on("terminate",function(){n.clearAnnotations()}),t};this.$id="ace/mode/json"}.call(i.prototype);t.Mode=i}),function(n,t,i){"use strict";function v(n){return function(){for(var i=arguments[0],u,t,r="["+(n?n+":":"")+i+"] http://errors.angularjs.org/1.4.6/"+(n?n+"/":"")+i,i=1;i<arguments.length;i++)r=r+(1==i?"?":"&")+"p"+(i-1)+"=",u=encodeURIComponent,t=arguments[i],t="function"==typeof t?t.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof t?"undefined":"string"!=typeof t?JSON.stringify(t):t,r+=u(t);return Error(r)}}function fi(n){if(null==n||er(n))return!1;var t="length"in Object(n)&&n.length;return n.nodeType===wt&&t?!0:l(n)||a(n)||0===t||"number"==typeof t&&0<t&&t-1 in n}function r(n,t,i){var u,f,e;if(n)if(h(n))for(u in n)"prototype"==u||"length"==u||"name"==u||n.hasOwnProperty&&!n.hasOwnProperty(u)||t.call(i,n[u],u,n);else if(a(n)||fi(n))for(e="object"!=typeof n,u=0,f=n.length;u<f;u++)(e||u in n)&&t.call(i,n[u],u,n);else if(n.forEach&&n.forEach!==r)n.forEach(t,i,n);else if(ve(n))for(u in n)t.call(i,n[u],u,n);else if("function"==typeof n.hasOwnProperty)for(u in n)n.hasOwnProperty(u)&&t.call(i,n[u],u,n);else for(u in n)gt.call(n,u)&&t.call(i,n[u],u,n);return n}function he(n,t,i){for(var r=Object.keys(n).sort(),u=0;u<r.length;u++)t.call(i,n[r[u]],r[u]);return r}function ce(n){return function(t,i){n(i,t)}}function yc(){return++ku}function le(n,t){t?n.$$hashKey=t:delete n.$$hashKey}function ff(n,t,i){for(var f,u,r,l=n.$$hashKey,e=0,v=t.length;e<v;++e)if(f=t[e],c(f)||h(f))for(var s=Object.keys(f),o=0,y=s.length;o<y;o++)u=s[o],r=f[u],i&&c(r)?ft(r)?n[u]=new Date(r.valueOf()):wi(r)?n[u]=new RegExp(r):(c(n[u])||(n[u]=a(r)?[]:{}),ff(n[u],[r],!0)):n[u]=r;return le(n,l),n}function p(n){return ff(n,ni.call(arguments,1),!1)}function pc(n){return ff(n,ni.call(arguments,1),!0)}function tt(n){return parseInt(n,10)}function ef(n,t){return p(Object.create(n),t)}function o(){}function fr(n){return n}function vt(n){return function(){return n}}function ae(n){return h(n.toString)&&n.toString!==Object.prototype.toString}function f(n){return"undefined"==typeof n}function e(n){return"undefined"!=typeof n}function c(n){return null!==n&&"object"==typeof n}function ve(n){return null!==n&&"object"==typeof n&&!rh(n)}function l(n){return"string"==typeof n}function k(n){return"number"==typeof n}function ft(n){return"[object Date]"===ti.call(n)}function h(n){return"function"==typeof n}function wi(n){return"[object RegExp]"===ti.call(n)}function er(n){return n&&n.window===n}function or(n){return n&&n.$evalAsync&&n.$watch}function sr(n){return"boolean"==typeof n}function ye(n){return!(!n||!(n.nodeName||n.prop&&n.attr&&n.find))}function wc(n){var i={},t;for(n=n.split(","),t=0;t<n.length;t++)i[n[t]]=!0;return i}function bt(n){return y(n.nodeName||n[0]&&n[0].nodeName)}function hr(n,t){var i=n.indexOf(t);return 0<=i&&n.splice(i,1),i}function st(n,t,i,u){var f,e;if(er(n)||or(n))throw li("cpws");if(uh.test(ti.call(t)))throw li("cpta");if(t){if(n===t)throw li("cpi");if(i=i||[],u=u||[],c(n)&&(i.push(n),u.push(t)),a(n))for(f=t.length=0;f<n.length;f++)t.push(st(n[f],null,i,u));else{if(e=t.$$hashKey,a(t)?t.length=0:r(t,function(n,i){delete t[i]}),ve(n))for(f in n)t[f]=st(n[f],null,i,u);else if(n&&"function"==typeof n.hasOwnProperty)for(f in n)n.hasOwnProperty(f)&&(t[f]=st(n[f],null,i,u));else for(f in n)gt.call(n,f)&&(t[f]=st(n[f],null,i,u));le(t,e)}}else if(t=n,c(n)){if(i&&-1!==(e=i.indexOf(n)))return u[e];if(a(n))return st(n,[],i,u);if(uh.test(ti.call(n)))t=new n.constructor(n);else if(ft(n))t=new Date(n.getTime());else if(wi(n))t=new RegExp(n.source,n.toString().match(/[^\/]*$/)[0]),t.lastIndex=n.lastIndex;else if(h(n.cloneNode))t=n.cloneNode(!0);else return f=Object.create(rh(n)),st(n,f,i,u);u&&(i.push(n),u.push(t))}return t}function ht(n,t){if(a(n)){t=t||[];for(var i=0,r=n.length;i<r;i++)t[i]=n[i]}else if(c(n))for(i in t=t||{},n)("$"!==i.charAt(0)||"$"!==i.charAt(1))&&(t[i]=n[i]);return t||n}function ot(n,t){if(n===t)return!0;if(null===n||null===t)return!1;if(n!==n&&t!==t)return!0;var r=typeof n,i;if(r==typeof t&&"object"==r)if(a(n)){if(!a(t))return!1;if((r=n.length)==t.length){for(i=0;i<r;i++)if(!ot(n[i],t[i]))return!1;return!0}}else{if(ft(n))return ft(t)?ot(n.getTime(),t.getTime()):!1;if(wi(n))return wi(t)?n.toString()==t.toString():!1;if(or(n)||or(t)||er(n)||er(t)||a(t)||ft(t)||wi(t))return!1;r=rt();for(i in n)if("$"!==i.charAt(0)&&!h(n[i])){if(!ot(n[i],t[i]))return!1;r[i]=!0}for(i in t)if(!(i in r)&&"$"!==i.charAt(0)&&e(t[i])&&!h(t[i]))return!1;return!0}return!1}function cr(n,t,i){return n.concat(ni.call(t,i))}function pe(n,t){var i=2<arguments.length?ni.call(arguments,2):[];return!h(t)||t instanceof RegExp?t:i.length?function(){return arguments.length?t.apply(n,cr(i,arguments,0)):t.apply(n,i)}:function(){return arguments.length?t.apply(n,arguments):t.call(n)}}function bc(n,r){var u=r;return"string"==typeof n&&"$"===n.charAt(0)&&"$"===n.charAt(1)?u=i:er(r)?u="$WINDOW":r&&t===r?u="$DOCUMENT":or(r)&&(u="$SCOPE"),u}function lr(n,t){return"undefined"==typeof n?i:(k(t)||(t=t?2:null),JSON.stringify(n,bc,t))}function we(n){return l(n)?JSON.parse(n):n}function be(n,t){var i=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(i)?t:i}function of(n,t,i){i=i?-1:1;var r=be(t,n.getTimezoneOffset());return t=n,n=i*(r-n.getTimezoneOffset()),t=new Date(t.getTime()),t.setMinutes(t.getMinutes()+n),t}function kt(n){n=s(n).clone();try{n.empty()}catch(i){}var t=s("<div>").append(n).html();try{return n[0].nodeType===ir?y(t):t.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(n,t){return"<"+y(t)})}catch(r){return y(t)}}function ke(n){try{return decodeURIComponent(n)}catch(t){}}function de(n){var t={};return r((n||"").split("&"),function(n){var u,i,r;n&&(i=n=n.replace(/\+/g,"%20"),u=n.indexOf("="),-1!==u&&(i=n.substring(0,u),r=n.substring(u+1)),i=ke(i),e(i)&&(r=e(r)?ke(r):!0,gt.call(t,i)?a(t[i])?t[i].push(r):t[i]=[t[i],r]:t[i]=r))}),t}function sf(n){var t=[];return r(n,function(n,i){a(n)?r(n,function(n){t.push(ct(i,!0)+(!0===n?"":"="+ct(n,!0)))}):t.push(ct(i,!0)+(!0===n?"":"="+ct(n,!0)))}),t.length?t.join("&"):""}function tu(n){return ct(n,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ct(n,t){return encodeURIComponent(n).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,t?"%20":"+")}function kc(n,t){for(var i,u=tr.length,r=0;r<u;++r)if(i=tr[r]+t,l(i=n.getAttribute(i)))return i;return null}function dc(n,t){var i,u,f={};r(tr,function(t){t+="app";!i&&n.hasAttribute&&n.hasAttribute(t)&&(i=n,u=n.getAttribute(t))});r(tr,function(t){t+="app";var r;!i&&(r=n.querySelector("["+t.replace(":","\\:")+"]"))&&(i=r,u=r.getAttribute(t))});i&&(f.strictDi=null!==kc(i,"strict-di"),t(i,u?[u]:[],f))}function ge(i,u,f){c(f)||(f={});f=p({strictDi:!1},f);var e=function(){if(i=s(i),i.injector()){var n=i[0]===t?"document":kt(i);throw li("btstrpd",n.replace(/</,"&lt;").replace(/>/,"&gt;"));}return u=u||[],u.unshift(["$provide",function(n){n.value("$rootElement",i)}]),f.debugInfoEnabled&&u.push(["$compileProvider",function(n){n.debugInfoEnabled(!0)}]),u.unshift("ng"),n=vr(u,f.strictDi),n.invoke(["$rootScope","$rootElement","$compile","$injector",function(n,t,i,r){n.$apply(function(){t.data("$injector",r);i(t)(n)})}]),n},o=/^NG_ENABLE_DEBUG_INFO!/,l=/^NG_DEFER_BOOTSTRAP!/;if(n&&o.test(n.name)&&(f.debugInfoEnabled=!0,n.name=n.name.replace(o,"")),n&&!l.test(n.name))return e();n.name=n.name.replace(l,"");ut.resumeBootstrap=function(n){return r(n,function(n){u.push(n)}),e()};h(ut.resumeDeferredBootstrap)&&ut.resumeDeferredBootstrap()}function gc(){n.name="NG_ENABLE_DEBUG_INFO!"+n.name;n.location.reload()}function nl(n){if(n=ut.element(n).injector(),!n)throw li("test");return n.get("$$testability")}function no(n,t){return t=t||"_",n.replace(sv,function(n,i){return(i?t:"")+n.toLowerCase()})}function tl(){var r,t;eh||(t=du(),(pt=f(t)?n.jQuery:t?n[t]:i)&&pt.fn.on?(s=pt,p(pt.fn,{scope:vi.scope,isolateScope:vi.isolateScope,controller:vi.controller,injector:vi.injector,inheritedData:vi.inheritedData}),r=pt.cleanData,pt.cleanData=function(n){var u,t,i;if(ie)ie=!1;else for(t=0;null!=(i=n[t]);t++)(u=pt._data(i,"events"))&&u.$destroy&&pt(i).triggerHandler("$destroy");r(n)}):s=b,ut.element=s,eh=!0)}function iu(n,t,i){if(!n)throw li("areq",t||"?",i||"required");return n}function bi(n,t,i){return i&&a(n)&&(n=n[n.length-1]),iu(h(n),t,"not a function, got "+(n&&"object"==typeof n?n.constructor.name||"Object":typeof n)),n}function ki(n,t){if("hasOwnProperty"===n)throw li("badname",t);}function to(n,t,i){if(!t)return n;t=t.split(".");for(var u,f=n,e=t.length,r=0;r<e;r++)u=t[r],n&&(n=(f=n)[u]);return!i&&h(n)?pe(f,n):n}function ru(n){for(var t=n[0],u=n[n.length-1],i,r=1;t!==u&&(t=t.nextSibling);r++)(i||n[r]!==t)&&(i||(i=s(ni.call(n,0,r))),i.push(t));return i||n}function rt(){return Object.create(null)}function il(n){function t(n,t,i){return n[t]||(n[t]=i())}var i=v("$injector"),r=v("ng");return n=t(n,"angular",Object),n.$$minErr=n.$$minErr||v,t(n,"module",function(){var n={};return function(u,f,e){if("hasOwnProperty"===u)throw r("badname","module");return f&&n.hasOwnProperty(u)&&(n[u]=null),t(n,u,function(){function t(n,t,i,u){return u||(u=r),function(){return u[i||"push"]([n,t,arguments]),o}}function n(n,t){return function(i,f){return f&&h(f)&&(f.$$moduleName=u),r.push([n,t,arguments]),o}}if(!f)throw i("nomod",u);var r=[],s=[],c=[],l=t("$injector","invoke","push",s),o={_invokeQueue:r,_configBlocks:s,_runBlocks:c,requires:f,name:u,provider:n("$provide","provider"),factory:n("$provide","factory"),service:n("$provide","service"),value:t("$provide","value"),constant:t("$provide","constant","unshift"),decorator:n("$provide","decorator"),animation:n("$animateProvider","register"),filter:n("$filterProvider","register"),controller:n("$controllerProvider","register"),directive:n("$compileProvider","directive"),config:l,run:function(n){return c.push(n),this}};return e&&l(e),o})}})}function rl(t){p(t,{bootstrap:ge,copy:st,extend:p,merge:pc,equals:ot,element:s,forEach:r,injector:vr,noop:o,bind:pe,toJson:lr,fromJson:we,identity:fr,isUndefined:f,isDefined:e,isString:l,isFunction:h,isObject:c,isNumber:k,isElement:ye,isArray:a,version:hv,isDate:ft,lowercase:y,uppercase:bu,callbacks:{counter:0},getTestability:nl,$$minErr:v,$$csp:ai,reloadWithDebugInfo:gc});te=il(n);te("ng",["ngLocale"],["$provide",function(n){n.provider({$$sanitizeUri:aa});n.provider("$compile",ho).directive({a:gh,input:ec,textarea:ec,form:dy,script:bw,select:gw,style:tb,option:nb,ngBind:ep,ngBindHtml:sp,ngBindTemplate:op,ngClass:cp,ngClassEven:ap,ngClassOdd:lp,ngCloak:vp,ngController:yp,ngForm:gy,ngHide:lw,ngIf:wp,ngInclude:bp,ngInit:dp,ngNonBindable:uw,ngPluralize:sw,ngRepeat:hw,ngShow:cw,ngStyle:aw,ngSwitch:vw,ngSwitchWhen:yw,ngSwitchDefault:pw,ngOptions:ow,ngTransclude:ww,ngModel:tw,ngList:gp,ngChange:hp,pattern:lc,ngPattern:lc,required:cc,ngRequired:cc,minlength:vc,ngMinlength:vc,maxlength:ac,ngMaxlength:ac,ngValue:fp,ngModelOptions:rw}).directive({ngInclude:kp}).directive(kr).directive(oc);n.provider({$anchorScroll:sl,$animate:ty,$animateCss:iy,$$animateQueue:ny,$$AnimateRunner:gv,$browser:ll,$cacheFactory:al,$controller:yl,$document:pl,$exceptionHandler:wl,$filter:ls,$$forceReflow:uy,$interpolate:ia,$interval:ra,$http:dl,$httpParamSerializer:bl,$httpParamSerializerJQLike:kl,$httpBackend:na,$location:ua,$log:fa,$parse:oa,$rootScope:la,$q:sa,$$q:ha,$sce:pa,$sceDelegate:ya,$sniffer:wa,$templateCache:vl,$templateRequest:ba,$$testability:ka,$timeout:da,$window:ga,$$rAF:ca,$$jqLite:el,$$HashMap:bv,$$cookieReader:nv})}])}function ar(n){return n.replace(cv,function(n,t,i,r){return r?i.toUpperCase():i}).replace(lv,"Moz$1")}function io(n){return n=n.nodeType,n===wt||!n||9===n}function ro(n,t){var i,u,f=t.createDocumentFragment(),e=[];if(ue.test(n)){for(i=i||f.appendChild(t.createElement("div")),u=(yv.exec(n)||["",""])[1].toLowerCase(),u=lt[u]||lt._default,i.innerHTML=u[1]+n.replace(pv,"<$1><\/$2>")+u[2],u=u[0];u--;)i=i.lastChild;e=cr(e,i.childNodes);i=f.firstChild;i.textContent=""}else e.push(t.createTextNode(n));return f.textContent="",f.innerHTML="",r(e,function(n){f.appendChild(n)}),f}function b(n){var i,r;if(n instanceof b)return n;if(l(n)&&(n=w(n),i=!0),!(this instanceof b)){if(i&&"<"!=n.charAt(0))throw re("nosel");return new b(n)}i&&(i=t,n=(r=vv.exec(n))?[i.createElement(r[1])]:(r=ro(n,i))?r.childNodes:[]);fo(this,n)}function hf(n){return n.cloneNode(!0)}function uu(n,t){if(t||fu(n),n.querySelectorAll)for(var r=n.querySelectorAll("*"),i=0,u=r.length;i<u;i++)fu(r[i])}function uo(n,t,i,u){if(e(u))throw re("offargs");var f=(u=eu(n))&&u.events,o=u&&u.handle;if(o)if(t)r(t.split(" "),function(t){if(e(i)){var r=f[t];if(hr(r||[],i),r&&0<r.length)return}n.removeEventListener(t,o,!1);delete f[t]});else for(t in f)"$destroy"!==t&&n.removeEventListener(t,o,!1),delete f[t]}function fu(n,t){var u=n.ng339,r=u&&rr[u];r&&(t?delete r.data[t]:(r.handle&&(r.events.$destroy&&r.handle({},"$destroy"),uo(n)),delete rr[u],n.ng339=i))}function eu(n,t){var r=n.ng339,r=r&&rr[r];return t&&!r&&(n.ng339=r=++oh,r=rr[r]={events:{},data:{},handle:i}),r}function cf(n,t,i){if(io(n)){var r=e(i),u=!r&&t&&!c(t),f=!t;if(n=(n=eu(n,!u))&&n.data,r)n[t]=i;else{if(f)return n;if(u)return n&&n[t];p(n,t)}}}function ou(n,t){return n.getAttribute?-1<(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+t+" "):!1}function su(n,t){t&&n.setAttribute&&r(t.split(" "),function(t){n.setAttribute("class",w((" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+w(t)+" "," ")))})}function hu(n,t){if(t&&n.setAttribute){var i=(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");r(t.split(" "),function(n){n=w(n);-1===i.indexOf(" "+n+" ")&&(i+=n+" ")});n.setAttribute("class",w(i))}}function fo(n,t){var i,r;if(t)if(t.nodeType)n[n.length++]=t;else if(i=t.length,"number"==typeof i&&t.window!==t){if(i)for(r=0;r<i;r++)n[n.length++]=t[r]}else n[n.length++]=t}function eo(n,t){return cu(n,"$"+(t||"ngController")+"Controller")}function cu(n,t,i){for(9==n.nodeType&&(n=n.documentElement),t=a(t)?t:[t];n;){for(var r=0,u=t.length;r<u;r++)if(e(i=s.data(n,t[r])))return i;n=n.parentNode||11===n.nodeType&&n.host}}function oo(n){for(uu(n,!0);n.firstChild;)n.removeChild(n.firstChild)}function lf(n,t){t||uu(n);var i=n.parentNode;i&&i.removeChild(n)}function ul(t,i){if(i=i||n,"complete"===i.document.readyState)i.setTimeout(t);else s(i).on("load",t)}function so(n,t){var i=br[t.toLowerCase()];return i&&fe[bt(n)]&&i}function fl(n,t){var i=function(i,r){var u,e,s,o;if(i.isDefaultPrevented=function(){return i.defaultPrevented},u=t[r||i.type],e=u?u.length:0,e)for(f(i.immediatePropagationStopped)&&(s=i.stopImmediatePropagation,i.stopImmediatePropagation=function(){i.immediatePropagationStopped=!0;i.stopPropagation&&i.stopPropagation();s&&s.call(i)}),i.isImmediatePropagationStopped=function(){return!0===i.immediatePropagationStopped},1<e&&(u=ht(u)),o=0;o<e;o++)i.isImmediatePropagationStopped()||u[o].call(n,i)};return i.elem=n,i}function el(){this.$get=function(){return p(b,{hasClass:function(n,t){return n.attr&&(n=n[0]),ou(n,t)},addClass:function(n,t){return n.attr&&(n=n[0]),hu(n,t)},removeClass:function(n,t){return n.attr&&(n=n[0]),su(n,t)}})}}function ei(n,t){var i=n&&n.$$hashKey;return i?("function"==typeof i&&(i=n.$$hashKey()),i):(i=typeof n,"function"==i||"object"==i&&null!==n?n.$$hashKey=i+":"+(t||yc)():i+":"+n)}function di(n,t){if(t){var i=0;this.nextUid=function(){return++i}}r(n,this.put,this)}function ol(n){return(n=n.toString().replace(hh,"").match(sh))?"function("+(n[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function vr(n,t){function o(n){return function(t,i){if(c(t))r(t,ce(n));else return n(t,i)}}function b(n,t){if(ki(n,"service"),(h(t)||a(t))&&(t=u.instantiate(t)),!t.$get)throw yi("pget",n);return v[n+"Provider"]=t}function nt(n,t){return function(){var i=e.invoke(t,this);if(f(i))throw yi("undef",n);return i}}function y(n,t,i){return b(n,{$get:!1!==i?nt(n,t):t})}function k(n){iu(f(n)||a(n),"modulesToLoad","not an array");var t=[],i;return r(n,function(n){function f(n){for(var i,r,t=0,f=n.length;t<f;t++)i=n[t],r=u.get(i[0]),r[i[1]].apply(r,i[2])}if(!g.get(n)){g.put(n,!0);try{l(n)?(i=te(n),t=t.concat(k(i.requires)).concat(i._runBlocks),f(i._invokeQueue),f(i._configBlocks)):h(n)?t.push(u.invoke(n)):a(n)?t.push(u.invoke(n)):bi(n,"module")}catch(r){throw a(n)&&(n=n[n.length-1]),r.message&&r.stack&&-1==r.stack.indexOf(r.message)&&(r=r.message+"\n"+r.stack),yi("modulerr",n,r.stack||r.message||r);}}}),t}function d(n,i){function r(t,r){if(n.hasOwnProperty(t)){if(n[t]===p)throw yi("cdep",t+" <- "+s.join(" <- "));return n[t]}try{return s.unshift(t),n[t]=p,n[t]=i(t,r)}catch(u){throw n[t]===p&&delete n[t],u;}finally{s.shift()}}function u(n,i,u,f){"string"==typeof u&&(f=u,u=null);for(var h=[],c=vr.$$annotate(n,t,f),e,o=0,s=c.length;o<s;o++){if(e=c[o],"string"!=typeof e)throw yi("itkn",e);h.push(u&&u.hasOwnProperty(e)?u[e]:r(e,f))}return a(n)&&(n=n[s]),n.apply(i,h)}return{invoke:u,instantiate:function(n,t,i){var r=Object.create((a(n)?n[n.length-1]:n).prototype||null);return n=u(n,r,t,i),c(n)||h(n)?n:r},get:r,annotate:vr.$$annotate,has:function(t){return v.hasOwnProperty(t+"Provider")||n.hasOwnProperty(t)}}}t=!0===t;var p={},s=[],g=new di([],!0),v={$provide:{provider:o(b),factory:o(y),service:o(function(n,t){return y(n,["$injector",function(n){return n.instantiate(t)}])}),value:o(function(n,t){return y(n,vt(t),!1)}),constant:o(function(n,t){ki(n,"constant");v[n]=t;w[n]=t}),decorator:function(n,t){var i=u.get(n+"Provider"),r=i.$get;i.$get=function(){var n=e.invoke(r,i);return e.invoke(t,null,{$delegate:n})}}}},u=v.$injector=d(v,function(n,t){ut.isString(t)&&s.push(t);throw yi("unpr",s.join(" <- "));}),w={},e=w.$injector=d(w,function(n,t){var r=u.get(n+"Provider",t);return e.invoke(r.$get,r,i,n)});return r(k(n),function(n){n&&e.invoke(n)}),e}function sl(){var n=!0;this.disableAutoScrolling=function(){n=!1};this.$get=["$window","$location","$rootScope",function(t,i,r){function o(n){var t=null;return Array.prototype.some.call(n,function(n){if("a"===bt(n))return t=n,!0}),t}function u(n){if(n){n.scrollIntoView();var i;i=f.yOffset;h(i)?i=i():ye(i)?(i=i[0],i="fixed"!==t.getComputedStyle(i).position?0:i.getBoundingClientRect().bottom):k(i)||(i=0);i&&(n=n.getBoundingClientRect().top,t.scrollBy(0,n-i))}else t.scrollTo(0,0)}function f(n){n=l(n)?n:i.hash();var t;n?(t=e.getElementById(n))?u(t):(t=o(e.getElementsByName(n)))?u(t):"top"===n&&u(null):u(null)}var e=t.document;return n&&r.$watch(function(){return i.hash()},function(n,t){n===t&&""===n||ul(function(){r.$evalAsync(f)})}),f}]}function yr(n,t){return!n&&!t?"":n?t?(a(n)&&(n=n.join(" ")),a(t)&&(t=t.join(" ")),n+" "+t):n:t}function hl(n){l(n)&&(n=n.split(" "));var t=rt();return r(n,function(n){n.length&&(t[n]=!0)}),t}function oi(n){return c(n)?n:{}}function cl(n,t,i,u){function k(n){try{n.apply(null,ni.call(arguments,1))}finally{if(l--,0===l)for(;b.length;)try{b.pop()()}catch(t){i.error(t)}}}function d(){y=null;g();tt()}function g(){n:{try{h=p.state;break n}catch(n){}h=void 0}h=f(h)?null:h;ot(h,nt)&&(h=nt);nt=h}function tt(){(v!==e.url()||a!==h)&&(v=e.url(),a=h,r(it,function(n){n(e.url(),h)}))}var e=this,c=n.location,p=n.history,ut=n.setTimeout,ft=n.clearTimeout,w={},l,b;e.isMock=!1;l=0;b=[];e.$$completeOutstandingRequest=k;e.$$incOutstandingRequestCount=function(){l++};e.notifyWhenNoOutstandingRequests=function(n){0===l?n():b.push(n)};var h,a,v=c.href,et=t.find("base"),y=null;g();a=h;e.url=function(t,i,r){var s,o;return(f(r)&&(r=null),c!==n.location&&(c=n.location),p!==n.history&&(p=n.history),t)?(s=a===r,v===t&&(!u.history||s))?e:(o=v&&si(v)===si(t),v=t,a=r,!u.history||o&&s?((!o||y)&&(y=t),i?c.replace(t):o?(i=c,r=t.indexOf("#"),r=-1===r?"":t.substr(r),i.hash=r):c.href=t,c.href!==t&&(y=t)):(p[i?"replaceState":"pushState"](r,"",t),g(),a=h),e):y||c.href.replace(/%27/g,"'")};e.state=function(){return h};var it=[],rt=!1,nt=null;e.onUrlChange=function(t){if(!rt){if(u.history)s(n).on("popstate",d);s(n).on("hashchange",d);rt=!0}return it.push(t),t};e.$$applicationDestroyed=function(){s(n).off("hashchange popstate",d)};e.$$checkUrlChange=tt;e.baseHref=function(){var n=et.attr("href");return n?n.replace(/^(https?\:)?\/\/[^\/]*/,""):""};e.defer=function(n,t){var i;return l++,i=ut(function(){delete w[i];k(n)},t||0),w[i]=!0,i};e.defer.cancel=function(n){return w[n]?(delete w[n],ft(n),k(o),!0):!1}}function ll(){this.$get=["$window","$log","$sniffer","$document",function(n,t,i,r){return new cl(n,r,t,i)}]}function al(){this.$get=function(){function t(t,i){function l(n){n!=e&&(r?r==n&&(r=n.n):r=n,c(n.n,n.p),c(n,e),e=n,e.n=null)}function c(n,t){n!=t&&(n&&(n.p=t),t&&(t.n=n))}if(t in n)throw v("$cacheFactory")("iid",t);var s=0,a=p({},i,{id:t}),o={},h=i&&i.capacity||Number.MAX_VALUE,u={},e=null,r=null;return n[t]={put:function(n,t){if(!f(t)){if(h<Number.MAX_VALUE){var i=u[n]||(u[n]={key:n});l(i)}return n in o||s++,o[n]=t,s>h&&this.remove(r.key),t}},get:function(n){if(h<Number.MAX_VALUE){var t=u[n];if(!t)return;l(t)}return o[n]},remove:function(n){if(h<Number.MAX_VALUE){var t=u[n];if(!t)return;t==e&&(e=t.p);t==r&&(r=t.n);c(t.n,t.p);delete u[n]}delete o[n];s--},removeAll:function(){o={};s=0;u={};e=r=null},destroy:function(){u=a=o=null;delete n[t]},info:function(){return p({},a,{size:s})}}}var n={};return t.info=function(){var t={};return r(n,function(n,i){t[i]=n.info()}),t},t.get=function(t){return n[t]},t}}function vl(){this.$get=["$cacheFactory",function(n){return n("templates")}]}function ho(n,u){function k(n,t,i){var f=/^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/,u={};return r(n,function(n,r){var e=n.match(f);if(!e)throw it("iscp",t,r,n,i?"controller bindings definition":"isolate scope definition");u[r]={mode:e[1][0],collection:"*"===e[2],optional:"?"===e[3],attrName:e[4]||r}}),u}function d(n){var t=n.charAt(0);if(!t||t!==y(t))throw it("baddir",n);if(n!==n.trim())throw it("baddir",n);}var b={},g=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,nt=/(([\w\-]+)(?:\:([^;]+))?;?)/,tt=wc("ngSrc,ngSrcset,src,srcset"),ut=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,ft=/^(on[a-z]+|formaction)$/,v;this.directive=function et(t,i){return ki(t,"directive"),l(t)?(d(t),iu(i,"directiveFactory"),b.hasOwnProperty(t)||(b[t]=[],n.factory(t+"Directive",["$injector","$exceptionHandler",function(n,i){var u=[];return r(b[t],function(r,f){var e,v,y,p,w,b;try{e=n.invoke(r);h(e)?e={compile:vt(e)}:!e.compile&&e.link&&(e.compile=vt(e.link));e.priority=e.priority||0;e.index=f;e.name=e.name||t;e.require=e.require||e.controller&&e.name;e.restrict=e.restrict||"EA";var d=e,o=e,a=e.name,s={isolateScope:null,bindToController:null};if(c(o.scope)&&(!0===o.bindToController?(s.bindToController=k(o.scope,a,!0),s.isolateScope={}):s.isolateScope=k(o.scope,a,!1)),c(o.bindToController)&&(s.bindToController=k(o.bindToController,a,!0)),c(s.bindToController)){if(v=o.controller,y=o.controllerAs,!v)throw it("noctrl",a);n:if(y&&l(y))p=y;else{if(l(v)&&(w=ah.exec(v),w)){p=w[3];break n}p=void 0}if(!p)throw it("noident",a);}b=d.$$bindings=s;c(b.isolateScope)&&(e.$$isolateBindings=b.isolateScope);e.$$moduleName=r.$$moduleName;u.push(e)}catch(g){i(g)}}),u}])),b[t].push(i)):r(t,ce(et)),this};this.aHrefSanitizationWhitelist=function(n){return e(n)?(u.aHrefSanitizationWhitelist(n),this):u.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(n){return e(n)?(u.imgSrcSanitizationWhitelist(n),this):u.imgSrcSanitizationWhitelist()};v=!0;this.debugInfoEnabled=function(n){return e(n)?(v=n,this):v};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(n,u,e,k,d,et,st,ht,ct,lt,at){function ti(n,t){try{n.addClass(t)}catch(i){}}function vt(n,t,i,u,f){var o,e;return n instanceof s||(n=s(n)),r(n,function(t,i){t.nodeType==ir&&t.nodeValue.match(/\S+/)&&(n[i]=s(t).wrap("<span><\/span>").parent()[0])}),o=fi(n,t,n,i,u,f),vt.$$addScopeClass(n),e=null,function(t,i,r){var u,f,h;if(iu(t,"scope"),r=r||{},u=r.parentBoundTranscludeFn,f=r.transcludeControllers,r=r.futureParentElement,u&&u.$$boundTransclude&&(u=u.$$boundTransclude),e||(e=(r=r&&r[0])?"foreignobject"!==bt(r)&&r.toString().match(/SVG/)?"svg":"html":"html"),r="html"!==e?s(oi(e,s("<div>").append(n).html())):i?vi.clone.call(n):n,f)for(h in f)r.data("$"+h+"Controller",f[h].instance);return vt.$$addScopeInfo(r,t),i&&i(r,t),o&&o(t,r,r,u),r}}function fi(n,t,r,u,f,e){function p(n,r,u,f){var h,l,c,e,p,a,y;if(v)for(y=Array(r.length),e=0;e<o.length;e+=3)h=o[e],y[h]=r[h];else y=r;for(e=0,p=o.length;e<p;)(l=y[o[e++]],r=o[e++],h=o[e++],r)?(r.scope?(c=n.$new(),vt.$$addScopeInfo(s(l),c),a=r.$$destroyBindings)&&(r.$$destroyBindings=null,c.$on("$destroyed",a)):c=n,a=r.transcludeOnThisElement?ii(n,r.transclude,f):!r.templateOnThisElement&&f?f:!f&&t?ii(n,t):null,r(h,c,l,u,a,r)):h&&h(n,l.childNodes,i,f)}for(var o=[],h,l,a,y,v,c=0;c<n.length;c++)h=new hi,l=ei(n[c],[],h,0===c?u:i,f),(e=l.length?ai(l,n[c],h,t,r,null,[],[],e):null)&&e.scope&&vt.$$addScopeClass(h.$$element),h=e&&e.terminal||!(a=n[c].childNodes)||!a.length?null:fi(a,e?(e.transcludeOnThisElement||!e.templateOnThisElement)&&e.transclude:t),(e||h)&&(o.push(c,e,h),y=!0,v=v||e),e=null;return y?p:null}function ii(n,t,i){return function(r,u,f,e,o){return r||(r=n.$new(!1,o),r.$$transcluded=!0),t(r,u,{parentBoundTranscludeFn:i,transcludeControllers:f,futureParentElement:e})}}function ei(n,t,i,r,u){var b=i.$attr,e,v,y,p;switch(n.nodeType){case wt:ri(t,dt(bt(n)),"E",r,u);for(var f,o,s,h=n.attributes,a=0,k=h&&h.length;a<k;a++)v=!1,y=!1,f=h[a],e=f.name,o=w(f.value),f=dt(e),(s=lr.test(f))&&(e=e.replace(lh,"").substr(8).replace(/_(.)/g,function(n,t){return t.toUpperCase()})),p=f.replace(/(Start|End)$/,""),tr(p)&&f===p+"Start"&&(v=e,y=e.substr(0,e.length-5)+"end",e=e.substr(0,e.length-6)),f=dt(e.toLowerCase()),b[f]=e,(s||!i.hasOwnProperty(f))&&(i[f]=o,so(n,f)&&(i[f]=!0)),cr(n,t,o,f,s),ri(t,f,"A",r,u,v,y);if(n=n.className,c(n)&&(n=n.animVal),l(n)&&""!==n)for(;e=nt.exec(n);)f=dt(e[2]),ri(t,f,"C",r,u)&&(i[f]=w(e[3])),n=n.substr(e.index+e[0].length);break;case ir:if(11===nr)for(;n.parentNode&&n.nextSibling&&n.nextSibling.nodeType===ir;)n.nodeValue+=n.nextSibling.nodeValue,n.parentNode.removeChild(n.nextSibling);er(t,n.nodeValue);break;case 8:try{(e=g.exec(n.nodeValue))&&(f=dt(e[1]),ri(t,f,"M",r,u)&&(i[f]=w(e[2])))}catch(d){}}return t.sort(ur),t}function ci(n,t,i){var r=[],u=0;if(t&&n.hasAttribute&&n.hasAttribute(t)){do{if(!n)throw it("uterdir",t,i);n.nodeType==wt&&(n.hasAttribute(t)&&u++,n.hasAttribute(i)&&u--);r.push(n);n=n.nextSibling}while(0<u)}else r.push(n);return s(r)}function li(n,t,i){return function(r,u,f,e,o){return u=ci(u[0],t,i),n(r,u,f,e,o)}}function ai(n,r,u,f,o,v,y,p,b){function vi(n,t,i,r){n&&(i&&(n=li(n,i,r)),n.require=k.require,n.directiveName=tt,(g===k||k.$$isolateScope)&&(n=wi(n,{isolateScope:!0})),y.push(n));t&&(i&&(t=li(t,i,r)),t.require=k.require,t.directiveName=tt,(g===k||k.$$isolateScope)&&(t=wi(t,{isolateScope:!0})),p.push(t))}function ri(n,t,i,r){var f,e,u;if(l(t)){if(u=t.match(ut),t=t.substring(u[0].length),e=u[1]||u[3],u="?"===u[2],"^^"===e?i=i.parent():f=(f=r&&r[t])&&f.instance,f||(r="$"+t+"Controller",f=e?i.inheritedData(r):i.data(r)),!f&&!u)throw it("ctreq",t,n);}else if(a(t))for(f=[],e=0,u=t.length;e<u;e++)f[e]=ri(n,t[e],i,r);return f||null}function di(n,t,i,r,u,f){var h=rt(),c;for(c in r){var e=r[c],o={$scope:e===g||e.$$isolateScope?u:f,$element:n,$attrs:t,$transclude:i},s=e.controller;"@"==s&&(s=t[e.name]);o=et(s,o,!0,e.controllerAs);h[e.name]=o;bt||n.data("$"+e.name+"Controller",o.instance)}return h}function st(n,t,f,e,o,h){function rt(n,t,r){var u;return or(n)||(r=t,t=n,n=i),bt&&(u=b),r||(r=bt?l.parent():l),o(n,t,u,r,tt)}var a,c,w,v,b,d,l,k,it,nt,tt;if(r===f?(e=u,l=u.$$element):(l=s(f),e=new hi(l,u)),g&&(v=t.$new(!0)),o&&(d=rt,d.$$boundTransclude=o),ht&&(b=di(l,e,d,ht,v,t)),g&&(vt.$$addScopeInfo(l,v,!0,!(ot&&(ot===g||ot===g.$$originalDirective))),vt.$$addScopeClass(l,!0),v.$$isolateBindings=g.$$isolateBindings,si(t,e,v,v.$$isolateBindings,g,v)),b){k=g||ft;k&&b[k.name]&&(c=k.$$bindings.bindToController,(w=b[k.name])&&w.identifier&&c&&(it=w,h.$$destroyBindings=si(t,e,w.instance,c,k)));for(a in b)w=b[a],nt=w(),nt!==w.instance&&(w.instance=nt,l.data("$"+a+"Controller",nt),w===it&&(h.$$destroyBindings(),h.$$destroyBindings=si(t,e,nt,c,k)))}for(a=0,h=y.length;a<h;a++)c=y[a],bi(c,c.isolateScope?v:t,l,e,c.require&&ri(c.directiveName,c.require,l,b),d);for(tt=t,g&&(g.template||null===g.templateUrl)&&(tt=v),n&&n(tt,f.childNodes,i,o),a=p.length-1;0<=a;a--)c=p[a],bi(c,c.isolateScope?v:t,l,e,c.require&&ri(c.directiveName,c.require,l,b),d)}var gt,ii,ki;b=b||{};for(var pt=-Number.MAX_VALUE,ft=b.newScopeDirective,ht=b.controllerDirectives,g=b.newIsolateScopeDirective,ot=b.templateDirective,ti=b.nonTlbTranscludeDirective,fi=!1,ai=!1,bt=b.hasElementTranscludeDirective,nt=u.$$element=s(r),k,tt,d,dt=f,lt,ct=0,at=n.length;ct<at;ct++){if(k=n[ct],gt=k.$$start,ii=k.$$end,gt&&(nt=ci(r,gt,ii)),d=i,pt>k.priority)break;if((d=k.scope)&&(k.templateUrl||(c(d)?(yt("new/isolated scope",g||ft,k,nt),g=k):yt("new/isolated scope",g,k,nt)),ft=ft||k),tt=k.name,!k.templateUrl&&k.controller&&(d=k.controller,ht=ht||rt(),yt("'"+tt+"' controller",ht[tt],k,nt),ht[tt]=k),(d=k.transclude)&&(fi=!0,k.$$tlb||(yt("transclusion",ti,k,nt),ti=k),"element"==d?(bt=!0,pt=k.priority,d=nt,nt=u.$$element=s(t.createComment(" "+tt+": "+u[tt]+" ")),r=nt[0],ui(o,ni.call(d,0),r),dt=vt(d,f,pt,v&&v.name,{nonTlbTranscludeDirective:ti})):(d=s(hf(r)).contents(),nt.empty(),dt=vt(d,f))),k.template)if(ai=!0,yt("template",ot,k,nt),ot=k,d=h(k.template)?k.template(nt,u):k.template,d=gi(d),k.replace){if(v=k,d=ue.test(d)?lo(oi(k.templateNamespace,w(d))):[],r=d[0],1!=d.length||r.nodeType!==wt)throw it("tplrt",tt,"");ui(o,nt,r);at={$attr:{}};d=ei(r,[],at);ki=n.splice(ct+1,n.length-(ct+1));g&&yi(d);n=n.concat(d).concat(ki);pi(u,at);at=n.length}else nt.html(d);if(k.templateUrl)ai=!0,yt("template",ot,k,nt),ot=k,k.replace&&(v=k),st=rr(n.splice(ct,n.length-ct),nt,u,o,fi&&dt,y,p,{controllerDirectives:ht,newScopeDirective:ft!==k&&ft,newIsolateScopeDirective:g,templateDirective:ot,nonTlbTranscludeDirective:ti}),at=n.length;else if(k.compile)try{lt=k.compile(nt,u,dt);h(lt)?vi(null,lt,gt,ii):lt&&vi(lt.pre,lt.post,gt,ii)}catch(nr){e(nr,kt(nt))}k.terminal&&(st.terminal=!0,pt=Math.max(pt,k.priority))}return st.scope=ft&&!0===ft.scope,st.transcludeOnThisElement=fi,st.templateOnThisElement=ai,st.transclude=dt,b.hasElementTranscludeDirective=bt,st}function yi(n){for(var t=0,i=n.length;t<i;t++)n[t]=ef(n[t],{$$isolateScope:!0})}function ri(t,i,r,u,o,s,h){var c,l,a;if(i===o)return null;if(o=null,b.hasOwnProperty(i))for(i=n.get(i+"Directive"),l=0,a=i.length;l<a;l++)try{c=i[l];(f(u)||u>c.priority)&&-1!=c.restrict.indexOf(r)&&(s&&(c=ef(c,{$$start:s,$$end:h})),t.push(c),o=c)}catch(v){e(v)}return o}function tr(t){if(b.hasOwnProperty(t))for(var r=n.get(t+"Directive"),i=0,u=r.length;i<u;i++)if(t=r[i],t.multiElement)return!0;return!1}function pi(n,t){var u=t.$attr,f=n.$attr,i=n.$$element;r(n,function(i,r){"$"!=r.charAt(0)&&(t[r]&&t[r]!==i&&(i+=("style"===r?";":" ")+t[r]),n.$set(r,i,!0,u[r]))});r(t,function(t,r){"class"==r?(ti(i,t),n["class"]=(n["class"]?n["class"]+" ":"")+t):"style"==r?(i.attr("style",i.attr("style")+";"+t),n.style=(n.style?n.style+";":"")+t):"$"==r.charAt(0)||n.hasOwnProperty(r)||(n[r]=t,f[r]=u[r])})}function rr(n,t,i,u,f,e,o,l){var y=[],v,p,b=t[0],a=n.shift(),g=ef(a,{templateUrl:null,transclude:null,replace:null,$$originalDirective:a}),d=h(a.templateUrl)?a.templateUrl(t,i):a.templateUrl,nt=a.templateNamespace;return t.empty(),k(d).then(function(h){var k,rt,tt,ft;if(h=gi(h),a.replace){if(h=ue.test(h)?lo(oi(nt,w(h))):[],k=h[0],1!=h.length||k.nodeType!==wt)throw it("tplrt",a.name,d);h={$attr:{}};ui(u,t,k);tt=ei(k,[],h);c(a.scope)&&yi(tt);n=tt.concat(n);pi(i,h)}else k=b,t.html(h);for(n.unshift(g),v=ai(n,k,i,f,t,a,e,o,l),r(u,function(n,i){n==k&&(u[i]=t[0])}),p=fi(t[0].childNodes,f);y.length;){h=y.shift();rt=y.shift();var et=y.shift(),ut=y.shift(),tt=t[0];h.$$destroyed||(rt!==b&&(ft=rt.className,l.hasElementTranscludeDirective&&a.replace||(tt=hf(k)),ui(et,s(rt),tt),ti(s(tt),ft)),rt=v.transcludeOnThisElement?ii(h,v.transclude,ut):ut,v(p,h,tt,u,rt,v))}y=null}),function(n,t,i,r,u){n=u;t.$$destroyed||(y?y.push(t,i,r,n):(v.transcludeOnThisElement&&(n=ii(t,v.transclude,u)),v(p,t,i,r,n,v)))}}function ur(n,t){var i=t.priority-n.priority;return 0!==i?i:n.name!==t.name?n.name<t.name?-1:1:n.index-t.index}function yt(n,t,i,r){function u(n){return n?" (module: "+n+")":""}if(t)throw it("multidir",t.name,u(t.$$moduleName),i.name,u(i.$$moduleName),n,kt(r));}function er(n,t){var i=u(t,!0);i&&n.push({priority:0,compile:function(n){n=n.parent();var t=!!n.length;return t&&vt.$$addBindingClass(n),function(n,r){var u=r.parent();t||vt.$$addBindingClass(u);vt.$$addBindingInfo(u,i.expressions);n.$watch(i,function(n){r[0].nodeValue=n})}}})}function oi(n,i){n=y(n||"html");switch(n){case"svg":case"math":var r=t.createElement("div");return r.innerHTML="<"+n+">"+i+"<\/"+n+">",r.childNodes[0].childNodes;default:return i}}function sr(n,t){if("srcdoc"==t)return ct.HTML;var i=bt(n);if("xlinkHref"==t||"form"==i&&"action"==t||"img"!=i&&("src"==t||"ngSrc"==t))return ct.RESOURCE_URL}function cr(n,t,i,r,f){var o=sr(n,r),e;if(f=tt[r]||f,e=u(i,!0,o,f),e){if("multiple"===r&&"select"===bt(n))throw it("selmulti",kt(n));t.push({priority:100,compile:function(){return{pre:function(n,t,s){if(t=s.$$observers||(s.$$observers={}),ft.test(r))throw it("nodomevents");var h=s[r];h!==i&&(e=h&&u(h,!0,o,f),i=h);e&&(s[r]=e(n),(t[r]||(t[r]=[])).$$inter=!0,(s.$$observers&&s.$$observers[r].$$scope||n).$watch(e,function(n,t){"class"===r&&n!=t?s.$updateClass(n,t):s.$set(r,n)}))}}}})}}function ui(n,i,r){var u=i[0],h=i.length,o=u.parentNode,f,e,c;if(n)for(f=0,e=n.length;f<e;f++)if(n[f]==u){for(n[f++]=r,e=f+h-1,c=n.length;f<c;f++,e++)e<c?n[f]=n[e]:delete n[f];n.length-=h-1;n.context===u&&(n.context=r);break}for(o&&o.replaceChild(r,u),n=t.createDocumentFragment(),n.appendChild(u),s.hasData(u)&&(s(r).data(s(u).data()),pt?(ie=!0,pt.cleanData([u])):delete s.cache[u[s.expando]]),u=1,h=i.length;u<h;u++)o=i[u],s(o).remove(),n.appendChild(o),delete i[u];i[0]=r;i.length=1}function wi(n,t){return p(function(){return n.apply(null,arguments)},n,t)}function bi(n,t,i,r,u,f){try{n(t,i,r,u,f)}catch(o){e(o,kt(i))}}function si(n,t,i,f,e,s){var h;return r(f,function(r,f){var s=r.attrName,c=r.optional,v,a,p,y;switch(r.mode){case"@":c||gt.call(t,s)||(i[f]=t[s]=void 0);t.$observe(s,function(n){l(n)&&(i[f]=n)});t.$$observers[s].$$scope=n;l(t[s])&&(i[f]=u(t[s])(n));break;case"=":if(!gt.call(t,s)){if(c)break;t[s]=void 0}if(c&&!t[s])break;a=d(t[s]);y=a.literal?ot:function(n,t){return n===t||n!==n&&t!==t};p=a.assign||function(){v=i[f]=a(n);throw it("nonassign",t[s],e.name);};v=i[f]=a(n);c=function(t){return y(t,i[f])||(y(t,v)?p(n,t=i[f]):i[f]=t),v=t};c.$stateful=!0;c=r.collection?n.$watchCollection(t[s],c):n.$watch(d(t[s],c),null,a.literal);h=h||[];h.push(c);break;case"&":if(a=t.hasOwnProperty(s)?d(t[s]):o,a===o&&c)break;i[f]=function(t){return a(n,t)}}}),f=h?function(){for(var n=0,t=h.length;n<t;++n)h[n]()}:o,s&&f!==o?(s.$on("$destroy",f),o):f}var hi=function(n,t){if(t)for(var u=Object.keys(t),r,i=0,f=u.length;i<f;i++)r=u[i],this[r]=t[r];else this.$attr={};this.$$element=n};hi.prototype={$normalize:dt,$addClass:function(n){n&&0<n.length&&lt.addClass(this.$$element,n)},$removeClass:function(n){n&&0<n.length&&lt.removeClass(this.$$element,n)},$updateClass:function(n,t){var i=co(n,t);i&&i.length&&lt.addClass(this.$$element,i);(i=co(t,n))&&i.length&&lt.removeClass(this.$$element,i)},$set:function(n,t,i,u){var s=so(this.$$element[0],n),o=ee[n],l=n;if(s?(this.$$element.prop(n,t),u=s):o&&(this[o]=t,l=o),this[n]=t,u?this.$attr[n]=u:(u=this.$attr[n])||(this.$attr[n]=u=no(n,"-")),s=bt(this.$$element),"a"===s&&"href"===n||"img"===s&&"src"===n)this[n]=t=at(t,"src"===n);else if("img"===s&&"srcset"===n){for(var s="",o=w(t),h=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,h=/\s/.test(o)?h:/(,)/,o=o.split(h),h=Math.floor(o.length/2),c=0;c<h;c++)var a=2*c,s=s+at(w(o[a]),!0),s=s+(" "+w(o[a+1]));o=w(o[2*c]).split(/\s/);s+=at(w(o[0]),!0);2===o.length&&(s+=" "+w(o[1]));this[n]=t=s}!1!==i&&(null===t||f(t)?this.$$element.removeAttr(u):this.$$element.attr(u,t));(n=this.$$observers)&&r(n[l],function(n){try{n(t)}catch(i){e(i)}})},$observe:function(n,t){var i=this,u=i.$$observers||(i.$$observers=rt()),r=u[n]||(u[n]=[]);return r.push(t),st.$evalAsync(function(){r.$$inter||!i.hasOwnProperty(n)||f(i[n])||t(i[n])}),function(){hr(r,t)}}};var ki=u.startSymbol(),di=u.endSymbol(),gi="{{"==ki||"}}"==di?fr:function(n){return n.replace(/\{\{/g,ki).replace(/}}/g,di)},lr=/^ngAttr[A-Z]/;return vt.$$addBindingInfo=v?function(n,t){var i=n.data("$binding")||[];a(t)?i=i.concat(t):i.push(t);n.data("$binding",i)}:o,vt.$$addBindingClass=v?function(n){ti(n,"ng-binding")}:o,vt.$$addScopeInfo=v?function(n,t,i,r){n.data(i?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope",t)}:o,vt.$$addScopeClass=v?function(n,t){ti(n,t?"ng-isolate-scope":"ng-scope")}:o,vt}]}function dt(n){return ar(n.replace(lh,""))}function co(n,t){var r="",e=n.split(/\s+/),o=t.split(/\s+/),u=0,f,i;n:for(;u<e.length;u++){for(f=e[u],i=0;i<o.length;i++)if(f==o[i])continue n;r+=(0<r.length?" ":"")+f}return r}function lo(n){n=s(n);var t=n.length;if(1>=t)return n;for(;t--;)8===n[t].nodeType&&ev.call(n,t,1);return n}function yl(){var n={},t=!1;this.register=function(t,i){ki(t,"controller");c(t)?p(n,t):n[t]=i};this.allowGlobals=function(){t=!0};this.$get=["$injector","$window",function(r,u){function f(n,t,i,r){if(!n||!c(n.$scope))throw v("$controller")("noscp",r,t);n.$scope[t]=i}return function(e,o,s,v){var y,w,b;if(s=!0===s,v&&l(v)&&(b=v),l(e)){if(v=e.match(ah),!v)throw ry("ctrlfmt",e);w=v[1];b=b||v[3];e=n.hasOwnProperty(w)?n[w]:to(o.$scope,w,!0)||(t?to(u,w,!0):i);bi(e,w,!0)}return s?(s=(a(e)?e[e.length-1]:e).prototype,y=Object.create(s||null),b&&f(o,b,y,w||e.name),p(function(){var n=r.invoke(e,y,o,w);return n!==y&&(c(n)||h(n))&&(y=n,b&&f(o,b,y,w||e.name)),y},{instance:y,identifier:b})):(y=r.instantiate(e,o,w),b&&f(o,b,y,w||e.name),y)}}]}function pl(){this.$get=["$window",function(n){return s(n.document)}]}function wl(){this.$get=["$log",function(n){return function(){n.error.apply(n,arguments)}}]}function af(n){return c(n)?ft(n)?n.toISOString():lr(n):n}function bl(){this.$get=function(){return function(n){if(!n)return"";var t=[];return he(n,function(n,i){null===n||f(n)||(a(n)?r(n,function(n){t.push(ct(i)+"="+ct(af(n)))}):t.push(ct(i)+"="+ct(af(n))))}),t.join("&")}}}function kl(){this.$get=function(){return function(n){function t(n,u,e){null===n||f(n)||(a(n)?r(n,function(n,i){t(n,u+"["+(c(n)?i:"")+"]")}):c(n)&&!ft(n)?he(n,function(n,i){t(n,u+(e?"":"[")+i+(e?"":"]"))}):i.push(ct(u)+"="+ct(af(n))))}if(!n)return"";var i=[];return t(n,"",!0),i.join("&")}}}function vf(n,t){var r,i;return l(n)&&(r=n.replace(oy,"").trim(),r&&(i=t("Content-Type"),(i=i&&0===i.indexOf(vh))||(i=(i=r.match(fy))&&ey[i[0]].test(r)),i&&(n=we(r)))),n}function ao(n){var t=rt(),i;return l(n)?r(n.split("\n"),function(n){i=n.indexOf(":");var r=y(w(n.substr(0,i)));n=w(n.substr(i+1));r&&(t[r]=t[r]?t[r]+", "+n:n)}):c(n)&&r(n,function(n,i){var r=y(i),u=w(n);r&&(t[r]=t[r]?t[r]+", "+u:u)}),t}function vo(n){var t;return function(i){return t||(t=ao(n)),i?(i=t[y(i)],void 0===i&&(i=null),i):t}}function yo(n,t,i,u){return h(u)?u(n,t,i):(r(u,function(r){n=r(n,t,i)}),n)}function dl(){var n=this.defaults={transformResponse:[vf],transformRequest:[function(n){return c(n)&&"[object File]"!==ti.call(n)&&"[object Blob]"!==ti.call(n)&&"[object FormData]"!==ti.call(n)?lr(n):n}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ht(oe),put:ht(oe),patch:ht(oe)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},u=!1,t,o;this.useApplyAsync=function(n){return e(n)?(u=!!n,this):u};t=!0;this.useLegacyPromiseExtensions=function(n){return e(n)?(t=!!n,this):t};o=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(s,w,b,k,d,g){function nt(u){function c(n){var t=p({},n);return t.data=n.data?yo(n.data,n.headers,n.status,o.transformResponse):n.data,n=n.status,200<=n&&300>n?t:d.reject(t)}function w(n,t){var i,u={};return r(n,function(n,r){h(n)?(i=n(t),null!=i&&(u[r]=i)):u[r]=n}),u}var o,s,a,e;if(!ut.isObject(u))throw v("$http")("badreq",u);for(o=p({method:"get",transformRequest:n.transformRequest,transformResponse:n.transformResponse,paramSerializer:n.paramSerializer},u),o.headers=function(t){var i=n.headers,u=p({},t.headers),r,f,e,i=p({},i.common,i[y(t.method)]);n:for(r in i){f=y(r);for(e in u)if(y(e)===f)continue n;u[r]=i[r]}return w(u,ht(t))}(u),o.method=bu(o.method),o.paramSerializer=l(o.paramSerializer)?g.get(o.paramSerializer):o.paramSerializer,s=[function(t){var u=t.headers,e=yo(t.data,vo(u),i,t.transformRequest);return f(e)&&r(u,function(n,t){"content-type"===y(t)&&delete u[t]}),f(t.withCredentials)&&!f(n.withCredentials)&&(t.withCredentials=n.withCredentials),it(t,e).then(c,c)},i],e=d.when(o),r(tt,function(n){(n.request||n.requestError)&&s.unshift(n.request,n.requestError);(n.response||n.responseError)&&s.push(n.response,n.responseError)});s.length;)u=s.shift(),a=s.shift(),e=e.then(u,a);return t?(e.success=function(n){return bi(n,"fn"),e.then(function(t){n(t.data,t.status,t.headers,o)}),e},e.error=function(n){return bi(n,"fn"),e.then(null,function(t){n(t.data,t.status,t.headers,o)}),e}):(e.success=yh("success"),e.error=yh("error")),e}function it(t,r){function ut(n,t,i,r){function f(){y(t,n,i,r)}l&&(200<=n&&300>n?l.put(v,[n,t,ao(i),r]):l.remove(v));u?k.$applyAsync(f):(f(),k.$$phase||k.$apply())}function y(n,i,r,u){i=-1<=i?i:0;(200<=i&&300>i?p.resolve:p.reject)({data:n,status:i,headers:vo(r),config:t,statusText:u})}function g(n){y(n.data,n.status,ht(n.headers()),n.statusText)}function tt(){var n=nt.pendingRequests.indexOf(t);-1!==n&&nt.pendingRequests.splice(n,1)}var p=d.defer(),b=p.promise,l,o,it=t.headers,v=rt(t.url,t.paramSerializer(t.params));return nt.pendingRequests.push(t),b.then(tt,tt),(t.cache||n.cache)&&!1!==t.cache&&("GET"===t.method||"JSONP"===t.method)&&(l=c(t.cache)?t.cache:c(n.cache)?n.cache:ft),l&&(o=l.get(v),e(o)?o&&h(o.then)?o.then(g,g):a(o)?y(o[1],o[0],ht(o[2]),o[3]):y(o,200,{},"OK"):l.put(v,b)),f(o)&&((o=hs(t.url)?w()[t.xsrfCookieName||n.xsrfCookieName]:i)&&(it[t.xsrfHeaderName||n.xsrfHeaderName]=o),s(t.method,v,r,ut,it,t.timeout,t.withCredentials,t.responseType)),b}function rt(n,t){return 0<t.length&&(n+=(-1==n.indexOf("?")?"?":"&")+t),n}var ft=b("$http"),tt;return n.paramSerializer=l(n.paramSerializer)?g.get(n.paramSerializer):n.paramSerializer,tt=[],r(o,function(n){tt.unshift(l(n)?g.get(n):g.invoke(n))}),nt.pendingRequests=[],function(){r(arguments,function(n){nt[n]=function(t,i){return nt(p({},i||{},{method:n,url:t}))}})}("get","delete","head","jsonp"),function(){r(arguments,function(n){nt[n]=function(t,i,r){return nt(p({},r||{},{method:n,url:t,data:i}))}})}("post","put","patch"),nt.defaults=n,nt}]}function gl(){return new n.XMLHttpRequest}function na(){this.$get=["$browser","$window","$document",function(n,t,i){return ta(n,gl,n.defer,t.angular.callbacks,i[0])}]}function ta(n,t,i,u,s){function c(n,t,i){var r=s.createElement("script"),f=null;return r.type="text/javascript",r.src=n,r.async=!0,f=function(n){r.removeEventListener("load",f,!1);r.removeEventListener("error",f,!1);s.body.removeChild(r);r=null;var e=-1,o="unknown";n&&("load"!==n.type||u[t].called||(n={type:"error"}),o=n.type,e="error"===n.type?404:200);i&&i(e,o)},r.addEventListener("load",f,!1),r.addEventListener("error",f,!1),s.body.appendChild(r),f}return function(s,l,a,v,p,w,b,k){function rt(){nt&&nt();d&&d.abort()}function tt(t,r,u,f,s){e(it)&&i.cancel(it);nt=d=null;t(r,u,f,s);n.$$completeOutstandingRequest(o)}var g,nt,d,it;if(n.$$incOutstandingRequestCount(),l=l||n.url(),"jsonp"==y(s))g="_"+(u.counter++).toString(36),u[g]=function(n){u[g].data=n;u[g].called=!0},nt=c(l.replace("JSON_CALLBACK","angular.callbacks."+g),g,function(n,t){tt(v,n,u[g].data,"",t);u[g]=o});else{if(d=t(),d.open(s,l,!0),r(p,function(n,t){e(n)&&d.setRequestHeader(t,n)}),d.onload=function(){var i=d.statusText||"",t="response"in d?d.response:d.responseText,n=1223===d.status?204:d.status;0===n&&(n=t?200:"file"==ri(l).protocol?404:0);tt(v,n,t,d.getAllResponseHeaders(),i)},s=function(){tt(v,-1,null,null,"")},d.onerror=s,d.onabort=s,b&&(d.withCredentials=!0),k)try{d.responseType=k}catch(ut){if("json"!==k)throw ut;}d.send(f(a)?null:a)}0<w?it=i(rt,w):w&&h(w.then)&&w.then(rt)}}function ia(){var n="{{",t="}}";this.startSymbol=function(t){return t?(n=t,this):n};this.endSymbol=function(n){return n?(t=n,this):t};this.$get=["$parse","$exceptionHandler","$sce",function(i,r,u){function s(n){return"\\\\\\"+n}function c(i){return i.replace(v,n).replace(y,t)}function o(o,s,v,y){function ut(n){var i,t;try{if(i=n,n=v?u.getTrusted(v,i):u.valueOf(i),y&&!e(n))t=n;else if(null==n)t="";else{switch(typeof n){case"string":break;case"number":n=""+n;break;default:n=lr(n)}t=n}return t}catch(f){r(pi.interr(o,f))}}var tt;y=!!y;for(var k,g,w=0,d=[],nt=[],it=o.length,b=[],rt=[];w<it;)if(-1!=(k=o.indexOf(n,w))&&-1!=(g=o.indexOf(t,k+l)))w!==k&&b.push(c(o.substring(w,k))),w=o.substring(k+l,g),d.push(w),nt.push(i(w,ut)),w=g+a,rt.push(b.length),b.push("");else{w!==it&&b.push(c(o.substring(w)));break}return v&&1<b.length&&pi.throwNoconcat(o),!s||d.length?(tt=function(n){for(var t=0,i=d.length;t<i;t++){if(y&&f(n[t]))return;b[rt[t]]=n[t]}return b.join("")},p(function(n){var t=0,i=d.length,u=Array(i);try{for(;t<i;t++)u[t]=nt[t](n);return tt(u)}catch(f){r(pi.interr(o,f))}},{exp:o,expressions:d,$$watchDelegate:function(n,t){var i;return n.$watchGroup(nt,function(r,u){var f=tt(r);h(t)&&t.call(this,f,r!==u?i:f,n);i=f})}})):void 0}var l=n.length,a=t.length,v=new RegExp(n.replace(/./g,s),"g"),y=new RegExp(t.replace(/./g,s),"g");return o.startSymbol=function(){return n},o.endSymbol=function(){return t},o}]}function ra(){this.$get=["$rootScope","$window","$q","$$q",function(n,t,i,r){function f(f,o,s,h){var v=4<arguments.length,p=v?ni.call(arguments,4):[],w=t.setInterval,b=t.clearInterval,a=0,y=e(h)&&!h,l=(y?r:i).defer(),c=l.promise;return s=e(s)?s:0,c.then(null,null,v?function(){f.apply(null,p)}:f),c.$$intervalId=w(function(){l.notify(a++);0<s&&a>=s&&(l.resolve(a),b(c.$$intervalId),delete u[c.$$intervalId]);y||n.$apply()},o),u[c.$$intervalId]=l,c}var u={};return f.cancel=function(n){return n&&n.$$intervalId in u?(u[n.$$intervalId].reject("canceled"),t.clearInterval(n.$$intervalId),delete u[n.$$intervalId],!0):!1},f}]}function yf(n){n=n.split("/");for(var t=n.length;t--;)n[t]=tu(n[t]);return n.join("/")}function po(n,t){var i=ri(n);t.$$protocol=i.protocol;t.$$host=i.hostname;t.$$port=tt(i.port)||cy[i.protocol]||null}function wo(n,t){var r="/"!==n.charAt(0),i;r&&(n="/"+n);i=ri(n);t.$$path=decodeURIComponent(r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname);t.$$search=de(i.search);t.$$hash=decodeURIComponent(i.hash);t.$$path&&"/"!=t.$$path.charAt(0)&&(t.$$path="/"+t.$$path)}function yt(n,t){if(0===t.indexOf(n))return t.substr(n.length)}function si(n){var t=n.indexOf("#");return-1==t?n:n.substr(0,t)}function lu(n){return n.replace(/(#.+)|#$/,"$1")}function pf(n,t,i){this.$$html5=!0;i=i||"";po(n,this);this.$$parse=function(n){var i=yt(t,n);if(!l(i))throw gu("ipthprfx",n,t);wo(i,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var n=sf(this.$$search),i=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=yf(this.$$path)+(n?"?"+n:"")+i;this.$$absUrl=t+this.$$url.substr(1)};this.$$parseLinkUrl=function(r,u){if(u&&"#"===u[0])return this.hash(u.slice(1)),!0;var f,o;return e(f=yt(n,r))?(o=f,o=e(f=yt(i,f))?t+(yt("/",f)||f):n+o):e(f=yt(t,r))?o=t+f:t==r+"/"&&(o=t),o&&this.$$parse(o),!!o}}function wf(n,t,i){po(n,this);this.$$parse=function(r){var e=yt(n,r)||yt(t,r),u,o;f(e)||"#"!==e.charAt(0)?this.$$html5?u=e:(u="",f(e)&&(n=r,this.replace())):(u=yt(i,e),f(u)&&(u=e));wo(u,this);r=this.$$path;e=n;o=/^\/[A-Z]:(\/.*)/;0===u.indexOf(e)&&(u=u.replace(e,""));o.exec(u)||(r=(u=o.exec(r))?u[1]:r);this.$$path=r;this.$$compose()};this.$$compose=function(){var t=sf(this.$$search),r=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=yf(this.$$path)+(t?"?"+t:"")+r;this.$$absUrl=n+(this.$$url?i+this.$$url:"")};this.$$parseLinkUrl=function(t){return si(n)==si(t)?(this.$$parse(t),!0):!1}}function bo(n,t,i){this.$$html5=!0;wf.apply(this,arguments);this.$$parseLinkUrl=function(r,u){if(u&&"#"===u[0])return this.hash(u.slice(1)),!0;var f,e;return n==si(r)?f=r:(e=yt(t,r))?f=n+i+e:t===r+"/"&&(f=t),f&&this.$$parse(f),!!f};this.$$compose=function(){var t=sf(this.$$search),r=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=yf(this.$$path)+(t?"?"+t:"")+r;this.$$absUrl=n+i+this.$$url}}function au(n){return function(){return this[n]}}function ko(n,t){return function(i){return f(i)?this[n]:(this[n]=t(i),this.$$compose(),this)}}function ua(){var t="",n={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(n){return e(n)?(t=n,this):t};this.html5Mode=function(t){return sr(t)?(n.enabled=t,this):c(t)?(sr(t.enabled)&&(n.enabled=t.enabled),sr(t.requireBase)&&(n.requireBase=t.requireBase),sr(t.rewriteLinks)&&(n.rewriteLinks=t.rewriteLinks),this):n};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(i,r,u,e,o){function w(n,t,i){var u=h.url(),f=h.$$state;try{r.url(n,t,i);h.$$state=r.state()}catch(e){throw h.url(u),h.$$state=f,e;}}function b(n,t){i.$broadcast("$locationChangeSuccess",h.absUrl(),n,h.$$state,t)}var h,a,l,v,p,k,y;if(a=r.baseHref(),l=r.url(),n.enabled){if(!a&&n.requireBase)throw gu("nobase");v=l.substring(0,l.indexOf("/",l.indexOf("//")+2))+(a||"/");a=u.history?pf:bo}else v=si(l),a=wf;p=v.substr(0,si(v).lastIndexOf("/")+1);h=new a(v,p,"#"+t);h.$$parseLinkUrl(l,l);h.$$state=r.state();k=/^\s*(javascript|mailto):/i;e.on("click",function(t){var u,f,l;if(n.rewriteLinks&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&2!=t.which&&2!=t.button){for(u=s(t.target);"a"!==bt(u[0]);)if(u[0]===e[0]||!(u=u.parent())[0])return;f=u.prop("href");l=u.attr("href")||u.attr("xlink:href");c(f)&&"[object SVGAnimatedString]"===f.toString()&&(f=ri(f.animVal).href);k.test(f)||!f||u.attr("target")||t.isDefaultPrevented()||!h.$$parseLinkUrl(f,l)||(t.preventDefault(),h.absUrl()!=r.url()&&(i.$apply(),o.angular["ff-684208-preventDefault"]=!0))}});lu(h.absUrl())!=lu(l)&&r.url(h.absUrl(),!0);y=!0;r.onUrlChange(function(n,t){f(yt(p,n))?o.location.href=n:(i.$evalAsync(function(){var r=h.absUrl(),u=h.$$state,f;h.$$parse(n);h.$$state=t;f=i.$broadcast("$locationChangeStart",n,r,t,u).defaultPrevented;h.absUrl()===n&&(f?(h.$$parse(r),h.$$state=u,w(r,!1,u)):(y=!1,b(r,u)))}),i.$$phase||i.$digest())});return i.$watch(function(){var t=lu(r.url()),e=lu(h.absUrl()),n=r.state(),o=h.$$replace,f=t!==e||h.$$html5&&u.history&&n!==h.$$state;(y||f)&&(y=!1,i.$evalAsync(function(){var r=h.absUrl(),u=i.$broadcast("$locationChangeStart",r,t,h.$$state,n).defaultPrevented;h.absUrl()===r&&(u?(h.$$parse(t),h.$$state=n):(f&&w(r,o,n===h.$$state?null:h.$$state),b(t,n)))}));h.$$replace=!1}),h}]}function fa(){var n=!0,t=this;this.debugEnabled=function(t){return e(t)?(n=t,this):n};this.$get=["$window",function(i){function f(n){return n instanceof Error&&(n.stack?n=n.message&&-1===n.stack.indexOf(n.message)?"Error: "+n.message+"\n"+n.stack:n.stack:n.sourceURL&&(n=n.message+"\n"+n.sourceURL+":"+n.line)),n}function u(n){var t=i.console||{},u=t[n]||t.log||o;n=!1;try{n=!!u.apply}catch(e){}return n?function(){var n=[];return r(arguments,function(t){n.push(f(t))}),u.apply(t,n)}:function(n,t){u(n,null==t?"":t)}}return{log:u("log"),info:u("info"),warn:u("warn"),error:u("error"),debug:function(){var i=u("debug");return function(){n&&i.apply(t,arguments)}}()}}]}function gi(n,t){if(n=c(n)&&n.toString?n.toString():n,"__defineGetter__"===n||"__defineSetter__"===n||"__lookupGetter__"===n||"__lookupSetter__"===n||"__proto__"===n)throw et("isecfld",t);return n}function ii(n,t){if(n){if(n.constructor===n)throw et("isecfn",t);if(n.window===n)throw et("isecwindow",t);if(n.children&&(n.nodeName||n.prop&&n.attr&&n.find))throw et("isecdom",t);if(n===Object)throw et("isecobj",t);}return n}function go(n,t){if(n){if(n.constructor===n)throw et("isecfn",t);if(n===ay||n===vy||n===yy)throw et("isecff",t);}}function ea(n,t){return"undefined"!=typeof n?n:t}function ns(n,t){return"undefined"==typeof n?t:"undefined"==typeof t?n:n+t}function d(n,t){var i,f;switch(n.type){case u.Program:i=!0;r(n.body,function(n){d(n.expression,t);i=i&&n.expression.constant});n.constant=i;break;case u.Literal:n.constant=!0;n.toWatch=[];break;case u.UnaryExpression:d(n.argument,t);n.constant=n.argument.constant;n.toWatch=n.argument.toWatch;break;case u.BinaryExpression:d(n.left,t);d(n.right,t);n.constant=n.left.constant&&n.right.constant;n.toWatch=n.left.toWatch.concat(n.right.toWatch);break;case u.LogicalExpression:d(n.left,t);d(n.right,t);n.constant=n.left.constant&&n.right.constant;n.toWatch=n.constant?[]:[n];break;case u.ConditionalExpression:d(n.test,t);d(n.alternate,t);d(n.consequent,t);n.constant=n.test.constant&&n.alternate.constant&&n.consequent.constant;n.toWatch=n.constant?[]:[n];break;case u.Identifier:n.constant=!1;n.toWatch=[n];break;case u.MemberExpression:d(n.object,t);n.computed&&d(n.property,t);n.constant=n.object.constant&&(!n.computed||n.property.constant);n.toWatch=[n];break;case u.CallExpression:i=n.filter?!t(n.callee.name).$stateful:!1;f=[];r(n.arguments,function(n){d(n,t);i=i&&n.constant;n.constant||f.push.apply(f,n.toWatch)});n.constant=i;n.toWatch=n.filter&&!t(n.callee.name).$stateful?f:[n];break;case u.AssignmentExpression:d(n.left,t);d(n.right,t);n.constant=n.left.constant&&n.right.constant;n.toWatch=[n];break;case u.ArrayExpression:i=!0;f=[];r(n.elements,function(n){d(n,t);i=i&&n.constant;n.constant||f.push.apply(f,n.toWatch)});n.constant=i;n.toWatch=f;break;case u.ObjectExpression:i=!0;f=[];r(n.properties,function(n){d(n.value,t);i=i&&n.value.constant;n.value.constant||f.push.apply(f,n.value.toWatch)});n.constant=i;n.toWatch=f;break;case u.ThisExpression:n.constant=!1;n.toWatch=[]}}function ts(n){if(1==n.length){n=n[0].expression;var t=n.toWatch;return 1!==t.length?t:t[0]!==n?t:i}}function is(n){return n.type===u.Identifier||n.type===u.MemberExpression}function rs(n){if(1===n.body.length&&is(n.body[0].expression))return{type:u.AssignmentExpression,left:n.body[0].expression,right:{type:u.NGValueParameter},operator:"="}}function us(n){return 0===n.body.length||1===n.body.length&&(n.body[0].expression.type===u.Literal||n.body[0].expression.type===u.ArrayExpression||n.body[0].expression.type===u.ObjectExpression)}function fs(n,t){this.astBuilder=n;this.$filter=t}function es(n,t){this.astBuilder=n;this.$filter=t}function vu(n){return"constructor"==n}function bf(n){return h(n.valueOf)?n.valueOf():py.call(n)}function oa(){var n=rt(),t=rt();this.$get=["$filter",function(u){function f(n,t){return null==n||null==t?n===t:"object"==typeof n&&(n=bf(n),"object"==typeof n)?!1:n===t||n!==n&&t!==t}function s(n,t,r,u,e){var o=u.inputs,s,c;if(1===o.length)return c=f,o=o[0],n.$watch(function(n){var t=o(n);return f(t,c)||(s=u(n,i,i,[t]),c=t&&bf(t)),s},t,r,e);for(var l=[],a=[],h=0,v=o.length;h<v;h++)l[h]=f,a[h]=null;return n.$watch(function(n){for(var r,e=!1,t=0,h=o.length;t<h;t++)r=o[t](n),(e||(e=!f(r,l[t])))&&(a[t]=r,l[t]=r&&bf(r));return e&&(s=u(n,i,i,a)),s},t,r,e)}function c(n,t,i,r){var u,f;return u=n.$watch(function(n){return r(n)},function(n,i,r){f=n;h(t)&&t.apply(this,arguments);e(n)&&r.$$postDigest(function(){e(f)&&u()})},i)}function l(n,t,i,u){function f(n){var t=!0;return r(n,function(n){e(n)||(t=!1)}),t}var o,s;return o=n.$watch(function(n){return u(n)},function(n,i,r){s=n;h(t)&&t.call(this,n,i,r);f(n)&&r.$$postDigest(function(){f(s)&&o()})},i)}function y(n,t,i,r){var u;return u=n.$watch(function(n){return r(n)},function(){h(t)&&t.apply(this,arguments);u()},i)}function a(n,t){if(!t)return n;var i=n.$$watchDelegate,i=i!==l&&i!==c?function(i,r,u,f){return u=n(i,r,u,f),t(u,i,r)}:function(i,r,u,f){return u=n(i,r,u,f),i=t(u,i,r),e(u)?i:u};return n.$$watchDelegate&&n.$$watchDelegate!==s?i.$$watchDelegate=n.$$watchDelegate:t.$stateful||(i.$$watchDelegate=s,i.inputs=n.inputs?n.inputs:[n]),i}var v=ai().noUnsafeEval,p={csp:v,expensiveChecks:!1},w={csp:v,expensiveChecks:!0};return function(i,r,f){var e,b,h,v;switch(typeof i){case"string":return h=i=i.trim(),v=f?t:n,e=v[h],e||(":"===i.charAt(0)&&":"===i.charAt(1)&&(b=!0,i=i.substring(2)),f=f?w:p,e=new tf(f),e=new rf(e,u,f).parse(i),e.constant?e.$$watchDelegate=y:b?e.$$watchDelegate=e.literal?l:c:e.inputs&&(e.$$watchDelegate=s),v[h]=e),a(e,r);case"function":return a(i,r);default:return o}}}]}function sa(){this.$get=["$rootScope","$exceptionHandler",function(n,t){return os(function(t){n.$evalAsync(t)},t)}]}function ha(){this.$get=["$browser","$exceptionHandler",function(n,t){return os(function(t){n.defer(t)},t)}]}function os(n,t){function g(n,t,i){function r(t){return function(i){u||(u=!0,t.call(n,i))}}var u=!1;return[r(t),r(i)]}function w(){this.$$state={status:0}}function s(n,t){return function(i){t.call(n,i)}}function l(r){!r.processScheduled&&r.pending&&(r.processScheduled=!0,n(function(){var e,n,f,u,o;for(f=r.pending,r.processScheduled=!1,r.pending=i,u=0,o=f.length;u<o;++u){n=f[u][0];e=f[u][r.status];try{h(e)?n.resolve(e(r.value)):1===r.status?n.resolve(r.value):n.reject(r.value)}catch(s){n.reject(s);t(s)}}}))}function u(){this.promise=new w;this.resolve=s(this,this.resolve);this.reject=s(this,this.reject);this.notify=s(this,this.notify)}var b=v("$q",TypeError);p(w.prototype,{then:function(n,t,i){if(f(n)&&f(t)&&f(i))return this;var r=new u;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,n,t,i]),0<this.$$state.status&&l(this.$$state),r.promise},"catch":function(n){return this.then(null,n)},"finally":function(n,t){return this.then(function(t){return k(t,!0,n)},function(t){return k(t,!1,n)},t)}});p(u.prototype,{resolve:function(n){this.promise.$$state.status||(n===this.promise?this.$$reject(b("qcycle",n)):this.$$resolve(n))},$$resolve:function(n){var i,r=g(this,this.$$resolve,this.$$reject);try{(c(n)||h(n))&&(i=n&&n.then);h(i)?(this.promise.$$state.status=-1,i.call(n,r[0],r[1],this.notify)):(this.promise.$$state.value=n,this.promise.$$state.status=1,l(this.promise.$$state))}catch(u){r[1](u);t(u)}},reject:function(n){this.promise.$$state.status||this.$$reject(n)},$$reject:function(n){this.promise.$$state.value=n;this.promise.$$state.status=2;l(this.promise.$$state)},notify:function(i){var r=this.promise.$$state.pending;0>=this.promise.$$state.status&&r&&r.length&&n(function(){for(var u,f,n=0,e=r.length;n<e;n++){f=r[n][0];u=r[n][3];try{f.notify(h(u)?u(i):i)}catch(o){t(o)}}})}});var o=function(n,t){var i=new u;return t?i.resolve(n):i.reject(n),i.promise},k=function(n,t,i){var r=null;try{h(i)&&(r=i())}catch(u){return o(u,!1)}return r&&h(r.then)?r.then(function(){return o(n,t)},function(n){return o(n,!1)}):o(n,t)},y=function(n,t,i,r){var f=new u;return f.resolve(n),f.promise.then(t,i,r)},e=function d(n){if(!h(n))throw b("norslvr",n);if(!(this instanceof d))return new d(n);var t=new u;return n(function(n){t.resolve(n)},function(n){t.reject(n)}),t.promise};return e.defer=function(){return new u},e.reject=function(n){var t=new u;return t.reject(n),t.promise},e.when=y,e.resolve=y,e.all=function(n){var i=new u,f=0,t=a(n)?[]:{};return r(n,function(n,r){f++;y(n).then(function(n){t.hasOwnProperty(r)||(t[r]=n,--f||i.resolve(t))},function(n){t.hasOwnProperty(r)||i.reject(n)})}),0===f&&i.resolve(t),i.promise},e}function ca(){this.$get=["$window","$timeout",function(n,t){var i=n.requestAnimationFrame||n.webkitRequestAnimationFrame,f=n.cancelAnimationFrame||n.webkitCancelAnimationFrame||n.webkitCancelRequestAnimationFrame,r=!!i,u=r?function(n){var t=i(n);return function(){f(t)}}:function(n){var i=t(n,16.66,!1);return function(){t.cancel(i)}};return u.supported=r,u}]}function la(){function e(n){function t(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++ku;this.$$ChildScope=null}return t.prototype=n,t}var i=10,u=v("$rootScope"),n=null,t=null;this.digestTtl=function(n){return arguments.length&&(i=n),i};this.$get=["$injector","$exceptionHandler","$parse","$browser",function(s,l,a,v){function rt(n){n.currentScope.$$destroyed=!0}function w(){this.$id=++ku;this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=!1;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$$isolateBindings=null}function g(n){if(y.$$phase)throw u("inprog",y.$$phase);y.$$phase=n}function b(n,t){do n.$$watchersCount+=t;while(n=n.$parent)}function nt(n,t,i){do n.$$listenerCount[i]-=t,0===n.$$listenerCount[i]&&delete n.$$listenerCount[i];while(n=n.$parent)}function tt(){}function it(){for(;d.length;)try{d.shift()()}catch(n){l(n)}t=null}function ut(){null===t&&(t=v.defer(function(){y.$apply(it)}))}w.prototype={constructor:w,$new:function(n,t){var i;return t=t||this,n?(i=new w,i.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=e(this)),i=new this.$$ChildScope),i.$parent=t,i.$$prevSibling=t.$$childTail,t.$$childHead?(t.$$childTail.$$nextSibling=i,t.$$childTail=i):t.$$childHead=t.$$childTail=i,(n||t!=this)&&i.$on("$destroy",rt),i},$watch:function(t,i,r,u){var f=a(t);if(f.$$watchDelegate)return f.$$watchDelegate(this,i,r,f,t);var s=this,e=s.$$watchers,c={fn:i,last:tt,get:f,exp:u||t,eq:!!r};return n=null,h(i)||(c.fn=o),e||(e=s.$$watchers=[]),e.unshift(c),b(this,1),function(){0<=hr(e,c)&&b(s,-1);n=null}},$watchGroup:function(n,t){function c(){o=!1;h?(h=!1,t(i,i,u)):t(i,f,u)}var f=Array(n.length),i=Array(n.length),e=[],u=this,o=!1,h=!0,s;return n.length?1===n.length?this.$watch(n[0],function(n,r,u){i[0]=n;f[0]=r;t(i,n===r?i:f,u)}):(r(n,function(n,t){var r=u.$watch(n,function(n,r){i[t]=n;f[t]=r;o||(o=!0,u.$evalAsync(c))});e.push(r)}),function(){for(;e.length;)e.shift()()}):(s=!0,u.$evalAsync(function(){s&&t(i,i,u)}),function(){s=!1})},$watchCollection:function(n,t){function s(n){i=n;var t,h,o,s;if(!f(i)){if(c(i))if(fi(i))for(r!==l&&(r=l,e=r.length=0,u++),n=i.length,e!==n&&(u++,r.length=e=n),t=0;t<n;t++)s=r[t],o=i[t],h=s!==s&&o!==o,h||s===o||(u++,r[t]=o);else{r!==v&&(r=v={},e=0,u++);n=0;for(t in i)gt.call(i,t)&&(n++,o=i[t],s=r[t],t in r?(h=s!==s&&o!==o,h||s===o||(u++,r[t]=o)):(e++,r[t]=o,u++));if(e>n)for(t in u++,r)gt.call(i,t)||(e--,delete r[t])}else r!==i&&(r=i,u++);return u}}s.$stateful=!0;var h=this,i,r,o,p=1<t.length,u=0,w=a(n,s),l=[],v={},y=!0,e=0;return this.$watch(w,function(){if(y?(y=!1,t(i,i,h)):t(i,o,h),p)if(c(i))if(fi(i)){o=Array(i.length);for(var n=0;n<i.length;n++)o[n]=i[n]}else for(n in o={},i)gt.call(i,n)&&(o[n]=i[n]);else o=i})},$digest:function(){var r,e,o,s,d,c,nt=i,f,a=[],w,b;g("$digest");v.$$checkUrlChange();this===y&&null!==t&&(v.defer.cancel(t),it());n=null;do{for(c=!1,f=this;p.length;){try{b=p.shift();b.scope.$eval(b.expression,b.locals)}catch(rt){l(rt)}n=null}n:do{if(s=f.$$watchers)for(d=s.length;d--;)try{if(r=s[d])if((e=r.get(f))===(o=r.last)||(r.eq?ot(e,o):"number"==typeof e&&"number"==typeof o&&isNaN(e)&&isNaN(o))){if(r===n){c=!1;break n}}else c=!0,n=r,r.last=r.eq?st(e,null):e,r.fn(e,o===tt?e:o,f),5>nt&&(w=4-nt,a[w]||(a[w]=[]),a[w].push({msg:h(r.exp)?"fn: "+(r.exp.name||r.exp.toString()):r.exp,newVal:e,oldVal:o}))}catch(ut){l(ut)}if(!(s=f.$$watchersCount&&f.$$childHead||f!==this&&f.$$nextSibling))for(;f!==this&&!(s=f.$$nextSibling);)f=f.$parent}while(f=s);if((c||p.length)&&!nt--)throw y.$$phase=null,u("infdig",i,a);}while(c||p.length);for(y.$$phase=null;k.length;)try{k.shift()()}catch(ft){l(ft)}},$destroy:function(){var n,t;if(!this.$$destroyed){n=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===y&&v.$$applicationDestroyed();b(this,-this.$$watchersCount);for(t in this.$$listenerCount)nt(this,this.$$listenerCount[t],t);n&&n.$$childHead==this&&(n.$$childHead=this.$$nextSibling);n&&n.$$childTail==this&&(n.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=o;this.$on=this.$watch=this.$watchGroup=function(){return o};this.$$listeners={};this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=this.$$watchers=null}},$eval:function(n,t){return a(n)(this,t)},$evalAsync:function(n,t){y.$$phase||p.length||v.defer(function(){p.length&&y.$digest()});p.push({scope:this,expression:n,locals:t})},$$postDigest:function(n){k.push(n)},$apply:function(n){try{g("$apply");try{return this.$eval(n)}finally{y.$$phase=null}}catch(i){l(i)}finally{try{y.$digest()}catch(t){throw l(t),t;}}},$applyAsync:function(n){function t(){i.$eval(n)}var i=this;n&&d.push(t);ut()},$on:function(n,t){var r=this.$$listeners[n],i,u;r||(this.$$listeners[n]=r=[]);r.push(t);i=this;do i.$$listenerCount[n]||(i.$$listenerCount[n]=0),i.$$listenerCount[n]++;while(i=i.$parent);return u=this,function(){var i=r.indexOf(t);-1!==i&&(r[i]=null,nt(u,1,n))}},$emit:function(n){var o=[],u,r=this,e=!1,t={name:n,targetScope:r,stopPropagation:function(){e=!0},preventDefault:function(){t.defaultPrevented=!0},defaultPrevented:!1},s=cr([t],arguments,1),i,f;do{for(u=r.$$listeners[n]||o,t.currentScope=r,i=0,f=u.length;i<f;i++)if(u[i])try{u[i].apply(null,s)}catch(h){l(h)}else u.splice(i,1),i--,f--;if(e)return t.currentScope=null,t;r=r.$parent}while(r);return t.currentScope=null,t},$broadcast:function(n){var t=this,i=this,u={name:n,targetScope:this,preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},e,r,f;if(!this.$$listenerCount[n])return u;for(e=cr([u],arguments,1);t=i;){for(u.currentScope=t,i=t.$$listeners[n]||[],r=0,f=i.length;r<f;r++)if(i[r])try{i[r].apply(null,e)}catch(o){l(o)}else i.splice(r,1),r--,f--;if(!(i=t.$$listenerCount[n]&&t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(i=t.$$nextSibling);)t=t.$parent}return u.currentScope=null,u}};var y=new w,p=y.$$asyncQueue=[],k=y.$$postDigestQueue=[],d=y.$$applyAsyncQueue=[];return y}]}function aa(){var n=/^\s*(https?|ftp|mailto|tel|file):/,t=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(t){return e(t)?(n=t,this):n};this.imgSrcSanitizationWhitelist=function(n){return e(n)?(t=n,this):t};this.$get=function(){return function(i,r){var f=r?t:n,u;return u=ri(i).href,""===u||u.match(f)?i:"unsafe:"+u}}}function va(n){if("self"===n)return n;if(l(n)){if(-1<n.indexOf("***"))throw ui("iwcard",n);return n=fh(n).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+n+"$")}if(wi(n))return new RegExp("^"+n.source+"$");throw ui("imatcher");}function ss(n){var t=[];return e(n)&&r(n,function(n){t.push(va(n))}),t}function ya(){this.SCE_CONTEXTS=at;var n=["self"],t=[];this.resourceUrlWhitelist=function(t){return arguments.length&&(n=ss(t)),n};this.resourceUrlBlacklist=function(n){return arguments.length&&(t=ss(n)),t};this.$get=["$injector",function(i){function o(n,t){return"self"===n?hs(t):!!n.exec(t.href)}function u(n){var t=function(n){this.$$unwrapTrustedValue=function(){return n}};return n&&(t.prototype=new n),t.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}var s=function(){throw ui("unsafe");},e,r;return i.has("$sanitize")&&(s=i.get("$sanitize")),e=u(),r={},r[at.HTML]=u(e),r[at.CSS]=u(e),r[at.URL]=u(e),r[at.JS]=u(e),r[at.RESOURCE_URL]=u(r[at.URL]),{trustAs:function(n,t){var i=r.hasOwnProperty(n)?r[n]:null;if(!i)throw ui("icontext",n,t);if(null===t||f(t)||""===t)return t;if("string"!=typeof t)throw ui("itype",n);return new i(t)},getTrusted:function(i,u){var h,e,l,c;if(null===u||f(u)||""===u)return u;if(h=r.hasOwnProperty(i)?r[i]:null,h&&u instanceof h)return u.$$unwrapTrustedValue();if(i===at.RESOURCE_URL){for(h=ri(u.toString()),c=!1,e=0,l=n.length;e<l;e++)if(o(n[e],h)){c=!0;break}if(c)for(e=0,l=t.length;e<l;e++)if(o(t[e],h)){c=!1;break}if(c)return u;throw ui("insecurl",u.toString());}if(i===at.HTML)return s(u);throw ui("unsafe");},valueOf:function(n){return n instanceof e?n.$$unwrapTrustedValue():n}}}]}function pa(){var n=!0;this.enabled=function(t){return arguments.length&&(n=!!t),n};this.$get=["$parse","$sceDelegate",function(t,i){var u;if(n&&8>nr)throw ui("iequirks");u=ht(at);u.isEnabled=function(){return n};u.trustAs=i.trustAs;u.getTrusted=i.getTrusted;u.valueOf=i.valueOf;n||(u.trustAs=u.getTrusted=function(n,t){return t},u.valueOf=fr);u.parseAs=function(n,i){var r=t(i);return r.literal&&r.constant?r:t(i,function(t){return u.getTrusted(n,t)})};var f=u.parseAs,e=u.getTrusted,o=u.trustAs;return r(at,function(n,t){var i=y(t);u[ar("parse_as_"+i)]=function(t){return f(n,t)};u[ar("get_trusted_"+i)]=function(t){return e(n,t)};u[ar("trust_as_"+i)]=function(t){return o(n,t)}}),u}]}function wa(){this.$get=["$window","$document",function(n,t){var o={},s=tt((/android (\d+)/.exec(y((n.navigator||{}).userAgent))||[])[1]),a=/Boxee/i.test((n.navigator||{}).userAgent),h=t[0]||{},i,r=h.body&&h.body.style,u=!1,e=!1,c;if(r){for(c in r)if(u=/^(Moz|webkit|ms)(?=[A-Z])/.exec(c)){i=u[0];i=i.substr(0,1).toUpperCase()+i.substr(1);break}i||(i="WebkitOpacity"in r&&"webkit");u=!!("transition"in r||i+"Transition"in r);e=!!("animation"in r||i+"Animation"in r);!s||u&&e||(u=l(r.webkitTransition),e=l(r.webkitAnimation))}return{history:!(!n.history||!n.history.pushState||4>s||a),hasEvent:function(n){if("input"===n&&11>=nr)return!1;if(f(o[n])){var t=h.createElement("div");o[n]="on"+n in t}return o[n]},csp:ai(),vendorPrefix:i,transitions:u,animations:e,android:s}}]}function ba(){this.$get=["$templateCache","$http","$q","$sce",function(n,t,i,r){function u(f,e){u.totalPendingRequests++;l(f)&&n.get(f)||(f=r.getTrustedResourceUrl(f));var o=t.defaults&&t.defaults.transformResponse;return a(o)?o=o.filter(function(n){return n!==vf}):o===vf&&(o=null),t.get(f,{cache:n,transformResponse:o})["finally"](function(){u.totalPendingRequests--}).then(function(t){return n.put(f,t.data),t.data},function(n){if(!e)throw it("tpload",f,n.status,n.statusText);return i.reject(n)})}return u.totalPendingRequests=0,u}]}function ka(){this.$get=["$rootScope","$browser","$location",function(n,t,i){return{findBindings:function(n,t,i){n=n.getElementsByClassName("ng-binding");var u=[];return r(n,function(n){var f=ut.element(n).data("$binding");f&&r(f,function(r){i?new RegExp("(^|\\s)"+fh(t)+"(\\s|\\||$)").test(r)&&u.push(n):-1!=r.indexOf(t)&&u.push(n)})}),u},findModels:function(n,t,i){for(var f,u=["ng-","data-ng-","ng\\:"],r=0;r<u.length;++r)if(f=n.querySelectorAll("["+u[r]+"model"+(i?"=":"*=")+'"'+t+'"]'),f.length)return f},getLocation:function(){return i.url()},setLocation:function(t){t!==i.url()&&(i.url(t),n.$digest())},whenStable:function(n){t.notifyWhenNoOutstandingRequests(n)}}}]}function da(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(n,t,i,r,u){function s(s,c,l){h(s)||(l=c,c=s,s=o);var w=ni.call(arguments,3),p=e(l)&&!l,a=(p?r:i).defer(),v=a.promise,y;return y=t.defer(function(){try{a.resolve(s.apply(null,w))}catch(t){a.reject(t);u(t)}finally{delete f[v.$$timeoutId]}p||n.$apply()},c),v.$$timeoutId=y,f[y]=a,v}var f={};return s.cancel=function(n){return n&&n.$$timeoutId in f?(f[n.$$timeoutId].reject("canceled"),delete f[n.$$timeoutId],t.defer.cancel(n.$$timeoutId)):!1},s}]}function ri(n){return nr&&(nt.setAttribute("href",n),n=nt.href),nt.setAttribute("href",n),{href:nt.href,protocol:nt.protocol?nt.protocol.replace(/:$/,""):"",host:nt.host,search:nt.search?nt.search.replace(/^\?/,""):"",hash:nt.hash?nt.hash.replace(/^#/,""):"",hostname:nt.hostname,port:nt.port,pathname:"/"===nt.pathname.charAt(0)?nt.pathname:"/"+nt.pathname}}function hs(n){return n=l(n)?ri(n):n,n.protocol===wh.protocol&&n.host===wh.host}function ga(){this.$get=vt(n)}function cs(n){function r(n){try{return decodeURIComponent(n)}catch(t){return n}}var u=n[0]||{},t={},i="";return function(){var n,e,o,s,h;if(n=u.cookie||"",n!==i)for(i=n,n=i.split("; "),t={},o=0;o<n.length;o++)e=n[o],s=e.indexOf("="),0<s&&(h=r(e.substring(0,s)),f(t[h])&&(t[h]=r(e.substring(s+1))));return t}}function nv(){this.$get=cs}function ls(n){function t(i,u){if(c(i)){var f={};return r(i,function(n,i){f[i]=t(i,n)}),f}return n.factory(i+"Filter",u)}this.register=t;this.$get=["$injector",function(n){return function(t){return n.get(t+"Filter")}}];t("currency",as);t("date",bs);t("filter",tv);t("json",rv);t("limitTo",uv);t("lowercase",kh);t("number",vs);t("orderBy",ks);t("uppercase",dh)}function tv(){return function(n,t,i){if(!fi(n)){if(null==n)return n;throw v("filter")("notarray",n);}var r;switch(kf(t)){case"function":break;case"boolean":case"null":case"number":case"string":r=!0;case"object":t=iv(t,i,r);break;default:return n}return Array.prototype.filter.call(n,t)}}function iv(n,t,i){var r=c(n)&&"$"in n;return!0===t?t=ot:h(t)||(t=function(n,t){return f(n)?!1:null===n||null===t?n===t:c(t)||c(n)&&!ae(n)?!1:(n=y(""+n),t=y(""+t),-1!==n.indexOf(t))}),function(u){return r&&!c(u)?hi(u,n.$,t,!1):hi(u,n,t,i)}}function hi(n,t,i,r,u){var o=kf(n),s=kf(t),e;if("string"===s&&"!"===t.charAt(0))return!hi(n,t.substring(1),i,r);if(a(n))return n.some(function(n){return hi(n,t,i,r)});switch(o){case"object":if(r){for(e in n)if("$"!==e.charAt(0)&&hi(n[e],t,i,!0))return!0;return u?!1:hi(n,t,i,!1)}if("object"===s){for(e in t)if(u=t[e],!h(u)&&!f(u)&&(o="$"===e,!hi(o?n:n[e],u,i,o,o)))return!1;return!0}return i(n,t);case"function":return!1;default:return i(n,t)}}function kf(n){return null===n?"null":typeof n}function as(n){var t=n.NUMBER_FORMATS;return function(n,i,r){return f(i)&&(i=t.CURRENCY_SYM),f(r)&&(r=t.PATTERNS[1].maxFrac),null==n?n:ys(n,t.PATTERNS[1],t.GROUP_SEP,t.DECIMAL_SEP,r).replace(/\u00A4/g,i)}}function vs(n){var t=n.NUMBER_FORMATS;return function(n,i){return null==n?n:ys(n,t.PATTERNS[0],t.GROUP_SEP,t.DECIMAL_SEP,i)}}function ys(n,t,i,r,u){var a,e,l;if(c(n)||(a=0>n,n=Math.abs(n),e=Infinity===n,!e&&!isFinite(n)))return"";var s=n+"",h="",o=!1,y=[];if(e&&(h="∞"),e||-1===s.indexOf("e")||(l=s.match(/([\d\.]+)e(-?)(\d+)/),l&&"-"==l[2]&&l[3]>u+1?n=0:(h=s,o=!0)),e||o)0<u&&1>n&&(h=n.toFixed(u),n=parseFloat(h));else{e=(s.split(bh)[1]||"").length;f(u)&&(u=Math.min(Math.max(t.minFrac,e),t.maxFrac));n=+(Math.round(+(n.toString()+"e"+u)).toString()+"e"+-u);var e=(""+n).split(bh),s=e[0],e=e[1]||"",l=0,v=t.lgSize,p=t.gSize;if(s.length>=v+p)for(l=s.length-v,o=0;o<l;o++)0==(l-o)%p&&0!==o&&(h+=i),h+=s.charAt(o);for(o=l;o<s.length;o++)0==(s.length-o)%v&&0!==o&&(h+=i),h+=s.charAt(o);for(;e.length<u;)e+="0";u&&"0"!==u&&(h+=r+e.substr(0,u))}return 0===n&&(a=!1),y.push(a?t.negPre:t.posPre,h,a?t.negSuf:t.posSuf),y.join("")}function yu(n,t,i){var r="";for(0>n&&(r="-",n=-n),n=""+n;n.length<t;)n="0"+n;return i&&(n=n.substr(n.length-t)),r+n}function g(n,t,i,r){return i=i||0,function(u){return u=u["get"+n](),(0<i||u>-i)&&(u+=i),0===u&&-12==i&&(u=12),yu(u,t,r)}}function pu(n,t){return function(i,r){var u=i["get"+n](),f=bu(t?"SHORT"+n:n);return r[f][u]}}function ps(n){var t=new Date(n,0,1).getDay();return new Date(n,0,(4>=t?5:12)-t)}function ws(n){return function(t){var i=ps(t.getFullYear());return t=+new Date(t.getFullYear(),t.getMonth(),t.getDate()+(4-t.getDay()))-+i,t=1+Math.round(t/6048e5),yu(t,n)}}function df(n,t){return 0>=n.getFullYear()?t.ERAS[0]:t.ERAS[1]}function bs(n){function t(n){var t;if(t=n.match(i)){n=new Date(0);var r=0,u=0,f=t[8]?n.setUTCFullYear:n.setFullYear,e=t[8]?n.setUTCHours:n.setHours;t[9]&&(r=tt(t[9]+t[10]),u=tt(t[9]+t[11]));f.call(n,tt(t[1]),tt(t[2])-1,tt(t[3]));r=tt(t[4]||0)-r;u=tt(t[5]||0)-u;f=tt(t[6]||0);t=Math.round(1e3*parseFloat("0."+(t[7]||0)));e.call(n,r,u,f,t)}return n}var i=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(i,u,f){var h="",e=[],o,c,s;if(u=u||"mediumDate",u=n.DATETIME_FORMATS[u]||u,l(i)&&(i=ky.test(i)?tt(i):t(i)),k(i)&&(i=new Date(i)),!ft(i)||!isFinite(i.getTime()))return i;for(;u;)(c=by.exec(u))?(e=cr(e,c,1),u=e.pop()):(e.push(u),u=null);return s=i.getTimezoneOffset(),f&&(s=be(f,i.getTimezoneOffset()),i=of(i,f,!0)),r(e,function(t){o=wy[t];h+=o?o(i,n.DATETIME_FORMATS,s):t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}}function rv(){return function(n,t){return f(t)&&(t=2),lr(n,t)}}function uv(){return function(n,t,i){return(t=Infinity===Math.abs(Number(t))?Number(t):tt(t),isNaN(t))?n:(k(n)&&(n=n.toString()),!a(n)&&!l(n))?n:(i=!i||isNaN(i)?0:tt(i),i=0>i&&i>=-n.length?n.length+i:i,0<=t?n.slice(i,i+t):0===i?n.slice(t,n.length):n.slice(Math.max(0,i+t),i))}}function ks(n){function i(t,i){return i=i?-1:1,t.map(function(t){var u=1,r=fr,f;return h(t)?r=t:l(t)&&(("+"==t.charAt(0)||"-"==t.charAt(0))&&(u="-"==t.charAt(0)?-1:1,t=t.substring(1)),""!==t&&(r=n(t),r.constant)&&(f=r(),r=function(n){return n[f]})),{get:r,descending:u*i}})}function t(n){switch(typeof n){case"number":case"boolean":case"string":return!0;default:return!1}}return function(n,r,u){if(!fi(n))return n;a(r)||(r=[r]);0===r.length&&(r=["+"]);var f=i(r,u);return f.push({get:function(){return{}},descending:u?-1:1}),n=Array.prototype.map.call(n,function(n,i){return{value:n,predicateValues:f.map(function(r){var u=r.get(n);if(r=typeof u,null===u)r="string",u="null";else if("string"===r)u=u.toLowerCase();else if("object"===r)n:{if("function"==typeof u.valueOf&&(u=u.valueOf(),t(u)))break n;if(ae(u)&&(u=u.toString(),t(u)))break n;u=i}return{value:u,type:r}})}}),n.sort(function(n,t){for(var i=0,r=0,o=f.length;r<o;++r){var i=n.predicateValues[r],u=t.predicateValues[r],e=0;if(i.type===u.type?i.value!==u.value&&(e=i.value<u.value?-1:1):e=i.type<u.type?-1:1,i=e*f[r].descending)break}return i}),n.map(function(n){return n.value})}}function ci(n){return h(n)&&(n={link:n}),n.restrict=n.restrict||"AC",vt(n)}function ds(n,t,u,f,e){var o=this,s=[];o.$error={};o.$$success={};o.$pending=i;o.$name=e(t.name||t.ngForm||"")(u);o.$dirty=!1;o.$pristine=!0;o.$valid=!0;o.$invalid=!1;o.$submitted=!1;o.$$parentForm=dr;o.$rollbackViewValue=function(){r(s,function(n){n.$rollbackViewValue()})};o.$commitViewValue=function(){r(s,function(n){n.$commitViewValue()})};o.$addControl=function(n){ki(n.$name,"input");s.push(n);n.$name&&(o[n.$name]=n);n.$$parentForm=o};o.$$renameControl=function(n,t){var i=n.$name;o[i]===n&&delete o[i];o[t]=n;n.$name=t};o.$removeControl=function(n){n.$name&&o[n.$name]===n&&delete o[n.$name];r(o.$pending,function(t,i){o.$setValidity(i,null,n)});r(o.$error,function(t,i){o.$setValidity(i,null,n)});r(o.$$success,function(t,i){o.$setValidity(i,null,n)});hr(s,n);n.$$parentForm=dr};th({ctrl:this,$element:n,set:function(n,t,i){var r=n[t];r?-1===r.indexOf(i)&&r.push(i):n[t]=[i]},unset:function(n,t,i){var r=n[t];r&&(hr(r,i),0===r.length&&delete n[t])},$animate:f});o.$setDirty=function(){f.removeClass(n,ur);f.addClass(n,uf);o.$dirty=!0;o.$pristine=!1;o.$$parentForm.$setDirty()};o.$setPristine=function(){f.setClass(n,ur,uf+" ng-submitted");o.$dirty=!1;o.$pristine=!0;o.$submitted=!1;r(s,function(n){n.$setPristine()})};o.$setUntouched=function(){r(s,function(n){n.$setUntouched()})};o.$setSubmitted=function(){f.addClass(n,"ng-submitted");o.$submitted=!0;o.$$parentForm.$setSubmitted()}}function gf(n){n.$formatters.push(function(t){return n.$isEmpty(t)?t:t.toString()})}function pr(n,t,i,r,u,f){var c=y(t[0].type),s,o,e,h;if(!u.android){s=!1;t.on("compositionstart",function(){s=!0});t.on("compositionend",function(){s=!1;o()})}if(o=function(n){if(e&&(f.defer.cancel(e),e=null),!s){var u=t.val();n=n&&n.type;"password"===c||i.ngTrim&&"false"===i.ngTrim||(u=w(u));(r.$viewValue!==u||""===u&&r.$$hasNativeValidators)&&r.$setViewValue(u,n)}},u.hasEvent("input"))t.on("input",o);else{h=function(n,t,i){e||(e=f.defer(function(){e=null;t&&t.value===i||o(n)}))};t.on("keydown",function(n){var t=n.keyCode;91===t||15<t&&19>t||37<=t&&40>=t||h(n,this,this.value)});if(u.hasEvent("paste"))t.on("paste cut",h)}t.on("change",o);r.$render=function(){var n=r.$isEmpty(r.$viewValue)?"":r.$viewValue;t.val()!==n&&t.val(n)}}function wu(n,t){return function(i,u){var e,f;if(ft(i))return i;if(l(i)){if('"'==i.charAt(0)&&'"'==i.charAt(i.length-1)&&(i=i.substring(1,i.length-1)),np.test(i))return new Date(i);if(n.lastIndex=0,e=n.exec(i))return e.shift(),f=u?{yyyy:u.getFullYear(),MM:u.getMonth()+1,dd:u.getDate(),HH:u.getHours(),mm:u.getMinutes(),ss:u.getSeconds(),sss:u.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},r(e,function(n,i){i<t.length&&(f[t[i]]=+n)}),new Date(f.yyyy,f.MM-1,f.dd,f.HH,f.mm,f.ss||0,1e3*f.sss||0)}return NaN}}function wr(n,t,r,u){return function(o,s,h,c,l,a,v){function w(n){return n&&!(n.getTime&&n.getTime()!==n.getTime())}function d(n){return e(n)&&!ft(n)?r(n)||i:n}var y,p,b,k;gs(o,s,h,c);pr(o,s,h,c,l,a);y=c&&c.$options&&c.$options.timezone;c.$$parserName=n;c.$parsers.push(function(n){return c.$isEmpty(n)?null:t.test(n)?(n=r(n,p),y&&(n=of(n,y)),n):i});c.$formatters.push(function(n){if(n&&!ft(n))throw nu("datefmt",n);return w(n)?((p=n)&&y&&(p=of(p,y,!0)),v("date")(n,u,y)):(p=null,"")});(e(h.min)||h.ngMin)&&(c.$validators.min=function(n){return!w(n)||f(b)||r(n)>=b},h.$observe("min",function(n){b=d(n);c.$validate()}));(e(h.max)||h.ngMax)&&(c.$validators.max=function(n){return!w(n)||f(k)||r(n)<=k},h.$observe("max",function(n){k=d(n);c.$validate()}))}}function gs(n,t,r,u){(u.$$hasNativeValidators=c(t[0].validity))&&u.$parsers.push(function(n){var r=t.prop("validity")||{};return r.badInput&&!r.typeMismatch?i:n})}function nh(n,t,i,r,u){if(e(r)){if(n=n(r),!n.constant)throw nu("constexpr",i,r);return n(t)}return u}function ne(n,t){return n="ngClass"+n,["$animate",function(i){function f(n,t){var f=[],r=0,u,i;n:for(;r<n.length;r++){for(u=n[r],i=0;i<t.length;i++)if(u==t[i])continue n;f.push(u)}return f}function u(n){var t=[];return a(n)?(r(n,function(n){t=t.concat(u(n))}),t):l(n)?n.split(" "):c(n)?(r(n,function(n,i){n&&(t=t.concat(i.split(" ")))}),t):n}return{restrict:"AC",link:function(e,o,s){function h(n,t){var i=o.data("$classCounts")||rt(),u=[];return r(n,function(n){(0<t||i[n])&&(i[n]=(i[n]||0)+t,i[n]===+(0<t)&&u.push(n))}),o.data("$classCounts",i),u.join(" ")}function l(n){var r,l;if(!0===t||e.$index%2===t)if(r=u(n||[]),c){if(!ot(n,c)){var a=u(c),l=f(r,a),r=f(a,r),l=h(l,1),r=h(r,-1);l&&l.length&&i.addClass(o,l);r&&r.length&&i.removeClass(o,r)}}else l=h(r,1),s.$addClass(l);c=ht(n)}var c;e.$watch(s[n],l,!0);s.$observe("class",function(){l(e.$eval(s[n]))});"ngClass"!==n&&e.$watch("$index",function(i,r){var f=i&1,o;f!==(r&1)&&(o=u(e.$eval(s[n])),f===t?(f=h(o,1),s.$addClass(f)):(f=h(o,-1),s.$removeClass(f)))})}}}]}function th(n){function e(n,t){t&&!r[n]?(c.addClass(s,n),r[n]=!0):!t&&r[n]&&(c.removeClass(s,n),r[n]=!1)}function o(n,t){n=n?"-"+no(n,"-"):"";e(gr+n,!0===t);e(sc+n,!1===t)}var t=n.ctrl,s=n.$element,r={},h=n.set,u=n.unset,c=n.$animate;r[sc]=!(r[gr]=s.hasClass(gr));t.$setValidity=function(n,r,s){f(r)?(t.$pending||(t.$pending={}),h(t.$pending,n,s)):(t.$pending&&u(t.$pending,n,s),ih(t.$pending)&&(t.$pending=i));sr(r)?r?(u(t.$error,n,s),h(t.$$success,n,s)):(h(t.$error,n,s),u(t.$$success,n,s)):(u(t.$error,n,s),u(t.$$success,n,s));t.$pending?(e(hc,!0),t.$valid=t.$invalid=i,o("",null)):(e(hc,!1),t.$valid=ih(t.$error),t.$invalid=!t.$valid,o("",t.$valid));r=t.$pending&&t.$pending[n]?i:t.$error[n]?!1:t.$$success[n]?!0:null;o(n,r);t.$$parentForm.$setValidity(n,r,t)}}function ih(n){if(n)for(var t in n)if(n.hasOwnProperty(t))return!1;return!0}var fv=/^\/(.+)\/([a-z]*)$/,y=function(n){return l(n)?n.toLowerCase():n},gt=Object.prototype.hasOwnProperty,bu=function(n){return l(n)?n.toUpperCase():n},nr,s,pt,ni=[].slice,ev=[].splice,ov=[].push,ti=Object.prototype.toString,rh=Object.getPrototypeOf,li=v("ng"),ut=n.angular||(n.angular={}),te,ku=0,rr,oh,vi,br,fe,ee,ph,tf,u,rf,kh,dh,gh,kr,dr;nr=t.documentMode;o.$inject=[];fr.$inject=[];var a=Array.isArray,uh=/^\[object (Uint8(Clamped)?)|(Uint16)|(Uint32)|(Int8)|(Int16)|(Int32)|(Float(32)|(64))Array\]$/,w=function(n){return l(n)?n.trim():n},fh=function(n){return n.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")},ai=function(){var i,n;if(!e(ai.rules))if(i=t.querySelector("[ng-csp]")||t.querySelector("[data-ng-csp]"),i)n=i.getAttribute("ng-csp")||i.getAttribute("data-ng-csp"),ai.rules={noUnsafeEval:!n||-1!==n.indexOf("no-unsafe-eval"),noInlineStyle:!n||-1!==n.indexOf("no-inline-style")};else{i=ai;try{new Function("");n=!1}catch(r){n=!0}i.rules={noUnsafeEval:n,noInlineStyle:!1}}return ai.rules},du=function(){if(e(du.name_))return du.name_;for(var r,f=tr.length,i,u,n=0;n<f;++n)if(i=tr[n],r=t.querySelector("["+i.replace(":","\\:")+"jq]")){u=r.getAttribute(i+"jq");break}return du.name_=u},tr=["ng-","data-ng-","ng:","x-ng-"],sv=/[A-Z]/g,eh=!1,ie,wt=1,ir=3,hv={full:"1.4.6",major:1,minor:4,dot:6,codeName:"multiplicative-elevation"};b.expando="ng339";rr=b.cache={};oh=1;b._data=function(n){return this.cache[n[this.expando]]||{}};var cv=/([\:\-\_]+(.))/g,lv=/^moz([A-Z])/,av={mouseleave:"mouseout",mouseenter:"mouseover"},re=v("jqLite"),vv=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ue=/<|&#?\w+;/,yv=/<([\w:]+)/,pv=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,lt={option:[1,'<select multiple="multiple">',"<\/select>"],thead:[1,"<table>","<\/table>"],col:[2,"<table><colgroup>","<\/colgroup><\/table>"],tr:[2,"<table><tbody>","<\/tbody><\/table>"],td:[3,"<table><tbody><tr>","<\/tr><\/tbody><\/table>"],_default:[0,"",""]};lt.optgroup=lt.option;lt.tbody=lt.tfoot=lt.colgroup=lt.caption=lt.thead;lt.th=lt.td;vi=b.prototype={ready:function(i){function r(){u||(u=!0,i())}var u=!1;"complete"===t.readyState?setTimeout(r):(this.on("DOMContentLoaded",r),b(n).on("load",r))},toString:function(){var n=[];return r(this,function(t){n.push(""+t)}),"["+n.join(", ")+"]"},eq:function(n){return 0<=n?s(this[n]):s(this[this.length+n])},length:0,push:ov,sort:[].sort,splice:[].splice};br={};r("multiple selected checked disabled readOnly required open".split(" "),function(n){br[y(n)]=n});fe={};r("input select option textarea button form details".split(" "),function(n){fe[n]=!0});ee={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};r({data:cf,removeData:fu,hasData:function(n){for(var t in rr[n.ng339])return!0;return!1}},function(n,t){b[t]=n});r({data:cf,inheritedData:cu,scope:function(n){return s.data(n,"$scope")||cu(n.parentNode||n,["$isolateScope","$scope"])},isolateScope:function(n){return s.data(n,"$isolateScope")||s.data(n,"$isolateScopeNoTemplate")},controller:eo,injector:function(n){return cu(n,"$injector")},removeAttr:function(n,t){n.removeAttribute(t)},hasClass:ou,css:function(n,t,i){if(t=ar(t),e(i))n.style[t]=i;else return n.style[t]},attr:function(n,t,r){var u=n.nodeType;if(u!==ir&&2!==u&&8!==u)if(u=y(t),br[u])if(e(r))r?(n[t]=!0,n.setAttribute(t,u)):(n[t]=!1,n.removeAttribute(u));else return n[t]||(n.attributes.getNamedItem(t)||o).specified?u:i;else if(e(r))n.setAttribute(t,r);else if(n.getAttribute)return n=n.getAttribute(t,2),null===n?i:n},prop:function(n,t,i){if(e(i))n[t]=i;else return n[t]},text:function(){function n(n,t){if(f(t)){var i=n.nodeType;return i===wt||i===ir?n.textContent:""}n.textContent=t}return n.$dv="",n}(),val:function(n,t){if(f(t)){if(n.multiple&&"select"===bt(n)){var i=[];return r(n.options,function(n){n.selected&&i.push(n.value||n.text)}),0===i.length?null:i}return n.value}n.value=t},html:function(n,t){if(f(t))return n.innerHTML;uu(n,!0);n.innerHTML=t},empty:oo},function(n,t){b.prototype[t]=function(t,i){var r,u,e=this.length,o;if(n!==oo&&f(2==n.length&&n!==ou&&n!==eo?t:i)){if(c(t)){for(r=0;r<e;r++)if(n===cf)n(this[r],t);else for(u in t)n(this[r],u,t[u]);return this}for(r=n.$dv,e=f(r)?Math.min(e,1):e,u=0;u<e;u++)o=n(this[u],t,i),r=r?r+o:o;return r}for(r=0;r<e;r++)n(this[r],t,i);return this}});r({removeData:fu,on:function wv(n,t,i,r){var f,u,s,o;if(e(r))throw re("onargs");if(io(n))for(u=eu(n,!0),r=u.events,f=u.handle,f||(f=u.handle=fl(n,r)),u=0<=t.indexOf(" ")?t.split(" "):[t],s=u.length;s--;)t=u[s],o=r[t],o||(r[t]=[],"mouseenter"===t||"mouseleave"===t?wv(n,av[t],function(n){var i=n.relatedTarget;i&&(i===this||this.contains(i))||f(n,t)}):"$destroy"!==t&&n.addEventListener(t,f,!1),o=r[t]),o.push(i)},off:uo,one:function(n,t,i){n=s(n);n.on(t,function r(){n.off(t,i);n.off(t,r)});n.on(t,i)},replaceWith:function(n,t){var i,u=n.parentNode;uu(n);r(new b(t),function(t){i?u.insertBefore(t,i.nextSibling):u.replaceChild(t,n);i=t})},children:function(n){var t=[];return r(n.childNodes,function(n){n.nodeType===wt&&t.push(n)}),t},contents:function(n){return n.contentDocument||n.childNodes||[]},append:function(n,t){var i=n.nodeType,r;if(i===wt||11===i)for(t=new b(t),i=0,r=t.length;i<r;i++)n.appendChild(t[i])},prepend:function(n,t){if(n.nodeType===wt){var i=n.firstChild;r(new b(t),function(t){n.insertBefore(t,i)})}},wrap:function(n,t){t=s(t).eq(0).clone()[0];var i=n.parentNode;i&&i.replaceChild(t,n);t.appendChild(n)},remove:lf,detach:function(n){lf(n,!0)},after:function(n,t){var u=n,e=n.parentNode,i,f,r;for(t=new b(t),i=0,f=t.length;i<f;i++)r=t[i],e.insertBefore(r,u.nextSibling),u=r},addClass:hu,removeClass:su,toggleClass:function(n,t,i){t&&r(t.split(" "),function(t){var r=i;f(r)&&(r=!ou(n,t));(r?hu:su)(n,t)})},parent:function(n){return(n=n.parentNode)&&11!==n.nodeType?n:null},next:function(n){return n.nextElementSibling},find:function(n,t){return n.getElementsByTagName?n.getElementsByTagName(t):[]},clone:hf,triggerHandler:function(n,t,i){var u,e,s=t.type||t,f=eu(n);(f=(f=f&&f.events)&&f[s])&&(u={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:o,type:s,target:n},t.type&&(u=p(u,t)),t=ht(f),e=i?[u].concat(i):[u],r(t,function(t){u.isImmediatePropagationStopped()||t.apply(n,e)}))}},function(n,t){b.prototype[t]=function(t,i,r){for(var u,o=0,h=this.length;o<h;o++)f(u)?(u=n(this[o],t,i,r),e(u)&&(u=s(u))):fo(u,n(this[o],t,i,r));return e(u)?u:this};b.prototype.bind=b.prototype.on;b.prototype.unbind=b.prototype.off});di.prototype={put:function(n,t){this[ei(n,this.nextUid)]=t},get:function(n){return this[ei(n,this.nextUid)]},remove:function(n){var t=this[n=ei(n,this.nextUid)];return delete this[n],t}};var bv=[function(){this.$get=[function(){return di}]}],sh=/^[^\(]*\(\s*([^\)]*)\)/m,kv=/,/,dv=/^\s*(_?)(\S+?)\1\s*$/,hh=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,yi=v("$injector");vr.$$annotate=function(n,t,i){var u;if("function"==typeof n){if(!(u=n.$inject)){if(u=[],n.length){if(t)throw l(i)&&i||(i=n.name||ol(n)),yi("strictdi",i);t=n.toString().replace(hh,"");t=t.match(sh);r(t[1].split(kv),function(n){n.replace(dv,function(n,t,i){u.push(i)})})}n.$inject=u}}else a(n)?(t=n.length-1,bi(n[t],"fn"),u=n.slice(0,t)):bi(n,"fn",!0);return u};var ch=v("$animate"),gv=function(){this.$get=["$q","$$rAF",function(n,t){function i(){}return i.all=o,i.chain=o,i.prototype={end:o,cancel:o,resume:o,pause:o,complete:o,then:function(i,r){return n(function(n){t(function(){n()})}).then(i,r)}},i}]},ny=function(){var n=new di,t=[];this.$get=["$$AnimateRunner","$rootScope",function(i,u){function f(n,t,i){var u=!1;return t&&(t=l(t)?t.split(" "):a(t)?t:[],r(t,function(t){t&&(u=!0,n[t]=i)})),u}function e(){r(t,function(t){var f=n.get(t);if(f){var e=hl(t.attr("class")),i="",u="";r(f,function(n,t){n!==!!e[t]&&(n?i+=(i.length?" ":"")+t:u+=(u.length?" ":"")+t)});r(t,function(n){i&&hu(n,i);u&&su(n,u)});n.remove(t)}});t.length=0}return{enabled:o,on:o,off:o,pin:o,push:function(r,o,s,h){return h&&h(),s=s||{},s.from&&r.css(s.from),s.to&&r.css(s.to),(s.addClass||s.removeClass)&&(o=s.addClass,h=s.removeClass,s=n.get(r)||{},o=f(s,o,!0),h=f(s,h,!1),o||h)&&(n.put(r,s),t.push(r),1===t.length&&u.$$postDigest(e)),new i}}}]},ty=["$provide",function(n){var t=this;this.$$registeredAnimations=Object.create(null);this.register=function(i,r){if(i&&"."!==i.charAt(0))throw ch("notcsel",i);var u=i+"-animation";t.$$registeredAnimations[i.substr(1)]=u;n.factory(u,r)};this.classNameFilter=function(n){if(1===arguments.length&&(this.$$classNameFilter=n instanceof RegExp?n:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw ch("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(n){function t(n,t,i){var r,u;if(i){n:{for(r=0;r<i.length;r++)if(u=i[r],1===u.nodeType){r=u;break n}r=void 0}!r||r.parentNode||r.previousElementSibling||(i=null)}i?i.after(n):t.prepend(n)}return{on:n.on,off:n.off,pin:n.pin,enabled:n.enabled,cancel:function(n){n.end&&n.end()},enter:function(i,r,u,f){return r=r&&s(r),u=u&&s(u),r=r||u.parent(),t(i,r,u),n.push(i,"enter",oi(f))},move:function(i,r,u,f){return r=r&&s(r),u=u&&s(u),r=r||u.parent(),t(i,r,u),n.push(i,"move",oi(f))},leave:function(t,i){return n.push(t,"leave",oi(i),function(){t.remove()})},addClass:function(t,i,r){return r=oi(r),r.addClass=yr(r.addclass,i),n.push(t,"addClass",r)},removeClass:function(t,i,r){return r=oi(r),r.removeClass=yr(r.removeClass,i),n.push(t,"removeClass",r)},setClass:function(t,i,r,u){return u=oi(u),u.addClass=yr(u.addClass,i),u.removeClass=yr(u.removeClass,r),n.push(t,"setClass",u)},animate:function(t,i,r,u,f){return f=oi(f),f.from=f.from?p(f.from,i):i,f.to=f.to?p(f.to,r):r,f.tempClasses=yr(f.tempClasses,u||"ng-inline-animate"),n.push(t,"animate",f)}}}]}],iy=function(){this.$get=["$$rAF","$q",function(n,t){var i=function(){};return i.prototype={done:function(n){this.defer&&this.defer[!0===n?"reject":"resolve"]()},end:function(){this.done()},cancel:function(){this.done(!0)},getPromise:function(){return this.defer||(this.defer=t.defer()),this.defer.promise},then:function(n,t){return this.getPromise().then(n,t)},"catch":function(n){return this.getPromise()["catch"](n)},"finally":function(n){return this.getPromise()["finally"](n)}},function(t,r){function u(){return n(function(){r.addClass&&(t.addClass(r.addClass),r.addClass=null);r.removeClass&&(t.removeClass(r.removeClass),r.removeClass=null);r.to&&(t.css(r.to),r.to=null);f||e.done();f=!0}),e}r.from&&(t.css(r.from),r.from=null);var f,e=new i;return{start:u,end:u}}}]},it=v("$compile");ho.$inject=["$provide","$$sanitizeUriProvider"];var lh=/^((?:x|data)[\:\-_])/i,ry=v("$controller"),ah=/^(\S+)(\s+as\s+(\w+))?$/,uy=function(){this.$get=["$document",function(n){return function(t){return t?!t.nodeType&&t instanceof s&&(t=t[0]):t=n[0].body,t.offsetWidth+1}}]},vh="application/json",oe={"Content-Type":vh+";charset=utf-8"},fy=/^\[|^\{(?!\{)/,ey={"[":/]$/,"{":/}$/},oy=/^\)\]\}',?\n/,sy=v("$http"),yh=function(n){return function(){throw sy("legacy",n);}},pi=ut.$interpolateMinErr=v("$interpolate");pi.throwNoconcat=function(n){throw pi("noconcat",n);};pi.interr=function(n,t){return pi("interr",n,t.toString())};var hy=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,cy={http:80,https:443,ftp:21},gu=v("$location"),ly={$$html5:!1,$$replace:!1,absUrl:au("$$absUrl"),url:function(n){if(f(n))return this.$$url;var t=hy.exec(n);return(t[1]||""===n)&&this.path(decodeURIComponent(t[1])),(t[2]||t[1]||""===n)&&this.search(t[3]||""),this.hash(t[5]||""),this},protocol:au("$$protocol"),host:au("$$host"),port:au("$$port"),path:ko("$$path",function(n){return n=null!==n?n.toString():"","/"==n.charAt(0)?n:"/"+n}),search:function(n,t){switch(arguments.length){case 0:return this.$$search;case 1:if(l(n)||k(n))n=n.toString(),this.$$search=de(n);else if(c(n))n=st(n,{}),r(n,function(t,i){null==t&&delete n[i]}),this.$$search=n;else throw gu("isrcharg");break;default:f(t)||null===t?delete this.$$search[n]:this.$$search[n]=t}return this.$$compose(),this},hash:ko("$$hash",function(n){return null!==n?n.toString():""}),replace:function(){return this.$$replace=!0,this}};r([bo,wf,pf],function(n){n.prototype=Object.create(ly);n.prototype.state=function(t){if(!arguments.length)return this.$$state;if(n!==pf||!this.$$html5)throw gu("nostate");return this.$$state=f(t)?null:t,this}});var et=v("$parse"),ay=Function.prototype.call,vy=Function.prototype.apply,yy=Function.prototype.bind,nf=rt();r("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(n){nf[n]=!0});ph={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'};tf=function(n){this.options=n};tf.prototype={constructor:tf,lex:function(n){for(this.text=n,this.index=0,this.tokens=[];this.index<this.text.length;)if(n=this.text.charAt(this.index),'"'===n||"'"===n)this.readString(n);else if(this.isNumber(n)||"."===n&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(n))this.readIdent();else if(this.is(n,"(){}[].,;:?"))this.tokens.push({index:this.index,text:n}),this.index++;else if(this.isWhitespace(n))this.index++;else{var t=n+this.peek(),i=t+this.peek(2),r=nf[t],u=nf[i];nf[n]||r||u?(n=u?i:r?t:n,this.tokens.push({index:this.index,text:n,operator:!0}),this.index+=n.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(n,t){return-1!==t.indexOf(n)},peek:function(n){return n=n||1,this.index+n<this.text.length?this.text.charAt(this.index+n):!1},isNumber:function(n){return"0"<=n&&"9">=n&&"string"==typeof n},isWhitespace:function(n){return" "===n||"\r"===n||"\t"===n||"\n"===n||"\v"===n||" "===n},isIdent:function(n){return"a"<=n&&"z">=n||"A"<=n&&"Z">=n||"_"===n||"$"===n},isExpOperator:function(n){return"-"===n||"+"===n||this.isNumber(n)},throwError:function(n,t,i){i=i||this.index;t=e(t)?"s "+t+"-"+this.index+" ["+this.text.substring(t,i)+"]":" "+i;throw et("lexerr",n,t,this.text);},readNumber:function(){for(var t,i,n="",r=this.index;this.index<this.text.length;){if(t=y(this.text.charAt(this.index)),"."==t||this.isNumber(t))n+=t;else if(i=this.peek(),"e"==t&&this.isExpOperator(i))n+=t;else if(this.isExpOperator(t)&&i&&this.isNumber(i)&&"e"==n.charAt(n.length-1))n+=t;else if(!this.isExpOperator(t)||i&&this.isNumber(i)||"e"!=n.charAt(n.length-1))break;else this.throwError("Invalid exponent");this.index++}this.tokens.push({index:r,text:n,constant:!0,value:Number(n)})},readIdent:function(){for(var t,n=this.index;this.index<this.text.length;){if(t=this.text.charAt(this.index),!this.isIdent(t)&&!this.isNumber(t))break;this.index++}this.tokens.push({index:n,text:this.text.slice(n,this.index),identifier:!0})},readString:function(n){var f=this.index,t,u;this.index++;for(var r="",u=n,i=!1;this.index<this.text.length;){if(t=this.text.charAt(this.index),u=u+t,i)"u"===t?(i=this.text.substring(this.index+1,this.index+5),i.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+i+"]"),this.index+=4,r+=String.fromCharCode(parseInt(i,16))):r+=ph[t]||t,i=!1;else if("\\"===t)i=!0;else{if(t===n){this.index++;this.tokens.push({index:f,text:u,constant:!0,value:r});return}r+=t}this.index++}this.throwError("Unterminated quote",f)}};u=function(n,t){this.lexer=n;this.options=t};u.Program="Program";u.ExpressionStatement="ExpressionStatement";u.AssignmentExpression="AssignmentExpression";u.ConditionalExpression="ConditionalExpression";u.LogicalExpression="LogicalExpression";u.BinaryExpression="BinaryExpression";u.UnaryExpression="UnaryExpression";u.CallExpression="CallExpression";u.MemberExpression="MemberExpression";u.Identifier="Identifier";u.Literal="Literal";u.ArrayExpression="ArrayExpression";u.Property="Property";u.ObjectExpression="ObjectExpression";u.ThisExpression="ThisExpression";u.NGValueParameter="NGValueParameter";u.prototype={ast:function(n){return this.text=n,this.tokens=this.lexer.lex(n),n=this.program(),0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),n},program:function(){for(var n=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&n.push(this.expressionStatement()),!this.expect(";"))return{type:u.Program,body:n}},expressionStatement:function(){return{type:u.ExpressionStatement,expression:this.filterChain()}},filterChain:function(){for(var n=this.expression();this.expect("|");)n=this.filter(n);return n},expression:function(){return this.assignment()},assignment:function(){var n=this.ternary();return this.expect("=")&&(n={type:u.AssignmentExpression,left:n,right:this.assignment(),operator:"="}),n},ternary:function(){var n=this.logicalOR(),t,i;return this.expect("?")&&(t=this.expression(),this.consume(":"))?(i=this.expression(),{type:u.ConditionalExpression,test:n,alternate:t,consequent:i}):n},logicalOR:function(){for(var n=this.logicalAND();this.expect("||");)n={type:u.LogicalExpression,operator:"||",left:n,right:this.logicalAND()};return n},logicalAND:function(){for(var n=this.equality();this.expect("&&");)n={type:u.LogicalExpression,operator:"&&",left:n,right:this.equality()};return n},equality:function(){for(var n=this.relational(),t;t=this.expect("==","!=","===","!==");)n={type:u.BinaryExpression,operator:t.text,left:n,right:this.relational()};return n},relational:function(){for(var n=this.additive(),t;t=this.expect("<",">","<=",">=");)n={type:u.BinaryExpression,operator:t.text,left:n,right:this.additive()};return n},additive:function(){for(var n=this.multiplicative(),t;t=this.expect("+","-");)n={type:u.BinaryExpression,operator:t.text,left:n,right:this.multiplicative()};return n},multiplicative:function(){for(var n=this.unary(),t;t=this.expect("*","/","%");)n={type:u.BinaryExpression,operator:t.text,left:n,right:this.unary()};return n},unary:function(){var n;return(n=this.expect("+","-","!"))?{type:u.UnaryExpression,operator:n.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var n,t;for(this.expect("(")?(n=this.filterChain(),this.consume(")")):this.expect("[")?n=this.arrayDeclaration():this.expect("{")?n=this.object():this.constants.hasOwnProperty(this.peek().text)?n=st(this.constants[this.consume().text]):this.peek().identifier?n=this.identifier():this.peek().constant?n=this.constant():this.throwError("not a primary expression",this.peek());t=this.expect("(","[",".");)"("===t.text?(n={type:u.CallExpression,callee:n,arguments:this.parseArguments()},this.consume(")")):"["===t.text?(n={type:u.MemberExpression,object:n,property:this.expression(),computed:!0},this.consume("]")):"."===t.text?n={type:u.MemberExpression,object:n,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return n},filter:function(n){n=[n];for(var t={type:u.CallExpression,callee:this.identifier(),arguments:n,filter:!0};this.expect(":");)n.push(this.expression());return t},parseArguments:function(){var n=[];if(")"!==this.peekToken().text)do n.push(this.expression());while(this.expect(","));return n},identifier:function(){var n=this.consume();return n.identifier||this.throwError("is not a valid identifier",n),{type:u.Identifier,name:n.text}},constant:function(){return{type:u.Literal,value:this.consume().value}},arrayDeclaration:function(){var n=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;n.push(this.expression())}while(this.expect(","));return this.consume("]"),{type:u.ArrayExpression,elements:n}},object:function(){var t=[],n;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;n={type:u.Property,kind:"init"};this.peek().constant?n.key=this.constant():this.peek().identifier?n.key=this.identifier():this.throwError("invalid key",this.peek());this.consume(":");n.value=this.expression();t.push(n)}while(this.expect(","));return this.consume("}"),{type:u.ObjectExpression,properties:t}},throwError:function(n,t){throw et("syntax",t.text,n,t.index+1,this.text,this.text.substring(t.index));},consume:function(n){if(0===this.tokens.length)throw et("ueoe",this.text);var t=this.expect(n);return t||this.throwError("is unexpected, expecting ["+n+"]",this.peek()),t},peekToken:function(){if(0===this.tokens.length)throw et("ueoe",this.text);return this.tokens[0]},peek:function(n,t,i,r){return this.peekAhead(0,n,t,i,r)},peekAhead:function(n,t,i,r,u){if(this.tokens.length>n){n=this.tokens[n];var f=n.text;if(f===t||f===i||f===r||f===u||!(t||i||r||u))return n}return!1},expect:function(n,t,i,r){return(n=this.peek(n,t,i,r))?(this.tokens.shift(),n):!1},constants:{"true":{type:u.Literal,value:!0},"false":{type:u.Literal,value:!1},"null":{type:u.Literal,value:null},undefined:{type:u.Literal,value:i},"this":{type:u.ThisExpression}}};fs.prototype={compile:function(n,t){var f=this,e=this.astBuilder.ast(n),u,o;return this.state={nextId:0,filters:{},expensiveChecks:t,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},d(e,f.$filter),u="",this.stage="assign",(o=rs(e))&&(this.state.computing="assign",u=this.nextId(),this.recurse(o,u),this.return_(u),u="fn.assign="+this.generateFunction("assign","s,v,l")),o=ts(e.body),f.stage="inputs",r(o,function(n,t){var i="fn"+t,r;f.state[i]={vars:[],body:[],own:{}};f.state.computing=i;r=f.nextId();f.recurse(n,r);f.return_(r);f.state.inputs.push(i);n.watchId=t}),this.state.computing="fn",this.stage="main",this.recurse(e),u='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+u+this.watchFns()+"return fn;",u=new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","ifDefined","plus","text",u)(this.$filter,gi,ii,go,ea,ns,n),this.state=this.stage=i,u.literal=us(e),u.constant=e.constant,u},USE:"use",STRICT:"strict",watchFns:function(){var n=[],t=this.state.inputs,i=this;return r(t,function(t){n.push("var "+t+"="+i.generateFunction(t,"s"))}),t.length&&n.push("fn.inputs=["+t.join(",")+"];"),n.join("")},generateFunction:function(n,t){return"function("+t+"){"+this.varsPrefix(n)+this.body(n)+"};"},filterPrefix:function(){var n=[],t=this;return r(this.state.filters,function(i,r){n.push(i+"=$filter("+t.escape(r)+")")}),n.length?"var "+n.join(",")+";":""},varsPrefix:function(n){return this.state[n].vars.length?"var "+this.state[n].vars.join(",")+";":""},body:function(n){return this.state[n].body.join("")},recurse:function(n,t,f,s,h,c){var v,y,l=this,p,a;if(s=s||o,!c&&e(n.watchId))t=t||this.nextId(),this.if_("i",this.lazyAssign(t,this.computedMember("i",n.watchId)),this.lazyRecurse(n,t,f,s,h,!0));else switch(n.type){case u.Program:r(n.body,function(t,r){l.recurse(t.expression,i,i,function(n){y=n});r!==n.body.length-1?l.current().body.push(y,";"):l.return_(y)});break;case u.Literal:a=this.escape(n.value);this.assign(t,a);s(a);break;case u.UnaryExpression:this.recurse(n.argument,i,i,function(n){y=n});a=n.operator+"("+this.ifDefined(y,0)+")";this.assign(t,a);s(a);break;case u.BinaryExpression:this.recurse(n.left,i,i,function(n){v=n});this.recurse(n.right,i,i,function(n){y=n});a="+"===n.operator?this.plus(v,y):"-"===n.operator?this.ifDefined(v,0)+n.operator+this.ifDefined(y,0):"("+v+")"+n.operator+"("+y+")";this.assign(t,a);s(a);break;case u.LogicalExpression:t=t||this.nextId();l.recurse(n.left,t);l.if_("&&"===n.operator?t:l.not(t),l.lazyRecurse(n.right,t));s(t);break;case u.ConditionalExpression:t=t||this.nextId();l.recurse(n.test,t);l.if_(t,l.lazyRecurse(n.alternate,t),l.lazyRecurse(n.consequent,t));s(t);break;case u.Identifier:t=t||this.nextId();f&&(f.context="inputs"===l.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",n.name)+"?l:s"),f.computed=!1,f.name=n.name);gi(n.name);l.if_("inputs"===l.stage||l.not(l.getHasOwnProperty("l",n.name)),function(){l.if_("inputs"===l.stage||"s",function(){h&&1!==h&&l.if_(l.not(l.nonComputedMember("s",n.name)),l.lazyAssign(l.nonComputedMember("s",n.name),"{}"));l.assign(t,l.nonComputedMember("s",n.name))})},t&&l.lazyAssign(t,l.nonComputedMember("l",n.name)));(l.state.expensiveChecks||vu(n.name))&&l.addEnsureSafeObject(t);s(t);break;case u.MemberExpression:v=f&&(f.context=this.nextId())||this.nextId();t=t||this.nextId();l.recurse(n.object,v,i,function(){l.if_(l.notNull(v),function(){n.computed?(y=l.nextId(),l.recurse(n.property,y),l.addEnsureSafeMemberName(y),h&&1!==h&&l.if_(l.not(l.computedMember(v,y)),l.lazyAssign(l.computedMember(v,y),"{}")),a=l.ensureSafeObject(l.computedMember(v,y)),l.assign(t,a),f&&(f.computed=!0,f.name=y)):(gi(n.property.name),h&&1!==h&&l.if_(l.not(l.nonComputedMember(v,n.property.name)),l.lazyAssign(l.nonComputedMember(v,n.property.name),"{}")),a=l.nonComputedMember(v,n.property.name),(l.state.expensiveChecks||vu(n.property.name))&&(a=l.ensureSafeObject(a)),l.assign(t,a),f&&(f.computed=!1,f.name=n.property.name))},function(){l.assign(t,"undefined")});s(t)},!!h);break;case u.CallExpression:t=t||this.nextId();n.filter?(y=l.filter(n.callee.name),p=[],r(n.arguments,function(n){var t=l.nextId();l.recurse(n,t);p.push(t)}),a=y+"("+p.join(",")+")",l.assign(t,a),s(t)):(y=l.nextId(),v={},p=[],l.recurse(n.callee,y,v,function(){l.if_(l.notNull(y),function(){l.addEnsureSafeFunction(y);r(n.arguments,function(n){l.recurse(n,l.nextId(),i,function(n){p.push(l.ensureSafeObject(n))})});v.name?(l.state.expensiveChecks||l.addEnsureSafeObject(v.context),a=l.member(v.context,v.name,v.computed)+"("+p.join(",")+")"):a=y+"("+p.join(",")+")";a=l.ensureSafeObject(a);l.assign(t,a)},function(){l.assign(t,"undefined")});s(t)}));break;case u.AssignmentExpression:if(y=this.nextId(),v={},!is(n.left))throw et("lval");this.recurse(n.left,i,v,function(){l.if_(l.notNull(v.context),function(){l.recurse(n.right,y);l.addEnsureSafeObject(l.member(v.context,v.name,v.computed));a=l.member(v.context,v.name,v.computed)+n.operator+y;l.assign(t,a);s(t||a)})},1);break;case u.ArrayExpression:p=[];r(n.elements,function(n){l.recurse(n,l.nextId(),i,function(n){p.push(n)})});a="["+p.join(",")+"]";this.assign(t,a);s(a);break;case u.ObjectExpression:p=[];r(n.properties,function(n){l.recurse(n.value,l.nextId(),i,function(t){p.push(l.escape(n.key.type===u.Identifier?n.key.name:""+n.key.value)+":"+t)})});a="{"+p.join(",")+"}";this.assign(t,a);s(a);break;case u.ThisExpression:this.assign(t,"s");s("s");break;case u.NGValueParameter:this.assign(t,"v");s("v")}},getHasOwnProperty:function(n,t){var i=n+"."+t,r=this.current().own;return r.hasOwnProperty(i)||(r[i]=this.nextId(!1,n+"&&("+this.escape(t)+" in "+n+")")),r[i]},assign:function(n,t){if(n)return this.current().body.push(n,"=",t,";"),n},filter:function(n){return this.state.filters.hasOwnProperty(n)||(this.state.filters[n]=this.nextId(!0)),this.state.filters[n]},ifDefined:function(n,t){return"ifDefined("+n+","+this.escape(t)+")"},plus:function(n,t){return"plus("+n+","+t+")"},return_:function(n){this.current().body.push("return ",n,";")},if_:function(n,t,i){if(!0===n)t();else{var r=this.current().body;r.push("if(",n,"){");t();r.push("}");i&&(r.push("else{"),i(),r.push("}"))}},not:function(n){return"!("+n+")"},notNull:function(n){return n+"!=null"},nonComputedMember:function(n,t){return n+"."+t},computedMember:function(n,t){return n+"["+t+"]"},member:function(n,t,i){return i?this.computedMember(n,t):this.nonComputedMember(n,t)},addEnsureSafeObject:function(n){this.current().body.push(this.ensureSafeObject(n),";")},addEnsureSafeMemberName:function(n){this.current().body.push(this.ensureSafeMemberName(n),";")},addEnsureSafeFunction:function(n){this.current().body.push(this.ensureSafeFunction(n),";")},ensureSafeObject:function(n){return"ensureSafeObject("+n+",text)"},ensureSafeMemberName:function(n){return"ensureSafeMemberName("+n+",text)"},ensureSafeFunction:function(n){return"ensureSafeFunction("+n+",text)"},lazyRecurse:function(n,t,i,r,u,f){var e=this;return function(){e.recurse(n,t,i,r,u,f)}},lazyAssign:function(n,t){var i=this;return function(){i.assign(n,t)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(n){return"\\u"+("0000"+n.charCodeAt(0).toString(16)).slice(-4)},escape:function(n){if(l(n))return"'"+n.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(k(n))return n.toString();if(!0===n)return"true";if(!1===n)return"false";if(null===n)return"null";if("undefined"==typeof n)return"undefined";throw et("esc");},nextId:function(n,t){var i="v"+this.state.nextId++;return n||this.current().vars.push(i+(t?"="+t:"")),i},current:function(){return this.state[this.state.computing]}};es.prototype={compile:function(n,t){var o=this,u=this.astBuilder.ast(n),i,s,f,e;return this.expression=n,this.expensiveChecks=t,d(u,o.$filter),(i=rs(u))&&(s=this.recurse(i)),i=ts(u.body),i&&(f=[],r(i,function(n,t){var i=o.recurse(n);n.input=i;f.push(i);n.watchId=t})),e=[],r(u.body,function(n){e.push(o.recurse(n.expression))}),i=0===u.body.length?function(){}:1===u.body.length?e[0]:function(n,t){var i;return r(e,function(r){i=r(n,t)}),i},s&&(i.assign=function(n,t,i){return s(n,i,t)}),f&&(i.inputs=f),i.literal=us(u),i.constant=u.constant,i},recurse:function(n,t,f){var h,e,o=this,s;if(n.input)return this.inputs(n.input,n.watchId);switch(n.type){case u.Literal:return this.value(n.value,t);case u.UnaryExpression:return e=this.recurse(n.argument),this["unary"+n.operator](e,t);case u.BinaryExpression:return h=this.recurse(n.left),e=this.recurse(n.right),this["binary"+n.operator](h,e,t);case u.LogicalExpression:return h=this.recurse(n.left),e=this.recurse(n.right),this["binary"+n.operator](h,e,t);case u.ConditionalExpression:return this["ternary?:"](this.recurse(n.test),this.recurse(n.alternate),this.recurse(n.consequent),t);case u.Identifier:return gi(n.name,o.expression),o.identifier(n.name,o.expensiveChecks||vu(n.name),t,f,o.expression);case u.MemberExpression:return h=this.recurse(n.object,!1,!!f),n.computed||(gi(n.property.name,o.expression),e=n.property.name),n.computed&&(e=this.recurse(n.property)),n.computed?this.computedMember(h,e,t,f,o.expression):this.nonComputedMember(h,e,o.expensiveChecks,t,f,o.expression);case u.CallExpression:return s=[],r(n.arguments,function(n){s.push(o.recurse(n))}),n.filter&&(e=this.$filter(n.callee.name)),n.filter||(e=this.recurse(n.callee,!0)),n.filter?function(n,r,u,f){for(var h=[],o=0;o<s.length;++o)h.push(s[o](n,r,u,f));return n=e.apply(i,h,f),t?{context:i,name:i,value:n}:n}:function(n,i,r,u){var h=e(n,i,r,u),f,c;if(null!=h.value){for(ii(h.context,o.expression),go(h.value,o.expression),f=[],c=0;c<s.length;++c)f.push(ii(s[c](n,i,r,u),o.expression));f=ii(h.value.apply(h.context,f),o.expression)}return t?{value:f}:f};case u.AssignmentExpression:return h=this.recurse(n.left,!0,1),e=this.recurse(n.right),function(n,i,r,u){var f=h(n,i,r,u);return n=e(n,i,r,u),ii(f.value,o.expression),f.context[f.name]=n,t?{value:n}:n};case u.ArrayExpression:return s=[],r(n.elements,function(n){s.push(o.recurse(n))}),function(n,i,r,u){for(var f=[],e=0;e<s.length;++e)f.push(s[e](n,i,r,u));return t?{value:f}:f};case u.ObjectExpression:return s=[],r(n.properties,function(n){s.push({key:n.key.type===u.Identifier?n.key.name:""+n.key.value,value:o.recurse(n.value)})}),function(n,i,r,u){for(var e={},f=0;f<s.length;++f)e[s[f].key]=s[f].value(n,i,r,u);return t?{value:e}:e};case u.ThisExpression:return function(n){return t?{value:n}:n};case u.NGValueParameter:return function(n,i,r){return t?{value:r}:r}}},"unary+":function(n,t){return function(i,r,u,f){return i=n(i,r,u,f),i=e(i)?+i:0,t?{value:i}:i}},"unary-":function(n,t){return function(i,r,u,f){return i=n(i,r,u,f),i=e(i)?-i:0,t?{value:i}:i}},"unary!":function(n,t){return function(i,r,u,f){return i=!n(i,r,u,f),t?{value:i}:i}},"binary+":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e);return r=t(r,u,f,e),o=ns(o,r),i?{value:o}:o}},"binary-":function(n,t,i){return function(r,u,f,o){var s=n(r,u,f,o);return r=t(r,u,f,o),s=(e(s)?s:0)-(e(r)?r:0),i?{value:s}:s}},"binary*":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)*t(r,u,f,e),i?{value:r}:r}},"binary/":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)/t(r,u,f,e),i?{value:r}:r}},"binary%":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)%t(r,u,f,e),i?{value:r}:r}},"binary===":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)===t(r,u,f,e),i?{value:r}:r}},"binary!==":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)!==t(r,u,f,e),i?{value:r}:r}},"binary==":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)==t(r,u,f,e),i?{value:r}:r}},"binary!=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)!=t(r,u,f,e),i?{value:r}:r}},"binary<":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)<t(r,u,f,e),i?{value:r}:r}},"binary>":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)>t(r,u,f,e),i?{value:r}:r}},"binary<=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)<=t(r,u,f,e),i?{value:r}:r}},"binary>=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)>=t(r,u,f,e),i?{value:r}:r}},"binary&&":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)&&t(r,u,f,e),i?{value:r}:r}},"binary||":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)||t(r,u,f,e),i?{value:r}:r}},"ternary?:":function(n,t,i,r){return function(u,f,e,o){return u=n(u,f,e,o)?t(u,f,e,o):i(u,f,e,o),r?{value:u}:u}},value:function(n,t){return function(){return t?{context:i,name:i,value:n}:n}},identifier:function(n,t,r,u,f){return function(e,o){return e=o&&n in o?o:e,u&&1!==u&&e&&!e[n]&&(e[n]={}),o=e?e[n]:i,t&&ii(o,f),r?{context:e,name:n,value:o}:o}},computedMember:function(n,t,i,r,u){return function(f,e,o,s){var h=n(f,e,o,s),c,l;return null!=h&&(c=t(f,e,o,s),gi(c,u),r&&1!==r&&h&&!h[c]&&(h[c]={}),l=h[c],ii(l,u)),i?{context:h,name:c,value:l}:l}},nonComputedMember:function(n,t,r,u,f,e){return function(o,s,h,c){return o=n(o,s,h,c),f&&1!==f&&o&&!o[t]&&(o[t]={}),s=null!=o?o[t]:i,(r||vu(t))&&ii(s,e),u?{context:o,name:t,value:s}:s}},inputs:function(n,t){return function(i,r,u,f){return f?f[t]:n(i,r,u)}}};rf=function(n,t,i){this.lexer=n;this.$filter=t;this.options=i;this.ast=new u(this.lexer);this.astCompiler=i.csp?new es(this.ast,t):new fs(this.ast,t)};rf.prototype={constructor:rf,parse:function(n){return this.astCompiler.compile(n,this.options.expensiveChecks)}};rt();rt();var py=Object.prototype.valueOf,ui=v("$sce"),at={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},it=v("$compile"),nt=t.createElement("a"),wh=ri(n.location.href);cs.$inject=["$document"];ls.$inject=["$provide"];as.$inject=["$locale"];vs.$inject=["$locale"];var bh=".",wy={yyyy:g("FullYear",4),yy:g("FullYear",2,0,!0),y:g("FullYear",1),MMMM:pu("Month"),MMM:pu("Month",!0),MM:g("Month",2,1),M:g("Month",1,1),dd:g("Date",2),d:g("Date",1),HH:g("Hours",2),H:g("Hours",1),hh:g("Hours",2,-12),h:g("Hours",1,-12),mm:g("Minutes",2),m:g("Minutes",1),ss:g("Seconds",2),s:g("Seconds",1),sss:g("Milliseconds",3),EEEE:pu("Day"),EEE:pu("Day",!0),a:function(n,t){return 12>n.getHours()?t.AMPMS[0]:t.AMPMS[1]},Z:function(n,t,i){return n=-1*i,(0<=n?"+":"")+(yu(Math[0<n?"floor":"ceil"](n/60),2)+yu(Math.abs(n%60),2))},ww:ws(2),w:ws(1),G:df,GG:df,GGG:df,GGGG:function(n,t){return 0>=n.getFullYear()?t.ERANAMES[0]:t.ERANAMES[1]}},by=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,ky=/^\-?\d+$/;bs.$inject=["$locale"];kh=vt(y);dh=vt(bu);ks.$inject=["$parse"];gh=vt({restrict:"E",compile:function(n,t){if(!t.href&&!t.xlinkHref)return function(n,t){if("a"===t[0].nodeName.toLowerCase()){var i="[object SVGAnimatedString]"===ti.call(t.prop("href"))?"xlink:href":"href";t.on("click",function(n){t.attr(i)||n.preventDefault()})}}}});kr={};r(br,function(n,t){function r(n,r,u){n.$watch(u[i],function(n){u.$set(t,!!n)})}if("multiple"!=n){var i=dt("ng-"+t),u=r;"checked"===n&&(u=function(n,t,u){u.ngModel!==u[i]&&r(n,t,u)});kr[i]=function(){return{restrict:"A",priority:100,link:u}}}});r(ee,function(n,t){kr[t]=function(){return{priority:100,link:function(n,i,r){if("ngPattern"===t&&"/"==r.ngPattern.charAt(0)&&(i=r.ngPattern.match(fv))){r.$set("ngPattern",new RegExp(i[1],i[2]));return}n.$watch(r[t],function(n){r.$set(t,n)})}}}});r(["src","srcset","href"],function(n){var t=dt("ng-"+n);kr[t]=function(){return{priority:99,link:function(i,r,u){var e=n,f=n;"href"===n&&"[object SVGAnimatedString]"===ti.call(r.prop("href"))&&(f="xlinkHref",u.$attr[f]="xlink:href",e=null);u.$observe(t,function(t){t?(u.$set(f,t),nr&&e&&r.prop(e,u[f])):"href"===n&&u.$set(f,null)})}}}});dr={$addControl:o,$$renameControl:function(n,t){n.$name=t},$removeControl:o,$setValidity:o,$setDirty:o,$setPristine:o,$setSubmitted:o};ds.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var nc=function(n){return["$timeout","$parse",function(t,r){function u(n){return""===n?r('this[""]').assign:r(n).assign||o}return{name:"form",restrict:n?"EAC":"E",require:["form","^^?form"],controller:ds,compile:function(r,f){r.addClass(ur).addClass(gr);var e=f.name?"name":n&&f.ngForm?"ngForm":!1;return{pre:function(n,r,f,s){var h=s[0],l,c;if(!("action"in f)){l=function(t){n.$apply(function(){h.$commitViewValue();h.$setSubmitted()});t.preventDefault()};r[0].addEventListener("submit",l,!1);r.on("$destroy",function(){t(function(){r[0].removeEventListener("submit",l,!1)},0,!1)})}(s[1]||h.$$parentForm).$addControl(h);c=e?u(h.$name):o;e&&(c(n,h),f.$observe(e,function(t){h.$name!==t&&(c(n,i),h.$$parentForm.$$renameControl(h,t),c=u(h.$name),c(n,h))}));r.on("$destroy",function(){h.$$parentForm.$removeControl(h);c(n,i);p(h,dr)})}}}}}]},dy=nc(),gy=nc(!0),np=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,tp=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,ip=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,rp=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,tc=/^(\d{4})-(\d{2})-(\d{2})$/,ic=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,se=/^(\d{4})-W(\d\d)$/,rc=/^(\d{4})-(\d\d)$/,uc=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,fc={text:function(n,t,i,r,u,f){pr(n,t,i,r,u,f);gf(r)},date:wr("date",tc,wu(tc,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":wr("datetimelocal",ic,wu(ic,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:wr("time",uc,wu(uc,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:wr("week",se,function(n,t){var i;if(ft(n))return n;if(l(n)&&(se.lastIndex=0,i=se.exec(n),i)){var u=+i[1],r=+i[2],f=i=0,e=0,o=0,s=ps(u),r=7*(r-1);return t&&(i=t.getHours(),f=t.getMinutes(),e=t.getSeconds(),o=t.getMilliseconds()),new Date(u,0,s.getDate()+r,i,f,e,o)}return NaN},"yyyy-Www"),month:wr("month",rc,wu(rc,["yyyy","MM"]),"yyyy-MM"),number:function(n,t,r,u,o,s){var h,c;gs(n,t,r,u);pr(n,t,r,u,o,s);u.$$parserName="number";u.$parsers.push(function(n){return u.$isEmpty(n)?null:rp.test(n)?parseFloat(n):i});u.$formatters.push(function(n){if(!u.$isEmpty(n)){if(!k(n))throw nu("numfmt",n);n=n.toString()}return n});(e(r.min)||r.ngMin)&&(u.$validators.min=function(n){return u.$isEmpty(n)||f(h)||n>=h},r.$observe("min",function(n){e(n)&&!k(n)&&(n=parseFloat(n,10));h=k(n)&&!isNaN(n)?n:i;u.$validate()}));(e(r.max)||r.ngMax)&&(u.$validators.max=function(n){return u.$isEmpty(n)||f(c)||n<=c},r.$observe("max",function(n){e(n)&&!k(n)&&(n=parseFloat(n,10));c=k(n)&&!isNaN(n)?n:i;u.$validate()}))},url:function(n,t,i,r,u,f){pr(n,t,i,r,u,f);gf(r);r.$$parserName="url";r.$validators.url=function(n,t){var i=n||t;return r.$isEmpty(i)||tp.test(i)}},email:function(n,t,i,r,u,f){pr(n,t,i,r,u,f);gf(r);r.$$parserName="email";r.$validators.email=function(n,t){var i=n||t;return r.$isEmpty(i)||ip.test(i)}},radio:function(n,t,i,r){f(i.name)&&t.attr("name",++ku);t.on("click",function(n){t[0].checked&&r.$setViewValue(i.value,n&&n.type)});r.$render=function(){t[0].checked=i.value==r.$viewValue};i.$observe("value",r.$render)},checkbox:function(n,t,i,r,u,f,e,o){var s=nh(o,n,"ngTrueValue",i.ngTrueValue,!0),h=nh(o,n,"ngFalseValue",i.ngFalseValue,!1);t.on("click",function(n){r.$setViewValue(t[0].checked,n&&n.type)});r.$render=function(){t[0].checked=r.$viewValue};r.$isEmpty=function(n){return!1===n};r.$formatters.push(function(n){return ot(n,s)});r.$parsers.push(function(n){return n?s:h})},hidden:o,button:o,submit:o,reset:o,file:o},ec=["$browser","$sniffer","$filter","$parse",function(n,t,i,r){return{restrict:"E",require:["?ngModel"],link:{pre:function(u,f,e,o){o[0]&&(fc[y(e.type)]||fc.text)(u,f,e,o[0],t,n,i,r)}}}}],up=/^(true|false|\d+)$/,fp=function(){return{restrict:"A",priority:100,compile:function(n,t){return up.test(t.ngValue)?function(n,t,i){i.$set("value",n.$eval(i.ngValue))}:function(n,t,i){n.$watch(i.ngValue,function(n){i.$set("value",n)})}}}},ep=["$compile",function(n){return{restrict:"AC",compile:function(t){return n.$$addBindingClass(t),function(t,i,r){n.$$addBindingInfo(i,r.ngBind);i=i[0];t.$watch(r.ngBind,function(n){i.textContent=f(n)?"":n})}}}}],op=["$interpolate","$compile",function(n,t){return{compile:function(i){return t.$$addBindingClass(i),function(i,r,u){i=n(r.attr(u.$attr.ngBindTemplate));t.$$addBindingInfo(r,i.expressions);r=r[0];u.$observe("ngBindTemplate",function(n){r.textContent=f(n)?"":n})}}}}],sp=["$sce","$parse","$compile",function(n,t,i){return{restrict:"A",compile:function(r,u){var f=t(u.ngBindHtml),e=t(u.ngBindHtml,function(n){return(n||"").toString()});return i.$$addBindingClass(r),function(t,r,u){i.$$addBindingInfo(r,u.ngBindHtml);t.$watch(e,function(){r.html(n.getTrustedHtml(f(t))||"")})}}}}],hp=vt({restrict:"A",require:"ngModel",link:function(n,t,i,r){r.$viewChangeListeners.push(function(){n.$eval(i.ngChange)})}}),cp=ne("",!0),lp=ne("Odd",0),ap=ne("Even",1),vp=ci({compile:function(n,t){t.$set("ngCloak",i);n.removeClass("ng-cloak")}}),yp=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],oc={},pp={blur:!0,focus:!0};r("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(n){var t=dt("ng-"+n);oc[t]=["$parse","$rootScope",function(i,r){return{restrict:"A",compile:function(u,f){var e=i(f[t],null,!0);return function(t,i){i.on(n,function(i){var u=function(){e(t,{$event:i})};pp[n]&&r.$$phase?t.$evalAsync(u):t.$apply(u)})}}}}]});var wp=["$animate",function(n){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(i,r,u,f,e){var h,s,o;i.$watch(u.ngIf,function(i){i?s||e(function(i,f){s=f;i[i.length++]=t.createComment(" end ngIf: "+u.ngIf+" ");h={clone:i};n.enter(i,r.parent(),r)}):(o&&(o.remove(),o=null),s&&(s.$destroy(),s=null),h&&(o=ru(h.clone),n.leave(o).then(function(){o=null}),h=null))})}}}],bp=["$templateRequest","$anchorScroll","$animate",function(n,t,i){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ut.noop,compile:function(r,u){var o=u.ngInclude||u.src,s=u.onload||"",f=u.autoscroll;return function(r,u,h,c,l){var p=0,a,v,y,w=function(){v&&(v.remove(),v=null);a&&(a.$destroy(),a=null);y&&(i.leave(y).then(function(){v=null}),v=y,y=null)};r.$watch(o,function(o){var v=function(){e(f)&&(!f||r.$eval(f))&&t()},h=++p;o?(n(o,!0).then(function(n){if(h===p){var t=r.$new();c.template=n;n=l(t,function(n){w();i.enter(n,null,u).then(v)});a=t;y=n;a.$emit("$includeContentLoaded",o);r.$eval(s)}},function(){h===p&&(w(),r.$emit("$includeContentError",o))}),r.$emit("$includeContentRequested",o)):(w(),c.template=null)})}}}}],kp=["$compile",function(n){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(i,r,u,f){/SVG/.test(r[0].toString())?(r.empty(),n(ro(f.template,t).childNodes)(i,function(n){r.append(n)},{futureParentElement:r})):(r.html(f.template),n(r.contents())(i))}}}],dp=ci({priority:450,compile:function(){return{pre:function(n,t,i){n.$eval(i.ngInit)}}}}),gp=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(n,t,u,e){var o=t.attr(u.$attr.ngList)||", ",s="false"!==u.ngTrim,h=s?w(o):o;e.$parsers.push(function(n){if(!f(n)){var t=[];return n&&r(n.split(h),function(n){n&&t.push(s?w(n):n)}),t}});e.$formatters.push(function(n){return a(n)?n.join(o):i});e.$isEmpty=function(n){return!n||!n.length}}}},gr="ng-valid",sc="ng-invalid",ur="ng-pristine",uf="ng-dirty",hc="ng-pending",nu=v("ngModel"),nw=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(n,t,u,s,c,l,a,v,y,p){var g;this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=i;this.$validators={};this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=i;this.$name=p(u.name||"",!1)(n);this.$$parentForm=dr;var d=c(u.ngModel),it=d.assign,tt=d,rt=it,nt=null,b,w=this;this.$$setOptions=function(n){if((w.$options=n)&&n.getterSetter){var t=c(u.ngModel+"()"),i=c(u.ngModel+"($$$p)");tt=function(n){var i=d(n);return h(i)&&(i=t(n)),i};rt=function(n){h(d(n))?i(n,{$$$p:w.$modelValue}):it(n,w.$modelValue)}}else if(!d.assign)throw nu("nonassign",u.ngModel,kt(s));};this.$render=o;this.$isEmpty=function(n){return f(n)||""===n||null===n||n!==n};g=0;th({ctrl:this,$element:s,set:function(n,t){n[t]=!0},unset:function(n,t){delete n[t]},$animate:l});this.$setPristine=function(){w.$dirty=!1;w.$pristine=!0;l.removeClass(s,uf);l.addClass(s,ur)};this.$setDirty=function(){w.$dirty=!0;w.$pristine=!1;l.removeClass(s,ur);l.addClass(s,uf);w.$$parentForm.$setDirty()};this.$setUntouched=function(){w.$touched=!1;w.$untouched=!0;l.setClass(s,"ng-untouched","ng-touched")};this.$setTouched=function(){w.$touched=!0;w.$untouched=!1;l.setClass(s,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){a.cancel(nt);w.$viewValue=w.$$lastCommittedViewValue;w.$render()};this.$validate=function(){if(!k(w.$modelValue)||!isNaN(w.$modelValue)){var n=w.$$rawModelValue,t=w.$valid,r=w.$modelValue,u=w.$options&&w.$options.allowInvalid;w.$$runValidators(n,w.$$lastCommittedViewValue,function(f){u||t===f||(w.$modelValue=f?n:i,w.$modelValue!==r&&w.$$writeModelToScope())})}};this.$$runValidators=function(n,t,u){function l(){var i=!0;return r(w.$validators,function(r,u){var f=r(n,t);i=i&&f;e(u,f)}),i?!0:(r(w.$asyncValidators,function(n,t){e(t,null)}),!1)}function a(){var u=[],f=!0;r(w.$asyncValidators,function(r,o){var s=r(n,t);if(!s||!h(s.then))throw nu("$asyncValidators",s);e(o,i);u.push(s.then(function(){e(o,!0)},function(){f=!1;e(o,!1)}))});u.length?y.all(u).then(function(){s(f)},o):s(!0)}function e(n,t){c===g&&w.$setValidity(n,t)}function s(n){c===g&&u(n)}g++;var c=g;(function(){var n=w.$$parserName||"parse";if(f(b))e(n,null);else return b||(r(w.$validators,function(n,t){e(t,null)}),r(w.$asyncValidators,function(n,t){e(t,null)})),e(n,b),b;return!0})()?l()?a():s(!1):s(!1)};this.$commitViewValue=function(){var n=w.$viewValue;a.cancel(nt);(w.$$lastCommittedViewValue!==n||""===n&&w.$$hasNativeValidators)&&(w.$$lastCommittedViewValue=n,w.$pristine&&this.$setDirty(),this.$$parseAndValidate())};this.$$parseAndValidate=function(){var t=w.$$lastCommittedViewValue,r,u,e;if(b=f(t)?i:!0)for(r=0;r<w.$parsers.length;r++)if(t=w.$parsers[r](t),f(t)){b=!1;break}k(w.$modelValue)&&isNaN(w.$modelValue)&&(w.$modelValue=tt(n));u=w.$modelValue;e=w.$options&&w.$options.allowInvalid;w.$$rawModelValue=t;e&&(w.$modelValue=t,w.$modelValue!==u&&w.$$writeModelToScope());w.$$runValidators(t,w.$$lastCommittedViewValue,function(n){e||(w.$modelValue=n?t:i,w.$modelValue!==u&&w.$$writeModelToScope())})};this.$$writeModelToScope=function(){rt(n,w.$modelValue);r(w.$viewChangeListeners,function(n){try{n()}catch(i){t(i)}})};this.$setViewValue=function(n,t){w.$viewValue=n;w.$options&&!w.$options.updateOnDefault||w.$$debounceViewValueCommit(t)};this.$$debounceViewValueCommit=function(t){var r=0,i=w.$options;i&&e(i.debounce)&&(i=i.debounce,k(i)?r=i:k(i[t])?r=i[t]:k(i["default"])&&(r=i["default"]));a.cancel(nt);r?nt=a(function(){w.$commitViewValue()},r):v.$$phase?w.$commitViewValue():n.$apply(function(){w.$commitViewValue()})};n.$watch(function(){var t=tt(n);if(t!==w.$modelValue&&(w.$modelValue===w.$modelValue||t===t)){w.$modelValue=w.$$rawModelValue=t;b=i;for(var u=w.$formatters,f=u.length,r=t;f--;)r=u[f](r);w.$viewValue!==r&&(w.$viewValue=w.$$lastCommittedViewValue=r,w.$render(),w.$$runValidators(t,r,o))}return t})}],tw=["$rootScope",function(n){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:nw,priority:1,compile:function(t){return t.addClass(ur).addClass("ng-untouched").addClass(gr),{pre:function(n,t,i,r){var u=r[0];t=r[1]||u.$$parentForm;u.$$setOptions(r[2]&&r[2].$options);t.$addControl(u);i.$observe("name",function(n){u.$name!==n&&u.$$parentForm.$$renameControl(u,n)});n.$on("$destroy",function(){u.$$parentForm.$removeControl(u)})},post:function(t,i,r,u){var f=u[0];if(f.$options&&f.$options.updateOn)i.on(f.$options.updateOn,function(n){f.$$debounceViewValueCommit(n&&n.type)});i.on("blur",function(){f.$touched||(n.$$phase?t.$evalAsync(f.$setTouched):t.$apply(f.$setTouched))})}}}}}],iw=/(\s+|^)default(\s+|$)/,rw=function(){return{restrict:"A",controller:["$scope","$attrs",function(n,t){var i=this;this.$options=st(n.$eval(t.ngModelOptions));e(this.$options.updateOn)?(this.$options.updateOnDefault=!1,this.$options.updateOn=w(this.$options.updateOn.replace(iw,function(){return i.$options.updateOnDefault=!0," "}))):this.$options.updateOnDefault=!0}]}},uw=ci({terminal:!0,priority:1e3}),fw=v("ngOptions"),ew=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,ow=["$compile","$parse",function(n,i){function f(n,t,r){function w(n,t,i,r,u){this.selectValue=n;this.viewValue=t;this.label=i;this.group=r;this.disabled=u}function l(n){var t,i;if(!s&&fi(n))t=n;else{t=[];for(i in n)n.hasOwnProperty(i)&&"$"!==i.charAt(0)&&t.push(i)}return t}var u=n.match(ew),o,s,f;if(!u)throw fw("iexp",n,kt(t));o=u[5]||u[7];s=u[6];n=/ as /.test(u[0])&&u[1];f=u[9];t=i(u[2]?u[1]:o);var b=n&&i(n)||t,k=f&&i(f),h=f?function(n,t){return k(r,t)}:function(n){return ei(n)},a=function(n,t){return h(n,c(n,t))},v=i(u[2]||u[1]),d=i(u[3]||""),y=i(u[4]||""),p=i(u[8]),e={},c=s?function(n,t){return e[s]=t,e[o]=n,e}:function(n){return e[o]=n,e};return{trackBy:f,getTrackByValue:a,getWatchables:i(p,function(n){var f=[];n=n||[];for(var o=l(n),s=o.length,e=0;e<s;e++){var t=n===o?e:o[e],i=c(n[t],t),t=h(n[t],i);f.push(t);(u[2]||u[1])&&(t=v(r,i),f.push(t));u[4]&&(i=y(r,i),f.push(i))}return f}),getOptions:function(){for(var k=[],e={},o=p(r)||[],s=l(o),g=s.length,u=0;u<g;u++){var t=o===s?u:s[u],n=c(o[t],t),i=b(r,n),t=h(i,n),nt=v(r,n),tt=d(r,n),n=y(r,n),i=new w(t,i,nt,tt,n);k.push(i);e[t]=i}return{items:k,selectValueMap:e,getOptionFromViewValue:function(n){return e[a(n)]},getViewValueFromOption:function(n){return f?ut.copy(n.viewValue):n.viewValue}}}}}var u=t.createElement("option"),e=t.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","?ngModel"],link:function(t,i,o,h){function tt(n,t){n.element=t;t.disabled=n.disabled;n.value!==t.value&&(t.value=n.selectValue);n.label!==t.label&&(t.label=n.label,t.textContent=n.label)}function g(n,t,i,r){return t&&y(t.nodeName)===i?i=t:(i=r.cloneNode(!1),t?n.insertBefore(i,t):n.appendChild(i)),i}function it(n){for(var t;n;)t=n.nextSibling,lf(n),n=t}function ut(n){var t=c&&c[0],i=v&&v[0];if(t||i)for(;n&&(n===t||n===i);)n=n.nextSibling;return n}function rt(){var f=p&&k.readValue(),t,n,r;p=b.getOptions();t={};n=i[0].firstChild;w&&i.prepend(c);n=ut(n);p.items.forEach(function(r){var f,o;r.group?(f=t[r.group],f||(f=g(i[0],n,"optgroup",e),n=f.nextSibling,f.label=r.group,f=t[r.group]={groupElement:f,currentOptionElement:f.firstChild}),o=g(f.groupElement,f.currentOptionElement,"option",u),tt(r,o),f.currentOptionElement=o.nextSibling):(o=g(i[0],n,"option",u),tt(r,o),n=o.nextSibling)});Object.keys(t).forEach(function(n){it(t[n].currentOptionElement)});it(n);l.$render();l.$isEmpty(f)||(r=k.readValue(),(b.trackBy?ot(f,r):f===r)||(l.$setViewValue(r),l.$render()))}var l=h[1],k,w,v,p,b;if(l){k=h[0];h=o.multiple;for(var c,d=0,nt=i.children(),ft=nt.length;d<ft;d++)if(""===nt[d].value){c=nt.eq(d);break}w=!!c;v=s(u.cloneNode(!1));v.val("?");b=f(o.ngOptions,i,t);h?(l.$isEmpty=function(n){return!n||0===n.length},k.writeValue=function(n){p.items.forEach(function(n){n.element.selected=!1});n&&n.forEach(function(n){(n=p.getOptionFromViewValue(n))&&!n.disabled&&(n.element.selected=!0)})},k.readValue=function(){var t=i.val()||[],n=[];return r(t,function(t){(t=p.selectValueMap[t])&&!t.disabled&&n.push(p.getViewValueFromOption(t))}),n},b.trackBy&&t.$watchCollection(function(){if(a(l.$viewValue))return l.$viewValue.map(function(n){return b.getTrackByValue(n)})},function(){l.$render()})):(k.writeValue=function(n){var t=p.getOptionFromViewValue(n);t&&!t.disabled?i[0].value!==t.selectValue&&(v.remove(),w||c.remove(),i[0].value=t.selectValue,t.element.selected=!0,t.element.setAttribute("selected","selected")):null===n||w?(v.remove(),w||i.prepend(c),i.val(""),c.prop("selected",!0),c.attr("selected",!0)):(w||c.remove(),i.prepend(v),i.val("?"),v.prop("selected",!0),v.attr("selected",!0))},k.readValue=function(){var n=p.selectValueMap[i.val()];return n&&!n.disabled?(w||c.remove(),v.remove(),p.getViewValueFromOption(n)):null},b.trackBy&&t.$watch(function(){return b.getTrackByValue(l.$viewValue)},function(){l.$render()}));w?(c.remove(),n(c)(t),c.removeClass("ng-scope")):c=s(u.cloneNode(!1));rt();t.$watchCollection(b.getWatchables,rt)}}}}],sw=["$locale","$interpolate","$log",function(n,t,i){var u=/{}/g,e=/^when(Minus)?(.+)$/;return{link:function(s,h,c){function p(n){h.text(n||"")}var w=c.count,b=c.$attr.when&&h.attr(c.$attr.when),d=c.offset||0,a=s.$eval(b)||{},g={},nt=t.startSymbol(),tt=t.endSymbol(),it=nt+w+"-"+d+tt,v=ut.noop,l;r(c,function(n,t){var i=e.exec(t);i&&(i=(i[1]?"-":"")+y(i[2]),a[i]=h.attr(c.$attr[t]))});r(a,function(n,i){g[i]=t(n.replace(u,it))});s.$watch(w,function(t){var r=parseFloat(t),u=isNaN(r);u||r in a||(r=n.pluralCat(r-d));r===l||u&&k(l)&&isNaN(l)||(v(),u=g[r],f(u)?(null!=t&&i.debug("ngPluralize: no rule defined for '"+r+"' in "+b),v=o,p()):v=s.$watch(u,p),l=r)})}}}],hw=["$parse","$animate",function(n,u){var f=v("ngRepeat"),e=function(n,t,i,r,u,f,e){n[i]=r;u&&(n[u]=f);n.$index=t;n.$first=0===t;n.$last=t===e-1;n.$middle=!(n.$first||n.$last);n.$odd=!(n.$even=0==(t&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(o,h){var y=h.ngRepeat,tt=t.createComment(" end ngRepeat: "+y+" "),c=y.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/),p,a,w,b,g,nt,v;if(!c)throw f("iexp",y);var k=c[1],it=c[2],l=c[3],d=c[4],c=k.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/);if(!c)throw f("iidexp",k);if(p=c[3]||c[1],a=c[2],l&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(l)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(l)))throw f("badident",l);return v={$id:ei},d?w=n(d):(g=function(n,t){return ei(t)},nt=function(n){return n}),function(n,t,o,h,c){w&&(b=function(t,i,r){return a&&(v[a]=t),v[p]=i,v.$index=r,w(n,v)});var k=rt();n.$watchCollection(it,function(o){var h,st,ht=t[0],it,ct=rt(),et,ft,ot,w,ut,v,d;if(l&&(n[l]=o),fi(o))ut=o,st=b||g;else for(d in st=b||nt,ut=[],o)gt.call(o,d)&&"$"!==d.charAt(0)&&ut.push(d);for(et=ut.length,d=Array(et),h=0;h<et;h++)if(ft=o===ut?h:ut[h],ot=o[ft],w=st(ft,ot,h),k[w])v=k[w],delete k[w],ct[w]=v,d[h]=v;else{if(ct[w])throw r(d,function(n){n&&n.scope&&(k[n.id]=n)}),f("dupes",y,w,ot);d[h]={id:w,scope:i,clone:i};ct[w]=!0}for(it in k){if(v=k[it],w=ru(v.clone),u.leave(w),w[0].parentNode)for(h=0,st=w.length;h<st;h++)w[h].$$NG_REMOVED=!0;v.scope.$destroy()}for(h=0;h<et;h++)if(ft=o===ut?h:ut[h],ot=o[ft],v=d[h],v.scope){it=ht;do it=it.nextSibling;while(it&&it.$$NG_REMOVED);v.clone[0]!=it&&u.move(ru(v.clone),null,s(ht));ht=v.clone[v.clone.length-1];e(v.scope,h,p,ot,a,ft,et)}else c(function(n,t){v.scope=t;var i=tt.cloneNode(!1);n[n.length++]=i;u.enter(n,null,s(ht));ht=i;v.clone=n;ct[v.id]=v;e(v.scope,h,p,ot,a,ft,et)});k=ct})}}}}],cw=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngShow,function(t){n[t?"removeClass":"addClass"](i,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],lw=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngHide,function(t){n[t?"addClass":"removeClass"](i,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],aw=ci(function(n,t,i){n.$watch(i.ngStyle,function(n,i){i&&n!==i&&r(i,function(n,i){t.css(i,"")});n&&t.css(n)},!0)}),vw=["$animate",function(n){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(i,u,f,e){var c=[],h=[],o=[],s=[],l=function(n,t){return function(){n.splice(t,1)}};i.$watch(f.ngSwitch||f.on,function(i){for(var a,u=0,f=o.length;u<f;++u)n.cancel(o[u]);for(u=o.length=0,f=s.length;u<f;++u)a=ru(h[u].clone),s[u].$destroy(),(o[u]=n.leave(a)).then(l(o,u));h.length=0;s.length=0;(c=e.cases["!"+i]||e.cases["?"])&&r(c,function(i){i.transclude(function(r,u){s.push(u);var f=i.element;r[r.length++]=t.createComment(" end ngSwitchWhen: ");h.push({clone:r});n.enter(r,f.parent(),f)})})})}}}],yw=ci({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(n,t,i,r,u){r.cases["!"+i.ngSwitchWhen]=r.cases["!"+i.ngSwitchWhen]||[];r.cases["!"+i.ngSwitchWhen].push({transclude:u,element:t})}}),pw=ci({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(n,t,i,r,u){r.cases["?"]=r.cases["?"]||[];r.cases["?"].push({transclude:u,element:t})}}),ww=ci({restrict:"EAC",link:function(n,t,i,r,u){if(!u)throw v("ngTransclude")("orphan",kt(t));u(function(n){t.empty();t.append(n)})}}),bw=["$templateCache",function(n){return{restrict:"E",terminal:!0,compile:function(t,i){"text/ng-template"==i.type&&n.put(i.id,t[0].text)}}}],kw={$setViewValue:o,$render:o},dw=["$element","$scope","$attrs",function(n,r){var u=this,f=new di;u.ngModelCtrl=kw;u.unknownOption=s(t.createElement("option"));u.renderUnknownOption=function(t){t="? "+ei(t)+" ?";u.unknownOption.val(t);n.prepend(u.unknownOption);n.val(t)};r.$on("$destroy",function(){u.renderUnknownOption=o});u.removeUnknownOption=function(){u.unknownOption.parent()&&u.unknownOption.remove()};u.readValue=function(){return u.removeUnknownOption(),n.val()};u.writeValue=function(t){u.hasOption(t)?(u.removeUnknownOption(),n.val(t),""===t&&u.emptyOption.prop("selected",!0)):null==t&&u.emptyOption?(u.removeUnknownOption(),n.val("")):u.renderUnknownOption(t)};u.addOption=function(n,t){ki(n,'"option value"');""===n&&(u.emptyOption=t);var i=f.get(n)||0;f.put(n,i+1)};u.removeOption=function(n){var t=f.get(n);t&&(1===t?(f.remove(n),""===n&&(u.emptyOption=i)):f.put(n,t-1))};u.hasOption=function(n){return!!f.get(n)}}],gw=function(){return{restrict:"E",require:["select","?ngModel"],controller:dw,link:function(n,t,i,u){var f=u[1],o,h,s;if(f){o=u[0];o.ngModelCtrl=f;f.$render=function(){o.writeValue(f.$viewValue)};t.on("change",function(){n.$apply(function(){f.$setViewValue(o.readValue())})});i.multiple&&(o.readValue=function(){var n=[];return r(t.find("option"),function(t){t.selected&&n.push(t.value)}),n},o.writeValue=function(n){var i=new di(n);r(t.find("option"),function(n){n.selected=e(i.get(n.value))})},s=NaN,n.$watch(function(){s!==f.$viewValue||ot(h,f.$viewValue)||(h=ht(f.$viewValue),f.$render());s=f.$viewValue}),f.$isEmpty=function(n){return!n||0===n.length})}}}},nb=["$interpolate",function(n){return{restrict:"E",priority:100,compile:function(t,i){var u,r;return e(i.value)?u=n(i.value,!0):(r=n(t.text(),!0),r||i.$set("value",t.text())),function(n,t,i){function o(n){f.addOption(n,t);f.ngModelCtrl.$render();t[0].hasAttribute("selected")&&(t[0].selected=!0)}var h=t.parent(),f=h.data("$selectController")||h.parent().data("$selectController"),s;if(f&&f.ngModelCtrl){u?i.$observe("value",function(n){e(s)&&f.removeOption(s);s=n;o(n)}):r?n.$watch(r,function(n,t){i.$set("value",n);t!==n&&f.removeOption(t);o(n)}):o(i.value);t.on("$destroy",function(){f.removeOption(i.value);f.ngModelCtrl.$render()})}}}}}],tb=vt({restrict:"E",terminal:!1}),cc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){r&&(i.required=!0,r.$validators.required=function(n,t){return!i.required||!r.$isEmpty(t)},i.$observe("required",function(){r.$validate()}))}}},lc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,r,u){if(u){var e,o=r.ngPattern||r.pattern;r.$observe("pattern",function(n){if(l(n)&&0<n.length&&(n=new RegExp("^"+n+"$")),n&&!n.test)throw v("ngPattern")("noregexp",o,n,kt(t));e=n||i;u.$validate()});u.$validators.pattern=function(n,t){return u.$isEmpty(t)||f(e)||e.test(t)}}}}},ac=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=-1;i.$observe("maxlength",function(n){n=tt(n);u=isNaN(n)?-1:n;r.$validate()});r.$validators.maxlength=function(n,t){return 0>u||r.$isEmpty(t)||t.length<=u}}}}},vc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=0;i.$observe("minlength",function(n){u=tt(n)||0;r.$validate()});r.$validators.minlength=function(n,t){return r.$isEmpty(t)||t.length>=u}}}}};n.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):(tl(),rl(ut),ut.module("ngLocale",[],["$provide",function(n){function t(n){n+="";var t=n.indexOf(".");return-1==t?0:n.length-t-1}n.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a",short:"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-¤",negSuf:"",posPre:"¤",posSuf:""}]},id:"en-us",pluralCat:function(n,r){var f=n|0,u=r;return i===u&&(u=Math.min(t(n),3)),Math.pow(10,u),1==f&&0==u?"one":"other"}})}]),s(t).ready(function(){dc(t,ge)}))}(window,document);window.angular.$$csp().noInlineStyle||window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}<\/style>');angular.module("ui.ace",[]).constant("uiAceConfig",{}).directive("uiAce",["uiAceConfig",function(n){if(angular.isUndefined(window.ace))throw new Error("ui-ace need ace to work... (o rly?)");var t=function(n,t,i){var f,r,u;if(angular.isDefined(i.workerPath)&&(f=window.ace.require("ace/config"),f.set("basePath",i.workerPath)),angular.isDefined(i.require)&&i.require.forEach(function(n){window.ace.require(n)}),angular.isDefined(i.showGutter)&&n.renderer.setShowGutter(i.showGutter),angular.isDefined(i.useWrapMode)&&t.setUseWrapMode(i.useWrapMode),angular.isDefined(i.showInvisibles)&&n.renderer.setShowInvisibles(i.showInvisibles),angular.isDefined(i.showIndentGuides)&&n.renderer.setDisplayIndentGuides(i.showIndentGuides),angular.isDefined(i.useSoftTabs)&&t.setUseSoftTabs(i.useSoftTabs),angular.isDefined(i.showPrintMargin)&&n.setShowPrintMargin(i.showPrintMargin),angular.isDefined(i.disableSearch)&&i.disableSearch&&n.commands.addCommands([{name:"unfind",bindKey:{win:"Ctrl-F",mac:"Command-F"},exec:function(){return!1},readOnly:!0}]),angular.isString(i.theme)&&n.setTheme("ace/theme/"+i.theme),angular.isString(i.mode)&&t.setMode("ace/mode/"+i.mode),angular.isDefined(i.firstLineNumber)&&(angular.isNumber(i.firstLineNumber)?t.setOption("firstLineNumber",i.firstLineNumber):angular.isFunction(i.firstLineNumber)&&t.setOption("firstLineNumber",i.firstLineNumber())),angular.isDefined(i.advanced))for(r in i.advanced)u={name:r,value:i.advanced[r]},n.setOption(u.name,u.value);if(angular.isDefined(i.rendererOptions))for(r in i.rendererOptions)u={name:r,value:i.rendererOptions[r]},n.renderer.setOption(u.name,u.value);angular.forEach(i.callbacks,function(t){angular.isFunction(t)&&t(n)})};return{restrict:"EA",require:"?ngModel",link:function(i,r,u,f){var s=n.ace||{},o=angular.extend({},s,i.$eval(u.uiAce)),e=window.ace.edit(r[0]),h=e.getSession(),c,l,v=function(){var n=arguments[0],t=Array.prototype.slice.call(arguments,1);angular.isDefined(n)&&i.$evalAsync(function(){if(angular.isFunction(n))n(t);else throw new Error("ui-ace use a function as callback.");})},y={onChange:function(n){return function(t){var r=h.getValue();!f||r===f.$viewValue||i.$$phase||i.$root.$$phase||i.$evalAsync(function(){f.$setViewValue(r)});v(n,t,e)}},onBlur:function(n){return function(){v(n,e)}}},a;u.$observe("readonly",function(n){e.setReadOnly(!!n||n==="")});f&&(f.$formatters.push(function(n){if(angular.isUndefined(n)||n===null)return"";if(angular.isObject(n)||angular.isArray(n))throw new Error("ui-ace cannot use an object or an array as a model");return n}),f.$render=function(){h.setValue(f.$viewValue)});a=function(n,r){if(n!==r){o=angular.extend({},s,i.$eval(u.uiAce));o.callbacks=[o.onLoad];o.onLoad!==s.onLoad&&o.callbacks.unshift(s.onLoad);h.removeListener("change",c);c=y.onChange(o.onChange);h.on("change",c);e.removeListener("blur",l);l=y.onBlur(o.onBlur);e.on("blur",l);t(e,h,o)}};i.$watch(u.uiAce,a,!0);a(s);r.on("$destroy",function(){e.session.$stopWorker();e.destroy()});i.$watch(function(){return[r[0].offsetWidth,r[0].offsetHeight]},function(){e.resize();e.renderer.updateFull()},!0)}}}]);!function(n){function t(r){if(i[r])return i[r].exports;var u=i[r]={exports:{},id:r,loaded:!1};return n[r].call(u.exports,u,u.exports,t),u.loaded=!0,u.exports}var i={};return t.m=n,t.c=i,t.p="",t(0)}([function(n,t,i){i(12)},function(n){n.exports=d3},function(n,t,i){var r;r=i(1);angular.module("ad3").directive("d3Arc",function(){var n;return n=function(){return{x:0,y:1,innerRadius:0,labelRadius:0,transition:"cubic-in-out",transitionDuration:1e3,value:"value",label:"label"}},{restrict:"E",require:"^d3Chart",link:function(t,i,u,f){var s,h,o,v,l,c,e,a;return e=angular.extend(n(),u),v=f.getChart(),l=parseFloat(e.innerRadius),c=parseFloat(e.labelRadius),o=null,h=null,s=null,a=function(n){var i,u,a,t;return o||(o=f.getChart().append("g").attr("class","arc")),h||(h=o.append("path")),s||(s=o.append("text").attr("class","arc-label").attr("dy","0.35em").style("text-anchor","middle")),null!=n&&0!==n.length?(t=Math.min(f.innerWidth,f.innerHeight)/2,o.attr("transform","translate("+t+","+t+")"),i=r.svg.arc().outerRadius(t).innerRadius(t*l).startAngle(0).endAngle(function(n){return n/50*Math.PI}),u=function(n){var t;return null==this._current&&(this._current=0),t=r.interpolate(this._current,n),this._current=n,function(n){return i(t(n))}},a=r.svg.arc().outerRadius(t*c).innerRadius(t*c),h.datum(n[e.value]).transition().ease(e.transition).duration(e.transitionDuration).attrTween("d",u),s.text(n[e.label])):void 0},f.registerElement(a,e.order)}}})},function(){angular.module("ad3").directive("d3Area",function(){var n;return n=function(){return{}},{restrict:"E",require:"^d3Chart",scope:{columns:"="},link:function(t,i,r,u){var s,h,c,f,l,o,e;return f=angular.extend(n(),r),o=u.getScale(f.xscale||f.x),e=u.getScale(f.yscale||f.y),f.vertical?(s=d3.svg.area().y(function(n){return o(n.x)}).x0(0).x1(function(n){return e(n.y)}),c=d3.svg.area().y(function(n){return o(n.x)}).x0(function(n){return e(n.y0)}).x1(function(n){return e(n.y+n.y0)})):(s=d3.svg.area().x(function(n){return o(n.x)}).y0(function(){return u.innerHeight}).y1(function(n){return e(n.y)}),c=d3.svg.area().x(function(n){return o(n.x)}).y0(function(n){return e(n.y0)}).y1(function(n){return e(n.y+n.y0)})),h=null,l=function(n){var r,i,a,e,o,v,l;return h||(h=u.getChart().append("g").attr("class","area")),null!=n&&0!==n.length&&(null!=f.y&&(i=f.y),null!=t.columns&&(i=t.columns),null!=i&&(angular.isString(i)&&(i=i.split(",").map(function(n){return n.trim()})),0!==i.length))?(a=function(){var t,u,r;for(r=[],t=0,u=i.length;u>t;t++)e=i[t],r.push({name:e,values:function(){var t,r,i;for(i=[],t=0,r=n.length;r>t;t++)l=n[t],i.push({x:l[f.x],y:l[e]});return i}()});return r}(),o=d3.layout.stack().values(function(n){return n.values}),null!=f.offset&&o.offset(f.offset),v=o(a),r=h.selectAll("path.area").data(v),r.enter().append("path"),r.attr("class",function(n){return"area "+n.name}).transition().duration(500).attr("d",function(n,t){return 0===t?s(n.values):c(n.values)}),r.exit().attr("d",function(n,t){return 0===t?s(n.values):c(n.values)}).remove()):void 0},t.$watch("columns",u.redraw,!0),u.registerElement(l,f.order)}}})},function(){angular.module("ad3").directive("d3Axis",["d3locale",function(){var n;return n=function(){return{orientation:"bottom",ticks:"5",extent:!1}},{priority:1,restrict:"E",require:"^d3Chart",scope:{customTimeFormat:"=",filter:"=",tickValues:"="},link:function(t,i,r,u){var l,e,a,v,s,h,f,y,p,w,o,c,b;return f=angular.extend(n(),r),p=function(){return"top"===f.orientation||"bottom"===f.orientation?null!=f.reverse?[u.innerWidth,0]:[0,u.innerWidth]:null!=f.reverse?[0,u.innerHeight]:[u.innerHeight,0]},c=function(){return"bottom"===f.orientation?"translate(0, "+u.innerHeight+")":"top"===f.orientation?"translate(0, 0)":"left"===f.orientation?"translate(0, 0)":"right"===f.orientation?"translate("+u.innerWidth+", 0)":void 0},o="time"===f.scale?d3.time.scale():f.scale?d3.scale[f.scale]():d3.scale.linear(),v=function(){var n,i,r;return n=d3.svg.axis().scale(o).orient(f.orientation),f.ticks&&n.ticks(f.ticks),f.timeScale&&n.ticks(d3.time[f.timeScale],f.timeInterval),t.tickValues&&n.tickValues(t.tickValues),f.tickSize&&(r=f.tickSize.split(","),n.innerTickSize(r[0]),n.outerTickSize(r[1])),null!=t.customTimeFormat&&(i=d3.time.format.multi(angular.copy(t.customTimeFormat)),n.tickFormat(function(n){return i(new Date(n))})),null!=f.timeFormat?(i=d3.time.format(f.timeFormat),n.tickFormat(function(n){return i(new Date(n))})):null!=f.format&&(i=d3.format(f.format),n.tickFormat(i)),n},y=function(n){return"bottom"===f.orientation?n.attr("x",""+u.innerWidth/2).attr("dy",""+u.margin.bottom).attr("style","text-anchor: middle;"):"top"===f.orientation?n.attr("x",""+u.innerWidth/2).attr("dy",""+-u.margin.top).attr("style","text-anchor: middle;"):"left"===f.orientation?n.attr("x","-"+u.innerHeight/2).attr("dy",""+(-u.margin.left+18)).attr("style","text-anchor: middle;").attr("transform","rotate(-90)"):"right"===f.orientation?n.attr("x",""+u.innerHeight/2).attr("dy",""+(-u.margin.right+18)).attr("style","text-anchor: middle;").attr("transform","rotate(90)"):void 0},a=function(n,t){return"bottom"===f.orientation?n.call(t.tickSize(u.innerHeight,0,0).tickFormat("")):"top"===f.orientation?n.attr("transform","translate(0, "+u.innerHeight+")").call(t.tickSize(u.innerHeight,0,0).tickFormat("")):"left"===f.orientation?n.attr("transform","translate("+u.innerWidth+", 0)").call(t.tickSize(u.innerWidth,0,0).tickFormat("")):"right"===f.orientation?n.call(t.tickSize(u.innerWidth,0,0).tickFormat("")):void 0},l=function(n){var i,r,t;return t=n.selectAll(".tick text"),f.tickDy&&t.attr("dy",f.tickDy),f.tickDx&&t.attr("dx",f.tickDx),f.tickAnchor&&t.style("text-anchor",f.tickAnchor),r=d3.select(t[0].slice(-1)[0]),f.lastTickDy&&r.attr("dy",f.lastTickDy),f.lastTickDx&&r.attr("dx",f.lastTickDx),f.lastTickAnchor&&r.style("text-anchor",f.lastTickAnchor),i=d3.select(t[0][0]),f.firstTickDy&&i.attr("dy",f.firstTickDy),f.firstTickDx&&i.attr("dx",f.firstTickDx),f.listTickAnchor?i.style("text-anchor",f.firstTickAnchor):void 0},e=null,s=null,h=null,w=function(n){var t,i;if(null!=n&&0!==n.length)return e||(e=u.getChart().append("g").attr("class","axis axis-"+f.orientation+" axis-"+f.name).attr("transform",c())),f.label&&(h||(h=e.append("text").attr("class","axis-label").text(f.label))),f.grid&&(s||(s=u.getChart().append("g").attr("class","axis-grid axis-grid-"+f.name))),t=v(),h&&y(h.transition().duration(500)),e.transition().duration(500).attr("transform",c()).call(t).selectAll("tick text").tween("attr.dx",null).tween("attr.dy",null).tween("style.text-anchor",null),null!=s&&a(s.transition().duration(500),t),i=e.selectAll(".tick text"),e.call(l)},b=function(n){var r,i;if(null!=n&&0!==n.length)return o.range(p()),f.domain,i=t.filter?t.filter(n):function(){var t,u,i;for(i=[],t=0,u=n.length;u>t;t++)r=n[t],i.push(r[f.name]);return i}(),f.extent?o.domain(d3.extent(i)):o.domain([0,d3.max(i)])},u.addScale(f.name,o,b),u.registerElement(w,f.order),t.$watchCollection("tickValues",u.redraw),t.$watchCollection("customTimeFormat",u.redraw),t.$watch("filter",u.redraw),t.$watch("tickValues",u.redraw)}}}])},function(){angular.module("ad3").directive("d3Bars",function(){var n;return n=function(){return{x:0,y:1,width:15}},{restrict:"E",require:"^d3Chart",link:function(t,i,r,u){var s,l,a,f,c,e,h,o;return f=angular.extend(n(),r),h=u.getScale(f.xscale||f.x),o=u.getScale(f.yscale||f.y),l=u.getChart(),a=u.innerHeight,e=f.width,s=null,c=function(n){var t;return s||(s=u.getChart().append("g").attr("class","bars")),null!=n&&0!==n.length?(t=s.selectAll("rect.bar").data(n),t.exit().transition().duration(500).attr("y",function(){return u.innerHeight}).attr("height",0).remove(),t.transition().duration(500).attr("x",function(n){return h(n[f.x])-e/2}).attr("y",function(n){return o(n[f.y])}).attr("height",function(n){return u.innerHeight-o(n[f.y])}).attr("width",e),t.enter().append("rect").attr("class",function(n,t){return"bar bar-"+t}).attr("x",function(n){return h(n[f.x])-e/2}).attr("width",e).attr("y",function(){return u.innerHeight}).attr("height",0).transition().duration(500).attr("y",function(n){return o(n[f.y])}).attr("height",function(n){return u.innerHeight-o(n[f.y])})):void 0},u.registerElement(c,f.order)}}})},function(){angular.module("ad3").directive("d3Chart",function(){return{restrict:"EA",scope:{margin:"=",data:"="},controller:["$scope","$element","$attrs","$window","$timeout",function(n,t,i,r,u){var a,e,s,h,f,v,c,o,l;f=n.scales={};s=n.elements=[];this.margin=n.margin||{top:10,right:10,bottom:10,left:10};c=d3.select(t[0]).append("svg").attr("class","d3").attr("width","100%").attr("height","100%");l=function(){return t[0].offsetWidth};h=function(){return t[0].offsetHeight};a=c.append("g").attr("transform","translate("+this.margin.left+","+this.margin.top+")");this.getSvg=function(){return c};this.getChart=function(){return a};this.addScale=function(n,t,i){return f[n]={scale:t,update:i}};this.getScale=function(n){return f[n].scale};this.registerElement=function(n,t){return null==t&&(t=0),s.push({redraw:n,order:Number(t)})};o=function(n){return function(){if(n.width!==l()||n.height!==h())return(n.width=l(),n.height=h(),n.innerWidth=n.width-n.margin.left-n.margin.right,n.innerHeight=n.height-n.margin.top-n.margin.bottom,n.redraw())}}(this);v=function(n,t){return n.order-t.order};e=null;this.redraw=function(t){return function(){if(!e&&0!==t.width&&0!==t.height)return e=u(function(){var i,o,t,h,c,r,u,l;e=null;i=n.data;for(c in f)l=f[c],l.update(i);for(r=s.sort(v),u=[],t=0,h=r.length;h>t;t++)o=r[t],u.push(o.redraw(i));return u},i.updateInterval||200)}}(this);r.addEventListener("resize",o);"deep"===i.watch?n.$watch("data",this.redraw,!0):n.$watch("data",this.redraw);n.$watch(o);o()}]}})},function(){angular.module("ad3").directive("d3Data",["d3Service",function(n){return{restrict:"E",scope:{accessor:"=",callback:"=",data:"="},link:function(t,i,r){var u;return u=r.src,n.csv(u,t.accessor,t.callback).then(function(n){return t.data=n},function(){throw"Error loading CSV via D3";})}}}])},function(){angular.module("ad3").directive("d3Gradient",function(){var n;return n={transition:500},{restrict:"E",require:"^d3Chart",link:function(t,i,r,u){var f,e,o;return e=u.getSvg(),f=e.insert("defs","g").append("linearGradient").attr("id",r.ref),["x1","x2","y1","y2"].forEach(function(n){return r.$observe(n,function(t){return f.attr(n,t)})}),o=n.transition,r.$observe("transition",function(n){if(null!=n)return o=n}),t.$watch(r.stops,function(n){if(null!=n)return(n=f.selectAll("stop").data(n),n.enter().append("stop"),n.attr("offset",function(n){return n.offset}).attr("stop-color",function(n){return n.color}).attr("stop-opacity",function(n){return null!=n.opacity?n.opacity:1}),n.exit().remove())})}}})},function(){angular.module("ad3").directive("d3Include",function(){return{restrict:"E",require:"^d3Chart",link:function(n,t,i,r){var u,f;return u=r.getChart(),f=u.append("g").attr("class","includes"),f.html(t.html())}}})},function(){angular.module("ad3").directive("d3Line",function(){var n;return n=function(){return{x:0,y:1}},{restrict:"E",require:"^d3Chart",link:function(t,i,r,u){var o,e,f,s,h,c;return f=angular.extend(n(),r),h=u.getScale(f.xscale||f.x),c=u.getScale(f.yscale||f.y),o=d3.svg.line().x(function(n){return h(n[f.x])}).y(function(n){return c(n[f.y])}),e=null,s=function(n){return e||(e=u.getChart().append("path").attr("class","line line-"+(f.name||f.y)).style("fill","none").style("stroke",f.stroke)),null!=n&&0!==n.length?e.datum(n).transition().duration(500).attr("d",o):void 0},u.registerElement(s,f.order)}}})},function(){angular.module("ad3").directive("d3Pie",function(){var n;return n=function(){return{x:0,y:1,innerRadius:0,labelRadius:.7,transition:"cubic-in-out",transitionDuration:800,minOffset:12,value:"value"}},{restrict:"E",require:"^d3Chart",link:function(t,i,r,u){var a,e,v,s,c,o,f,h,l;return f=angular.extend(n(),r),v=u.getChart(),c=parseFloat(f.innerRadius),o=parseFloat(f.labelRadius),r.colors&&(s=function(){switch(r.colors){case"category20":return d3.scale.category20();case"category20b":return d3.scale.category20b();case"category20c":return d3.scale.category20c()}}()),h=d3.layout.pie().sort(null).value(function(n){return n[f.value]}),a=null,e=null,l=function(n){var y,p,w,l,b,a,t,i,v;return e||(e=u.getChart().append("g").attr("class","pie")),null!=n&&0!==n.length?(i=Math.min(u.innerWidth,u.innerHeight)/2,e.attr("transform","translate("+i+","+i+")"),y=d3.svg.arc().outerRadius(i).innerRadius(i*c),p=function(n){var t;return t=d3.interpolate(this._current,n),this._current=t(0),function(n){return y(t(n))}},b=d3.svg.arc().outerRadius(i*o).innerRadius(i*o),v=e.selectAll(".pie").data(h(n)),v.enter().append("path").attr("class",function(n,t){return"pie pie-"+t}).attr("d",y).each(function(n){return this._current=n}),r.colors&&v.style("fill",function(n,t){return s?s(t):n[r.color]}),v.exit().remove(),v.transition().ease(f.transition).duration(f.transitionDuration).attrTween("d",p),f.label?(t=null,a=+f.minOffset,w=function(n){var h,c,l,v,s,y,e,u,r;return e=b.centroid(n),f.avoidCollisions&&(u=[e[0],e[1]],this._position&&(u[0]-=this._position[0],u[1]-=this._position[1]),r=_.transform(this.getBoundingClientRect(),function(n,t,i){switch(i){case"left":return n[i]=t-a+u[0];case"top":return n[i]=t-a+u[1];case"right":return n[i]=t+a+u[0];case"bottom":return n[i]=t+a+u[1]}}),t&&!(r.right<t.left||r.left>t.right||r.bottom<t.top||r.top>t.bottom)&&(l=r.left+(r.right-r.left)/2,v=r.top+(r.bottom-r.top)/2,h=t.left+(t.right-t.left)/2,c=t.top+(t.bottom-t.top)/2,s=Math.sqrt(Math.pow(l-h,2)+Math.pow(v-c,2))/2,y=d3.svg.arc().outerRadius(i*o+s).innerRadius(i*o+s),e=y.centroid(n)),this._position=e,t=r),"translate("+e+")"},l=e.selectAll("text").data(h(n)),l.enter().append("text").style("text-anchor","middle").attr("class",function(n,t){return"pie-label pie-label-"+t}),l.exit().remove(),l.text(function(t,i){return n[i][f.label]}),l.transition().ease(f.transition).duration(f.transitionDuration).attr("transform",w)):void 0):void 0},u.registerElement(l,f.order)}}})},function(n,t,i){var r;r=i(15);r.module("ad3",[]);i(14);i(13);i(2);i(3);i(4);i(5);i(6);i(7);i(8);i(9);i(10);i(11)},function(n,t,i){var r;r=i(1);angular.module("ad3").provider("d3locale",function(){var n;return n={},this.setLocales=function(t){return n=t},this.$get=function(){var t;return t=function(n){return r.format=n.numberFormat,r.time.format=n.timeFormat},{setLang:function(i){var f,e,u;try{return u=r.locale(n[i.toLowerCase()]),t(u)}catch(e){throw f=e,"d3locale error: '"+i+"' is a locale that either does not exist, or has not been loaded properly.";}},setLocale:function(n){return t(r.locale(n))}}},this})},function(n,t,i){var r;r=i(1);angular.module("ad3").provider("d3Service",function(){var n;return n=this.defaults={},this.$get=["$cacheFactory","$rootScope","$q",function(t,i,u){var f;return f=n.cache||t("d3Service"),{csv:function(n,t,e){var s,o;return o=u.defer(),s=f.get(n),s&&(e&&e(rows),o.resolve(s)),r.csv(n,t,function(t){return i.$apply(function(){return e&&e(t),t?(f.put(n,t),o.resolve(t)):o.reject()})}),o.promise}}}],this})},function(n){n.exports=angular}]);app=angular.module("ngTable",[]);app.factory("ngTableParams",["$q","$log",function(n,t){var i=function(n){return!isNaN(parseFloat(n))&&isFinite(n)};return function(r,u){var s=this,o=function(){f.debugMode&&t.debug&&t.debug.apply(this,arguments)},e,f;return this.data=[],this.parameters=function(n,t){var r,f,c,u,s,a,l,h;if(t=t||!1,angular.isDefined(n)){for(r in n)if(f=n[r],t&&r.indexOf("[")>=0){for(c=r.split(/\[(.*)\]/).reverse(),u="",s=0,a=c.length;s<a;s++)l=c[s],l!==""&&(h=f,f={},f[u=l]=i(h)?parseFloat(h):h);u==="sorting"&&(e[u]={});e[u]=angular.extend(e[u]||{},f[u])}else e[r]=i(n[r])?parseFloat(n[r]):n[r];return o("ngTable: set parameters",e),this}return e},this.settings=function(n){return angular.isDefined(n)?(angular.isArray(n.data)&&(n.total=n.data.length),f=angular.extend(f,n),o("ngTable: set settings",f),this):f},this.page=function(n){return angular.isDefined(n)?this.parameters({page:n}):e.page},this.total=function(n){return angular.isDefined(n)?this.settings({total:n}):f.total},this.count=function(n){return angular.isDefined(n)?this.parameters({count:n,page:1}):e.count},this.filter=function(n){return angular.isDefined(n)?this.parameters({filter:n}):e.filter},this.sorting=function(n){if(arguments.length==2){var t={};return t[n]=arguments[1],this.parameters({sorting:t}),this}return angular.isDefined(n)?this.parameters({sorting:n}):e.sorting},this.isSortBy=function(n,t){return angular.isDefined(e.sorting[n])&&e.sorting[n]==t},this.orderBy=function(){var t=[],n;for(n in e.sorting)t.push((e.sorting[n]==="asc"?"+":"-")+n);return t},this.getData=function(n,t){angular.isArray(this.data)&&angular.isObject(t)?n.resolve(this.data.slice((t.page()-1)*t.count(),t.page()*t.count())):n.resolve([])},this.getGroups=function(t,i){var r=n.defer();r.promise.then(function(n){var r={},u,f;angular.forEach(n,function(n){var t=angular.isFunction(i)?i(n):n[i];r[t]=r[t]||{data:[]};r[t].value=t;r[t].data.push(n)});u=[];for(f in r)u.push(r[f]);o("ngTable: refresh groups",u);t.resolve(u)});this.getData(r,s)},this.generatePagesArray=function(n,t,i){var h,o,s,e,u,f,r;if(h=11,f=[],u=Math.ceil(t/i),u>1){for(f.push({type:"prev",number:Math.max(1,n-1),active:n>1}),f.push({type:"first",number:1,active:n>1}),s=Math.round((h-5)/2),e=Math.max(2,n-s),o=Math.min(u-1,n+s*2-(n-e)),e=Math.max(2,e-(s*2-(o-e))),r=e;r<=o;)r===e&&r!==2||r===o&&r!==u-1?f.push({type:"more",active:!1}):f.push({type:"page",number:r,active:n!==r}),r++;f.push({type:"last",number:u,active:n!==u});f.push({type:"next",number:Math.min(u,n+1),active:n<u})}return f},this.url=function(n){var i,u,t,f,r,o;n=n||!1;i=n?[]:{};for(u in e)if(e.hasOwnProperty(u))if(t=e[u],f=encodeURIComponent(u),typeof t=="object")for(r in t)angular.isUndefined(t[r])||t[r]===""||(o=f+"["+encodeURIComponent(r)+"]",n?i.push(o+"="+t[r]):i[o]=t[r]);else angular.isFunction(t)||angular.isUndefined(t)||t===""||(n?i.push(f+"="+encodeURIComponent(t)):i[f]=encodeURIComponent(t));return i},this.reload=function(){var i=n.defer(),t=this;f.$loading=!0;f.groupBy?f.getGroups(i,f.groupBy,this):f.getData(i,this);o("ngTable: reload data");i.promise.then(function(n){f.$loading=!1;o("ngTable: current scope",f.$scope);t.data=f.groupBy?f.$scope.$groups=n:f.$scope.$data=n;f.$scope.pages=t.generatePagesArray(t.page(),t.total(),t.count());f.$scope.$emit("ngTableAfterReloadData")})},this.reloadPages=function(){var n=this;f.$scope.pages=n.generatePagesArray(n.page(),n.total(),n.count())},e=this.$params={page:1,count:1,filter:{},sorting:{},group:{},groupBy:null},f={$scope:null,$loading:!1,data:null,total:0,defaultSort:"desc",filterDelay:750,counts:[10,25,50,100],getGroups:this.getGroups,getData:this.getData},this.settings(u),this.parameters(r,!0),this}}]);ngTableController=["$scope","ngTableParams","$timeout",function(n,t,i){n.$loading=!1;n.params||(n.params=new t);n.params.settings().$scope=n;var r=function(){var n=0;return function(t,r){i.cancel(n);n=i(t,r)}}();n.$watch("params.$params",function(t,i){n.params.settings().$scope=n;angular.equals(t.filter,i.filter)?n.params.reload():r(function(){n.params.$params.page=1;n.params.reload()},n.params.settings().filterDelay)},!0);n.sortBy=function(t,i){var r=n.parse(t.sortable);if(r){var u=n.params.settings().defaultSort,e=u==="asc"?"desc":"asc",o=n.params.sorting()&&n.params.sorting()[r]&&n.params.sorting()[r]===u,f=i.ctrlKey||i.metaKey?n.params.sorting():{};f[r]=o?e:u;n.params.parameters({sorting:f})}}}];app.directive("ngTable",["$compile","$q","$parse",function(n,t,i){"use strict";return{restrict:"A",priority:1001,scope:!0,controller:ngTableController,compile:function(t){var r=[],e=0,u=null,f=t.find("thead");if(angular.forEach(angular.element(t.find("tr")),function(n){n=angular.element(n);n.hasClass("ng-table-group")||u||(u=n)}),u)return angular.forEach(u.find("td"),function(n){var t=angular.element(n);if(!t.attr("ignore-cell")||"true"!==t.attr("ignore-cell")){var f=function(n,u){return function(f){return i(t.attr("x-data-"+n)||t.attr("data-"+n)||t.attr(n))(f,{$columns:r})||u}},o=f("title"," "),c=f("header",!1),u=f("filter",!1)(),s=!1,h=!1;u&&u.$$name&&(h=u.$$name,delete u.$$name);u&&u.templateURL&&(s=u.templateURL,delete u.templateURL);t.attr("data-title-text",o());r.push({id:e++,title:o,sortable:f("sortable",!1),"class":t.attr("x-data-header-class")||t.attr("data-header-class")||t.attr("header-class"),filter:u,filterTemplateURL:s,filterName:h,headerTemplateURL:c,filterData:t.attr("filter-data")?t.attr("filter-data"):null,show:t.attr("ng-show")?function(n){return i(t.attr("ng-show"))(n)}:function(){return!0}})}}),function(t,u,e){if(t.$loading=!1,t.$columns=r,t.$watch(e.ngTable,function(n){angular.isUndefined(n)||(t.paramsModel=i(e.ngTable),t.params=n)},!0),t.parse=function(n){return angular.isDefined(n)?n(t):""},e.showFilter&&t.$parent.$watch(e.showFilter,function(n){t.show_filter=n}),angular.forEach(r,function(n){var r;if(n.filterData){if(r=i(n.filterData)(t,{$column:n}),!(angular.isObject(r)&&angular.isObject(r.promise)))throw new Error("Function "+n.filterData+" must be instance of $q.defer()");return delete n.filterData,r.promise.then(function(t){angular.isArray(t)||(t=[]);t.unshift({title:"-",id:""});n.data=t})}}),!u.hasClass("ng-table")){t.templates={header:e.templateHeader?e.templateHeader:"ng-table/header.html",pagination:e.templatePagination?e.templatePagination:"ng-table/pager.html"};var o=f.length>0?f:angular.element(document.createElement("thead")).attr("ng-include","templates.header"),s=angular.element(document.createElement("div")).attr({"ng-table-pagination":"params","template-url":"templates.pagination"});u.find("thead").remove();u.addClass("ng-table").prepend(o).after(s);n(o)(t);n(s)(t)}}}}}]);app.directive("ngTablePagination",["$compile",function(n){"use strict";return{restrict:"A",scope:{params:"=ngTablePagination",templateUrl:"="},replace:!1,link:function(t,i){t.params.settings().$scope.$on("ngTableAfterReloadData",function(){t.pages=t.params.generatePagesArray(t.params.page(),t.params.total(),t.params.count())},!0);t.$watch("templateUrl",function(r){if(!angular.isUndefined(r)){var u=angular.element(document.createElement("div"));u.attr({"ng-include":"templateUrl"});i.append(u);n(u)(t)}})}}}]);!function(n,t){"use strict";"function"==typeof define&&define.amd?define(["angular"],t):n.hasOwnProperty("angular")?t(n.angular):"object"==typeof exports&&(module.exports=t(require("angular")))}(this,function(n){"use strict";function t(n,t){var i,r;try{i=n[t]}catch(u){i=!1}if(i){r="__"+Math.round(1e7*Math.random());try{n[t].setItem(r,r);n[t].removeItem(r,r)}catch(u){i=!1}}return i}function i(i){var r=t(window,i);return function(){var u="ngStorage-",e,f;this.setKeyPrefix=function(n){if("string"!=typeof n)throw new TypeError("[ngStorage] - "+i+"Provider.setKeyPrefix() expects a String.");u=n};e=n.toJson;f=n.fromJson;this.setSerializer=function(n){if("function"!=typeof n)throw new TypeError("[ngStorage] - "+i+"Provider.setSerializer expects a function.");e=n};this.setDeserializer=function(n){if("function"!=typeof n)throw new TypeError("[ngStorage] - "+i+"Provider.setDeserializer expects a function.");f=n};this.supported=function(){return!!r};this.get=function(n){return r&&f(r.getItem(u+n))};this.set=function(n,t){return r&&r.setItem(u+n,e(t))};this.remove=function(n){r&&r.removeItem(u+n)};this.$get=["$rootScope","$window","$log","$timeout","$document",function(r,o,s,h,c){var v,p,y=u.length,w=t(o,i),a=w||(s.warn("This browser does not support Web Storage!"),{setItem:n.noop,getItem:n.noop,removeItem:n.noop}),l={$default:function(t){for(var i in t)n.isDefined(l[i])||(l[i]=n.copy(t[i]));return l.$sync(),l},$reset:function(n){for(var t in l)"$"===t[0]||delete l[t]&&a.removeItem(u+t);return l.$default(n)},$sync:function(){for(var n,t=0,i=a.length;i>t;t++)(n=a.key(t))&&u===n.slice(0,y)&&(l[n.slice(y)]=f(a.getItem(n)))},$apply:function(){var t,i;if(p=null,!n.equals(l,v)){t=n.copy(v);n.forEach(l,function(i,r){n.isDefined(i)&&"$"!==r[0]&&(a.setItem(u+r,e(i)),delete t[r])});for(i in t)a.removeItem(u+i);v=n.copy(l)}},$supported:function(){return!!w}};return l.$sync(),v=n.copy(l),r.$watch(function(){p||(p=h(l.$apply,100,!1))}),o.addEventListener&&o.addEventListener("storage",function(t){if(t.key){var i=c[0];i.hasFocus&&i.hasFocus()||u!==t.key.slice(0,y)||(t.newValue?l[t.key.slice(y)]=f(t.newValue):delete l[t.key.slice(y)],v=n.copy(l),r.$apply())}}),o.addEventListener&&o.addEventListener("beforeunload",function(){l.$apply()}),l}]}}return n=n&&n.module?n:window.angular,n.module("ngStorage",[]).provider("$localStorage",i("localStorage")).provider("$sessionStorage",i("sessionStorage"))}),function(n,t){"use strict";function i(n,i,r){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(u,f,e,o,s){function v(){c&&(r.cancel(c),c=null);h&&(h.$destroy(),h=null);l&&(c=r.leave(l),c.then(function(){c=null}),l=null)}function y(){var e=n.current&&n.current.locals,o;t.isDefined(e&&e.$template)?(e=u.$new(),o=n.current,l=s(e,function(n){r.enter(n,null,l||f).then(function(){t.isDefined(a)&&(!a||u.$eval(a))&&i()});v()}),h=o.scope=e,h.$emit("$viewContentLoaded"),h.$eval(p)):v()}var h,l,c,a=e.autoscroll,p=e.onload||"";u.$on("$routeChangeSuccess",y);y()}}}function r(n,t,i){return{restrict:"ECA",priority:-400,link:function(r,u){var e=i.current,f=e.locals,o;u.html(f.$template);o=n(u.contents());e.controller&&(f.$scope=r,f=t(e.controller,f),e.controllerAs&&(r[e.controllerAs]=f),u.data("$ngControllerController",f),u.children().data("$ngControllerController",f));o(r)}}}n=t.module("ngRoute",["ng"]).provider("$route",function(){function i(n,i){return t.extend(Object.create(n),i)}function r(n,t){var r=t.caseInsensitiveMatch,i={originalPath:n,regexp:n},u=i.keys=[];return n=n.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)([\?\*])?/g,function(n,t,i,r){return n="?"===r?r:null,r="*"===r?r:null,u.push({name:i,optional:!!n}),t=t||"",""+(n?"":t)+"(?:"+(n?t:"")+(r&&"(.+?)"||"([^/]+)")+(n||"")+")"+(n||"")}).replace(/([\/$\*])/g,"\\$1"),i.regexp=new RegExp("^"+n+"$",r?"i":""),i}var n={};this.when=function(i,u){var f=t.copy(u),e;return t.isUndefined(f.reloadOnSearch)&&(f.reloadOnSearch=!0),t.isUndefined(f.caseInsensitiveMatch)&&(f.caseInsensitiveMatch=this.caseInsensitiveMatch),n[i]=t.extend(f,i&&r(i,f)),i&&(e="/"==i[i.length-1]?i.substr(0,i.length-1):i+"/",n[e]=t.extend({redirectTo:i},r(e,f))),this};this.caseInsensitiveMatch=!1;this.otherwise=function(n){return"string"==typeof n&&(n={redirectTo:n}),this.when(null,n),this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(r,f,e,o,s,h,c){function y(n){var i=a.current;!(b=(l=k())&&i&&l.$$route===i.$$route&&t.equals(l.pathParams,i.pathParams)&&!l.reloadOnSearch&&!v)&&(i||l)&&r.$broadcast("$routeChangeStart",l,i).defaultPrevented&&n&&n.preventDefault()}function p(){var i=a.current,n=l;b?(i.params=n.params,t.copy(i.params,e),r.$broadcast("$routeUpdate",i)):(n||i)&&(v=!1,(a.current=n)&&n.redirectTo&&(t.isString(n.redirectTo)?f.path(w(n.redirectTo,n.params)).search(n.params).replace():f.url(n.redirectTo(n.pathParams,f.path(),f.search())).replace()),o.when(n).then(function(){if(n){var u=t.extend({},n.resolve),i,r;return t.forEach(u,function(n,i){u[i]=t.isString(n)?s.get(n):s.invoke(n,null,null,i)}),t.isDefined(i=n.template)?t.isFunction(i)&&(i=i(n.params)):t.isDefined(r=n.templateUrl)&&(t.isFunction(r)&&(r=r(n.params)),t.isDefined(r)&&(n.loadedTemplateUrl=c.valueOf(r),i=h(r))),t.isDefined(i)&&(u.$template=i),o.all(u)}}).then(function(u){n==a.current&&(n&&(n.locals=u,t.copy(n.params,e)),r.$broadcast("$routeChangeSuccess",n,i))},function(t){n==a.current&&r.$broadcast("$routeChangeError",n,i,t)}))}function k(){var u,r;return t.forEach(n,function(n){var e,o,h,s,a,c,l;if(e=!r){if(o=f.path(),e=n.keys,h={},n.regexp)if(o=n.regexp.exec(o)){for(s=1,a=o.length;s<a;++s)c=e[s-1],l=o[s],c&&l&&(h[c.name]=l);e=h}else e=null;else e=null;e=u=e}e&&(r=i(n,{params:t.extend({},f.search(),u),pathParams:u}),r.$$route=n)}),r||n[null]&&i(n[null],{params:{},pathParams:{}})}function w(n,i){var r=[];return t.forEach((n||"").split(":"),function(n,t){if(0===t)r.push(n);else{var u=n.match(/(\w+)(?:[?*])?(.*)/),f=u[1];r.push(i[f]);r.push(u[2]||"");delete i[f]}}),r.join("")}var v=!1,l,b,a={routes:n,reload:function(){v=!0;r.$evalAsync(function(){y();p()})},updateParams:function(n){if(this.current&&this.current.$$route)n=t.extend({},this.current.params,n),f.path(w(this.current.$$route.originalPath,n)),f.search(n);else throw u("norout");}};return r.$on("$locationChangeStart",y),r.$on("$locationChangeSuccess",p),a}]});var u=t.$$minErr("ngRoute");n.provider("$routeParams",function(){this.$get=function(){return{}}});n.directive("ngView",i);n.directive("ngView",r);i.$inject=["$route","$anchorScroll","$animate"];r.$inject=["$compile","$controller","$route"]}(window,window.angular),function(n,t,i){"use strict";function r(n,i,r){var u=r.baseHref(),f=n[0];return function(n,r,e){var s,o;e=e||{};o=e.expires;s=t.isDefined(e.path)?e.path:u;t.isUndefined(r)&&(o="Thu, 01 Jan 1970 00:00:00 GMT",r="");t.isString(o)&&(o=new Date(o));r=encodeURIComponent(n)+"="+encodeURIComponent(r);r=r+(s?";path="+s:"")+(e.domain?";domain="+e.domain:"");r+=o?";expires="+o.toUTCString():"";r+=e.secure?";secure":"";e=r.length+1;4096<e&&i.warn("Cookie '"+n+"' possibly not set or overflowed because it was too large ("+e+" > 4096 bytes)!");f.cookie=r}}t.module("ngCookies",["ng"]).provider("$cookies",[function(){var n=this.defaults={};this.$get=["$$cookieReader","$$cookieWriter",function(r,u){return{get:function(n){return r()[n]},getObject:function(n){return(n=this.get(n))?t.fromJson(n):n},getAll:function(){return r()},put:function(i,r,f){u(i,r,f?t.extend({},n,f):n)},putObject:function(n,i,r){this.put(n,t.toJson(i),r)},remove:function(r,f){u(r,i,f?t.extend({},n,f):n)}}}]}]);t.module("ngCookies").factory("$cookieStore",["$cookies",function(n){return{get:function(t){return n.getObject(t)},put:function(t,i){n.putObject(t,i)},remove:function(t){n.remove(t)}}}]);r.$inject=["$document","$log","$browser"];t.module("ngCookies").provider("$$cookieWriter",function(){this.$get=r})}(window,window.angular),function(n,t){"use strict";function ht(n,t,i){if(!n)throw ngMinErr("areq",t||"?",i||"required");return n}function ct(n,t){return!n&&!t?"":n?t?(h(n)&&(n=n.join(" ")),h(t)&&(t=t.join(" ")),n+" "+t):n:t}function gt(n){var t={};return n&&(n.to||n.from)&&(t.to=n.to,t.from=n.from),t}function e(n,t,r){var u="";return n=h(n)?n:n&&c(n)&&n.length?n.split(/\s+/):[],i(n,function(n,i){n&&0<n.length&&(u+=0<i?" ":"",u+=r?t+n:n+t)}),u}function ni(n){if(n instanceof s)switch(n.length){case 0:return[];case 1:if(1===n[0].nodeType)return n;break;default:return s(g(n))}if(1===n.nodeType)return s(n)}function g(n){var t,i;if(!n[0])return n;for(t=0;t<n.length;t++)if(i=n[t],1==i.nodeType)return i}function ti(n,t,r){i(t,function(t){n.addClass(t,r)})}function ii(n,t,r){i(t,function(t){n.removeClass(t,r)})}function l(n){return function(t,i){i.addClass&&(ti(n,t,i.addClass),i.addClass=null);i.removeClass&&(ii(n,t,i.removeClass),i.removeClass=null)}}function w(n){if(n=n||{},!n.$$prepared){var t=n.domOperation||u;n.domOperation=function(){n.$$domOperationFired=!0;t();t=u};n.$$prepared=!0}return n}function a(n,t){lt(n,t);at(n,t)}function lt(n,t){t.from&&(n.css(t.from),t.from=null)}function at(n,t){t.to&&(n.css(t.to),t.to=null)}function v(n,t,i){var r=(t.addClass||"")+" "+(i.addClass||""),f=(t.removeClass||"")+" "+(i.removeClass||"");return n=ri(n.attr("class"),r,f),i.preparationClasses&&(t.preparationClasses=k(i.preparationClasses,t.preparationClasses),delete i.preparationClasses),r=t.domOperation!==u?t.domOperation:null,wt(t,i),r&&(t.domOperation=r),t.addClass=n.addClass?n.addClass:null,t.removeClass=n.removeClass?n.removeClass:null,t}function ri(n,t,r){function e(n){c(n)&&(n=n.split(" "));var t={};return i(n,function(n){n.length&&(t[n]=!0)}),t}var f={},u;return n=e(n),t=e(t),i(t,function(n,t){f[t]=1}),r=e(r),i(r,function(n,t){f[t]=1===f[t]?null:-1}),u={addClass:"",removeClass:""},i(f,function(t,i){var r,f;1===t?(r="addClass",f=!n[i]):-1===t&&(r="removeClass",f=n[i]);f&&(u[r].length&&(u[r]+=" "),u[r]+=i)}),u}function r(n){return n instanceof t.element?n[0]:n}function ui(n,t,i){var r="";t&&(r=e(t,"ng-",!0));i.addClass&&(r=k(r,e(i.addClass,"-add")));i.removeClass&&(r=k(r,e(i.removeClass,"-remove")));r.length&&(i.preparationClasses=r,n.addClass(r))}function b(n,t){var i=t?"-"+t+"s":"";return y(n,[p,i]),[p,i]}function nt(n,t){var i=t?"paused":"",r=o+"PlayState";return y(n,[r,i]),[r,i]}function y(n,t){n.style[t[0]]=t[1]}function k(n,t){return n?t?n+" "+t:n:t}function vt(n,t,r){var u=Object.create(null),f=n.getComputedStyle(t)||{};return i(r,function(n,t){var i=f[n],r;i&&(r=i.charAt(0),("-"===r||"+"===r||0<=r)&&(i=fi(i)),0===i&&(i=null),u[t]=i)}),u}function fi(n){var t=0;return n=n.split(/\s*,\s*/),i(n,function(n){"s"==n.charAt(n.length-1)&&(n=n.substring(0,n.length-1));n=parseFloat(n)||0;t=t?Math.max(n,t):n}),t}function tt(n){return 0===n||null!=n}function yt(n,t){var i=f,r=n+"s";return t?i+="Duration":r+=" linear all",[i,r]}function pt(){var n=Object.create(null);return{flush:function(){n=Object.create(null)},count:function(t){return(t=n[t])?t.total:0},get:function(t){return(t=n[t])&&t.value},put:function(t,i){n[t]?n[t].total++:n[t]={total:1,value:i}}}}var u=t.noop,wt=t.extend,s=t.element,i=t.forEach,h=t.isArray,c=t.isString,it=t.isObject,rt=t.isUndefined,ut=t.isDefined,bt=t.isFunction,ft=t.isElement,f,et,o,ot,kt,dt;rt(n.ontransitionend)&&ut(n.onwebkittransitionend)?(f="WebkitTransition",et="webkitTransitionEnd transitionend"):(f="transition",et="transitionend");rt(n.onanimationend)&&ut(n.onwebkitanimationend)?(o="WebkitAnimation",ot="webkitAnimationEnd animationend"):(o="animation",ot="animationend");var d=o+"Delay",st=o+"Duration",p=f+"Delay";n=f+"Duration";kt={transitionDuration:n,transitionDelay:p,transitionProperty:f+"Property",animationDuration:st,animationDelay:d,animationIterationCount:o+"IterationCount"};dt={transitionDuration:n,transitionDelay:p,animationDuration:st,animationDelay:d};t.module("ngAnimate",[]).provider("$$body",function(){this.$get=["$document",function(n){return s(n[0].body)}]}).directive("ngAnimateChildren",[function(){return function(n,i,r){n=r.ngAnimateChildren;t.isString(n)&&0===n.length?i.data("$$ngAnimateChildren",!0):r.$observe("ngAnimateChildren",function(n){i.data("$$ngAnimateChildren","on"===n||"true"===n)})}}]).factory("$$rAFScheduler",["$$rAF",function(n){function r(n){i=i.concat(n);u()}function u(){if(i.length){for(var f=i.shift(),r=0;r<f.length;r++)f[r]();t||n(function(){t||u()})}}var i,t;return i=r.queue=[],r.waitUntilQuiet=function(i){t&&t();t=n(function(){t=null;i();u()})},r}]).factory("$$AnimateRunner",["$q","$sniffer","$$animateAsyncRun",function(n,t,r){function f(n){this.setHost(n);this._doneCallbacks=[];this._runInAnimationFrame=r();this._state=0}return f.chain=function(n,t){function r(){i===n.length?t(!0):n[i](function(n){!1===n?t(!1):(i++,r())})}var i=0;r()},f.all=function(n,t){function u(i){r=r&&i;++f===n.length&&t(r)}var f=0,r=!0;i(n,function(n){n.done(u)})},f.prototype={setHost:function(n){this.host=n||{}},done:function(n){2===this._state?n():this._doneCallbacks.push(n)},progress:u,getPromise:function(){if(!this.promise){var t=this;this.promise=n(function(n,i){t.done(function(t){!1===t?i():n()})})}return this.promise},then:function(n,t){return this.getPromise().then(n,t)},"catch":function(n){return this.getPromise()["catch"](n)},"finally":function(n){return this.getPromise()["finally"](n)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end();this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(n){var t=this;0===t._state&&(t._state=1,t._runInAnimationFrame(function(){t._resolve(n)}))},_resolve:function(n){2!==this._state&&(i(this._doneCallbacks,function(t){t(n)}),this._doneCallbacks.length=0,this._state=2)}},f}]).factory("$$animateAsyncRun",["$$rAF",function(n){function i(i){t.push(i);1<t.length||n(function(){for(var n=0;n<t.length;n++)t[n]();t=[]})}var t=[];return function(){var n=!1;return i(function(){n=!0}),function(t){n?t():i(t)}}}]).provider("$$animateQueue",["$animateProvider",function(n){function f(n,i,r,u){return t[n].some(function(n){return n(i,r,u)})}function u(n,t){n=n||{};var i=0<(n.addClass||"").length,r=0<(n.removeClass||"").length;return t?i&&r:i||r}var t=this.rules={skip:[],cancel:[],join:[]};t.join.push(function(n,t){return!t.structural&&u(t.options)});t.skip.push(function(n,t){return!t.structural&&!u(t.options)});t.skip.push(function(n,t,i){return"leave"==i.event&&t.structural});t.skip.push(function(n,t,i){return i.structural&&2===i.state&&!t.structural});t.cancel.push(function(n,t,i){return i.structural&&t.structural});t.cancel.push(function(n,t,i){return 2===i.state&&t.structural});t.cancel.push(function(n,t,i){return n=t.options,i=i.options,n.addClass&&n.addClass===i.removeClass||n.removeClass&&n.removeClass===i.addClass});this.$get=["$$rAF","$rootScope","$rootElement","$document","$$body","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$jqLite","$$forceReflow",function(t,e,o,s,y,p,b,k,d,nt){function pt(n,t){var e=r(n),u=[],f=et[t];return f&&i(f,function(n){n.node.contains(e)&&u.push(n.callback)}),u}function bt(n,r,u,f){t(function(){i(pt(r,n),function(n){n(r,u,f)})})}function kt(n,t,i){function ut(t,i,r,u){bt(i,n,r,u);t.progress(i,r,u)}function p(t){var u=n,r=i;r.preparationClasses&&(u.removeClass(r.preparationClasses),r.preparationClasses=null);r.activeClasses&&(u.removeClass(r.activeClasses),r.activeClasses=null);yt(n,i);a(n,i);i.domOperation();l.complete(!t)}var y,s,l,o,rt;if(((n=ni(n))&&(y=r(n),s=n.parent()),i=w(i),l=new k,h(i.addClass)&&(i.addClass=i.addClass.join(" ")),i.addClass&&!c(i.addClass)&&(i.addClass=null),h(i.removeClass)&&(i.removeClass=i.removeClass.join(" ")),i.removeClass&&!c(i.removeClass)&&(i.removeClass=null),i.from&&!it(i.from)&&(i.from=null),i.to&&!it(i.to)&&(i.to=null),!y)||(o=[y.className,i.addClass,i.removeClass].join(" "),!ii(o)))return p(),l;var g=0<=["enter","move","leave"].indexOf(t),nt=!ct||st.get(y),o=!nt&&tt.get(y)||{},d=!!o.state;if(nt||d&&1==o.state||(nt=!gt(n,s,t)),nt)return p(),l;if(g&&dt(n),s={structural:g,element:n,event:t,close:p,options:i,runner:l},d){if(f("skip",n,s,o))return 2===o.state?(p(),l):(v(n,o.options,i),o.runner);if(f("cancel",n,s,o))if(2===o.state)o.runner.end();else if(o.structural)o.close();else return v(n,o.options,s.options),o.runner;else if(f("join",n,s,o))if(2===o.state)v(n,i,{});else return ui(n,g?t:null,i),t=s.event=o.event,i=v(n,o.options,s.options),o.runner}else v(n,i,{});return((d=s.structural)||(d="animate"===s.event&&0<Object.keys(s.options.to||{}).length||u(s.options)),!d)?(p(),lt(n),l):(rt=(o.counter||0)+1,s.counter=rt,at(n,1,s),e.$$postDigest(function(){var f=tt.get(y),e=!f,f=f||{},o=0<(n.parent()||[]).length&&("animate"===f.event||f.structural||u(f.options));e||f.counter!==rt||!o?(e&&(yt(n,i),a(n,i)),(e||g&&f.event!==t)&&(i.domOperation(),l.end()),o||lt(n)):(t=!f.structural&&u(f.options,!0)?"setClass":f.event,at(n,2),f=b(n,t,f.options),f.done(function(i){p(!i);(i=tt.get(y))&&i.counter===rt&&lt(r(n));ut(l,t,"close",{})}),l.setHost(f),ut(l,t,"start",{}))}),l)}function dt(n){n=r(n).querySelectorAll("[data-ng-animate]");i(n,function(n){var i=parseInt(n.getAttribute("data-ng-animate")),t=tt.get(n);switch(i){case 2:t.runner.end();case 1:t&&tt.remove(n)}})}function lt(n){n=r(n);n.removeAttribute("data-ng-animate");tt.remove(n)}function ot(n,t){return r(n)===r(t)}function gt(n,t,i){var r,u,f,e;for(i=ot(n,y)||"HTML"===n[0].nodeName,r=ot(n,o),u=!1,(n=n.data("$ngAnimatePin"))&&(t=n);t&&t.length;){if(r||(r=ot(t,o)),n=t[0],1!==n.nodeType)break;if(e=tt.get(n)||{},u||(u=e.structural||st.get(n)),(rt(f)||!0===f)&&(n=t.data("$$ngAnimateChildren"),ut(n)&&(f=n)),u&&!1===f)break;r||(r=ot(t,o),r||(n=t.data("$ngAnimatePin"))&&(t=n));i||(i=ot(t,y));t=t.parent()}return(!u||f)&&r&&i}function at(n,t,i){i=i||{};i.state=t;n=r(n);n.setAttribute("data-ng-animate",t);i=(t=tt.get(n))?wt(t,i):i;tt.put(n,i)}var tt=new p,st=new p,ct=null,ti=e.$watch(function(){return 0===d.totalPendingRequests},function(n){n&&(ti(),e.$$postDigest(function(){e.$$postDigest(function(){null===ct&&(ct=!0)})}))}),et={},vt=n.classNameFilter(),ii=vt?function(n){return vt.test(n)}:function(){return!0},yt=l(nt);return{on:function(n,t,i){t=g(t);et[n]=et[n]||[];et[n].push({node:t,callback:i})},off:function(n,t,i){function u(n,t,i){var r=g(t);return n.filter(function(n){return!(n.node===r&&(!i||n.callback===i))})}var r=et[n];r&&(et[n]=1===arguments.length?null:u(r,t,i))},pin:function(n,t){ht(ft(n),"element","not an element");ht(ft(t),"parentElement","not an element");n.data("$ngAnimatePin",t)},push:function(n,t,i,r){return i=i||{},i.domOperation=r,kt(n,t,i)},enabled:function(n,t){var f=arguments.length,i,u;return 0===f?t=!!ct:ft(n)?(i=r(n),u=st.get(i),1===f?t=!u:(t=!!t)?u&&st.remove(i):st.put(i,!0)):t=ct=!!n,t}}}]}]).provider("$$animation",["$animateProvider",function(){function n(n){return n.data("$$animationRunner")}var t=this.drivers=[];this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$HashMap","$$rAFScheduler",function(u,f,e,o,h,c){function y(n){function u(n){var e,t,i;if(n.processed)return n;for(n.processed=!0,e=n.domNode,t=e.parentNode,r.put(e,n);t;){if(i=r.get(t)){i.processed||(i=u(i));break}t=t.parentNode}return(i||f).children.push(n),n}for(var f={children:[]},r=new h,i,t=0;t<n.length;t++)i=n[t],r.put(i.domNode,n[t]={domNode:i.domNode,fn:i.fn,children:[]});for(t=0;t<n.length;t++)u(n[t]);return function(n){for(var f=[],r=[],u,i,e,t=0;t<n.children.length;t++)r.push(n.children[t]);for(n=r.length,u=0,i=[],t=0;t<r.length;t++)e=r[t],0>=n&&(n=u,u=0,f.push(i),i=[]),i.push(e.fn),e.children.forEach(function(n){u++;r.push(n)}),n--;return i.length&&f.push(i),f}(f)}var v=[],p=l(u);return function(h,l,b){function rt(n){n=n.hasAttribute("ng-animate-ref")?[n]:n.querySelectorAll("[ng-animate-ref]");var t=[];return i(n,function(n){var i=n.getAttribute("ng-animate-ref");i&&i.length&&t.push(n)}),t}function ut(n){var t=[],u={},e,f;return i(n,function(n,f){var e=r(n.element),h=0<=["enter","move"].indexOf(n.event),e=n.structural?rt(e):[],o;e.length?(o=h?"to":"from",i(e,function(n){var t=n.getAttribute("ng-animate-ref");u[t]=u[t]||{};u[t][o]={animationID:f,element:s(n)}})):t.push(n)}),e={},f={},i(u,function(i){var r=i.from,u=i.to,c;if(r&&u){var o=n[r.animationID],s=n[u.animationID],h=r.animationID.toString();f[h]||(c=f[h]={structural:!0,beforeStart:function(){o.beforeStart();s.beforeStart()},close:function(){o.close();s.close()},classes:ft(o.classes,s.classes),from:o,to:s,anchors:[]},c.classes.length?t.push(c):(t.push(o),t.push(s)));f[h].anchors.push({out:r.element,"in":u.element})}else r=r?r.animationID:u.animationID,u=r.toString(),e[u]||(e[u]=!0,t.push(n[r]))}),t}function ft(n,t){var f,i,r,u;for(n=n.split(" "),t=t.split(" "),f=[],i=0;i<n.length;i++)if(r=n[i],"ng-"!==r.substring(0,3))for(u=0;u<t.length;u++)if(r===t[u]){f.push(r);break}return f.join(" ")}function et(n){for(var i,r=t.length-1;0<=r;r--)if(i=t[r],e.has(i)&&(i=e.get(i)(n)))return i}function ot(t,i){t.from&&t.to?(n(t.from.element).setHost(i),n(t.to.element).setHost(i)):n(t.element).setHost(i)}function tt(){var t=n(h);!t||"leave"===l&&b.$$domOperationFired||t.end()}function g(n){h.off("$destroy",tt);h.removeData("$$animationRunner");p(h,b);a(h,b);b.domOperation();k&&u.removeClass(h,k);h.removeClass("ng-animate");d.complete(!n)}var it,d,nt,k;if(b=w(b),it=0<=["enter","move","leave"].indexOf(l),d=new o({end:function(){g()},cancel:function(){g(!0)}}),!t.length)return g(),d;h.data("$$animationRunner",d);nt=ct(h.attr("class"),ct(b.addClass,b.removeClass));k=b.tempClasses;k&&(nt+=" "+k,b.tempClasses=null);v.push({element:h,classes:nt,event:l,structural:it,options:b,beforeStart:function(){h.addClass("ng-animate");k&&u.addClass(h,k)},close:g});h.on("$destroy",tt);return 1<v.length?d:(f.$$postDigest(function(){var u=[],f,t;i(v,function(t){n(t.element)?u.push(t):t.close()});v.length=0;f=ut(u);t=[];i(f,function(i){t.push({domNode:r(i.from?i.from.element:i.element),fn:function(){var t,r,u;i.beforeStart();r=i.close;n(i.anchors?i.from.element||i.to.element:i.element)&&(u=et(i),u&&(t=u.start));t?(t=t(),t.done(function(n){r(!n)}),ot(i,t)):r()}})});c(y(t))}),d)}}]}]).provider("$animateCss",["$animateProvider",function(){var n=pt(),t=pt();this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$$forceReflow","$sniffer","$$rAFScheduler","$animate",function(s,c,v,k,g,it,rt,ut){function ct(n,t){var i=n.parentNode;return(i.$$ngAnimateParentKey||(i.$$ngAnimateParentKey=++ni))+"-"+n.getAttribute("class")+"-"+t}function bt(i,r,u,f){var o;return 0<n.count(u)&&(o=t.get(u),o||(r=e(r,"-stagger"),c.addClass(i,r),o=vt(s,i,f),o.animationDuration=Math.max(o.animationDuration,0),o.transitionDuration=Math.max(o.transitionDuration,0),c.removeClass(i,r),t.put(u,o))),o||{}}function pt(i){ft.push(i);rt.waitUntilQuiet(function(){n.flush();t.flush();for(var r=g(),i=0;i<ft.length;i++)ft[i](r);ft.length=0})}function wt(t,i,r){return i=n.get(r),i||(i=vt(s,t,kt),"infinite"===i.animationIterationCount&&(i.animationIterationCount=1)),n.put(r,i),t=i,r=t.animationDelay,i=t.transitionDelay,t.maxDelay=r&&i?Math.max(r,i):r||i,t.maxDuration=Math.max(t.animationDuration*t.animationIterationCount,t.transitionDuration),t}var ht=l(c),ni=0,ft=[];return function(t,s){function vi(){ni()}function tr(){ni(!0)}function ni(n){ci||di&&ri||(ci=!0,ri=!1,s.$$skipPreparationClasses||c.removeClass(t,fi),c.removeClass(t,rr),nt(g,!1),b(g,!1),i(vt,function(n){g.style[n[0]]=""}),ht(t,s),a(t,s),s.onDone&&s.onDone(),oi&&oi.complete(!n))}function ir(n){l.blockTransition&&b(g,n);l.blockKeyframeAnimation&&nt(g,!!n)}function yi(){return oi=new v({end:vi,cancel:tr}),pt(u),ni(),{$$willAnimate:!1,start:function(){return oi},end:vi}}function ur(){function u(){var e,h,u,y,p;if(!ci){if(ir(!1),i(vt,function(n){g.style[n[0]]=n[1]}),ht(t,s),c.addClass(t,rr),l.recalculateTimingStyles){if(ai=g.className+" "+fi,hi=ct(g,ai),rt=wt(g,ai,hi),ii=rt.maxDelay,li=Math.max(ii,0),kt=rt.maxDuration,0===kt){ni();return}l.hasTransitions=0<rt.transitionDuration;l.hasAnimations=0<rt.animationDuration}l.applyAnimationDelay&&(ii="boolean"!=typeof s.delay&&tt(s.delay)?parseFloat(s.delay):ii,li=Math.max(ii,0),rt.animationDelay=ii,ei=[d,ii+"s"],vt.push(ei),g.style[ei[0]]=ei[1]);bi=1e3*li;gi=1e3*kt;s.easing&&(u=s.easing,l.hasTransitions&&(e=f+"TimingFunction",vt.push([e,u]),g.style[e]=u),l.hasAnimations&&(e=o+"TimingFunction",vt.push([e,u]),g.style[e]=u));rt.transitionDuration&&r.push(et);rt.animationDuration&&r.push(ot);n=Date.now();h=bi+1.5*gi;e=n+h;u=t.data("$$animateCss")||[];y=!0;u.length&&(p=u[0],(y=e>p.expectedEndTime)?k.cancel(p.timer):u.push(ni));y&&(h=k(a,h,!1),u[0]={timer:h,expectedEndTime:e},u.push(ni),t.data("$$animateCss",u));t.on(r.join(" "),v);at(t,s)}}function a(){var i=t.data("$$animateCss"),n;if(i){for(n=1;n<i.length;n++)i[n]();t.removeData("$$animateCss")}}function v(t){t.stopPropagation();var i=t.originalEvent||t;t=i.$manualTimeStamp||i.timeStamp||Date.now();i=parseFloat(i.elapsedTime.toFixed(3));Math.max(t-n,0)>=bi&&i>=kt&&(di=!0,ni())}if(!ci)if(g.parentNode){var n,r=[],e=function(n){if(di)ri&&n&&(ri=!1,ni());else if(ri=!n,rt.animationDuration)if(n=nt(g,ri),ri)vt.push(n);else{var t=vt,i=t.indexOf(n);0<=n&&t.splice(i,1)}},h=0<ki&&(rt.transitionDuration&&0===ti.transitionDuration||rt.animationDuration&&0===ti.animationDuration)&&Math.max(ti.animationDelay,ti.transitionDelay);h?k(u,Math.floor(h*ki*1e3),!1):u();wi.resume=function(){e(!0)};wi.pause=function(){e(!1)}}else ni()}var g=r(t),hi,ti,ki,rt,ii,l,ei;if(!g||!g.parentNode||!ut.enabled())return yi();s=w(s);var vt=[],pi=t.attr("class"),ft=gt(s),ci,ri,di,oi,wi,li,bi,kt,gi;if(0===s.duration||!it.animations&&!it.transitions)return yi();var si=s.event&&h(s.event)?s.event.join(" "):s.event,nr="",ui="";si&&s.structural?nr=e(si,"ng-",!0):si&&(nr=si);s.addClass&&(ui+=e(s.addClass,"-add"));s.removeClass&&(ui.length&&(ui+=" "),ui+=e(s.removeClass,"-remove"));s.applyClassesEarly&&ui.length&&ht(t,s);var fi=[nr,ui].join(" ").trim(),ai=pi+" "+fi,rr=e(fi,"-active"),pi=ft.to&&0<Object.keys(ft.to).length;return(0<(s.keyframeStyle||"").length||pi||fi)?(0<s.stagger?(ft=parseFloat(s.stagger),ti={transitionDelay:ft,animationDelay:ft,transitionDuration:0,animationDuration:0}):(hi=ct(g,ai),ti=bt(g,fi,hi,dt)),s.$$skipPreparationClasses||c.addClass(t,fi),s.transitionStyle&&(ft=[f,s.transitionStyle],y(g,ft),vt.push(ft)),0<=s.duration&&(ft=0<g.style[f].length,ft=yt(s.duration,ft),y(g,ft),vt.push(ft)),s.keyframeStyle&&(ft=[o,s.keyframeStyle],y(g,ft),vt.push(ft)),ki=ti?0<=s.staggerIndex?s.staggerIndex:n.count(hi):0,(si=0===ki)&&!s.skipBlocking&&b(g,9999),rt=wt(g,ai,hi),ii=rt.maxDelay,li=Math.max(ii,0),kt=rt.maxDuration,l={},l.hasTransitions=0<rt.transitionDuration,l.hasAnimations=0<rt.animationDuration,l.hasTransitionAll=l.hasTransitions&&"all"==rt.transitionProperty,l.applyTransitionDuration=pi&&(l.hasTransitions&&!l.hasTransitionAll||l.hasAnimations&&!l.hasTransitions),l.applyAnimationDuration=s.duration&&l.hasAnimations,l.applyTransitionDelay=tt(s.delay)&&(l.applyTransitionDuration||l.hasTransitions),l.applyAnimationDelay=tt(s.delay)&&l.hasAnimations,l.recalculateTimingStyles=0<ui.length,(l.applyTransitionDuration||l.applyAnimationDuration)&&(kt=s.duration?parseFloat(s.duration):kt,l.applyTransitionDuration&&(l.hasTransitions=!0,rt.transitionDuration=kt,ft=0<g.style[f+"Property"].length,vt.push(yt(kt,ft))),l.applyAnimationDuration&&(l.hasAnimations=!0,rt.animationDuration=kt,vt.push([st,kt+"s"]))),0===kt&&!l.recalculateTimingStyles)?yi():(null!=s.delay&&(ei=parseFloat(s.delay),l.applyTransitionDelay&&vt.push([p,ei+"s"]),l.applyAnimationDelay&&vt.push([d,ei+"s"])),null==s.duration&&0<rt.transitionDuration&&(l.recalculateTimingStyles=l.recalculateTimingStyles||si),bi=1e3*li,gi=1e3*kt,s.skipBlocking||(l.blockTransition=0<rt.transitionDuration,l.blockKeyframeAnimation=0<rt.animationDuration&&0<ti.animationDelay&&0===ti.animationDuration),lt(t,s),l.blockTransition||l.blockKeyframeAnimation?ir(kt):s.skipBlocking||b(g,!1),{$$willAnimate:!0,end:vi,start:function(){if(!ci)return wi={end:vi,cancel:tr,resume:null,pause:null},oi=new v(wi),pt(ur),oi}}):yi()}}]}]).provider("$$animateCssDriver",["$$animationProvider",function(n){n.drivers.push("$$animateCssDriver");this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$$body","$sniffer","$$jqLite",function(n,t,f,e,o,h,a){function p(n){return n.replace(/\bng-\S+\b/g,"")}function w(n,t){return c(n)&&(n=n.split(" ")),c(t)&&(t=t.split(" ")),n.filter(function(n){return-1===t.indexOf(n)}).join(" ")}function d(t,u,e){function l(n){var t={},u=r(n).getBoundingClientRect();return i(["width","height","top","left"],function(n){var i=u[n];switch(n){case"top":i+=v.scrollTop;break;case"left":i+=v.scrollLeft}t[n]=Math.floor(i)+"px"}),t}function a(){var t=p(e.attr("class")||""),i=w(t,y),t=w(y,t),i=n(o,{to:l(e),addClass:"ng-anchor-in "+i,removeClass:"ng-anchor-out "+t,delay:!0});return i.$$willAnimate?i:null}function c(){o.remove();u.removeClass("ng-animate-shim");e.removeClass("ng-animate-shim")}var o=s(r(u).cloneNode(!0)),y=p(o.attr("class")||""),h,k;return(u.addClass("ng-animate-shim"),e.addClass("ng-animate-shim"),o.addClass("ng-anchor"),b.append(o),t=function(){var t=n(o,{addClass:"ng-anchor-out",delay:!0,from:l(u)});return t.$$willAnimate?t:null}(),!t&&(h=a(),!h))?c():(k=t||h,{start:function(){function i(){n&&n.end()}var t,n=k.start();return n.done(function(){if(n=null,!h&&(h=a()))return n=h.start(),n.done(function(){n=null;c();t.complete()}),n;c();t.complete()}),t=new f({end:i,cancel:i})}})}function g(n,t,r,e){var o=y(n,u),s=y(t,u),h=[];return i(e,function(n){(n=d(r,n.out,n["in"]))&&h.push(n)}),o||s||0!==h.length?{start:function(){function r(){i(n,function(n){n.end()})}var n=[],t;return o&&n.push(o.start()),s&&n.push(s.start()),i(h,function(t){n.push(t.start())}),t=new f({end:r,cancel:r}),f.all(n,function(n){t.complete(n)}),t}}:void 0}function y(t){var r=t.element,i=t.options||{};return t.structural&&(i.event=t.event,i.structural=!0,i.applyClassesEarly=!0,"leave"===t.event&&(i.onDone=i.domOperation)),i.preparationClasses&&(i.event=k(i.event,i.preparationClasses)),t=n(r,i),t.$$willAnimate?t:null}var v,b;return!h.animations&&!h.transitions?u:(v=r(o),t=r(e),b=s(v.parentNode===t?v:t),l(a),function(n){return n.from&&n.to?g(n.from,n.to,n.classes,n.anchors):y(n)})}]}]).provider("$$animateJs",["$animateProvider",function(n){this.$get=["$injector","$$AnimateRunner","$$jqLite",function(t,r,f){function e(i){var r,f;i=h(i)?i:i.split(" ");for(var e=[],o={},u=0;u<i.length;u++)r=i[u],f=n.$$registeredAnimations[r],f&&!o[r]&&(e.push(t.get(f)),o[r]=!0);return e}var o=l(f);return function(n,t,f,s){function v(){s.domOperation();o(n,s)}function nt(n,t,i,f,e){switch(i){case"animate":t=[t,f.from,f.to,e];break;case"setClass":t=[t,d,g,e];break;case"addClass":t=[t,d,e];break;case"removeClass":t=[t,g,e];break;default:t=[t,e]}if(t.push(f),n=n.apply(n,t))if(bt(n.start)&&(n=n.start()),n instanceof r)n.done(e);else if(bt(n))return n;return u}function h(n,t,f,e,o){var s=[];return i(e,function(i){var e=i[o];e&&s.push(function(){var i,s,h=!1,o=function(n){h||(h=!0,(s||u)(n),i.complete(!n))};return i=new r({end:function(){o()},cancel:function(){o(!0)}}),s=nt(e,n,t,f,function(n){o(!1===n)}),i})}),s}function k(n,t,u,f,e){var o=h(n,t,u,f,e),s,c;return 0===o.length&&("beforeSetClass"===e?(s=h(n,"removeClass",u,f,"beforeRemoveClass"),c=h(n,"addClass",u,f,"beforeAddClass")):"setClass"===e&&(s=h(n,"removeClass",u,f,"removeClass"),c=h(n,"addClass",u,f,"addClass")),s&&(o=o.concat(s)),c&&(o=o.concat(c))),0!==o.length?function(n){var t=[];return o.length&&i(o,function(n){t.push(n())}),t.length?r.all(t,n):n(),function(n){i(t,function(t){n?t.cancel():t.end()})}}:void 0}var p,b;3===arguments.length&&it(f)&&(s=f,f=null);s=w(s);f||(f=n.attr("class")||"",s.addClass&&(f+=" "+s.addClass),s.removeClass&&(f+=" "+s.removeClass));var d=s.addClass,g=s.removeClass,y=e(f),c,l;return y.length&&("leave"==t?(b="leave",p="afterLeave"):(b="before"+t.charAt(0).toUpperCase()+t.substr(1),p=t),"enter"!==t&&"move"!==t&&(c=k(n,t,s,y,b)),l=k(n,t,s,y,p)),c||l?{start:function(){function e(t){f=!0;v();a(n,s);o.complete(t)}var i,t=[],f,o;return c&&t.push(function(n){i=c(n)}),t.length?t.push(function(n){v();n(!0)}):v(),l&&t.push(function(n){i=l(n)}),f=!1,o=new r({end:function(){f||((i||u)(void 0),e(void 0))},cancel:function(){f||((i||u)(!0),e(!0))}}),r.chain(t,e),o}}:void 0}}]}]).provider("$$animateJsDriver",["$$animationProvider",function(n){n.drivers.push("$$animateJsDriver");this.$get=["$$animateJs","$$AnimateRunner",function(n,t){function r(t){return n(t.element,t.event,t.classes,t.options)}return function(n){if(n.from&&n.to){var u=r(n.from),f=r(n.to);if(u||f)return{start:function(){function r(){return function(){i(n,function(n){n.end()})}}var n=[],e;return u&&n.push(u.start()),f&&n.push(f.start()),t.all(n,function(n){e.complete(n)}),e=new t({end:r(),cancel:r()})}}}else return r(n)}}]}])}(window,window.angular),function(n,t){"use strict";function r(n,r,u){i.directive(n,["$parse","$swipe",function(i,f){return function(e,o,s){function a(n){if(!h)return!1;var t=Math.abs(n.y-h.y);return n=(n.x-h.x)*r,c&&75>t&&0<n&&30<n&&.3>t/n}var v=i(s[n]),h,c,l=["touch"];t.isDefined(s.ngSwipeDisableMouse)||l.push("mouse");f.bind(o,{start:function(n){h=n;c=!0},cancel:function(){c=!1},end:function(n,t){a(n)&&e.$apply(function(){o.triggerHandler(u);v(e,{$event:t})})}},l)}}])}var i=t.module("ngTouch",[]);i.factory("$swipe",[function(){function i(n){n=n.originalEvent||n;var t=n.touches&&n.touches.length?n.touches:[n];return n=n.changedTouches&&n.changedTouches[0]||t[0],{x:n.clientX,y:n.clientY}}function n(n,i){var u=[];return t.forEach(n,function(n){(n=r[n][i])&&u.push(n)}),u.join(" ")}var r={mouse:{start:"mousedown",move:"mousemove",end:"mouseup"},touch:{start:"touchstart",move:"touchmove",end:"touchend",cancel:"touchcancel"}};return{bind:function(t,r,u){var e,o,s,h,f=!1,c;u=u||["mouse","touch"];t.on(n(u,"start"),function(n){s=i(n);f=!0;o=e=0;h=s;r.start&&r.start(s,n)});if(c=n(u,"cancel"),c)t.on(c,function(n){f=!1;r.cancel&&r.cancel(n)});t.on(n(u,"move"),function(n){if(f&&s){var t=i(n);e+=Math.abs(t.x-h.x);o+=Math.abs(t.y-h.y);h=t;10>e&&10>o||(o>e?(f=!1,r.cancel&&r.cancel(n)):(n.preventDefault(),r.move&&r.move(t,n)))}});t.on(n(u,"end"),function(n){f&&(f=!1,r.end&&r.end(i(n),n))})}}}]);i.config(["$provide",function(n){n.decorator("ngClickDirective",["$delegate",function(n){return n.shift(),n}])}]);i.directive("ngClick",["$parse","$timeout","$rootElement",function(n,i,r){function e(n,t,i){for(var u,f,r=0;r<n.length;r+=2)if(u=n[r+1],f=i,25>Math.abs(n[r]-t)&&25>Math.abs(u-f))return n.splice(r,r+2),!0;return!1}function s(n){var s;if(!(2500<Date.now()-o)){var i=n.touches&&n.touches.length?n.touches:[n],r=i[0].clientX,i=i[0].clientY;1>r&&1>i||f&&f[0]===r&&f[1]===i||(f&&(f=null),s=n.target,"label"===t.lowercase(s.nodeName||s[0]&&s[0].nodeName)&&(f=[r,i]),e(u,r,i)||(n.stopPropagation(),n.preventDefault(),n.target&&n.target.blur&&n.target.blur()))}}function h(n){n=n.touches&&n.touches.length?n.touches:[n];var t=n[0].clientX,r=n[0].clientY;u.push(t,r);i(function(){for(var n=0;n<u.length;n+=2)if(u[n]==t&&u[n+1]==r){u.splice(n,n+2);break}},2500,!1)}var o,u,f;return function(i,f,c){var w=n(c.ngClick),a=!1,l,v,y,p;f.on("touchstart",function(n){a=!0;l=n.target?n.target:n.srcElement;3==l.nodeType&&(l=l.parentNode);f.addClass("ng-click-active");v=Date.now();n=n.originalEvent||n;n=(n.touches&&n.touches.length?n.touches:[n])[0];y=n.clientX;p=n.clientY});f.on("touchcancel",function(){a=!1;f.removeClass("ng-click-active")});f.on("touchend",function(n){var b=Date.now()-v,i=n.originalEvent||n,w=(i.changedTouches&&i.changedTouches.length?i.changedTouches:i.touches&&i.touches.length?i.touches:[i])[0],i=w.clientX,w=w.clientY,k=Math.sqrt(Math.pow(i-y,2)+Math.pow(w-p,2));a&&750>b&&12>k&&(u||(r[0].addEventListener("click",s,!0),r[0].addEventListener("touchstart",h,!0),u=[]),o=Date.now(),e(u,i,w),l&&l.blur(),t.isDefined(c.disabled)&&!1!==c.disabled||f.triggerHandler("click",[n]));a=!1;f.removeClass("ng-click-active")});f.onclick=function(){};f.on("click",function(n,t){i.$apply(function(){w(i,{$event:t||n})})});f.on("mousedown",function(){f.addClass("ng-click-active")});f.on("mousemove mouseup",function(){f.removeClass("ng-click-active")})}}]);r("ngSwipeLeft",-1,"swipeleft");r("ngSwipeRight",1,"swiperight")}(window,window.angular),function(n,t,i){"use strict";function d(n){var i=[];return o(i,t.noop).chars(n),i.join("")}function r(n,i){for(var f={},u=n.split(","),r=0;r<u.length;r++)f[i?t.lowercase(u[r]):u[r]]=!0;return f}function g(n,i){function k(n,r,e,s){if(r=t.lowercase(r),v[r])for(;f.last()&&y[f.last()];)o("",f.last());a[r]&&f.last()==r&&o("",r);(s=l[r]||!!s)||f.push(r);var h={};e.replace(tt,function(n,t,i,r,f){h[t]=u(i||r||f||"")});i.start&&i.start(r,h,s)}function o(n,r){var u=0,e;if(r=t.lowercase(r))for(u=f.length-1;0<=u&&f[u]!=r;u--);if(0<=u){for(e=f.length-1;e>=u;e--)i.end&&i.end(f[e]);f.length=u}}"string"!=typeof n&&(n=null===n||"undefined"==typeof n?"":""+n);var r,e,f=[],b=n,w;for(f.last=function(){return f[f.length-1]};n;){if(w="",e=!0,f.last()&&p[f.last()]?(n=n.replace(new RegExp("([\\W\\w]*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(n,t){return t=t.replace(ut,"$1").replace(ft,"$1"),i.chars&&i.chars(u(t)),""}),o("",f.last())):(0===n.indexOf("<!--")?(r=n.indexOf("--",4),0<=r&&n.lastIndexOf("-->",r)===r&&(i.comment&&i.comment(n.substring(4,r)),n=n.substring(r+3),e=!1)):c.test(n)?(r=n.match(c))&&(n=n.replace(r[0],""),e=!1):rt.test(n)?(r=n.match(h))&&(n=n.substring(r[0].length),r[0].replace(h,o),e=!1):it.test(n)&&((r=n.match(s))?(r[4]&&(n=n.substring(r[0].length),r[0].replace(s,k)),e=!1):(w+="<",n=n.substring(1))),e&&(r=n.indexOf("<"),w+=0>r?n:n.substring(0,r),n=0>r?"":n.substring(r),i.chars&&i.chars(u(w)))),n==b)throw nt("badparse",n);b=n}o()}function u(n){return n?(f.innerHTML=n.replace(/</g,"&lt;"),f.textContent):""}function e(n){return n.replace(/&/g,"&amp;").replace(et,function(n){var t=n.charCodeAt(0);return n=n.charCodeAt(1),"&#"+(1024*(t-55296)+(n-56320)+65536)+";"}).replace(ot,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function o(n,i){var u=!1,r=t.bind(n,n.push);return{start:function(n,f,o){n=t.lowercase(n);!u&&p[n]&&(u=n);u||!0!==w[n]||(r("<"),r(n),t.forEach(f,function(u,f){var o=t.lowercase(f),s="img"===n&&"src"===o||"background"===o;!0===k[o]&&(!0!==b[o]||i(u,s))&&(r(" "),r(f),r('="'),r(e(u)),r('"'))}),r(o?"/>":">"))},end:function(n){n=t.lowercase(n);u||!0!==w[n]||(r("<\/"),r(n),r(">"));n==u&&(u=!1)},chars:function(n){u||r(e(n))}}}var nt=t.$$minErr("$sanitize"),s=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,h=/^<\/\s*([\w:-]+)[^>]*>/,tt=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,it=/^</,rt=/^<\//,ut=/\x3c!--(.*?)--\x3e/g,c=/<!DOCTYPE([^>]*?)>/i,ft=/<!\[CDATA\[(.*?)]]\x3e/g,et=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ot=/([^\#-~| |!])/g,l=r("area,br,col,hr,img,wbr"),k,f;n=r("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr");i=r("rp,rt");var a=t.extend({},i,n),v=t.extend({},n,r("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul")),y=t.extend({},i,r("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var"));n=r("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan,use");var p=r("script,style"),w=t.extend({},l,v,y,a,n),b=r("background,cite,href,longdesc,src,usemap,xlink:href");n=r("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width");i=r("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan",!0);k=t.extend({},b,i,n);f=document.createElement("pre");t.module("ngSanitize",[]).provider("$sanitize",function(){this.$get=["$$sanitizeUri",function(n){return function(t){var i=[];return g(t,o(i,function(t,i){return!/^unsafe/.test(n(t,i))})),i.join("")}}]});t.module("ngSanitize").filter("linky",["$sanitize",function(n){var i=/((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i,r=/^mailto:/i;return function(u,f){function c(n){n&&o.push(d(n))}function a(n,i){o.push("<a ");t.isDefined(f)&&o.push('target="',f,'" ');o.push('href="',n.replace(/"/g,"&quot;"),'">');c(i);o.push("<\/a>")}if(!u)return u;for(var e,s=u,o=[],h,l;e=s.match(i);)h=e[0],e[2]||e[4]||(h=(e[3]?"http://":"mailto:")+h),l=e.index,c(s.substr(0,l)),a(h,e[0].replace(r,"")),s=s.substring(l+e[0].length);return c(s),n(o.join(""))}}])}(window,window.angular),function(n,t,i){"use strict";function u(n,i){i=i||{};t.forEach(i,function(n,t){delete i[t]});for(var r in n)n.hasOwnProperty(r)&&("$"!==r.charAt(0)||"$"!==r.charAt(1))&&(i[r]=n[r]);return i}var r=t.$$minErr("$resource"),f=/^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;t.module("ngResource",["ng"]).provider("$resource",function(){var e=/^https?:\/\/[^\/]*/,n=this;this.defaults={stripTrailingSlashes:!0,actions:{get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}}};this.$get=["$http","$q",function(o,s){function a(t,i){this.template=t;this.defaults=c({},n.defaults,i);this.urlParams={}}function v(e,w,b,k){function g(n,u){var e={};return u=c({},w,u),h(u,function(u,o){var h,s,a;if(l(u)&&(u=u()),u&&u.charAt&&"@"==u.charAt(0)){if(h=n,s=u.substr(1),null==s||""===s||"hasOwnProperty"===s||!f.test("."+s))throw r("badmember",s);for(var s=s.split("."),c=0,v=s.length;c<v&&t.isDefined(h);c++)a=s[c],h=null!==h?h[a]:i}else h=u;e[o]=h}),e}function nt(n){return n.resource}function d(n){u(n||{},this)}var tt=new a(e,k);return b=c({},n.defaults.actions,b),d.prototype.toJSON=function(){var n=c({},this);return delete n.$promise,delete n.$resolved,n},h(b,function(n,f){var e=/^(POST|PUT|PATCH)$/i.test(n.method);d[f]=function(a,v,w,b){var it={},rt,ut,et;switch(arguments.length){case 4:et=b;ut=w;case 3:case 2:if(l(v)){if(l(a)){ut=a;et=v;break}ut=v;et=w}else{it=a;rt=v;ut=w;break}case 1:l(a)?ut=a:e?rt=a:it=a;break;case 0:break;default:throw r("badargs",arguments.length);}var ot=this instanceof d,k=ot?rt:n.isArray?[]:new d(rt),ft={},st=n.interceptor&&n.interceptor.response||nt,ht=n.interceptor&&n.interceptor.responseError||i;return h(n,function(n,t){"params"!=t&&"isArray"!=t&&"interceptor"!=t&&(ft[t]=p(n))}),e&&(ft.data=rt),tt.setUrlParams(ft,c({},g(rt,n.params||{}),it),n.url),it=o(ft).then(function(i){var e=i.data,o=k.$promise;if(e){if(t.isArray(e)!==!!n.isArray)throw r("badcfg",f,n.isArray?"array":"object",t.isArray(e)?"array":"object",ft.method,ft.url);n.isArray?(k.length=0,h(e,function(n){"object"==typeof n?k.push(new d(n)):k.push(n)})):(u(e,k),k.$promise=o)}return k.$resolved=!0,i.resource=k,i},function(n){return k.$resolved=!0,(et||y)(n),s.reject(n)}),it=it.then(function(n){var t=st(n);return(ut||y)(t,n.headers),t},ht),ot?it:(k.$promise=it,k.$resolved=!1,k)};d.prototype["$"+f]=function(n,t,i){return l(n)&&(i=t,t=n,n={}),n=d[f].call(this,n,this,t,i),n.$promise||n}}),d.bind=function(n){return v(e,c({},w,n),b)},d}var y=t.noop,h=t.forEach,c=t.extend,p=t.copy,l=t.isFunction;return a.prototype={setUrlParams:function(n,i,u){var o=this,f=u||o.template,s,c,l="",a=o.urlParams={};h(f.split(/\W/),function(n){if("hasOwnProperty"===n)throw r("badname");!/^\d+$/.test(n)&&n&&new RegExp("(^|[^\\\\]):"+n+"(\\W|$)").test(f)&&(a[n]=!0)});f=f.replace(/\\:/g,":");f=f.replace(e,function(n){return l=n,""});i=i||{};h(o.urlParams,function(n,r){s=i.hasOwnProperty(r)?i[r]:o.defaults[r];t.isDefined(s)&&null!==s?(c=encodeURIComponent(s).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"%20").replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+"),f=f.replace(new RegExp(":"+r+"(\\W|$)","g"),function(n,t){return c+t})):f=f.replace(new RegExp("(/?):"+r+"(\\W|$)","g"),function(n,t,i){return"/"==i.charAt(0)?i:t+i})});o.defaults.stripTrailingSlashes&&(f=f.replace(/\/+$/,"")||"/");f=f.replace(/\/\.(?=\w+($|\?))/,".");n.url=l+f.replace(/\/\\\./,"/.");h(i,function(t,i){o.urlParams[i]||(n.params=n.params||{},n.params[i]=t)})}},v}]})}(window,window.angular);angular.module("RecursionHelper",[]).factory("RecursionHelper",["$compile",function(n){return{compile:function(t,i){angular.isFunction(i)&&(i={post:i});var r,u=t.contents().remove();return{pre:i&&i.pre?i.pre:null,post:function(t,f){r||(r=n(u));r(t,function(n){f.append(n)});i&&i.post&&i.post.apply(null,arguments)}}}}}]);typeof module!="undefined"&&typeof exports!="undefined"&&module.exports===exports&&(module.exports="ui.router"),function(n,t,i){"use strict";function w(n,t){return r(new(r(function(){},{prototype:n})),t)}function k(n){return e(arguments,function(t){t!==n&&e(t,function(t,i){n.hasOwnProperty(i)||(n[i]=t)})}),n}function bt(n,t){var r=[],i;for(i in n.path){if(n.path[i]!==t.path[i])break;r.push(n.path[i])}return r}function p(n){if(Object.keys)return Object.keys(n);var t=[];return e(n,function(n,i){t.push(i)}),t}function s(n,t){if(Array.prototype.indexOf)return n.indexOf(t,Number(arguments[2])||0);var r=n.length>>>0,i=Number(arguments[2])||0;for(i=i<0?Math.ceil(i):Math.floor(i),i<0&&(i+=r);i<r;i++)if(i in n&&n[i]===t)return i;return-1}function it(n,t,i,u){var o=bt(i,u),f,c={},l=[],h,e;for(h in o)if(o[h].params&&(f=p(o[h].params),f.length))for(e in f)s(l,f[e])>=0||(l.push(f[e]),c[f[e]]=n[f[e]]);return r({},c,t)}function d(n,t,i){var f,r,u;if(!i){i=[];for(f in n)i.push(f)}for(r=0;r<i.length;r++)if(u=i[r],n[u]!=t[u])return!1;return!0}function g(n,t){var i={};return e(n,function(n){i[n]=t[n]}),i}function kt(n){var t={},i=Array.prototype.concat.apply(Array.prototype,Array.prototype.slice.call(arguments,1));return e(i,function(i){i in n&&(t[i]=n[i])}),t}function b(n){var i={},r=Array.prototype.concat.apply(Array.prototype,Array.prototype.slice.call(arguments,1)),t;for(t in n)s(r,t)==-1&&(i[t]=n[t]);return i}function nt(n,t){var r=v(n),i=r?[]:{};return e(n,function(n,u){t(n,u)&&(i[r?i.length:u]=n)}),i}function y(n,t){var i=v(n)?[]:{};return e(n,function(n,r){i[r]=t(n,r)}),i}function rt(n,t){var h=1,c=2,o={},a=[],v=o,y=r(n.when(o),{$$promises:o,$$values:o});this.study=function(o){function tt(n,i){if(g[i]!==c){if(d.push(i),g[i]===h){d.splice(0,s(d,i));throw new Error("Cyclic dependency: "+d.join(" -> "));}if(g[i]=h,f(n))w.push(i,[function(){return t.get(n)}],a);else{var r=t.annotate(n);e(r,function(n){n!==i&&o.hasOwnProperty(n)&&tt(o[n],n)});w.push(i,n,r)}d.pop();g[i]=c}}function it(n){return l(n)&&n.then&&n.$$promises}if(!l(o))throw new Error("'invocables' must be an object");var nt=p(o||{}),w=[],d=[],g={};return e(o,tt),o=d=g=null,function(f,o,s){function p(){--et||(ut||k(c,o.$$values),h.$$values=c,h.$$promises=h.$$promises||!0,delete h.$$inheritedValues,tt.resolve(c))}function g(n){h.$$failure=n;tt.reject(n)}function ft(i,r,o){function a(n){l.reject(n);g(n)}function y(){if(!u(h.$$failure))try{l.resolve(t.invoke(r,s,c));l.promise.then(function(n){c[i]=n;p()},a)}catch(n){a(n)}}var l=n.defer(),v=0;e(o,function(n){d.hasOwnProperty(n)&&!f.hasOwnProperty(n)&&(v++,d[n].then(function(t){c[n]=t;--v||y()},a))});v||y();d[i]=l.promise}var a,rt;if(it(f)&&s===i&&(s=o,o=f,f=null),f){if(!l(f))throw new Error("'locals' must be an object");}else f=v;if(o){if(!it(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()");}else o=y;var tt=n.defer(),h=tt.promise,d=h.$$promises={},c=r({},f),et=1+w.length/3,ut=!1;if(u(o.$$failure))return g(o.$$failure),h;for(o.$$inheritedValues&&k(c,b(o.$$inheritedValues,nt)),r(d,o.$$promises),o.$$values?(ut=k(c,b(o.$$values,nt)),h.$$inheritedValues=b(o.$$values,nt),p()):(o.$$inheritedValues&&(h.$$inheritedValues=b(o.$$inheritedValues,nt)),o.then(p,g)),a=0,rt=w.length;a<rt;a+=3)f.hasOwnProperty(w[a])?p():ft(w[a],w[a+1],w[a+2]);return h}};this.resolve=function(n,t,i,r){return this.study(n)(t,i,r)}}function ut(n,t,i){this.fromConfig=function(n,t,i){return u(n.template)?this.fromString(n.template,t):u(n.templateUrl)?this.fromUrl(n.templateUrl,t):u(n.templateProvider)?this.fromProvider(n.templateProvider,t,i):null};this.fromString=function(n,t){return h(n)?n(t):n};this.fromUrl=function(i,r){return h(i)&&(i=i(r)),i==null?null:n.get(i,{cache:t,headers:{Accept:"text/html"}}).then(function(n){return n.data})};this.fromProvider=function(n,t,r){return i.invoke(n,null,r||{params:t})}}function a(n,t,u){function d(t,i,r,u){if(it.push(t),tt[t])return tt[t];if(!/^\w+(-+\w+)*(?:\[\])?$/.test(t))throw new Error("Invalid parameter name '"+t+"' in pattern '"+n+"'");if(k[t])throw new Error("Duplicate parameter name '"+t+"' in pattern '"+n+"'");return k[t]=new c.Param(t,i,r,u),k[t]}function g(n,t,i,r){var u=["",""],f=n.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!t)return f;switch(i){case!1:u=["(",")"+(r?"?":"")];break;case!0:u=["?(",")?"];break;default:u=["("+i+"|",")?"]}return f+u[0]+t+u[1]}function nt(r,u){var e,f,s,h,l;return e=r[2]||r[3],l=t.params[e],s=n.substring(o,r.index),f=u?r[4]:r[4]||(r[1]=="*"?".*":null),h=c.type(f||"string")||w(c.type("string"),{pattern:new RegExp(f,t.caseInsensitive?"i":i)}),{id:e,regexp:f,segment:s,type:h,cfg:l}}var f,s,e,h,v;t=r({params:{}},l(t)?t:{});var y=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,rt=/([:]?)([\w\[\]-]+)|\{([\w\[\]-]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,p="^",o=0,a,b=this.segments=[],tt=u?u.params:{},k=this.params=u?u.params.$$new():new c.ParamSet,it=[];for(this.source=n;a=y.exec(n);){if(f=nt(a,!1),f.segment.indexOf("?")>=0)break;s=d(f.id,f.type,f.cfg,"path");p+=g(f.segment,s.type.pattern.source,s.squash,s.isOptional);b.push(f.segment);o=y.lastIndex}if(e=n.substring(o),h=e.indexOf("?"),h>=0){if(v=this.sourceSearch=e.substring(h),e=e.substring(0,h),this.sourcePath=n.substring(0,o+h),v.length>0)for(o=0;a=rt.exec(v);)f=nt(a,!0),s=d(f.id,f.type,f.cfg,"search"),o=y.lastIndex}else this.sourcePath=n,this.sourceSearch="";p+=g(e)+(t.strict===!1?"/?":"")+"$";b.push(e);this.regexp=new RegExp(p,t.caseInsensitive?"i":i);this.prefix=b[0];this.$$paramNames=it}function o(n){r(this,n)}function ft(){function rt(n){return n!=null?n.toString().replace(/\//g,"%2F"):n}function ht(n){return n!=null?n.toString().replace(/%2F/g,"/"):n}function ct(){return{strict:g,caseInsensitive:d}}function ut(n){return h(n)||v(n)&&h(n[n.length-1])}function et(){while(it.length){var i=it.shift();if(i.pattern)throw new Error("You cannot override a type's .pattern at runtime.");t.extend(n[i.name],b.invoke(i.def))}}function k(n){r(this,n||{})}c=this;var d=!1,g=!0,tt=!1,n={},ot=!0,it=[],b,st={string:{encode:rt,decode:ht,is:function(n){return n==null||!u(n)||typeof n=="string"},pattern:/[^/]*/},int:{encode:rt,decode:function(n){return parseInt(n,10)},is:function(n){return u(n)&&this.decode(n.toString())===n},pattern:/\d+/},bool:{encode:function(n){return n?1:0},decode:function(n){return parseInt(n,10)!==0},is:function(n){return n===!0||n===!1},pattern:/0|1/},date:{encode:function(n){return this.is(n)?[n.getFullYear(),("0"+(n.getMonth()+1)).slice(-2),("0"+n.getDate()).slice(-2)].join("-"):i},decode:function(n){if(this.is(n))return n;var t=this.capture.exec(n);return t?new Date(t[1],t[2]-1,t[3]):i},is:function(n){return n instanceof Date&&!isNaN(n.valueOf())},equals:function(n,t){return this.is(n)&&this.is(t)&&n.toISOString()===t.toISOString()},pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/},json:{encode:t.toJson,decode:t.fromJson,is:t.isObject,equals:t.equals,pattern:/[^/]*/},any:{encode:t.identity,decode:t.identity,equals:t.equals,pattern:/.*/}};ft.$$getDefaultValue=function(n){if(!ut(n.value))return n.value;if(!b)throw new Error("Injectable functions cannot be called at configuration time");return b.invoke(n.value)};this.caseInsensitive=function(n){return u(n)&&(d=n),d};this.strictMode=function(n){return u(n)&&(g=n),g};this.defaultSquashPolicy=function(n){if(!u(n))return tt;if(n!==!0&&n!==!1&&!f(n))throw new Error("Invalid squash policy: "+n+". Valid policies: false, true, arbitrary-string");return tt=n,n};this.compile=function(n,t){return new a(n,r(ct(),t))};this.isMatcher=function(n){if(!l(n))return!1;var t=!0;return e(a.prototype,function(i,r){h(i)&&(t=t&&u(n[r])&&h(n[r]))}),t};this.type=function(t,i,f){if(!u(i))return n[t];if(n.hasOwnProperty(t))throw new Error("A type named '"+t+"' has already been defined.");return n[t]=new o(r({name:t},i)),f&&(it.push({name:t,def:f}),ot||et()),this};e(st,function(t,i){n[i]=new o(r({name:i},t))});n=w(n,{});this.$get=["$injector",function(t){return b=t,ot=!1,et(),e(st,function(t,i){n[i]||(n[i]=new o(t))}),this}];this.Param=function(t,e,h,c){function g(n){var t=l(n)?p(n):[],i=s(t,"value")===-1&&s(t,"type")===-1&&s(t,"squash")===-1&&s(t,"array")===-1;return i&&(n={value:n}),n.$$fn=ut(n.value)?n.value:function(){return n.value},n}function it(i,r,u){if(i.type&&r)throw new Error("Param '"+t+"' has two type configurations.");return r?r:i.type?i.type instanceof o?i.type:new o(i.type):u==="config"?n.any:n.string}function rt(){var n={array:c==="search"?"auto":!1},i=t.match(/\[\]$/)?{array:!0}:{};return r(n,i,h).array}function ft(n,t){var i=n.squash;if(!t||i===!1)return!1;if(!u(i)||i==null)return tt;if(i===!0||f(i))return i;throw new Error("Invalid squash policy: '"+i+"'. Valid policies: false, true, or arbitrary string");}function et(n,t,r,u){var e,o,h=[{from:"",to:r||t?i:""},{from:null,to:r||t?i:""}];return e=v(n.replace)?n.replace:[],f(u)&&e.push({from:u,to:i}),o=y(e,function(n){return n.from}),nt(h,function(n){return s(o,n.from)===-1}).concat(e)}function ot(){if(!b)throw new Error("Injectable functions cannot be called at configuration time");var n=b.invoke(h.$$fn);if(n!==null&&n!==i&&!w.type.is(n))throw new Error("Default value ("+n+") for parameter '"+w.id+"' is not an instance of Type ("+w.type.name+")");return n}function st(n){function t(n){return function(t){return t.from===n}}function i(n){var i=y(nt(w.replace,t(n)),function(n){return n.to});return i.length?i[0]:n}return n=i(n),u(n)?w.type.$normalize(n):ot()}function ht(){return"{Param:"+t+" "+e+" squash: '"+d+"' optional: "+k+"}"}var w=this,a;h=g(h);e=it(h,e,c);a=rt();e=a?e.$asArray(a,c==="search"):e;e.name!=="string"||a||c!=="path"||h.value!==i||(h.value="");var k=h.value!==i,d=ft(h,k),ct=et(h,a,k,d);r(this,{id:t,type:e,location:c,array:a,squash:d,replace:ct,isOptional:k,value:st,dynamic:i,config:h,toString:ht})};k.prototype={$$new:function(){return w(this,r(new k,{$$parent:this}))},$$keys:function(){for(var t=[],i=[],n=this,r=p(k.prototype);n;)i.push(n),n=n.$$parent;return i.reverse(),e(i,function(n){e(p(n),function(n){s(t,n)===-1&&s(r,n)===-1&&t.push(n)})}),t},$$values:function(n){var t={},i=this;return e(i.$$keys(),function(r){t[r]=i[r].value(n&&n[r])}),t},$$equals:function(n,t){var i=!0,r=this;return e(r.$$keys(),function(u){var f=n&&n[u],e=t&&t[u];r[u].type.equals(f,e)||(i=!1)}),i},$$validates:function(n){for(var e=this.$$keys(),r,u,o,s,f=0;f<e.length;f++){if(r=this[e[f]],u=n[e[f]],(u===i||u===null)&&r.isOptional)break;if((o=r.type.$normalize(u),!r.type.is(o))||(s=r.type.encode(o),t.isString(s)&&!r.type.pattern.exec(s)))return!1}return!0},$$parent:i};this.ParamSet=k}function et(n,e){function p(n){var t=/^\^((?:\\[^a-zA-Z0-9]|[^\\\[\]\^$*+?.()|{}]+)*)/.exec(n.source);return t!=null?t[1].replace(/\\(.)/g,"$1"):""}function w(n,t){return n.replace(/\$(\$|\d{1,2})/,function(n,i){return t[i==="$"?0:Number(i)]})}function c(n,t,i){if(!i)return!1;var r=n.invoke(t,t,{$match:i});return u(r)?r:!0}function l(r,u,e,h){function b(n,t,i){return l==="/"?n:t?l.slice(0,-1)+n:i?l.slice(1)+n:n}function p(n){function u(n){var t=n(e,r);return t?(f(t)&&r.replace().url(t),!0):!1}var l,h,t;if(!n||!n.defaultPrevented){for(l=c&&r.url()===c,c=i,h=o.length,t=0;t<h;t++)if(u(o[t]))return;s&&u(s)}}function w(){return y=y||u.$on("$locationChangeSuccess",p)}var l=h.baseHref(),v=r.url(),c;return a||w(),{sync:function(){p()},listen:function(){return w()},update:function(n){if(n){v=r.url();return}r.url()!==v&&(r.url(v),r.replace())},push:function(n,t,u){var f=n.format(t||{});f!==null&&t&&t["#"]&&(f+="#"+t["#"]);r.url(f);c=u&&u.$$avoidResync?r.url():i;u&&u.replace&&r.replace()},href:function(i,u,f){var o,e,h,s;return i.validates(u)?(o=n.html5Mode(),t.isObject(o)&&(o=o.enabled),e=i.format(u),f=f||{},o||e===null||(e="#"+n.hashPrefix()+e),e!==null&&u&&u["#"]&&(e+="#"+u["#"]),e=b(e,o,f.absolute),!f.absolute||!e)?e:(h=!o&&e?"/":"",s=r.port(),s=s===80||s===443?"":":"+s,[r.protocol(),"://",r.host(),s,h,e].join("")):null}}}var o=[],s=null,a=!1,y;this.rule=function(n){if(!h(n))throw new Error("'rule' must be a function");return o.push(n),this};this.otherwise=function(n){if(f(n)){var t=n;n=function(){return t}}else if(!h(n))throw new Error("'rule' must be a function");return s=n,this};this.when=function(n,t){var i,u=f(t),l,o,s;if(f(n)&&(n=e.compile(n)),!u&&!h(t)&&!v(t))throw new Error("invalid 'handler' in when()");l={matcher:function(n,t){return u&&(i=e.compile(t),t=["$match",function(n){return i.format(n)}]),r(function(i,r){return c(i,t,n.exec(r.path(),r.search()))},{prefix:f(n.prefix)?n.prefix:""})},regex:function(n,t){if(n.global||n.sticky)throw new Error("when() RegExp must not be global or sticky");return u&&(i=t,t=["$match",function(n){return w(i,n)}]),r(function(i,r){return c(i,t,n.exec(r.path()))},{prefix:p(n)})}};o={matcher:e.isMatcher(n),regex:n instanceof RegExp};for(s in o)if(o[s])return this.rule(l[s](n,t));throw new Error("invalid 'what' in when()");};this.deferIntercept=function(n){n===i&&(n=!0);a=n};this.$get=l;l.$inject=["$location","$rootScope","$injector","$browser"]}function ot(n,o){function ot(n){return n.indexOf(".")===0||n.indexOf("^")===0}function b(n,t){var s;if(!n)return i;var h=f(n),u=h?n:n.name,c=ot(u);if(c){if(!t)throw new Error("No reference point given for path '"+u+"'");t=b(t);for(var r=u.split("."),e=0,l=r.length,o=t;e<l;e++){if(r[e]===""&&e===0){o=t;continue}if(r[e]==="^"){if(!o.parent)throw new Error("Path '"+u+"' not valid for state '"+t.name+"'");o=o.parent;continue}break}r=r.slice(e).join(".");u=o.name+(o.name&&r?".":"")+r}return(s=tt[u],s&&(h||!h&&(s===n||s.self===n)))?s:i}function st(n,t){rt[n]||(rt[n]=[]);rt[n].push(t)}function ht(n){for(var t=rt[n]||[];t.length;)ut(t.shift())}function ut(t){var i,u,r;if(t=w(t,{self:t,resolve:t.resolve||{},toString:function(){return this.name}}),i=t.name,!f(i)||i.indexOf("@")>=0)throw new Error("State must have a valid name");if(tt.hasOwnProperty(i))throw new Error("State '"+i+"'' is already defined");if(u=i.indexOf(".")!==-1?i.substring(0,i.lastIndexOf(".")):f(t.parent)?t.parent:l(t.parent)&&f(t.parent.name)?t.parent.name:"",u&&!tt[u])return st(u,t.self);for(r in k)h(k[r])&&(t[r]=k[r](t,k.$delegates[r]));return tt[i]=t,!t[et]&&t.url&&n.when(t.url,["$match","$stateParams",function(n,i){a.$current.navigable==t&&d(n,i)||a.transitionTo(t,n,{inherit:!0,location:!1})}]),ht(i),t}function ct(n){return n.indexOf("*")>-1}function lt(n){for(var t=n.split("."),i=a.$current.name.split("."),r=0,u=t.length;r<u;r++)t[r]==="*"&&(i[r]="*");return(t[0]==="**"&&(i=i.slice(s(i,t[1])),i.unshift("**")),t[t.length-1]==="**"&&(i.splice(s(i,t[t.length-2])+1,Number.MAX_VALUE),i.push("**")),t.length!=i.length)?!1:i.join("")===t.join("")}function at(n,t){return f(n)&&!u(t)?k[n]:!h(t)||!f(n)?this:(k[n]&&!k.$delegates[n]&&(k.$delegates[n]=k[n]),k[n]=t,this)}function vt(n,t){return l(n)?t=n:t.name=n,ut(t),this}function ft(n,o,s,c,k,rt,ut){function ht(t,i,r,u){var e=n.$broadcast("$stateNotFound",t,i,r),f;return e.defaultPrevented?(ut.update(),ot):e.retry?u.$retry?(ut.update(),st):(f=a.transition=o.when(e.retry),f.then(function(){return f!==a.transition?ft:(t.options.$retry=!0,a.transitionTo(t.to,t.toParams,t.options))},function(){return ot}),ut.update(),f):null}function at(n,i,r,u,f,l){function p(){var i=[];return e(n.views,function(r,u){var e=r.resolve&&r.resolve!==n.resolve?r.resolve:{};e.$template=[function(){return s.load(u,{view:r,locals:f.globals,params:y,notify:l.notify})||""}];i.push(k.resolve(e,f.globals,f.resolve,n).then(function(i){if(h(r.controllerProvider)||v(r.controllerProvider)){var o=t.extend({},e,f.globals);i.$$controller=c.invoke(r.controllerProvider,null,o)}else i.$$controller=r.controller;i.$$state=n;i.$$controllerAs=r.controllerAs;f[u]=i}))}),o.all(i).then(function(){return f.globals})}var y=r?i:g(n.params.$$keys(),i),w={$stateParams:y},a;return f.resolve=k.resolve(n.resolve,w,f.resolve,n),a=[f.resolve.then(function(n){f.globals=n})],u&&a.push(u),o.all(a).then(p).then(function(){return f})}var ft=o.reject(new Error("transition superseded")),vt=o.reject(new Error("transition prevented")),ot=o.reject(new Error("transition aborted")),st=o.reject(new Error("transition failed"));return nt.locals={resolve:null,globals:{$stateParams:{}}},a={params:{},current:nt.self,$current:nt,transition:null},a.reload=function(n){return a.transitionTo(a.current,rt,{reload:n||!0,inherit:!1,notify:!0})},a.go=function(n,t,i){return a.transitionTo(n,t,r({inherit:!0,relative:a.$current},i))},a.transitionTo=function(t,i,e){var tt,dt,gt,lt,ot,pt;i=i||{};e=r({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},e||{});var y=a.$current,p=a.params,ct=y.path,ni,v=b(t,e.relative),bt=i["#"];if(!u(v)){if(tt={to:t,toParams:i,options:e},dt=ht(tt,y.self,p,e),dt)return dt;if(t=tt.to,i=tt.toParams,e=tt.options,v=b(t,e.relative),!u(v)){if(!e.relative)throw new Error("No such state '"+t+"'");throw new Error("Could not resolve '"+t+"' from state '"+e.relative+"'");}}if(v[et])throw new Error("Cannot transition to abstract state '"+t+"'");if(e.inherit&&(i=it(rt,i||{},a.$current,v)),!v.params.$$validates(i))return st;i=v.params.$$values(i);t=v;var k=t.path,h=0,s=k[h],d=nt.locals,kt=[];if(e.reload){if(f(e.reload)||l(e.reload)){if(l(e.reload)&&!e.reload.name)throw new Error("Invalid reload state object");if(gt=e.reload===!0?ct[0]:b(e.reload),e.reload&&!gt)throw new Error("No such reload state '"+(f(e.reload)?e.reload:e.reload.name)+"'");while(s&&s===ct[h]&&s!==gt)d=kt[h]=s.locals,h++,s=k[h]}}else while(s&&s===ct[h]&&s.ownParams.$$equals(i,p))d=kt[h]=s.locals,h++,s=k[h];if(yt(t,i,y,p,d,e))return bt&&(i["#"]=bt),a.params=i,wt(a.params,rt),e.location&&t.navigable&&t.navigable.url&&(ut.push(t.navigable.url,i,{$$avoidResync:!0,replace:e.location==="replace"}),ut.update(!0)),a.transition=null,o.when(a.current);if(i=g(t.params.$$keys(),i||{}),e.notify&&n.$broadcast("$stateChangeStart",t.self,i,y.self,p).defaultPrevented)return n.$broadcast("$stateChangeCancel",t.self,i,y.self,p),ut.update(),vt;for(lt=o.when(d),ot=h;ot<k.length;ot++,s=k[ot])d=kt[ot]=w(d),lt=at(s,i,s===t,lt,d,e);return pt=a.transition=lt.then(function(){var r,u,f;if(a.transition!==pt)return ft;for(r=ct.length-1;r>=h;r--)f=ct[r],f.self.onExit&&c.invoke(f.self.onExit,f.self,f.locals.globals),f.locals=null;for(r=h;r<k.length;r++)u=k[r],u.locals=kt[r],u.self.onEnter&&c.invoke(u.self.onEnter,u.self,u.locals.globals);return(bt&&(i["#"]=bt),a.transition!==pt)?ft:(a.$current=t,a.current=t.self,a.params=i,wt(a.params,rt),a.transition=null,e.location&&t.navigable&&ut.push(t.navigable.url,t.navigable.locals.globals.$stateParams,{$$avoidResync:!0,replace:e.location==="replace"}),e.notify&&n.$broadcast("$stateChangeSuccess",t.self,i,y.self,p),ut.update(!0),a.current)},function(r){return a.transition!==pt?ft:(a.transition=null,ni=n.$broadcast("$stateChangeError",t.self,i,y.self,p,r),ni.defaultPrevented||ut.update(),o.reject(r))})},a.is=function(n,t,f){f=r({relative:a.$current},f||{});var e=b(n,f.relative);return u(e)?a.$current!==e?!1:t?d(e.params.$$values(t),rt):!0:i},a.includes=function(n,t,e){if(e=r({relative:a.$current},e||{}),f(n)&&ct(n)){if(!lt(n))return!1;n=a.$current.name}var o=b(n,e.relative);return u(o)?u(a.$current.includes[o.name])?t?d(o.params.$$values(t),rt,p(t)):!0:!1:i},a.href=function(n,t,f){var e,o;return(f=r({lossy:!0,inherit:!0,absolute:!1,relative:a.$current},f||{}),e=b(n,f.relative),!u(e))?null:(f.inherit&&(t=it(rt,t||{},a.$current,e)),o=e&&f.lossy?e.navigable:e,!o||o.url===i||o.url===null)?null:ut.href(o.url,g(e.params.$$keys().concat("#"),t||{}),{absolute:f.absolute})},a.get=function(n,t){if(arguments.length===0)return y(p(tt),function(n){return tt[n].self});var i=b(n,t||a.$current);return i&&i.self?i.self:null},a}function yt(n,t,i,r,u,f){function e(n,t,i){function r(t){return n.params[t].location!="search"}var u=n.params.$$keys().filter(r),f=kt.apply({},[n.params].concat(u)),e=new c.ParamSet(f);return e.$$equals(t,i)}if(!f.reload&&n===i&&(u===i.locals||n.self.reloadOnSearch===!1&&e(i,r,t)))return!0}var nt,tt={},a,rt={},et="abstract",k={parent:function(n){if(u(n.parent)&&n.parent)return b(n.parent);var t=/^(.+)\.[^.]+$/.exec(n.name);return t?b(t[1]):nt},data:function(n){return n.parent&&n.parent.data&&(n.data=n.self.data=r({},n.parent.data,n.data)),n.data},url:function(n){var t=n.url,i={params:n.params||{}};if(f(t))return t.charAt(0)=="^"?o.compile(t.substring(1),i):(n.parent.navigable||nt).url.concat(t,i);if(!t||o.isMatcher(t))return t;throw new Error("Invalid url '"+t+"' in state '"+n+"'");},navigable:function(n){return n.url?n:n.parent?n.parent.navigable:null},ownParams:function(n){var t=n.url&&n.url.params||new c.ParamSet;return e(n.params||{},function(n,i){t[i]||(t[i]=new c.Param(i,null,n,"config"))}),t},params:function(n){return n.parent&&n.parent.params?r(n.parent.params.$$new(),n.ownParams):new c.ParamSet},views:function(n){var t={};return e(u(n.views)?n.views:{"":n},function(i,r){r.indexOf("@")<0&&(r+="@"+n.parent.name);t[r]=i}),t},path:function(n){return n.parent?n.parent.path.concat(n):[]},includes:function(n){var t=n.parent?r({},n.parent.includes):{};return t[n.name]=!0,t},$delegates:{}};nt=ut({name:"",url:"^",views:null,abstract:!0});nt.navigable=null;this.decorator=at;this.state=vt;this.$get=ft;ft.$inject=["$rootScope","$q","$view","$injector","$resolve","$stateParams","$urlRouter","$location","$urlMatcherFactory"]}function st(){function n(n,t){return{load:function(i,u){var f;return u=r({template:null,controller:null,view:null,locals:null,notify:!0,async:!0,params:{}},u),u.view&&(f=t.fromConfig(u.view,u.params,u.locals)),f&&u.notify&&n.$broadcast("$viewContentLoading",u),f}}}this.$get=n;n.$inject=["$rootScope","$templateFactory"]}function dt(){var n=!1;this.useAnchorScroll=function(){n=!0};this.$get=["$anchorScroll","$timeout",function(t,i){return n?t:function(n){return i(function(){n[0].scrollIntoView()},0,!1)}}]}function ht(n,i,r,u){function s(){return i.has?function(n){return i.has(n)?i.get(n):null}:function(n){try{return i.get(n)}catch(t){return null}}}function h(n,t){var r=function(){return{enter:function(n,t,i){t.after(n);i()},leave:function(n,t){n.remove();t()}}},i;return e?{enter:function(n,t,i){var r=e.enter(n,null,t,i);r&&r.then&&r.then(i)},leave:function(n,t){var i=e.leave(n,t);i&&i.then&&i.then(t)}}:f?(i=f&&f(t,n),{enter:function(n,t,r){i.enter(n,null,t);r()},leave:function(n,t){i.leave(n);t()}}):r()}var o=s(),f=o("$animator"),e=o("$animate");return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(i,f,e){return function(i,f,o){function w(){c&&(c.remove(),c=null);s&&(s.$destroy(),s=null);l&&(p.leave(l,function(){c=null}),c=l,l=null)}function a(h){var c,a=lt(i,o,f,u),d=a&&n.$current&&n.$current.locals[a],k;(h||d!==y)&&(c=i.$new(),y=n.$current.locals[a],k=e(c,function(n){p.enter(n,f,function(){s&&s.$emit("$viewContentAnimationEnded");(t.isDefined(v)&&!v||i.$eval(v))&&r(n)});w()}),l=k,s=c,s.$emit("$viewContentLoaded"),s.$eval(b))}var c,l,s,y,b=o.onload||"",v=o.autoscroll,p=h(o,i);i.$on("$stateChangeSuccess",function(){a(!1)});i.$on("$viewContentLoading",function(){a(!1)});a(!0)}}}}function ct(n,t,i,r){return{restrict:"ECA",priority:-400,compile:function(u){var f=u.html();return function(u,e,o){var c=i.$current,l=lt(u,o,e,r),s=c&&c.locals[l],a,h;s&&(e.data("$uiView",{name:l,state:s.$$state}),e.html(s.$template?s.$template:f),a=n(e.contents()),s.$$controller&&(s.$scope=u,s.$element=e,h=t(s.$$controller,s),s.$$controllerAs&&(u[s.$$controllerAs]=h),e.data("$ngControllerController",h),e.children().data("$ngControllerController",h)),a(u))}}}}function lt(n,t,i,r){var u=r(t.uiView||t.name||"")(n),f=i.inheritedData("$uiView");return u.indexOf("@")>=0?u:u+"@"+(f?f.state.name:"")}function gt(n,t){var r=n.match(/^\s*({[^}]*})\s*$/),i;if(r&&(n=t+"("+r[1]+")"),i=n.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/),!i||i.length!==4)throw new Error("Invalid state ref '"+n+"'");return{state:i[1],paramExpr:i[3]||null}}function at(n){var t=n.parent().inheritedData("$uiView");if(t&&t.state&&t.state.name)return t.state}function vt(n,i){var r=["location","inherit","reload","absolute"];return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(u,f,e,o){var s=gt(e.uiSref,n.current.name),h=null,w=at(f)||n.$current,b=Object.prototype.toString.call(f.prop("href"))==="[object SVGAnimatedString]"?"xlink:href":"href",c=null,k=f.prop("tagName").toUpperCase()==="A",v=f[0].nodeName==="FORM",d=v?"action":b,y=!0,l={relative:w,inherit:!0},p=u.$eval(e.uiSrefOpts)||{},a;(t.forEach(r,function(n){n in p&&(l[n]=p[n])}),a=function(i){if(i&&(h=t.copy(i)),y){c=n.href(s.state,h,l);var r=o[1]||o[0];if(r&&r.$$addStateInfo(s.state,h),c===null)return y=!1,!1;e.$set(d,c)}},s.paramExpr&&(u.$watch(s.paramExpr,function(n){n!==h&&a(n)},!0),h=t.copy(u.$eval(s.paramExpr))),a(),v)||f.bind("click",function(t){var e=t.which||t.button,r,u;e>1||t.ctrlKey||t.metaKey||t.shiftKey||f.attr("target")||(r=i(function(){n.go(s.state,h,l)}),t.preventDefault(),u=k&&!c?1:0,t.preventDefault=function(){u--<=0&&i.cancel(r)})})}}}function tt(n,t,i){return{restrict:"A",controller:["$scope","$element","$attrs",function(t,r,u){function o(){s()?r.addClass(e):r.removeClass(e)}function s(){for(var n=0;n<f.length;n++)if(h(f[n].state,f[n].params))return!0;return!1}function h(t,i){return typeof u.uiSrefActiveEq!="undefined"?n.is(t.name,i):n.includes(t.name,i)}var f=[],e;e=i(u.uiSrefActiveEq||u.uiSrefActive||"",!1)(t);this.$$addStateInfo=function(t,i){var u=n.get(t,at(r));f.push({state:u||{name:t},params:i});o()};t.$on("$stateChangeSuccess",o)}]}}function yt(n){var t=function(t){return n.is(t)};return t.$stateful=!0,t}function pt(n){var t=function(t){return n.includes(t)};return t.$stateful=!0,t}var u=t.isDefined,h=t.isFunction,f=t.isString,l=t.isObject,v=t.isArray,e=t.forEach,r=t.extend,wt=t.copy,c;t.module("ui.router.util",["ng"]);t.module("ui.router.router",["ui.router.util"]);t.module("ui.router.state",["ui.router.router","ui.router.util"]);t.module("ui.router",["ui.router.state"]);t.module("ui.router.compat",["ui.router"]);rt.$inject=["$q","$injector"];t.module("ui.router.util").service("$resolve",rt);ut.$inject=["$http","$templateCache","$injector"];t.module("ui.router.util").service("$templateFactory",ut);a.prototype.concat=function(n,t){var i={caseInsensitive:c.caseInsensitive(),strict:c.strictMode(),squash:c.defaultSquashPolicy()};return new a(this.sourcePath+n+this.sourceSearch,r(i,t),this)};a.prototype.toString=function(){return this.source};a.prototype.exec=function(n,t){function l(n){function t(n){return n.split("").reverse().join("")}function i(n){return n.replace(/\\-/g,"-")}var r=t(n).split(/-(?!\\)/),u=y(r,t);return y(u,i).reverse()}var o=this.regexp.exec(n),f,r;if(!o)return null;t=t||{};var s=this.parameters(),a=s.length,c=this.segments.length-1,h={},i,e,u;if(c!==o.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");for(i=0;i<c;i++){for(u=s[i],f=this.params[u],r=o[i+1],e=0;e<f.replace;e++)f.replace[e].from===r&&(r=f.replace[e].to);r&&f.array===!0&&(r=l(r));h[u]=f.value(r)}for(;i<a;i++)u=s[i],h[u]=this.params[u].value(t[u]);return h};a.prototype.parameters=function(n){return u(n)?this.params[n]||null:this.$$paramNames};a.prototype.validates=function(n){return this.params.$$validates(n)};a.prototype.format=function(n){function b(n){return encodeURIComponent(n).replace(/-/g,function(n){return"%5C%"+n.charCodeAt(0).toString(16).toUpperCase()})}var o,c;n=n||{};var h=this.segments,l=this.parameters(),k=this.params;if(!this.validates(n))return null;for(var a=!1,d=h.length-1,g=l.length,i=h[0],u=0;u<g;u++){var nt=u<d,s=l[u],r=k[s],p=r.value(n[s]),w=r.isOptional&&r.type.equals(r.value(),p),e=w?r.squash:!1,t=r.type.encode(p);if(nt)o=h[u+1],e===!1?(t!=null&&(i+=v(t)?y(t,b).join("-"):encodeURIComponent(t)),i+=o):e===!0?(c=i.match(/\/$/)?/\/?(.*)/:/(.*)/,i+=o.match(c)[1]):f(e)&&(i+=e+o);else{if(t==null||w&&e!==!1)continue;v(t)||(t=[t]);t=y(t,encodeURIComponent).join("&"+s+"=");i+=(a?"&":"?")+(s+"="+t);a=!0}}return i};o.prototype.is=function(){return!0};o.prototype.encode=function(n){return n};o.prototype.decode=function(n){return n};o.prototype.equals=function(n,t){return n==t};o.prototype.$subPattern=function(){var n=this.pattern.toString();return n.substr(1,n.length-2)};o.prototype.pattern=/.*/;o.prototype.toString=function(){return"{Type:"+this.name+"}"};o.prototype.$normalize=function(n){return this.is(n)?n:this.decode(n)};o.prototype.$asArray=function(n,t){function r(n,t){function r(n,t){return function(){return n[t].apply(n,arguments)}}function e(n){return v(n)?n:u(n)?[n]:[]}function o(n){switch(n.length){case 0:return i;case 1:return t==="auto"?n[0]:n;default:return n}}function s(n){return!n}function f(n,t){return function(i){i=e(i);var r=y(i,n);return t===!0?nt(r,s).length===0:o(r)}}function h(n){return function(t,i){var u=e(t),f=e(i),r;if(u.length!==f.length)return!1;for(r=0;r<u.length;r++)if(!n(u[r],f[r]))return!1;return!0}}this.encode=f(r(n,"encode"));this.decode=f(r(n,"decode"));this.is=f(r(n,"is"),!0);this.equals=h(r(n,"equals"));this.pattern=n.pattern;this.$normalize=f(r(n,"$normalize"));this.name=n.name;this.$arrayMode=t}if(!n)return this;if(n==="auto"&&!t)throw new Error("'auto' array mode is for query parameters only");return new r(this,n)};t.module("ui.router.util").provider("$urlMatcherFactory",ft);t.module("ui.router.util").run(["$urlMatcherFactory",function(){}]);et.$inject=["$locationProvider","$urlMatcherFactoryProvider"];t.module("ui.router.router").provider("$urlRouter",et);ot.$inject=["$urlRouterProvider","$urlMatcherFactoryProvider"];t.module("ui.router.state").value("$stateParams",{}).provider("$state",ot);st.$inject=[];t.module("ui.router.state").provider("$view",st);t.module("ui.router.state").provider("$uiViewScroll",dt);ht.$inject=["$state","$injector","$uiViewScroll","$interpolate"];ct.$inject=["$compile","$controller","$state","$interpolate"];t.module("ui.router.state").directive("uiView",ht);t.module("ui.router.state").directive("uiView",ct);vt.$inject=["$state","$timeout"];tt.$inject=["$state","$stateParams","$interpolate"];t.module("ui.router.state").directive("uiSref",vt).directive("uiSrefActive",tt).directive("uiSrefActiveEq",tt);yt.$inject=["$state"];pt.$inject=["$state"];t.module("ui.router.state").filter("isState",yt).filter("includedByState",pt)}(window,window.angular);!function(){var n=angular.module("angularFileUpload",[]);n.service("$upload",["$http","$timeout",function(n,t){function i(i){i.method=i.method||"POST";i.headers=i.headers||{};i.transformRequest=i.transformRequest||function(t,i){return window.ArrayBuffer&&t instanceof window.ArrayBuffer?t:n.defaults.transformRequest[0](t,i)};window.XMLHttpRequest.__isShim&&(i.headers.__setXHR_=function(){return function(n){n&&(i.__XHR=n,i.xhrFn&&i.xhrFn(n),n.upload.addEventListener("progress",function(n){i.progress&&t(function(){i.progress&&i.progress(n)})},!1),n.upload.addEventListener("load",function(n){n.lengthComputable&&i.progress&&i.progress(n)},!1))}});var r=n(i);return r.progress=function(n){return i.progress=n,r},r.abort=function(){return i.__XHR&&t(function(){i.__XHR.abort()}),r},r.xhr=function(n){return i.xhrFn=n,r},r.then=function(n,t){return function(r,u,f){i.progress=f||i.progress;var e=t.apply(n,[r,u,f]);return e.abort=n.abort,e.progress=n.progress,e.xhr=n.xhr,e.then=n.then,e}}(r,r.then),r}this.upload=function(t){t.headers=t.headers||{};t.headers["Content-Type"]=void 0;t.transformRequest=t.transformRequest||n.defaults.transformRequest;var f=new FormData,u=t.transformRequest,r=t.data;return t.transformRequest=function(n,i){var o,e,h,s,c,f;if(r)if(t.formDataAppender)for(o in r)e=r[o],t.formDataAppender(n,o,e);else for(o in r){if(e=r[o],"function"==typeof u)e=u(e,i);else for(f=0;f<u.length;f++)h=u[f],"function"==typeof h&&(e=h(e,i));n.append(o,e)}if(null!=t.file)if(s=t.fileFormDataName||"file","[object Array]"===Object.prototype.toString.call(t.file))for(c="[object String]"===Object.prototype.toString.call(s),f=0;f<t.file.length;f++)n.append(c?s+f:s[f],t.file[f],t.file[f].name);else n.append(s,t.file,t.file.name);return n},t.data=f,i(t)};this.http=function(n){return i(n)}}]);n.directive("ngFileSelect",["$parse","$timeout",function(n,t){return function(i,r,u){var f=n(u.ngFileSelect);r.bind("change",function(n){var r,u,e=[];if(r=n.target.files,null!=r)for(u=0;u<r.length;u++)e.push(r.item(u));t(function(){f(i,{$files:e,$event:n})})});("ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0)&&r.bind("touchend",function(n){n.preventDefault();n.target.click()})}}]);n.directive("ngFileDropAvailable",["$parse","$timeout",function(n,t){return function(i,r,u){if("draggable"in document.createElement("span")){var f=n(u.ngFileDropAvailable);t(function(){f(i)})}}}]);n.directive("ngFileDrop",["$parse","$timeout",function(n,t){return function(i,r,u){function o(n,t){if(t.isDirectory){var i=t.createReader();f++;i.readEntries(function(t){for(var i=0;i<t.length;i++)o(n,t[i]);f--})}else f++,t.file(function(t){f--;n.push(t)})}var e,s,f;"draggable"in document.createElement("span")&&(e=null,s=n(u.ngFileDrop),r[0].addEventListener("dragover",function(n){t.cancel(e);n.stopPropagation();n.preventDefault();r.addClass(u.ngFileDragOverClass||"dragover")},!1),r[0].addEventListener("dragleave",function(){e=t(function(){r.removeClass(u.ngFileDragOverClass||"dragover")})},!1),f=0,r[0].addEventListener("drop",function(n){var c,h,l,e;if(n.stopPropagation(),n.preventDefault(),r.removeClass(u.ngFileDragOverClass||"dragover"),c=[],h=n.dataTransfer.items,h&&h.length>0&&h[0].webkitGetAsEntry)for(e=0;e<h.length;e++)o(c,h[e].webkitGetAsEntry());else if(l=n.dataTransfer.files,null!=l)for(e=0;e<l.length;e++)c.push(l.item(e));!function a(r){t(function(){f?a(10):s(i,{$files:c,$event:n})},r||0)}()},!1))}}])}();angular.module("ui.alias",[]).config(["$compileProvider","uiAliasConfig",function(n,t){"use strict";t=t||{};angular.forEach(t,function(t,i){angular.isString(t)&&(t={replace:!0,template:t});n.directive(i,function(){return t})})}]);angular.module("ui.event",[]).directive("uiEvent",["$parse",function(n){"use strict";return function(t,i,r){var u=t.$eval(r.uiEvent);angular.forEach(u,function(r,u){var f=n(r);i.bind(u,function(n){var i=Array.prototype.slice.call(arguments);i=i.splice(1);f(t,{$event:n,$params:i});t.$$phase||t.$apply()})})}}]);angular.module("ui.format",[]).filter("format",function(){"use strict";return function(n,t){var i=n,r,u;return angular.isString(i)&&void 0!==t&&((angular.isArray(t)||angular.isObject(t)||(t=[t]),angular.isArray(t))?(r=t.length,u=function(n,i){return i=parseInt(i,10),i>=0&&r>i?t[i]:n},i=i.replace(/\$([0-9]+)/g,u)):angular.forEach(t,function(n,t){i=i.split(":"+t).join(n)})),i}});angular.module("ui.highlight",[]).filter("highlight",function(){"use strict";return function(n,t,i){return n&&(t||angular.isNumber(t))?(n=n.toString(),t=t.toString(),i?n.split(t).join('<span class="ui-match">'+t+"<\/span>"):n.replace(new RegExp(t,"gi"),'<span class="ui-match">$&<\/span>')):n}});angular.module("ui.include",[]).directive("uiInclude",["$http","$templateCache","$anchorScroll","$compile",function(n,t,i,r){"use strict";return{restrict:"ECA",terminal:!0,compile:function(u,f){var o=f.uiInclude||f.src,s=f.fragment||"",h=f.onload||"",e=f.autoscroll;return function(u,f){function a(){var a=++l,y=u.$eval(o),p=u.$eval(s);y?n.get(y,{cache:t}).success(function(n){if(a===l){c&&c.$destroy();c=u.$new();var t;t=p?angular.element("<div/>").html(n).find(p):angular.element("<div/>").html(n).contents();f.html(t);r(t)(c);!angular.isDefined(e)||e&&!u.$eval(e)||i();c.$emit("$includeContentLoaded");u.$eval(h)}}).error(function(){a===l&&v()}):v()}var c,l=0,v=function(){c&&(c.$destroy(),c=null);f.html("")};u.$watch(s,a);u.$watch(o,a)}}}}]);angular.module("ui.indeterminate",[]).directive("uiIndeterminate",[function(){"use strict";return{compile:function(n,t){return t.type&&"checkbox"===t.type.toLowerCase()?function(n,t,i){n.$watch(i.uiIndeterminate,function(n){t[0].indeterminate=!!n})}:angular.noop}}}]);angular.module("ui.inflector",[]).filter("inflector",function(){"use strict";function n(n){return n=n.replace(/([A-Z])|([\-|\_])/g,function(n,t){return" "+(t||"")}),n.replace(/\s\s+/g," ").trim().toLowerCase().split(" ")}function t(n){var t=[];return angular.forEach(n,function(n){t.push(n.charAt(0).toUpperCase()+n.substr(1))}),t}var i={humanize:function(i){return t(n(i)).join(" ")},underscore:function(t){return n(t).join("_")},variable:function(i){return i=n(i),i=i[0]+t(i.slice(1)).join("")}};return function(n,t){return t!==!1&&angular.isString(n)?(t=t||"humanize",i[t](n)):n}});angular.module("ui.jq",[]).value("uiJqConfig",{}).directive("uiJq",["uiJqConfig","$timeout",function(n,t){"use strict";return{restrict:"A",compile:function(i,r){if(!angular.isFunction(i[r.uiJq]))throw new Error('ui-jq: The "'+r.uiJq+'" function does not exist');var u=n&&n[r.uiJq];return function(n,i,r){function e(){var t=[];return r.uiOptions?(t=n.$eval("["+r.uiOptions+"]"),angular.isObject(u)&&angular.isObject(t[0])&&(t[0]=angular.extend({},u,t[0]))):u&&(t=[u]),t}function f(){t(function(){i[r.uiJq].apply(i,e())},0,!1)}r.ngModel&&i.is("select,input,textarea")&&i.bind("change",function(){i.trigger("input")});r.uiRefresh&&n.$watch(r.uiRefresh,function(){f()});f()}}}}]);angular.module("ui.keypress",[]).factory("keypressHelper",["$parse",function(n){"use strict";var t={8:"backspace",9:"tab",13:"enter",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete"},i=function(n){return n.charAt(0).toUpperCase()+n.slice(1)};return function(r,u,f,e){var o,s=[];o=u.$eval(e["ui"+i(r)]);angular.forEach(o,function(t,i){var r,u;u=n(t);angular.forEach(i.split(" "),function(n){r={expression:u,keys:{}};angular.forEach(n.split("-"),function(n){r.keys[n]=!0});s.push(r)})});f.bind(r,function(n){var e=!(!n.metaKey||n.ctrlKey),o=!!n.altKey,h=!!n.ctrlKey,f=!!n.shiftKey,i=n.keyCode;"keypress"===r&&!f&&i>=97&&122>=i&&(i-=32);angular.forEach(s,function(r){var s=r.keys[t[i]]||r.keys[i.toString()],c=!!r.keys.meta,l=!!r.keys.alt,a=!!r.keys.ctrl,v=!!r.keys.shift;s&&c===e&&l===o&&a===h&&v===f&&u.$apply(function(){r.expression(u,{$event:n})})})})}}]);angular.module("ui.keypress").directive("uiKeydown",["keypressHelper",function(n){"use strict";return{link:function(t,i,r){n("keydown",t,i,r)}}}]);angular.module("ui.keypress").directive("uiKeypress",["keypressHelper",function(n){"use strict";return{link:function(t,i,r){n("keypress",t,i,r)}}}]);angular.module("ui.keypress").directive("uiKeyup",["keypressHelper",function(n){"use strict";return{link:function(t,i,r){n("keyup",t,i,r)}}}]);angular.module("ui.mask",[]).value("uiMaskConfig",{maskDefinitions:{9:/\d/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/},clearOnBlur:!0}).directive("uiMask",["uiMaskConfig","$parse",function(n,t){"use strict";return{priority:100,require:"ngModel",restrict:"A",compile:function(){var i=n;return function(n,r,u,f){function vt(n){return angular.isDefined(n)?(ti(n),a?(bt(),kt(),!0):st()):st()}function yt(n){angular.isDefined(n)&&(c=n,a&&l())}function pt(n){return a?(e=v(n||""),s=k(e),f.$setValidity("mask",s),s&&e.length?y(e):void 0):n}function wt(n){return a?(e=v(n||""),s=k(e),f.$viewValue=e.length?y(e):"",f.$setValidity("mask",s),""===e&&u.required&&f.$setValidity("required",!f.$error.required),s?e:void 0):n}function st(){return a=!1,dt(),angular.isDefined(lt)?r.attr("placeholder",lt):r.removeAttr("placeholder"),angular.isDefined(at)?r.attr("maxlength",at):r.removeAttr("maxlength"),r.val(f.$modelValue),f.$viewValue=f.$modelValue,!1}function bt(){e=ft=v(f.$viewValue||"");rt=ut=y(e);s=k(e);var n=s&&e.length?rt:"";u.maxlength&&r.attr("maxlength",2*o[o.length-1]);r.attr("placeholder",c);r.val(n);f.$viewValue=n}function kt(){b||(r.bind("blur",ht),r.bind("mousedown mouseup",p),r.bind("input keyup click focus",l),b=!0)}function dt(){b&&(r.unbind("blur",ht),r.unbind("mousedown",p),r.unbind("mouseup",p),r.unbind("input",l),r.unbind("keyup",l),r.unbind("click",l),r.unbind("focus",l),b=!1)}function k(n){return n.length?n.length>=it:!0}function v(n){var i="",t=tt.slice();return n=n.toString(),angular.forEach(ct,function(t){n=n.replace(t,"")}),angular.forEach(n.split(""),function(n){t.length&&t[0].test(n)&&(i+=n,t.shift())}),i}function y(n){var t="",i=o.slice();return angular.forEach(c.split(""),function(r,u){n.length&&u===i[0]?(t+=n.charAt(0)||"_",n=n.substr(1),i.shift()):t+=r}),t}function gt(n){var t=u.placeholder;return"undefined"!=typeof t&&t[n]?t[n]:"_"}function ni(){return c.replace(/[_]+/g,"_").replace(/([^_]+)([a-zA-Z0-9])([^_])/g,"$1$2_$3").split("_")}function ti(n){var t=0,i,r;(o=[],tt=[],c="","string"==typeof n)&&(it=0,i=!1,r=n.split(""),angular.forEach(r,function(n,r){h.maskDefinitions[n]?(o.push(t),c+=gt(r),tt.push(h.maskDefinitions[n]),t++,i||it++):"?"===n?i=!0:(c+=n,t++)}));o.push(o.slice().pop()+1);ct=ni();a=o.length>1?!0:!1}function ht(){h.clearOnBlur&&(et=0,w=0,s&&0!==e.length||(rt="",r.val(""),n.$apply(function(){f.$setViewValue("")})))}function p(n){"mousedown"===n.type?r.bind("mouseout",d):r.unbind("mouseout",d)}function d(){w=nt(this);r.unbind("mouseout",d)}function l(t){var u,s,tt;if(t=t||{},u=t.which,s=t.type,16!==u&&91!==u){var b,c=r.val(),p=ut,e=v(c),lt=ft,it=!1,i=ii(this)||0,rt=et||0,ot=i-rt,h=o[0],l=o[e.length]||o.slice().shift(),a=w||0,at=nt(this)>0,st=a>0,ht=c.length>p.length||a&&c.length>p.length-a,k=c.length<p.length||a&&c.length===p.length-a,vt=u>=37&&40>=u&&t.shiftKey,yt=37===u,ct=8===u||"keyup"!==s&&k&&-1===ot,pt=46===u||"keyup"!==s&&k&&0===ot&&!st,d=(yt||ct||"click"===s)&&i>h;if(w=nt(this),!vt&&(!at||"click"!==s&&"keyup"!==s)){if("input"===s&&k&&!st&&e===lt){for(;ct&&i>h&&!g(i);)i--;for(;pt&&l>i&&-1===o.indexOf(i);)i++;tt=o.indexOf(i);e=e.substring(0,tt)+e.substring(tt+1);it=!0}for(b=y(e),ut=b,ft=e,r.val(b),it&&n.$apply(function(){f.$setViewValue(e)}),ht&&h>=i&&(i=h+1),d&&i--,i=i>l?l:h>i?h:i;!g(i)&&i>h&&l>i;)i+=d?-1:1;(d&&l>i||ht&&!g(rt))&&i++;et=i;ri(this,i)}}}function g(n){return o.indexOf(n)>-1}function ii(n){if(!n)return 0;if(void 0!==n.selectionStart)return n.selectionStart;if(document.selection){n.focus();var t=document.selection.createRange();return t.moveStart("character",n.value?-n.value.length:0),t.text.length}return 0}function ri(n,t){if(!n)return 0;if(0!==n.offsetWidth&&0!==n.offsetHeight)if(n.setSelectionRange)n.focus(),n.setSelectionRange(t,t);else if(n.createTextRange){var i=n.createTextRange();i.collapse(!0);i.moveEnd("character",t);i.moveStart("character",t);i.select()}}function nt(n){return n?void 0!==n.selectionStart?n.selectionEnd-n.selectionStart:document.selection?document.selection.createRange().text.length:0:0}var o,tt,c,ct,it,e,rt,s,ut,ft,et,w,a=!1,b=!1,lt=u.placeholder,at=u.maxlength,h={},ot;u.uiOptions?(h=n.$eval("["+u.uiOptions+"]"),angular.isObject(h[0])&&(h=function(n,t){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(void 0===t[i]?t[i]=angular.copy(n[i]):angular.extend(t[i],n[i]));return t}(i,h[0]))):h=i;u.$observe("uiMask",vt);u.$observe("placeholder",yt);ot=!1;u.$observe("modelViewValue",function(n){"true"===n&&(ot=!0)});n.$watch(u.ngModel,function(i){if(ot&&i){var r=t(u.ngModel);r.assign(n,f.$viewValue)}});f.$formatters.push(pt);f.$parsers.push(wt);r.bind("mousedown mouseup",p);Array.prototype.indexOf||(Array.prototype.indexOf=function(n){var u,r,t,i;if(null===this)throw new TypeError;if((u=Object(this),r=u.length>>>0,0===r)||(t=0,arguments.length>1&&(t=Number(arguments[1]),t!==t?t=0:0!==t&&1/0!==t&&t!==-1/0&&(t=(t>0||-1)*Math.floor(Math.abs(t)))),t>=r))return-1;for(i=t>=0?t:Math.max(r-Math.abs(t),0);r>i;i++)if(i in u&&u[i]===n)return i;return-1})}}}}]);angular.module("ui.reset",[]).value("uiResetConfig",null).directive("uiReset",["uiResetConfig",function(n){"use strict";var t=null;return void 0!==n&&(t=n),{require:"ngModel",link:function(n,i,r,u){var f;f=angular.element('<a class="ui-reset" />');i.wrap('<span class="ui-resetwrap" />').after(f);f.bind("click",function(i){i.preventDefault();n.$apply(function(){u.$setViewValue(r.uiReset?n.$eval(r.uiReset):t);u.$render()})})}}}]);angular.module("ui.route",[]).directive("uiRoute",["$location","$parse",function(n,t){"use strict";return{restrict:"AC",scope:!0,compile:function(i,r){var u;if(r.uiRoute)u="uiRoute";else if(r.ngHref)u="ngHref";else{if(!r.href)throw new Error("uiRoute missing a route or href property on "+i[0]);u="href"}return function(i,r,f){function o(t){var r=t.indexOf("#");r>-1&&(t=t.substr(r+1));(e=function(){h(i,n.path().indexOf(t)>-1)})()}function s(t){var r=t.indexOf("#");r>-1&&(t=t.substr(r+1));(e=function(){var r=new RegExp("^"+t+"$",["i"]);h(i,r.test(n.path()))})()}var h=t(f.ngModel||f.routeModel||"$uiRoute").assign,e=angular.noop;switch(u){case"uiRoute":f.uiRoute?s(f.uiRoute):f.$observe("uiRoute",s);break;case"ngHref":f.ngHref?o(f.ngHref):f.$observe("ngHref",o);break;case"href":o(f.href)}i.$on("$routeChangeSuccess",function(){e()});i.$on("$stateChangeSuccess",function(){e()})}}}}]);angular.module("ui.scroll.jqlite",["ui.scroll"]).service("jqLiteExtras",["$log","$window",function(n,t){"use strict";return{registerFor:function(n){var i,u,s,r,f,e,o;return u=angular.element.prototype.css,n.prototype.css=function(n,t){var i,r;return r=this,i=r[0],i&&3!==i.nodeType&&8!==i.nodeType&&i.style?u.call(r,n,t):void 0},e=function(n){return n&&n.document&&n.location&&n.alert&&n.setInterval},o=function(n,t,i){var r,u,s,o,f;return r=n[0],f={top:["scrollTop","pageYOffset","scrollLeft"],left:["scrollLeft","pageXOffset","scrollTop"]}[t],u=f[0],o=f[1],s=f[2],e(r)?angular.isDefined(i)?r.scrollTo(n[s].call(n),i):o in r?r[o]:r.document.documentElement[u]:angular.isDefined(i)?r[u]=i:r[u]},t.getComputedStyle?(r=function(n){return t.getComputedStyle(n,null)},i=function(n,t){return parseFloat(t)}):(r=function(n){return n.currentStyle},i=function(n,t){var f,e,o,s,i,u,r;return f=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,s=new RegExp("^("+f+")(?!px)[a-z%]+$","i"),s.test(t)?(r=n.style,e=r.left,i=n.runtimeStyle,u=i&&i.left,i&&(i.left=r.left),r.left=t,o=r.pixelLeft,r.left=e,u&&(i.left=u),o):parseFloat(t)}),s=function(n,t){var f,c,l,a,v,u,o,s,y,p,w,b,h;return e(n)?(f=document.documentElement[{height:"clientHeight",width:"clientWidth"}[t]],{base:f,padding:0,border:0,margin:0}):(h={width:[n.offsetWidth,"Left","Right"],height:[n.offsetHeight,"Top","Bottom"]}[t],f=h[0],o=h[1],s=h[2],u=r(n),w=i(n,u["padding"+o])||0,b=i(n,u["padding"+s])||0,c=i(n,u["border"+o+"Width"])||0,l=i(n,u["border"+s+"Width"])||0,a=u["margin"+o],v=u["margin"+s],y=i(n,a)||0,p=i(n,v)||0,{base:f,padding:w+b,border:c+l,margin:y+p})},f=function(n,t,i){var e,u,f;return u=s(n,t),u.base>0?{base:u.base-u.padding-u.border,outer:u.base,outerfull:u.base+u.margin}[i]:(e=r(n),f=e[t],(0>f||null===f)&&(f=n.style[t]||0),f=parseFloat(f)||0,{base:f-u.padding-u.border,outer:f,outerfull:f+u.padding+u.border+u.margin}[i])},angular.forEach({before:function(n){var t,u,f,e,o,i,r;if(o=this,u=o[0],e=o.parent(),t=e.contents(),t[0]===u)return e.prepend(n);for(f=i=1,r=t.length-1;r>=1?r>=i:i>=r;f=r>=1?++i:--i)if(t[f]===u)return void angular.element(t[f-1]).after(n);throw new Error("invalid DOM structure "+u.outerHTML);},height:function(n){var t;return t=this,angular.isDefined(n)?(angular.isNumber(n)&&(n+="px"),u.call(t,"height",n)):f(this[0],"height","base")},outerHeight:function(n){return f(this[0],"height",n?"outerfull":"outer")},offset:function(n){var r,u,t,i,f,e;if(f=this,arguments.length){if(void 0===n)return f;throw new Error("offset setter method is not implemented");}return r={top:0,left:0},i=f[0],(u=i&&i.ownerDocument)?(t=u.documentElement,null!=i.getBoundingClientRect&&(r=i.getBoundingClientRect()),e=u.defaultView||u.parentWindow,{top:r.top+(e.pageYOffset||t.scrollTop)-(t.clientTop||0),left:r.left+(e.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}):void 0},scrollTop:function(n){return o(this,"top",n)},scrollLeft:function(n){return o(this,"left",n)}},function(t,i){if(!n.prototype[i])return n.prototype[i]=t})}}}]).run(["$log","$window","jqLiteExtras",function(n,t,i){"use strict";if(!t.jQuery)return i.registerFor(angular.element)}]);angular.module("ui.scroll",[]).directive("uiScrollViewport",["$log",function(){"use strict";return{controller:["$scope","$element",function(n,t){return this.viewport=t,this}]}}]).directive("uiScroll",["$log","$injector","$rootScope","$timeout",function(n,t,i,r){"use strict";return{require:["?^uiScrollViewport"],transclude:"element",priority:1e3,terminal:!0,compile:function(u,f,e){return function(u,f,o,s){var c,p,oi,b,ot,h,tt,k,si,hi,v,st,vt,yt,d,it,pt,rt,a,wt,bt,ht,kt,g,ct,dt,lt,at,y,w,ci,nt,gt,ut,ni,li,ti,ii,ai,vi,yi,ri,ui,ft,fi,l,et,ei;if(lt=n.debug||n.log,at=o.uiScroll.match(/^\s*(\w+)\s+in\s+([\w\.]+)\s*$/),!at)throw new Error("Expected uiScroll in form of '_item_ in _datasource_' but got '"+o.uiScroll+"'");if(ct=at[1],st=at[2],kt=function(n){return angular.isObject(n)&&n.get&&angular.isFunction(n.get)},wt=function(n,t){var i;return n?(i=t.match(/^([\w]+)\.(.+)$/),i&&3===i.length?wt(n[i[1]],i[2]):n[t]):null},v=wt(u,st),!kt(v)&&(v=t.get(st),!kt(v)))throw new Error(""+st+" is not a valid datasource");return k=Math.max(3,+o.bufferSize||10),tt=function(){return l.outerHeight()*Math.max(.1,+o.padding||.1)},li=function(n){var t;return null!=(t=n[0].scrollHeight)?t:n[0].document.documentElement.scrollHeight},c=null,e(vi=u.$new(),function(n){var i,e,o,t,r,u;if(t=n[0].localName,"dl"===t)throw new Error("ui-scroll directive does not support <"+n[0].localName+"> as a repeating tag: "+n[0].outerHTML);return"li"!==t&&"tr"!==t&&(t="div"),u=s[0]&&s[0].viewport?s[0].viewport:angular.element(window),u.css({"overflow-y":"auto",display:"block"}),o=function(n){var i,t,r;switch(n){case"tr":return r=angular.element("<table><tr><td><div><\/div><\/td><\/tr><\/table>"),i=r.find("div"),t=r.find("tr"),t.paddingHeight=function(){return i.height.apply(i,arguments)},t;default:return t=angular.element("<"+n+"><\/"+n+">"),t.paddingHeight=t.height,t}},e=function(n,t,i){return t[{top:"before",bottom:"after"}[i]](n),{paddingHeight:function(){return n.paddingHeight.apply(n,arguments)},insert:function(t){return n[{top:"after",bottom:"before"}[i]](t)}}},r=e(o(t),f,"top"),i=e(o(t),f,"bottom"),vi.$destroy(),c={viewport:u,topPadding:r.paddingHeight,bottomPadding:i.paddingHeight,append:i.insert,prepend:r.insert,bottomDataPos:function(){return li(u)-i.paddingHeight()},topDataPos:function(){return r.paddingHeight()}}}),l=c.viewport,et=l.scope()||i,angular.isDefined(o.topVisible)&&(ui=function(n){return et[o.topVisible]=n}),angular.isDefined(o.topVisibleElement)&&(ri=function(n){return et[o.topVisibleElement]=n}),angular.isDefined(o.topVisibleScope)&&(fi=function(n){return et[o.topVisibleScope]=n}),yi=function(n){return ui&&ui(n.scope[ct]),ri&&ri(n.element),fi&&fi(n.scope),v.topVisible?v.topVisible(n):void 0},dt=angular.isDefined(o.isLoading)?function(n){return et[o.isLoading]=n,v.loading?v.loading(n):void 0}:function(n){if(v.loading)return v.loading(n)},ut=0,a=1,y=1,h=[],w=[],d=!1,b=!1,g=!1,nt=function(n,t){for(var i,r=i=n;t>=n?t>i:i>t;r=t>=n?++i:--i)h[r].scope.$destroy(),h[r].element.remove();return h.splice(n,t-n)},ci=function(){return ut++,a=1,y=1,nt(0,h.length),c.topPadding(0),c.bottomPadding(0),w=[],d=!1,b=!1,p(ut,!1)},ot=function(){return l.scrollTop()+l.outerHeight()},ft=function(){return l.scrollTop()},ti=function(){return!d&&c.bottomDataPos()<ot()+tt()},si=function(){var i,u,f,e,o,r,n,l,t,s;for(i=0,n=0,u=t=s=h.length-1;0>=s?0>=t:t>=0;u=0>=s?++t:--t)if(f=h[u],o=f.element.offset().top,r=l!==o,l=o,r&&(e=f.element.outerHeight(!0)),c.bottomDataPos()-i-e>ot()+tt())r&&(i+=e),n++,d=!1;else{if(r)break;n++}if(n>0)return(c.bottomPadding(c.bottomPadding()+i),nt(h.length-n,h.length),y-=n,lt("clipped off bottom "+n+" bottom padding "+c.bottomPadding()))},ii=function(){return!b&&c.topDataPos()>ft()-tt()},hi=function(){var u,f,e,t,n,o,i,r,s;for(i=0,n=0,r=0,s=h.length;s>r;r++)if(u=h[r],e=u.element.offset().top,t=o!==e,o=e,t&&(f=u.element.outerHeight(!0)),c.topDataPos()+i+f<ft()-tt())t&&(i+=f),n++,b=!1;else{if(t)break;n++}if(n>0)return(c.topPadding(c.topPadding()+i),nt(0,n),a+=n,lt("clipped off top "+n+" top padding "+c.topPadding()))},yt=function(n,t,i){return g||(g=!0,dt(!0)),1===w.push(t)?pt(n,i):void 0},bt=function(n){return n.displayTemp=n.css("display"),n.css("display","none")},ai=function(n){if(n.hasOwnProperty("displayTemp"))return n.css("display",n.displayTemp)},ht=function(n,t){var i,f,r;return i=u.$new(),i[ct]=t,f=n>a,i.$index=n,f&&i.$index--,r={scope:i},e(i,function(t){return r.element=t,f?n===y?(bt(t),c.append(t),h.push(r)):(h[n-a].element.after(t),h.splice(n-a+1,0,r)):(bt(t),c.prepend(t),h.unshift(r))}),{appended:f,wrapper:r}},oi=function(n,t){var i;return n?c.bottomPadding(Math.max(0,c.bottomPadding()-t.element.outerHeight(!0))):(i=c.topPadding()-t.element.outerHeight(!0),i>=0?c.topPadding(i):l.scrollTop(l.scrollTop()+t.element.outerHeight(!0)))},vt=function(n,t,i){var r,e,o,u,a,s,f,v,l;if(lt("top {actual="+c.topDataPos()+" visible from="+ft()+" bottom {visible through="+ot()+" actual="+c.bottomDataPos()+"}"),ti()?yt(n,!0,t):ii()&&yt(n,!1,t),i&&i(n),0===w.length){for(s=0,l=[],f=0,v=h.length;v>f;f++){if(r=h[f],o=r.element.offset().top,u=a!==o,a=o,u&&(e=r.element.outerHeight(!0)),!(u&&c.topDataPos()+s+e<ft())){u&&yi(r);break}l.push(s+=e)}return l}},p=function(n,t,i,u){return i&&i.length?r(function(){var h,r,c,e,o,s,l,a;for(e=[],o=0,l=i.length;l>o;o++)r=i[o],f=r.wrapper.element,ai(f),h=f.offset().top,c!==h&&(e.push(r),c=h);for(s=0,a=e.length;a>s;s++)r=e[s],oi(r.appended,r.wrapper);return vt(n,t,u)}):vt(n,t,u)},rt=function(n,t,i){return p(n,t,i,function(){return w.shift(),0===w.length?(g=!1,dt(!1)):pt(n,t)})},pt=function(n,t){var i;return i=w[0],i?h.length&&!ti()?rt(n,t):v.get(y,k,function(i){var f,u,r,e;if(!n||n===ut){if(u=[],i.length<k&&(d=!0,c.bottomPadding(0)),i.length>0)for(hi(),r=0,e=i.length;e>r;r++)f=i[r],u.push(ht(++y,f));return rt(n,t,u)}}):h.length&&!ii()?rt(n,t):v.get(a-k,k,function(i){var u,f,r,e;if(!n||n===ut){if(f=[],i.length<k&&(b=!0,c.topPadding(0)),i.length>0)for(h.length&&si(),u=r=e=i.length-1;0>=e?0>=r:r>=0;u=0>=e?++r:--r)f.unshift(ht(--a,i[u]));return rt(n,t,f)}})},gt=function(){if(!i.$$phase&&!g)return(p(null,!1),u.$apply())},l.bind("resize",gt),ni=function(){if(!i.$$phase&&!g)return(p(null,!0),u.$apply())},l.bind("scroll",ni),ei=function(n){var t,i;return t=l[0].scrollTop,i=l[0].scrollHeight-l[0].clientHeight,0===t&&!b||t===i&&!d?n.preventDefault():void 0},l.bind("mousewheel",ei),u.$watch(v.revision,function(){return ci()}),it=v.scope?v.scope.$new():u.$new(),u.$on("$destroy",function(){return it.$destroy(),l.unbind("resize",gt),l.unbind("scroll",ni),l.unbind("mousewheel",ei)}),it.$on("update.items",function(n,t,i){var u,f,r,e,o;if(angular.isFunction(t))for(f=function(n){return t(n.scope)},r=0,e=h.length;e>r;r++)u=h[r],f(u);else 0<=(o=t-a-1)&&o<h.length&&(h[t-a-1].scope[ct]=i);return null}),it.$on("delete.items",function(n,t){var i,u,r,s,c,f,e,o,l,v,w,b;if(angular.isFunction(t)){for(r=[],f=0,l=h.length;l>f;f++)u=h[f],r.unshift(u);for(c=function(n){if(t(n.scope))return(nt(r.length-1-i,r.length-i),y--)},i=e=0,v=r.length;v>e;i=++e)s=r[i],c(s)}else 0<=(b=t-a-1)&&b<h.length&&(nt(t-a-1,t-a),y--);for(i=o=0,w=h.length;w>o;i=++o)u=h[i],u.scope.$index=a+i;return p(null,!1)}),it.$on("insert.item",function(n,t,i){var r,u,f,e,o;if(u=[],angular.isFunction(t))throw new Error("not implemented - Insert with locator function");for(0<=(o=t-a-1)&&o<h.length&&(u.push(ht(t,i)),y++),r=f=0,e=h.length;e>f;r=++f)i=h[r],i.scope.$index=a+r;return p(null,!1,u)})}}}}]);angular.module("ui.scrollfix",[]).directive("uiScrollfix",["$window",function(n){"use strict";function t(){if(angular.isDefined(n.pageYOffset))return n.pageYOffset;var t=document.compatMode&&"BackCompat"!==document.compatMode?document.documentElement:document.body;return t.scrollTop}return{require:"^?uiScrollfixTarget",link:function(i,r,u,f){function c(){var n=e?u.uiScrollfix:r[0].offsetTop+o,i=f?h[0].scrollTop:t();!r.hasClass("ui-scrollfix")&&i>n?(r.addClass("ui-scrollfix"),s=n):r.hasClass("ui-scrollfix")&&s>i&&r.removeClass("ui-scrollfix")}var s,e=!0,o=0,h=f&&f.$element||angular.element(n);u.uiScrollfix?"string"==typeof u.uiScrollfix&&("-"===u.uiScrollfix.charAt(0)?(e=!1,o=-parseFloat(u.uiScrollfix.substr(1))):"+"===u.uiScrollfix.charAt(0)&&(e=!1,o=parseFloat(u.uiScrollfix.substr(1)))):e=!1;s=e?u.uiScrollfix:r[0].offsetTop+o;h.on("scroll",c);i.$on("$destroy",function(){h.off("scroll",c)})}}}]).directive("uiScrollfixTarget",[function(){"use strict";return{controller:["$element",function(n){this.$element=n}]}}]);angular.module("ui.showhide",[]).directive("uiShow",[function(){"use strict";return function(n,t,i){n.$watch(i.uiShow,function(n){n?t.addClass("ui-show"):t.removeClass("ui-show")})}}]).directive("uiHide",[function(){"use strict";return function(n,t,i){n.$watch(i.uiHide,function(n){n?t.addClass("ui-hide"):t.removeClass("ui-hide")})}}]).directive("uiToggle",[function(){"use strict";return function(n,t,i){n.$watch(i.uiToggle,function(n){n?t.removeClass("ui-hide").addClass("ui-show"):t.removeClass("ui-show").addClass("ui-hide")})}}]);angular.module("ui.unique",[]).filter("unique",["$parse",function(n){"use strict";return function(t,i){if(i===!1)return t;if((i||angular.isUndefined(i))&&angular.isArray(t)){var r=[],f=angular.isString(i)?n(i):function(n){return n},u=function(n){return angular.isObject(n)?f(n):n};angular.forEach(t,function(n){for(var i=!1,t=0;t<r.length;t++)if(angular.equals(u(r[t]),u(n))){i=!0;break}i||r.push(n)});t=r}return t}}]);angular.module("ui.uploader",[]).service("uiUploader",uiUploader);uiUploader.$inject=["$log"];angular.module("ui.validate",[]).directive("uiValidate",function(){"use strict";return{restrict:"A",require:"ngModel",link:function(n,t,i,r){function o(t){return angular.isString(t)?void n.$watch(t,function(){angular.forEach(u,function(n){n(r.$modelValue)})}):angular.isArray(t)?void angular.forEach(t,function(t){n.$watch(t,function(){angular.forEach(u,function(n){n(r.$modelValue)})})}):void(angular.isObject(t)&&angular.forEach(t,function(t,i){angular.isString(t)&&n.$watch(t,function(){u[i](r.$modelValue)});angular.isArray(t)&&angular.forEach(t,function(t){n.$watch(t,function(){u[i](r.$modelValue)})})}))}var e,u={},f=n.$eval(i.uiValidate);f&&(angular.isString(f)&&(f={validator:f}),angular.forEach(f,function(t,i){e=function(u){var f=n.$eval(t,{$value:u});return angular.isObject(f)&&angular.isFunction(f.then)?(f.then(function(){r.$setValidity(i,!0)},function(){r.$setValidity(i,!1)}),u):f?(r.$setValidity(i,!0),u):(r.$setValidity(i,!1),u)};u[i]=e;r.$formatters.push(e);r.$parsers.push(e)}),i.uiValidateWatch&&o(n.$eval(i.uiValidateWatch)))}}});angular.module("ui.utils",["ui.event","ui.format","ui.highlight","ui.include","ui.indeterminate","ui.inflector","ui.jq","ui.keypress","ui.mask","ui.reset","ui.route","ui.scrollfix","ui.scroll","ui.scroll.jqlite","ui.showhide","ui.unique","ui.validate"]);!function(){"use strict";angular.module("toaster",["ngAnimate"]).constant("toasterConfig",{limit:0,"tap-to-dismiss":!0,"close-button":!1,"newest-on-top":!0,"time-out":5e3,"icon-classes":{error:"toast-error",info:"toast-info",wait:"toast-wait",success:"toast-success",warning:"toast-warning"},"body-output-type":"","body-template":"toasterBodyTmpl.html","icon-class":"toast-info","position-class":"toast-top-right","title-class":"toast-title","message-class":"toast-message","prevent-duplicates":!1,"mouseover-timer-stop":!0}).service("toaster",["$rootScope","toasterConfig",function(n,t){this.pop=function(t,i,r,u,f,e,o,s){if(angular.isObject(t)){var h=t;this.toast={type:h.type,title:h.title,body:h.body,timeout:h.timeout,bodyOutputType:h.bodyOutputType,clickHandler:h.clickHandler,showCloseButton:h.showCloseButton};o=h.toasterId}else this.toast={type:t,title:i,body:r,timeout:u,bodyOutputType:f,clickHandler:e,showCloseButton:s};n.$emit("toaster-newToast",o)};this.clear=function(){n.$emit("toaster-clearToasts")};for(var i in t["icon-classes"])this[i]=function(n){return function(t,i,r,u,f,e,o){angular.isString(t)?this.pop(n,t,i,r,u,f,e,o):this.pop(angular.extend(t,{type:n}))}}(i)}]).factory("toasterEventRegistry",["$rootScope",function(n){var t,u=null,f=null,i=[],r=[];return t={setup:function(){u||(u=n.$on("toaster-newToast",function(n,t){for(var r=0,u=i.length;u>r;r++)i[r](n,t)}));f||(f=n.$on("toaster-clearToasts",function(n){for(var t=0,i=r.length;i>t;t++)r[t](n)}))},subscribeToNewToastEvent:function(n){i.push(n)},subscribeToClearToastsEvent:function(n){r.push(n)},unsubscribeToNewToastEvent:function(n){var t=i.indexOf(n);t>=0&&i.splice(t,1);0===i.length&&(u(),u=null)},unsubscribeToClearToastsEvent:function(n){var t=r.indexOf(n);t>=0&&r.splice(t,1);0===r.length&&(f(),f=null)}},{setup:t.setup,subscribeToNewToastEvent:t.subscribeToNewToastEvent,subscribeToClearToastsEvent:t.subscribeToClearToastsEvent,unsubscribeToNewToastEvent:t.unsubscribeToNewToastEvent,unsubscribeToClearToastsEvent:t.unsubscribeToClearToastsEvent}}]).directive("toasterContainer",["$parse","$rootScope","$interval","$sce","toasterConfig","toaster","toasterEventRegistry",function(n,t,i,r,u,f,e){return{replace:!0,restrict:"EA",scope:!0,link:function(t,o,s){function l(n,r){n.timeoutPromise=i(function(){t.removeToast(n.id)},r,1)}function a(i){var u,f,o,e;if(i.type=h["icon-classes"][i.type],i.type||(i.type=h["icon-class"]),!(h["prevent-duplicates"]===!0&&t.toasters.length>0&&t.toasters[t.toasters.length-1].body===i.body)){i.id=++y;u=h["close-button"];"boolean"==typeof i.showCloseButton||("boolean"==typeof u?i.showCloseButton=u:"object"==typeof u?(f=u[i.type],"undefined"!=typeof f&&null!==f&&(i.showCloseButton=f)):i.showCloseButton=!1);switch(i.bodyOutputType=i.bodyOutputType||h["body-output-type"],i.bodyOutputType){case"trustedHtml":i.html=r.trustAsHtml(i.body);break;case"template":i.bodyTemplate=i.body||h["body-template"];break;case"templateWithData":o=n(i.body||h["body-template"]);e=o(t);i.bodyTemplate=e.template;i.data=e.data}t.configureTimer(i);h["newest-on-top"]===!0?(t.toasters.unshift(i),h.limit>0&&t.toasters.length>h.limit&&t.toasters.pop()):(t.toasters.push(i),h.limit>0&&t.toasters.length>h.limit&&t.toasters.shift())}}function c(n){var r=t.toasters[n];r&&(r.timeoutPromise&&i.cancel(r.timeoutPromise),t.toasters.splice(n,1))}function v(){for(var n=t.toasters.length;n>=0;n--)c(n)}var h,y=0;h=angular.extend({},u,t.$eval(s.toasterOptions));t.config={toasterId:h["toaster-id"],position:h["position-class"],title:h["title-class"],message:h["message-class"],tap:h["tap-to-dismiss"],closeButton:h["close-button"],animation:h["animation-class"],mouseoverTimer:h["mouseover-timer-stop"]};t.$on("$destroy",function(){e.unsubscribeToNewToastEvent(t._onNewToast);e.unsubscribeToClearToastsEvent(t._onClearToasts)});t.configureTimer=function(n){var t=angular.isNumber(n.timeout)?n.timeout:h["time-out"];t>0&&l(n,t)};t.removeToast=function(n){for(var i=0,r=t.toasters.length;r>i;i++)if(t.toasters[i].id===n){c(i);break}};t.toasters=[];t._onNewToast=function(n,i){(void 0===t.config.toasterId&&void 0===i||void 0!==i&&i===t.config.toasterId)&&a(f.toast)};t._onClearToasts=function(){v()};e.setup();e.subscribeToNewToastEvent(t._onNewToast);e.subscribeToClearToastsEvent(t._onClearToasts)},controller:["$scope","$element","$attrs",function(n){n.stopTimer=function(t){n.config.mouseoverTimer===!0&&t.timeoutPromise&&(i.cancel(t.timeoutPromise),t.timeoutPromise=null)};n.restartTimer=function(t){n.config.mouseoverTimer===!0?t.timeoutPromise||n.configureTimer(t):null===t.timeoutPromise&&n.removeToast(t.id)};n.click=function(t){if(n.config.tap===!0||t.showCloseButton===!0){var i=!0;t.clickHandler&&(angular.isFunction(t.clickHandler)?i=t.clickHandler(t,t.showCloseButton):angular.isFunction(n.$parent.$eval(t.clickHandler))?i=n.$parent.$eval(t.clickHandler)(t,t.showCloseButton):console.log("TOAST-NOTE: Your click handler is not inside a parent scope of toaster-container."));i&&n.removeToast(t.id)}}}],template:'<div id="toast-container" ng-class="[config.position, config.animation]"><div ng-repeat="toaster in toasters" class="toast" ng-class="toaster.type" ng-click="click(toaster)" ng-mouseover="stopTimer(toaster)" ng-mouseout="restartTimer(toaster)"><button type="button" class="toast-close-button" ng-show="toaster.showCloseButton" ng-click="click(toaster)">&times;<\/button><div ng-class="config.title">{{toaster.title}}<\/div><div ng-class="config.message" ng-switch on="toaster.bodyOutputType"><div ng-switch-when="trustedHtml" ng-bind-html="toaster.html"><\/div><div ng-switch-when="template"><div ng-include="toaster.bodyTemplate"><\/div><\/div><div ng-switch-when="templateWithData"><div ng-include="toaster.bodyTemplate"><\/div><\/div><div ng-switch-default >{{toaster.body}}<\/div><\/div><\/div><\/div>'}}])}(window,document);angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.bindHtml","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.dropdown","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.transition","ui.bootstrap.typeahead"]);angular.module("ui.bootstrap.tpls",["template/accordion/accordion-group.html","template/accordion/accordion.html","template/alert/alert.html","template/carousel/carousel.html","template/carousel/slide.html","template/datepicker/datepicker.html","template/datepicker/day.html","template/datepicker/month.html","template/datepicker/popup.html","template/datepicker/year.html","template/modal/backdrop.html","template/modal/window.html","template/pagination/pager.html","template/pagination/pagination.html","template/tooltip/tooltip-html-popup.html","template/tooltip/tooltip-html-unsafe-popup.html","template/tooltip/tooltip-popup.html","template/tooltip/tooltip-template-popup.html","template/popover/popover-template.html","template/popover/popover.html","template/progressbar/bar.html","template/progressbar/progress.html","template/progressbar/progressbar.html","template/rating/rating.html","template/tabs/tab.html","template/tabs/tabset.html","template/timepicker/timepicker.html","template/typeahead/typeahead-match.html","template/typeahead/typeahead-popup.html"]);angular.module("ui.bootstrap.collapse",[]).directive("collapse",["$animate",function(n){return{link:function(t,i,r){function f(){i.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1);n.addClass(i,"in",{to:{height:i[0].scrollHeight+"px"}}).then(e)}function e(){i.removeClass("collapsing");i.css({height:"auto"})}function o(){return i.hasClass("collapse")||i.hasClass("in")?(i.css({height:i[0].scrollHeight+"px"}).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0),void n.removeClass(i,"in",{to:{height:"0"}}).then(u)):u()}function u(){i.css({height:"0"});i.removeClass("collapsing");i.addClass("collapse")}t.$watch(r.collapse,function(n){n?o():f()})}}}]);angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function(n,t,i){this.groups=[];this.closeOthers=function(r){var u=angular.isDefined(t.closeOthers)?n.$eval(t.closeOthers):i.closeOthers;u&&angular.forEach(this.groups,function(n){n!==r&&(n.isOpen=!1)})};this.addGroup=function(n){var t=this;this.groups.push(n);n.$on("$destroy",function(){t.removeGroup(n)})};this.removeGroup=function(n){var t=this.groups.indexOf(n);-1!==t&&this.groups.splice(t,1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",transclude:!0,replace:!1,templateUrl:"template/accordion/accordion.html"}}).directive("accordionGroup",function(){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/accordion/accordion-group.html",scope:{heading:"@",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(n){this.heading=n}},link:function(n,t,i,r){r.addGroup(n);n.$watch("isOpen",function(t){t&&r.closeOthers(n)});n.toggleOpen=function(){n.isDisabled||(n.isOpen=!n.isOpen)}}}}).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",link:function(n,t,i,r,u){r.setHeading(u(n,angular.noop))}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(n,t,i,r){n.$watch(function(){return r[i.accordionTransclude]},function(n){n&&(t.html(""),t.append(n))})}}});angular.module("ui.bootstrap.alert",[]).controller("AlertController",["$scope","$attrs",function(n,t){n.closeable=!!t.close;this.close=n.close}]).directive("alert",function(){return{restrict:"EA",controller:"AlertController",templateUrl:"template/alert/alert.html",transclude:!0,replace:!0,scope:{type:"@",close:"&"}}}).directive("dismissOnTimeout",["$timeout",function(n){return{require:"alert",link:function(t,i,r,u){n(function(){u.close()},parseInt(r.dismissOnTimeout,10))}}}]);angular.module("ui.bootstrap.bindHtml",[]).value("$bindHtmlUnsafeSuppressDeprecated",!1).directive("bindHtmlUnsafe",["$log","$bindHtmlUnsafeSuppressDeprecated",function(n,t){return function(i,r,u){t||n.warn("bindHtmlUnsafe is now deprecated. Use ngBindHtml instead");r.addClass("ng-binding").data("$binding",u.bindHtmlUnsafe);i.$watch(u.bindHtmlUnsafe,function(n){r.html(n||"")})}}]);angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).controller("ButtonsController",["buttonConfig",function(n){this.activeClass=n.activeClass||"active";this.toggleEvent=n.toggleEvent||"click"}]).directive("btnRadio",function(){return{require:["btnRadio","ngModel"],controller:"ButtonsController",link:function(n,t,i,r){var f=r[0],u=r[1];u.$render=function(){t.toggleClass(f.activeClass,angular.equals(u.$modelValue,n.$eval(i.btnRadio)))};t.bind(f.toggleEvent,function(){var r=t.hasClass(f.activeClass);(!r||angular.isDefined(i.uncheckable))&&n.$apply(function(){u.$setViewValue(r?null:n.$eval(i.btnRadio));u.$render()})})}}}).directive("btnCheckbox",function(){return{require:["btnCheckbox","ngModel"],controller:"ButtonsController",link:function(n,t,i,r){function e(){return o(i.btnCheckboxTrue,!0)}function s(){return o(i.btnCheckboxFalse,!1)}function o(t,i){var r=n.$eval(t);return angular.isDefined(r)?r:i}var f=r[0],u=r[1];u.$render=function(){t.toggleClass(f.activeClass,angular.equals(u.$modelValue,e()))};t.bind(f.toggleEvent,function(){n.$apply(function(){u.$setViewValue(t.hasClass(f.activeClass)?s():e());u.$render()})})}}});angular.module("ui.bootstrap.carousel",[]).controller("CarouselController",["$scope","$element","$interval","$animate",function(n,t,i,r){function v(t,i,f){l||(angular.extend(t,{direction:f,active:!0}),angular.extend(u.currentSlide||{},{direction:f,active:!1}),r.enabled()&&!n.noTransition&&!n.$currentTransition&&t.$element&&(t.$element.data(w,t.direction),n.$currentTransition=!0,t.$element.one("$animate:close",function(){n.$currentTransition=null})),u.currentSlide=t,s=i,h())}function a(n){if(angular.isUndefined(f[n].index))return f[n];var t;for(f.length,t=0;t<f.length;++t)if(f[t].index==n)return f[t]}function h(){c();var t=+n.interval;!isNaN(t)&&t>0&&(e=i(y,t))}function c(){e&&(i.cancel(e),e=null)}function y(){var t=+n.interval;o&&!isNaN(t)&&t>0&&f.length?n.next():n.pause()}var e,o,u=this,f=u.slides=n.slides=[],p="uib-noTransition",w="uib-slideDirection",s=-1,l;u.currentSlide=null;l=!1;u.select=n.select=function(t,i){var r=u.indexOfSlide(t);void 0===i&&(i=r>u.getCurrentIndex()?"next":"prev");t&&t!==u.currentSlide&&!n.$currentTransition&&v(t,r,i)};n.$on("$destroy",function(){l=!0});u.getCurrentIndex=function(){return u.currentSlide&&angular.isDefined(u.currentSlide.index)?+u.currentSlide.index:s};u.indexOfSlide=function(n){return angular.isDefined(n.index)?+n.index:f.indexOf(n)};n.next=function(){var t=(u.getCurrentIndex()+1)%f.length;return 0===t&&n.noWrap()?void n.pause():u.select(a(t),"next")};n.prev=function(){var t=u.getCurrentIndex()-1<0?f.length-1:u.getCurrentIndex()-1;return n.noWrap()&&t===f.length-1?void n.pause():u.select(a(t),"prev")};n.isActive=function(n){return u.currentSlide===n};n.$watch("interval",h);n.$on("$destroy",c);n.play=function(){o||(o=!0,h())};n.pause=function(){n.noPause||(o=!1,c())};u.addSlide=function(t,i){t.$element=i;f.push(t);1===f.length||t.active?(u.select(f[f.length-1]),1==f.length&&n.play()):t.active=!1};u.removeSlide=function(n){angular.isDefined(n.index)&&f.sort(function(n,t){return+n.index>+t.index});var t=f.indexOf(n);f.splice(t,1);f.length>0&&n.active?u.select(t>=f.length?f[t-1]:f[t]):s>t&&s--};n.$watch("noTransition",function(n){t.data(p,n)})}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",require:"carousel",templateUrl:"template/carousel/carousel.html",scope:{interval:"=",noTransition:"=",noPause:"=",noWrap:"&"}}}]).directive("slide",function(){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/carousel/slide.html",scope:{active:"=?",index:"=?"},link:function(n,t,i,r){r.addSlide(n,t);n.$on("$destroy",function(){r.removeSlide(n)});n.$watch("active",function(t){t&&r.select(n)})}}}).animation(".item",["$animate",function(n){var t="uib-noTransition",i="uib-slideDirection";return{beforeAddClass:function(r,u,f){if("active"==u&&r.parent()&&!r.parent().data(t)){var o=!1,e=r.data(i),s="next"==e?"left":"right";return r.addClass(e),n.addClass(r,s).then(function(){o||r.removeClass(s+" "+e);f()}),function(){o=!0}}f()},beforeRemoveClass:function(r,u,f){if("active"==u&&r.parent()&&!r.parent().data(t)){var e=!1,s=r.data(i),o="next"==s?"left":"right";return n.addClass(r,o).then(function(){e||r.removeClass(o);f()}),function(){e=!0}}f()}}}]);angular.module("ui.bootstrap.dateparser",[]).service("dateParser",["$locale","orderByFilter",function(n,t){function r(n){var u=[],r=n.split("");return angular.forEach(i,function(t,i){var f=n.indexOf(i),e,o;if(f>-1){for(n=n.split(""),r[f]="("+t.regex+")",n[f]="$",e=f+1,o=f+i.length;o>e;e++)r[e]="",n[e]="$";n=n.join("");u.push({index:f,apply:t.apply})}}),{regex:new RegExp("^"+r.join("")+"$"),map:t(u,"index")}}function u(n,t,i){return 1>i?!1:1===t&&i>28?29===i&&(n%4==0&&n%100!=0||n%400==0):3===t||5===t||8===t||10===t?31>i:!0}var f=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,i;this.parsers={};i={yyyy:{regex:"\\d{4}",apply:function(n){this.year=+n}},yy:{regex:"\\d{2}",apply:function(n){this.year=+n+2e3}},y:{regex:"\\d{1,4}",apply:function(n){this.year=+n}},MMMM:{regex:n.DATETIME_FORMATS.MONTH.join("|"),apply:function(t){this.month=n.DATETIME_FORMATS.MONTH.indexOf(t)}},MMM:{regex:n.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(t){this.month=n.DATETIME_FORMATS.SHORTMONTH.indexOf(t)}},MM:{regex:"0[1-9]|1[0-2]",apply:function(n){this.month=n-1}},M:{regex:"[1-9]|1[0-2]",apply:function(n){this.month=n-1}},dd:{regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(n){this.date=+n}},d:{regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(n){this.date=+n}},EEEE:{regex:n.DATETIME_FORMATS.DAY.join("|")},EEE:{regex:n.DATETIME_FORMATS.SHORTDAY.join("|")},HH:{regex:"(?:0|1)[0-9]|2[0-3]",apply:function(n){this.hours=+n}},H:{regex:"1?[0-9]|2[0-3]",apply:function(n){this.hours=+n}},mm:{regex:"[0-5][0-9]",apply:function(n){this.minutes=+n}},m:{regex:"[0-9]|[1-5][0-9]",apply:function(n){this.minutes=+n}},sss:{regex:"[0-9][0-9][0-9]",apply:function(n){this.milliseconds=+n}},ss:{regex:"[0-5][0-9]",apply:function(n){this.seconds=+n}},s:{regex:"[0-9]|[1-5][0-9]",apply:function(n){this.seconds=+n}}};this.parse=function(t,i,e){var o,a,s,v,c;if(!angular.isString(t)||!i)return t;i=n.DATETIME_FORMATS[i]||i;i=i.replace(f,"\\$&");this.parsers[i]||(this.parsers[i]=r(i));var l=this.parsers[i],y=l.regex,p=l.map,h=t.match(y);if(h&&h.length){for(o=e?{year:e.getFullYear(),month:e.getMonth(),date:e.getDate(),hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds(),milliseconds:e.getMilliseconds()}:{year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0},s=1,v=h.length;v>s;s++)c=p[s-1],c.apply&&c.apply.call(o,h[s]);return u(o.year,o.month,o.date)&&(a=new Date(o.year,o.month,o.date,o.hours,o.minutes,o.seconds,o.milliseconds||0)),a}}}]);angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function(n,t){function i(n,i){return n.currentStyle?n.currentStyle[i]:t.getComputedStyle?t.getComputedStyle(n)[i]:n.style[i]}function r(n){return"static"===(i(n,"position")||"static")}var u=function(t){for(var u=n[0],i=t.offsetParent||u;i&&i!==u&&r(i);)i=i.offsetParent;return i||u};return{position:function(t){var e=this.offset(t),r={top:0,left:0},i=u(t[0]),f;return i!=n[0]&&(r=this.offset(angular.element(i)),r.top+=i.clientTop-i.scrollTop,r.left+=i.clientLeft-i.scrollLeft),f=t[0].getBoundingClientRect(),{width:f.width||t.prop("offsetWidth"),height:f.height||t.prop("offsetHeight"),top:e.top-r.top,left:e.left-r.left}},offset:function(i){var r=i[0].getBoundingClientRect();return{width:r.width||i.prop("offsetWidth"),height:r.height||i.prop("offsetHeight"),top:r.top+(t.pageYOffset||n[0].documentElement.scrollTop),left:r.left+(t.pageXOffset||n[0].documentElement.scrollLeft)}},positionElements:function(n,t,i,r){var u,h,c,f,a=i.split("-"),l=a[0],e=a[1]||"center",o,s;u=r?this.offset(n):this.position(n);h=t.prop("offsetWidth");c=t.prop("offsetHeight");o={center:function(){return u.left+u.width/2-h/2},left:function(){return u.left},right:function(){return u.left+u.width}};s={center:function(){return u.top+u.height/2-c/2},top:function(){return u.top},bottom:function(){return u.top+u.height}};switch(l){case"right":f={top:s[e](),left:o[l]()};break;case"left":f={top:s[e](),left:u.left-h};break;case"bottom":f={top:s[l](),left:o[e]()};break;default:f={top:u.top-c,left:o[e]()}}return f}}}]);angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.position"]).constant("datepickerConfig",{formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",datepickerMode:"day",minMode:"day",maxMode:"year",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null,shortcutPropagation:!1}).controller("DatepickerController",["$scope","$attrs","$parse","$interpolate","$log","dateFilter","datepickerConfig",function(n,t,i,r,u,f,e){var o=this,s={$setViewValue:angular.noop},h;this.modes=["day","month","year"];angular.forEach(["formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","minMode","maxMode","showWeeks","startingDay","yearRange","shortcutPropagation"],function(i,u){o[i]=angular.isDefined(t[i])?8>u?r(t[i])(n.$parent):n.$parent.$eval(t[i]):e[i]});angular.forEach(["minDate","maxDate"],function(r){t[r]?n.$parent.$watch(i(t[r]),function(n){o[r]=n?new Date(n):null;o.refreshView()}):o[r]=e[r]?new Date(e[r]):null});n.datepickerMode=n.datepickerMode||e.datepickerMode;n.maxMode=o.maxMode;n.uniqueId="datepicker-"+n.$id+"-"+Math.floor(1e4*Math.random());angular.isDefined(t.initDate)?(this.activeDate=n.$parent.$eval(t.initDate)||new Date,n.$parent.$watch(t.initDate,function(n){n&&(s.$isEmpty(s.$modelValue)||s.$invalid)&&(o.activeDate=n,o.refreshView())})):this.activeDate=new Date;n.isActive=function(t){return 0===o.compare(t.date,o.activeDate)?(n.activeDateId=t.uid,!0):!1};this.init=function(n){s=n;s.$render=function(){o.render()}};this.render=function(){if(s.$viewValue){var n=new Date(s.$viewValue),t=!isNaN(n);t?this.activeDate=n:u.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.');s.$setValidity("date",t)}this.refreshView()};this.refreshView=function(){if(this.element){this._refreshView();var n=s.$viewValue?new Date(s.$viewValue):null;s.$setValidity("date-disabled",!n||this.element&&!this.isDisabled(n))}};this.createDateObject=function(n,t){var i=s.$viewValue?new Date(s.$viewValue):null;return{date:n,label:f(n,t),selected:i&&0===this.compare(n,i),disabled:this.isDisabled(n),current:0===this.compare(n,new Date),customClass:this.customClass(n)}};this.isDisabled=function(i){return this.minDate&&this.compare(i,this.minDate)<0||this.maxDate&&this.compare(i,this.maxDate)>0||t.dateDisabled&&n.dateDisabled({date:i,mode:n.datepickerMode})};this.customClass=function(t){return n.customClass({date:t,mode:n.datepickerMode})};this.split=function(n,t){for(var i=[];n.length>0;)i.push(n.splice(0,t));return i};this.fixTimeZone=function(n){var t=n.getHours();n.setHours(23===t?t+2:0)};n.select=function(t){if(n.datepickerMode===o.minMode){var i=s.$viewValue?new Date(s.$viewValue):new Date(0,0,0,0,0,0,0);i.setFullYear(t.getFullYear(),t.getMonth(),t.getDate());s.$setViewValue(i);s.$render()}else o.activeDate=t,n.datepickerMode=o.modes[o.modes.indexOf(n.datepickerMode)-1]};n.move=function(n){var t=o.activeDate.getFullYear()+n*(o.step.years||0),i=o.activeDate.getMonth()+n*(o.step.months||0);o.activeDate.setFullYear(t,i,1);o.refreshView()};n.toggleMode=function(t){t=t||1;n.datepickerMode===o.maxMode&&1===t||n.datepickerMode===o.minMode&&-1===t||(n.datepickerMode=o.modes[o.modes.indexOf(n.datepickerMode)+t])};n.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};h=function(){o.element[0].focus()};n.$on("datepicker.focus",h);n.keydown=function(t){var i=n.keys[t.which];if(i&&!t.shiftKey&&!t.altKey)if(t.preventDefault(),o.shortcutPropagation||t.stopPropagation(),"enter"===i||"space"===i){if(o.isDisabled(o.activeDate))return;n.select(o.activeDate);h()}else!t.ctrlKey||"up"!==i&&"down"!==i?(o.handleKeyDown(i,t),o.refreshView()):(n.toggleMode("up"===i?1:-1),h())}}]).directive("datepicker",function(){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/datepicker.html",scope:{datepickerMode:"=?",dateDisabled:"&",customClass:"&",shortcutPropagation:"&?"},require:["datepicker","?^ngModel"],controller:"DatepickerController",link:function(n,t,i,r){var f=r[0],u=r[1];u&&f.init(u)}}}).directive("daypicker",["dateFilter",function(n){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/day.html",require:"^datepicker",link:function(t,i,r,u){function f(n,t){return 1!==t||n%4!=0||n%100==0&&n%400!=0?s[t]:29}function e(n,t){for(var i,f=new Array(t),r=new Date(n),e=0;t>e;)i=new Date(r),u.fixTimeZone(i),f[e++]=i,r.setDate(r.getDate()+1);return f}function o(n){var t=new Date(n),i;return t.setDate(t.getDate()+4-(t.getDay()||7)),i=t.getTime(),t.setMonth(0),t.setDate(1),Math.floor(Math.round((i-t)/864e5)/7)+1}t.showWeeks=u.showWeeks;u.step={months:1};u.element=i;var s=[31,28,31,30,31,30,31,31,30,31,30,31];u._refreshView=function(){var y=u.activeDate.getFullYear(),c=u.activeDate.getMonth(),l=new Date(y,c,1),s=u.startingDay-l.getDay(),a=s>0?7-s:-s,v=new Date(l),i,r,f;for(a>0&&v.setDate(-a+1),i=e(v,42),r=0;42>r;r++)i[r]=angular.extend(u.createDateObject(i[r],u.formatDay),{secondary:i[r].getMonth()!==c,uid:t.uniqueId+"-"+r});for(t.labels=new Array(7),f=0;7>f;f++)t.labels[f]={abbr:n(i[f].date,u.formatDayHeader),full:n(i[f].date,"EEEE")};if(t.title=n(u.activeDate,u.formatDayTitle),t.rows=u.split(i,7),t.showWeeks){t.weekNumbers=[];for(var p=(11-u.startingDay)%7,w=t.rows.length,h=0;w>h;h++)t.weekNumbers.push(o(t.rows[h][p].date))}};u.compare=function(n,t){return new Date(n.getFullYear(),n.getMonth(),n.getDate())-new Date(t.getFullYear(),t.getMonth(),t.getDate())};u.handleKeyDown=function(n){var t=u.activeDate.getDate(),i;"left"===n?t-=1:"up"===n?t-=7:"right"===n?t+=1:"down"===n?t+=7:"pageup"===n||"pagedown"===n?(i=u.activeDate.getMonth()+("pageup"===n?-1:1),u.activeDate.setMonth(i,1),t=Math.min(f(u.activeDate.getFullYear(),u.activeDate.getMonth()),t)):"home"===n?t=1:"end"===n&&(t=f(u.activeDate.getFullYear(),u.activeDate.getMonth()));u.activeDate.setDate(t)};u.refreshView()}}}]).directive("monthpicker",["dateFilter",function(n){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/month.html",require:"^datepicker",link:function(t,i,r,u){u.step={years:1};u.element=i;u._refreshView=function(){for(var r,f=new Array(12),e=u.activeDate.getFullYear(),i=0;12>i;i++)r=new Date(e,i,1),u.fixTimeZone(r),f[i]=angular.extend(u.createDateObject(r,u.formatMonth),{uid:t.uniqueId+"-"+i});t.title=n(u.activeDate,u.formatMonthTitle);t.rows=u.split(f,3)};u.compare=function(n,t){return new Date(n.getFullYear(),n.getMonth())-new Date(t.getFullYear(),t.getMonth())};u.handleKeyDown=function(n){var t=u.activeDate.getMonth(),i;"left"===n?t-=1:"up"===n?t-=3:"right"===n?t+=1:"down"===n?t+=3:"pageup"===n||"pagedown"===n?(i=u.activeDate.getFullYear()+("pageup"===n?-1:1),u.activeDate.setFullYear(i)):"home"===n?t=0:"end"===n&&(t=11);u.activeDate.setMonth(t)};u.refreshView()}}}]).directive("yearpicker",["dateFilter",function(){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/year.html",require:"^datepicker",link:function(n,t,i,r){function f(n){return parseInt((n-1)/u,10)*u+1}var u=r.yearRange;r.step={years:u};r.element=t;r._refreshView=function(){for(var e,i=new Array(u),t=0,o=f(r.activeDate.getFullYear());u>t;t++)e=new Date(o+t,0,1),r.fixTimeZone(e),i[t]=angular.extend(r.createDateObject(e,r.formatYear),{uid:n.uniqueId+"-"+t});n.title=[i[0].label,i[u-1].label].join(" - ");n.rows=r.split(i,5)};r.compare=function(n,t){return n.getFullYear()-t.getFullYear()};r.handleKeyDown=function(n){var t=r.activeDate.getFullYear();"left"===n?t-=1:"up"===n?t-=5:"right"===n?t+=1:"down"===n?t+=5:"pageup"===n||"pagedown"===n?t+=("pageup"===n?-1:1)*r.step.years:"home"===n?t=f(r.activeDate.getFullYear()):"end"===n&&(t=f(r.activeDate.getFullYear())+u-1);r.activeDate.setFullYear(t)};r.refreshView()}}}]).constant("datepickerPopupConfig",{datepickerPopup:"yyyy-MM-dd",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},currentText:"Today",clearText:"Clear",closeText:"Done",closeOnDateSelection:!0,appendToBody:!1,showButtonBar:!0}).directive("datepickerPopup",["$compile","$parse","$document","$position","dateFilter","dateParser","datepickerPopupConfig","$timeout",function(n,t,i,r,u,f,e,o){return{restrict:"EA",require:"ngModel",scope:{isOpen:"=?",currentText:"@",clearText:"@",closeText:"@",dateDisabled:"&",customClass:"&"},link:function(s,h,c,l){function g(n){return n.replace(/([A-Z])/g,function(n){return"-"+n.toLowerCase()})}function tt(n){if(angular.isNumber(n)&&(n=new Date(n)),n){if(angular.isDate(n)&&!isNaN(n))return n;if(angular.isString(n)){var t=f.parse(n,a,s.date)||new Date(n);return isNaN(t)?void 0:t}return void 0}return null}function it(n,t){var i=n||t,r;return(angular.isNumber(i)&&(i=new Date(i)),i)?angular.isDate(i)&&!isNaN(i)?!0:angular.isString(i)?(r=f.parse(i,a)||new Date(i),!isNaN(r)):!1:!0}var a,rt=angular.isDefined(c.closeOnDateSelection)?s.$parent.$eval(c.closeOnDateSelection):e.closeOnDateSelection,nt=angular.isDefined(c.datepickerAppendToBody)?s.$parent.$eval(c.datepickerAppendToBody):e.appendToBody,y,p,v,w,b,d,k;if(s.showButtonBar=angular.isDefined(c.showButtonBar)?s.$parent.$eval(c.showButtonBar):e.showButtonBar,s.getText=function(n){return s[n+"Text"]||e[n+"Text"]},y=!1,e.html5Types[c.type]?(a=e.html5Types[c.type],y=!0):(a=c.datepickerPopup||e.datepickerPopup,c.$observe("datepickerPopup",function(n){var t=n||e.datepickerPopup;if(t!==a&&(a=t,l.$modelValue=null,!a))throw new Error("datepickerPopup must have a date format specified.");})),!a)throw new Error("datepickerPopup must have a date format specified.");if(y&&c.datepickerPopup)throw new Error("HTML5 date input types do not support custom formats.");p=angular.element("<div datepicker-popup-wrap><div datepicker><\/div><\/div>");p.attr({"ng-model":"date","ng-change":"dateSelection(date)"});v=angular.element(p.children()[0]);(y&&"month"==c.type&&(v.attr("datepicker-mode",'"month"'),v.attr("min-mode","month")),c.datepickerOptions)&&(w=s.$parent.$eval(c.datepickerOptions),w.initDate&&(s.initDate=w.initDate,v.attr("init-date","initDate"),delete w.initDate),angular.forEach(w,function(n,t){v.attr(g(t),n)}));s.watchData={};angular.forEach(["minDate","maxDate","datepickerMode","initDate","shortcutPropagation"],function(n){var i,r;c[n]&&(i=t(c[n]),(s.$parent.$watch(i,function(t){s.watchData[n]=t}),v.attr(g(n),"watchData."+n),"datepickerMode"===n)&&(r=i.assign,s.$watch("watchData."+n,function(n,t){angular.isFunction(r)&&n!==t&&r(s.$parent,n)})))});c.dateDisabled&&v.attr("date-disabled","dateDisabled({ date: date, mode: mode })");c.showWeeks&&v.attr("show-weeks",c.showWeeks);c.customClass&&v.attr("custom-class","customClass({ date: date, mode: mode })");y?l.$formatters.push(function(n){return s.date=n,n}):(l.$$parserName="date",l.$validators.date=it,l.$parsers.unshift(tt),l.$formatters.push(function(n){return s.date=n,l.$isEmpty(n)?n:u(n,a)}));s.dateSelection=function(n){angular.isDefined(n)&&(s.date=n);var t=s.date?u(s.date,a):"";h.val(t);l.$setViewValue(t);rt&&(s.isOpen=!1,h[0].focus())};l.$viewChangeListeners.push(function(){s.date=f.parse(l.$viewValue,a,s.date)||new Date(l.$viewValue)});b=function(n){s.isOpen&&n.target!==h[0]&&s.$apply(function(){s.isOpen=!1})};d=function(n){27===n.which&&s.isOpen?(n.preventDefault(),n.stopPropagation(),s.$apply(function(){s.isOpen=!1}),h[0].focus()):40!==n.which||s.isOpen||(n.preventDefault(),n.stopPropagation(),s.$apply(function(){s.isOpen=!0}))};h.bind("keydown",d);s.keydown=function(n){27===n.which&&(s.isOpen=!1,h[0].focus())};s.$watch("isOpen",function(n){n?(s.position=nt?r.offset(h):r.position(h),s.position.top=s.position.top+h.prop("offsetHeight"),i.bind("click",b),o(function(){s.$broadcast("datepicker.focus")},0,!1)):i.unbind("click",b)});s.select=function(n){if("today"===n){var t=new Date;angular.isDate(s.date)?(n=new Date(s.date),n.setFullYear(t.getFullYear(),t.getMonth(),t.getDate())):n=new Date(t.setHours(0,0,0,0))}s.dateSelection(n)};s.close=function(){s.isOpen=!1;h[0].focus()};k=n(p)(s);p.remove();nt?i.find("body").append(k):h.after(k);s.$on("$destroy",function(){s.isOpen===!0&&s.$apply(function(){s.isOpen=!1});k.remove();h.unbind("keydown",d);i.unbind("click",b)})}}}]).directive("datepickerPopupWrap",function(){return{restrict:"EA",replace:!0,transclude:!0,templateUrl:"template/datepicker/popup.html"}});angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("dropdownConfig",{openClass:"open"}).service("dropdownService",["$document","$rootScope",function(n,t){var i=null,r,u;this.open=function(t){i||(n.bind("click",r),n.bind("keydown",u));i&&i!==t&&(i.isOpen=!1);i=t};this.close=function(t){i===t&&(i=null,n.unbind("click",r),n.unbind("keydown",u))};r=function(n){var r,u;i&&(!n||"disabled"!==i.getAutoClose())&&(r=i.getToggleElement(),n&&r&&r[0].contains(n.target)||(u=i.getDropdownElement(),n&&"outsideClick"===i.getAutoClose()&&u&&u[0].contains(n.target)||(i.isOpen=!1,t.$$phase||i.$apply())))};u=function(n){27===n.which?(i.focusToggleElement(),r()):i.isKeynavEnabled()&&/(38|40)/.test(n.which)&&i.isOpen&&(n.preventDefault(),n.stopPropagation(),i.focusDropdownEntry(n.which))}}]).controller("DropdownController",["$scope","$attrs","$parse","dropdownConfig","dropdownService","$animate","$position","$document","$compile","$templateRequest",function(n,t,i,r,u,f,e,o,s,h){var a,v,c=this,l=n.$new(),b=r.openClass,p=angular.noop,k=t.onToggle?i(t.onToggle):angular.noop,y=!1,w=!1;this.init=function(r){c.$element=r;t.isOpen&&(v=i(t.isOpen),p=v.assign,n.$watch(v,function(n){l.isOpen=!!n}));y=angular.isDefined(t.dropdownAppendToBody);w=angular.isDefined(t.keyboardNav);y&&c.dropdownMenu&&(o.find("body").append(c.dropdownMenu),r.on("$destroy",function(){c.dropdownMenu.remove()}))};this.toggle=function(n){return l.isOpen=arguments.length?!!n:!l.isOpen};this.isOpen=function(){return l.isOpen};l.getToggleElement=function(){return c.toggleElement};l.getAutoClose=function(){return t.autoClose||"always"};l.getElement=function(){return c.$element};l.isKeynavEnabled=function(){return w};l.focusDropdownEntry=function(n){var t=c.dropdownMenu?angular.element(c.dropdownMenu).find("a"):angular.element(c.$element).find("ul").eq(0).find("a");switch(n){case 40:c.selectedOption=angular.isNumber(c.selectedOption)?c.selectedOption===t.length-1?c.selectedOption:c.selectedOption+1:0;break;case 38:if(!angular.isNumber(c.selectedOption))return;c.selectedOption=0===c.selectedOption?0:c.selectedOption-1}t[c.selectedOption].focus()};l.getDropdownElement=function(){return c.dropdownMenu};l.focusToggleElement=function(){c.toggleElement&&c.toggleElement[0].focus()};l.$watch("isOpen",function(t,i){var v;if(y&&c.dropdownMenu){var o=e.positionElements(c.$element,c.dropdownMenu,"bottom-left",!0),r={top:o.top+"px",display:t?"block":"none"},w=c.dropdownMenu.hasClass("dropdown-menu-right");w?(r.left="auto",r.right=window.innerWidth-(o.left+c.$element.prop("offsetWidth"))+"px"):(r.left=o.left+"px",r.right="auto");c.dropdownMenu.css(r)}(f[t?"addClass":"removeClass"](c.$element,b).then(function(){angular.isDefined(t)&&t!==i&&k(n,{open:!!t})}),t)?(c.dropdownMenuTemplateUrl&&h(c.dropdownMenuTemplateUrl).then(function(n){a=l.$new();s(n.trim())(a,function(n){var t=n;c.dropdownMenu.replaceWith(t);c.dropdownMenu=t})}),l.focusToggleElement(),u.open(l)):(c.dropdownMenuTemplateUrl&&(a&&a.$destroy(),v=angular.element('<ul class="dropdown-menu"><\/ul>'),c.dropdownMenu.replaceWith(v),c.dropdownMenu=v),u.close(l),c.selectedOption=null);p(n,t)});n.$on("$locationChangeSuccess",function(){"disabled"!==l.getAutoClose()&&(l.isOpen=!1)});n.$on("$destroy",function(){l.$destroy()})}]).directive("dropdown",function(){return{controller:"DropdownController",link:function(n,t,i,r){r.init(t);t.addClass("dropdown")}}}).directive("dropdownMenu",function(){return{restrict:"AC",require:"?^dropdown",link:function(n,t,i,r){if(r){var u=i.templateUrl;u&&(r.dropdownMenuTemplateUrl=u);r.dropdownMenu||(r.dropdownMenu=t)}}}}).directive("keyboardNav",function(){return{restrict:"A",require:"?^dropdown",link:function(n,t,i,r){t.bind("keydown",function(n){if(-1!==[38,40].indexOf(n.which)){n.preventDefault();n.stopPropagation();var i=angular.element(t).find("a");switch(n.keyCode){case 40:r.selectedOption=angular.isNumber(r.selectedOption)?r.selectedOption===i.length-1?r.selectedOption:r.selectedOption+1:0;break;case 38:r.selectedOption=0===r.selectedOption?0:r.selectedOption-1}i[r.selectedOption].focus()}})}}}).directive("dropdownToggle",function(){return{require:"?^dropdown",link:function(n,t,i,r){if(r){t.addClass("dropdown-toggle");r.toggleElement=t;var u=function(u){u.preventDefault();t.hasClass("disabled")||i.disabled||n.$apply(function(){r.toggle()})};t.bind("click",u);t.attr({"aria-haspopup":!0,"aria-expanded":!1});n.$watch(r.isOpen,function(n){t.attr("aria-expanded",!!n)});n.$on("$destroy",function(){t.unbind("click",u)})}}}});angular.module("ui.bootstrap.modal",[]).factory("$$stackedMap",function(){return{createNew:function(){var n=[];return{add:function(t,i){n.push({key:t,value:i})},get:function(t){for(var i=0;i<n.length;i++)if(t==n[i].key)return n[i]},keys:function(){for(var i=[],t=0;t<n.length;t++)i.push(n[t].key);return i},top:function(){return n[n.length-1]},remove:function(t){for(var r=-1,i=0;i<n.length;i++)if(t==n[i].key){r=i;break}return n.splice(r,1)[0]},removeTop:function(){return n.splice(n.length-1,1)[0]},length:function(){return n.length}}}}}).directive("modalBackdrop",["$animate","$modalStack",function(n,t){function i(i,r,u){u.modalInClass&&(n.addClass(r,u.modalInClass),i.$on(t.NOW_CLOSING_EVENT,function(t,i){var f=i();n.removeClass(r,u.modalInClass).then(f)}))}return{restrict:"EA",replace:!0,templateUrl:"template/modal/backdrop.html",compile:function(n,t){return n.addClass(t.backdropClass),i}}}]).directive("modalWindow",["$modalStack","$q","$animate",function(n,t,i){return{restrict:"EA",scope:{index:"@"},replace:!0,transclude:!0,templateUrl:function(n,t){return t.templateUrl||"template/modal/window.html"},link:function(r,u,f){u.addClass(f.windowClass||"");r.size=f.size;r.close=function(t){var i=n.getTop();i&&i.value.backdrop&&"static"!=i.value.backdrop&&t.target===t.currentTarget&&(t.preventDefault(),t.stopPropagation(),n.dismiss(i.key,"backdrop click"))};r.$isRendered=!0;var e=t.defer();f.$observe("modalRender",function(n){"true"==n&&e.resolve()});e.promise.then(function(){var t,e;f.modalInClass&&(i.addClass(u,f.modalInClass),r.$on(n.NOW_CLOSING_EVENT,function(n,t){var r=t();i.removeClass(u,f.modalInClass).then(r)}));t=u[0].querySelectorAll("[autofocus]");t.length?t[0].focus():u[0].focus();e=n.getTop();e&&n.modalRendered(e.key)})}}}]).directive("modalAnimationClass",[function(){return{compile:function(n,t){t.modalAnimation&&n.addClass(t.modalAnimationClass)}}}]).directive("modalTransclude",function(){return{link:function(n,t,i,r,u){u(n.$parent,function(n){t.empty();t.append(n)})}}}).factory("$modalStack",["$animate","$timeout","$document","$compile","$rootScope","$q","$$stackedMap",function(n,t,i,r,u,f,e){function l(){for(var t=-1,i=o.keys(),n=0;n<i.length;n++)o.get(i[n]).value.backdrop&&(t=n);return t}function a(n,t){var r=i.find("body").eq(0),u=o.get(n).value;o.remove(n);v(u.modalDomEl,u.modalScope,function(){r.toggleClass(p,o.length()>0);w()});t&&t.focus?t.focus():r.focus()}function w(){if(c&&-1==l()){var n=h;v(c,h,function(){n=null});c=void 0;h=void 0}}function v(n,t,i){function u(){u.done||(u.done=!0,n.remove(),t.$destroy(),i&&i())}var r,e=null,o=function(){return r||(r=f.defer(),e=r.promise),function(){r.resolve()}};return t.$broadcast(s.NOW_CLOSING_EVENT,o),f.when(e).then(u)}function y(n,t,i){return!n.value.modalScope.$broadcast("modal.closing",t,i).defaultPrevented}var c,h,p="modal-open",o=e.createNew(),s={NOW_CLOSING_EVENT:"modal.stack.now-closing"};return u.$watch(l,function(n){h&&(h.index=n)}),i.bind("keydown",function(n){var t;27===n.which&&(t=o.top(),t&&t.value.keyboard&&(n.preventDefault(),u.$apply(function(){s.dismiss(t.key,"escape key press")})))}),s.open=function(n,t){var y=i[0].activeElement,f,a,e,s,v;o.add(n,{deferred:t.deferred,renderDeferred:t.renderDeferred,modalScope:t.scope,backdrop:t.backdrop,keyboard:t.keyboard});f=i.find("body").eq(0);a=l();a>=0&&!c&&(h=u.$new(!0),h.index=a,e=angular.element('<div modal-backdrop="modal-backdrop"><\/div>'),e.attr("backdrop-class",t.backdropClass),t.animation&&e.attr("modal-animation","true"),c=r(e)(h),f.append(c));s=angular.element('<div modal-window="modal-window"><\/div>');s.attr({"template-url":t.windowTemplateUrl,"window-class":t.windowClass,size:t.size,index:o.length()-1,animate:"animate"}).html(t.content);t.animation&&s.attr("modal-animation","true");v=r(s)(t.scope);o.top().value.modalDomEl=v;o.top().value.modalOpener=y;f.append(v);f.addClass(p)},s.close=function(n,t){var i=o.get(n);return i&&y(i,t,!0)?(i.value.deferred.resolve(t),a(n,i.value.modalOpener),!0):!i},s.dismiss=function(n,t){var i=o.get(n);return i&&y(i,t,!1)?(i.value.deferred.reject(t),a(n,i.value.modalOpener),!0):!i},s.dismissAll=function(n){for(var t=this.getTop();t&&this.dismiss(t.key,n);)t=this.getTop()},s.getTop=function(){return o.top()},s.modalRendered=function(n){var t=o.get(n);t&&t.value.renderDeferred.resolve()},s}]).provider("$modal",function(){var n={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$injector","$rootScope","$q","$templateRequest","$controller","$modalStack",function(t,i,r,u,f,e){function s(n){return n.template?r.when(n.template):u(angular.isFunction(n.templateUrl)?n.templateUrl():n.templateUrl)}function h(n){var i=[];return angular.forEach(n,function(n){(angular.isFunction(n)||angular.isArray(n))&&i.push(r.when(t.invoke(n)))}),i}var o={};return o.open=function(t){var o=r.defer(),c=r.defer(),a=r.defer(),u={result:o.promise,opened:c.promise,rendered:a.promise,close:function(n){return e.close(u,n)},dismiss:function(n){return e.dismiss(u,n)}},l;if(t=angular.extend({},n.options,t),t.resolve=t.resolve||{},!t.template&&!t.templateUrl)throw new Error("One of template or templateUrl options is required.");return l=r.all([s(t)].concat(h(t.resolve))),l.then(function(n){var r=(t.scope||i).$new(),h,s,c;r.$close=u.close;r.$dismiss=u.dismiss;s={};c=1;t.controller&&(s.$scope=r,s.$modalInstance=u,angular.forEach(t.resolve,function(t,i){s[i]=n[c++]}),h=f(t.controller,s),t.controllerAs&&(t.bindToController?angular.extend(r,h):r[t.controllerAs]=h));e.open(u,{scope:r,deferred:o,renderDeferred:a,content:n[0],animation:t.animation,backdrop:t.backdrop,keyboard:t.keyboard,backdropClass:t.backdropClass,windowClass:t.windowClass,windowTemplateUrl:t.windowTemplateUrl,size:t.size})},function(n){o.reject(n)}),l.then(function(){c.resolve(!0)},function(n){c.reject(n)}),u},o}]};return n});angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope","$attrs","$parse",function(n,t,i){var u=this,r={$setViewValue:angular.noop},f=t.numPages?i(t.numPages).assign:angular.noop;this.init=function(e,o){r=e;this.config=o;r.$render=function(){u.render()};t.itemsPerPage?n.$parent.$watch(i(t.itemsPerPage),function(t){u.itemsPerPage=parseInt(t,10);n.totalPages=u.calculateTotalPages()}):this.itemsPerPage=o.itemsPerPage;n.$watch("totalItems",function(){n.totalPages=u.calculateTotalPages()});n.$watch("totalPages",function(t){f(n.$parent,t);n.page>t?n.selectPage(t):r.$render()})};this.calculateTotalPages=function(){var t=this.itemsPerPage<1?1:Math.ceil(n.totalItems/this.itemsPerPage);return Math.max(t||0,1)};this.render=function(){n.page=parseInt(r.$viewValue,10)||1};n.selectPage=function(t,i){var u=!n.ngDisabled||!i;u&&n.page!==t&&t>0&&t<=n.totalPages&&(i&&i.target&&i.target.blur(),r.$setViewValue(t),r.$render())};n.getText=function(t){return n[t+"Text"]||u.config[t+"Text"]};n.noPrevious=function(){return 1===n.page};n.noNext=function(){return n.page===n.totalPages}}]).constant("paginationConfig",{itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["$parse","paginationConfig",function(n,t){return{restrict:"EA",scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["pagination","?ngModel"],controller:"PaginationController",templateUrl:"template/pagination/pagination.html",replace:!0,link:function(i,r,u,f){function s(n,t,i){return{number:n,text:t,active:i}}function a(n,t){var f=[],i=1,r=t,o=angular.isDefined(e)&&t>e,u,c,l,a;for(o&&(h?(i=Math.max(n-Math.floor(e/2),1),r=i+e-1,r>t&&(r=t,i=r-e+1)):(i=(Math.ceil(n/e)-1)*e+1,r=Math.min(i+e-1,t))),u=i;r>=u;u++)c=s(u,u,u===n),f.push(c);return o&&!h&&(i>1&&(l=s(i-1,"...",!1),f.unshift(l)),t>r&&(a=s(r+1,"...",!1),f.push(a))),f}var o=f[0],c=f[1],e,h,l;c&&(e=angular.isDefined(u.maxSize)?i.$parent.$eval(u.maxSize):t.maxSize,h=angular.isDefined(u.rotate)?i.$parent.$eval(u.rotate):t.rotate,i.boundaryLinks=angular.isDefined(u.boundaryLinks)?i.$parent.$eval(u.boundaryLinks):t.boundaryLinks,i.directionLinks=angular.isDefined(u.directionLinks)?i.$parent.$eval(u.directionLinks):t.directionLinks,o.init(c,t),u.maxSize&&i.$parent.$watch(n(u.maxSize),function(n){e=parseInt(n,10);o.render()}),l=o.render,o.render=function(){l();i.page>0&&i.page<=i.totalPages&&(i.pages=a(i.page,i.totalPages))})}}}]).constant("pagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(n){return{restrict:"EA",scope:{totalItems:"=",previousText:"@",nextText:"@"},require:["pager","?ngModel"],controller:"PaginationController",templateUrl:"template/pagination/pager.html",replace:!0,link:function(t,i,r,u){var e=u[0],f=u[1];f&&(t.align=angular.isDefined(r.align)?t.$parent.$eval(r.align):n.align,e.init(f,n))}}}]);angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).provider("$tooltip",function(){function i(n){var t="-";return n.replace(/[A-Z]/g,function(n,i){return(i?t:"")+n.toLowerCase()})}var r={placement:"top",animation:!0,popupDelay:0,useContentExp:!1},n={mouseenter:"mouseleave",click:"click",focus:"blur"},t={};this.options=function(n){angular.extend(t,n)};this.setTriggers=function(t){angular.extend(n,t)};this.$get=["$window","$compile","$timeout","$document","$position","$interpolate",function(u,f,e,o,s,h){return function(u,c,l,a){function p(t){var i=t||a.trigger||l,r=n[i]||i;return{show:i,hide:r}}a=angular.extend({},r,t,a);var w=i(u),v=h.startSymbol(),y=h.endSymbol(),b="<div "+w+'-popup title="'+v+"title"+y+'" '+(a.useContentExp?'content-exp="contentExp()" ':'content="'+v+"content"+y+'" ')+'placement="'+v+"placement"+y+'" popup-class="'+v+"popupClass"+y+'" animation="animation" is-open="isOpen"origin-scope="origScope" ><\/div>';return{restrict:"EA",compile:function(){var n=f(b);return function(t,i,r){function et(){f.isOpen?nt():g()}function g(){(!vt||t.$eval(r[c+"Enable"]))&&(st(),f.popupDelay?w||(w=e(ft,f.popupDelay,!1),w.then(function(n){n()})):ft()())}function nt(){t.$apply(function(){b()})}function ft(){return w=null,y&&(e.cancel(y),y=null),(a.useContentExp?f.contentExp():f.content)?(ot(),h.css({top:0,left:0,display:"block"}),f.$digest(),tt(),f.isOpen=!0,f.$apply(),tt):angular.noop}function b(){f.isOpen=!1;e.cancel(w);w=null;f.animation?y||(y=e(d,500)):d()}function ot(){h&&d();v=f.$new();h=n(v,function(n){k?o.find("body").append(n):i.after(n)});v.$watch(function(){e(tt,0,!1)});a.useContentExp&&v.$watch("contentExp()",function(n){!n&&f.isOpen&&b()})}function d(){y=null;h&&(h.remove(),h=null);v&&(v.$destroy(),v=null)}function st(){ht();ct();lt()}function ht(){f.popupClass=r[c+"Class"]}function ct(){var n=r[c+"Placement"];f.placement=angular.isDefined(n)?n:a.placement}function lt(){var t=r[c+"PopupDelay"],n=parseInt(t,10);f.popupDelay=isNaN(n)?a.popupDelay:n}function at(){var n=r[c+"Trigger"];it();l=p(n);l.show===l.hide?i.bind(l.show,et):(i.bind(l.show,g),i.bind(l.hide,nt))}var h,v,y,w,k=angular.isDefined(a.appendToBody)?a.appendToBody:!1,l=p(void 0),vt=angular.isDefined(r[c+"Enable"]),f=t.$new(!0),tt=function(){if(h){var n=s.positionElements(i,h,f.placement,k);n.top+="px";n.left+="px";h.css(n)}},it,rt,ut;f.origScope=t;f.isOpen=!1;f.contentExp=function(){return t.$eval(r[u])};a.useContentExp||r.$observe(u,function(n){f.content=n;!n&&f.isOpen&&b()});r.$observe("disabled",function(n){n&&f.isOpen&&b()});r.$observe(c+"Title",function(n){f.title=n});it=function(){i.unbind(l.show,g);i.unbind(l.hide,nt)};at();rt=t.$eval(r[c+"Animation"]);f.animation=angular.isDefined(rt)?!!rt:a.animation;ut=t.$eval(r[c+"AppendToBody"]);k=angular.isDefined(ut)?ut:k;k&&t.$on("$locationChangeSuccess",function(){f.isOpen&&b()});t.$on("$destroy",function(){e.cancel(y);e.cancel(w);it();d();f=null})}}}}}]}).directive("tooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(n,t,i,r){return{link:function(u,f,e){var o,s,h,a=u.$eval(e.tooltipTemplateTranscludeScope),l=0,c=function(){s&&(s.remove(),s=null);o&&(o.$destroy(),o=null);h&&(n.leave(h).then(function(){s=null}),s=h,h=null)};u.$watch(t.parseAsResourceUrl(e.tooltipTemplateTransclude),function(t){var e=++l;t?(r(t,!0).then(function(r){if(e===l){var u=a.$new(),s=r,v=i(s)(u,function(t){c();n.enter(t,f)});o=u;h=v;o.$emit("$includeContentLoaded",t)}},function(){e===l&&(c(),u.$emit("$includeContentError",t))}),u.$emit("$includeContentRequested",t)):c()});u.$on("$destroy",c)}}}]).directive("tooltipClasses",function(){return{restrict:"A",link:function(n,t,i){n.placement&&t.addClass(n.placement);n.popupClass&&t.addClass(n.popupClass);n.animation()&&t.addClass(i.tooltipAnimationClass)}}}).directive("tooltipPopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function(n){return n("tooltip","tooltip","mouseenter")}]).directive("tooltipTemplatePopup",function(){return{restrict:"EA",replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/tooltip/tooltip-template-popup.html"}}).directive("tooltipTemplate",["$tooltip",function(n){return n("tooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("tooltipHtmlPopup",function(){return{restrict:"EA",replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-popup.html"}}).directive("tooltipHtml",["$tooltip",function(n){return n("tooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-unsafe-popup.html"}}).value("tooltipHtmlUnsafeSuppressDeprecated",!1).directive("tooltipHtmlUnsafe",["$tooltip","tooltipHtmlUnsafeSuppressDeprecated","$log",function(n,t,i){return t||i.warn("tooltip-html-unsafe is now deprecated. Use tooltip-html or tooltip-template instead."),n("tooltipHtmlUnsafe","tooltip","mouseenter")}]);angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverTemplatePopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/popover/popover-template.html"}}).directive("popoverTemplate",["$tooltip",function(n){return n("popoverTemplate","popover","click",{useContentExp:!0})}]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$tooltip",function(n){return n("popover","popover","click")}]);angular.module("ui.bootstrap.progressbar",[]).constant("progressConfig",{animate:!0,max:100}).controller("ProgressController",["$scope","$attrs","progressConfig",function(n,t,i){var r=this,u=angular.isDefined(t.animate)?n.$parent.$eval(t.animate):i.animate;this.bars=[];n.max=angular.isDefined(n.max)?n.max:i.max;this.addBar=function(t,i){u||i.css({transition:"none"});this.bars.push(t);t.max=n.max;t.$watch("value",function(){t.recalculatePercentage()});t.recalculatePercentage=function(){t.percent=+(100*t.value/t.max).toFixed(2)};t.$on("$destroy",function(){i=null;r.removeBar(t)})};this.removeBar=function(n){this.bars.splice(this.bars.indexOf(n),1)};n.$watch("max",function(){r.bars.forEach(function(t){t.max=n.max;t.recalculatePercentage()})})}]).directive("progress",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"progress",scope:{max:"=?"},templateUrl:"template/progressbar/progress.html"}}).directive("bar",function(){return{restrict:"EA",replace:!0,transclude:!0,require:"^progress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(n,t,i,r){r.addBar(n,t)}}}).directive("progressbar",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",scope:{value:"=",max:"=?",type:"@"},templateUrl:"template/progressbar/progressbar.html",link:function(n,t,i,r){r.addBar(n,angular.element(t.children()[0]))}}});angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5,stateOn:null,stateOff:null}).controller("RatingController",["$scope","$attrs","ratingConfig",function(n,t,i){var r={$setViewValue:angular.noop};this.init=function(u){r=u;r.$render=this.render;r.$formatters.push(function(n){return angular.isNumber(n)&&n<<0!==n&&(n=Math.round(n)),n});this.stateOn=angular.isDefined(t.stateOn)?n.$parent.$eval(t.stateOn):i.stateOn;this.stateOff=angular.isDefined(t.stateOff)?n.$parent.$eval(t.stateOff):i.stateOff;var f=angular.isDefined(t.ratingStates)?n.$parent.$eval(t.ratingStates):new Array(angular.isDefined(t.max)?n.$parent.$eval(t.max):i.max);n.range=this.buildTemplateObjects(f)};this.buildTemplateObjects=function(n){for(var t=0,i=n.length;i>t;t++)n[t]=angular.extend({index:t},{stateOn:this.stateOn,stateOff:this.stateOff},n[t]);return n};n.rate=function(t){!n.readonly&&t>=0&&t<=n.range.length&&(r.$setViewValue(r.$viewValue===t?0:t),r.$render())};n.enter=function(t){n.readonly||(n.value=t);n.onHover({value:t})};n.reset=function(){n.value=r.$viewValue;n.onLeave()};n.onKeydown=function(t){/(37|38|39|40)/.test(t.which)&&(t.preventDefault(),t.stopPropagation(),n.rate(n.value+(38===t.which||39===t.which?1:-1)))};this.render=function(){n.value=r.$viewValue}}]).directive("rating",function(){return{restrict:"EA",require:["rating","ngModel"],scope:{readonly:"=?",onHover:"&",onLeave:"&"},controller:"RatingController",templateUrl:"template/rating/rating.html",replace:!0,link:function(n,t,i,r){var u=r[0],f=r[1];u.init(f)}}});angular.module("ui.bootstrap.tabs",[]).controller("TabsetController",["$scope",function(n){var i=this,t=i.tabs=n.tabs=[],r;i.select=function(n){angular.forEach(t,function(t){t.active&&t!==n&&(t.active=!1,t.onDeselect())});n.active=!0;n.onSelect()};i.addTab=function(n){t.push(n);1===t.length&&n.active!==!1?n.active=!0:n.active?i.select(n):n.active=!1};i.removeTab=function(n){var u=t.indexOf(n),f;n.active&&t.length>1&&!r&&(f=u==t.length-1?u-1:u+1,i.select(t[f]));t.splice(u,1)};n.$on("$destroy",function(){r=!0})}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,replace:!0,scope:{type:"@"},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(n,t,i){n.vertical=angular.isDefined(i.vertical)?n.$parent.$eval(i.vertical):!1;n.justified=angular.isDefined(i.justified)?n.$parent.$eval(i.justified):!1}}}).directive("tab",["$parse","$log",function(n,t){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{active:"=?",heading:"@",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},compile:function(i,r,u){return function(i,r,f,e){i.$watch("active",function(n){n&&e.select(i)});i.disabled=!1;f.disable&&i.$parent.$watch(n(f.disable),function(n){i.disabled=!!n});f.disabled&&(t.warn('Use of "disabled" attribute has been deprecated, please use "disable"'),i.$parent.$watch(n(f.disabled),function(n){i.disabled=!!n}));i.select=function(){i.disabled||(i.active=!0)};e.addTab(i);i.$on("$destroy",function(){e.removeTab(i)});i.$transcludeFn=u}}}}]).directive("tabHeadingTransclude",[function(){return{restrict:"A",require:"^tab",link:function(n,t){n.$watch("headingElement",function(n){n&&(t.html(""),t.append(n))})}}}]).directive("tabContentTransclude",function(){function n(n){return n.tagName&&(n.hasAttribute("tab-heading")||n.hasAttribute("data-tab-heading")||"tab-heading"===n.tagName.toLowerCase()||"data-tab-heading"===n.tagName.toLowerCase())}return{restrict:"A",require:"^tabset",link:function(t,i,r){var u=t.$eval(r.tabContentTransclude);u.$transcludeFn(u.$parent,function(t){angular.forEach(t,function(t){n(t)?u.headingElement=t:i.append(t)})})}}});angular.module("ui.bootstrap.timepicker",[]).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:null,readonlyInput:!1,mousewheel:!0,arrowkeys:!0,showSpinners:!0}).controller("TimepickerController",["$scope","$attrs","$parse","$log","$locale","timepickerConfig",function(n,t,i,r,u,f){function p(){var t=parseInt(n.hours,10),i=n.showMeridian?t>0&&13>t:t>=0&&24>t;if(i)return(n.showMeridian&&(12===t&&(t=0),n.meridian===y[1]&&(t+=12)),t)}function w(){var t=parseInt(n.minutes,10);if(t>=0&&60>t)return t}function h(n){return angular.isDefined(n)&&n.toString().length<2?"0"+n:n.toString()}function c(n){b();o.$setViewValue(new Date(e));v(n)}function b(){o.$setValidity("time",!0);n.invalidHours=!1;n.invalidMinutes=!1}function v(t){var i=e.getHours(),r=e.getMinutes();n.showMeridian&&(i=0===i||12===i?12:i%12);n.hours="h"===t?i:h(i);"m"!==t&&(n.minutes=h(r));n.meridian=e.getHours()<12?y[0]:y[1]}function s(n){var t=new Date(e.getTime()+6e4*n);e.setHours(t.getHours(),t.getMinutes());c()}var e=new Date,o={$setViewValue:angular.noop},y=angular.isDefined(t.meridians)?n.$parent.$eval(t.meridians):f.meridians||u.DATETIME_FORMATS.AMPMS,l,a;this.init=function(i,r){var s;o=i;o.$render=this.render;o.$formatters.unshift(function(n){return n?new Date(n):null});var u=r.eq(0),e=r.eq(1),h=angular.isDefined(t.mousewheel)?n.$parent.$eval(t.mousewheel):f.mousewheel;h&&this.setupMousewheelEvents(u,e);s=angular.isDefined(t.arrowkeys)?n.$parent.$eval(t.arrowkeys):f.arrowkeys;s&&this.setupArrowkeyEvents(u,e);n.readonlyInput=angular.isDefined(t.readonlyInput)?n.$parent.$eval(t.readonlyInput):f.readonlyInput;this.setupInputEvents(u,e)};l=f.hourStep;t.hourStep&&n.$parent.$watch(i(t.hourStep),function(n){l=parseInt(n,10)});a=f.minuteStep;t.minuteStep&&n.$parent.$watch(i(t.minuteStep),function(n){a=parseInt(n,10)});n.showMeridian=f.showMeridian;t.showMeridian&&n.$parent.$watch(i(t.showMeridian),function(t){if(n.showMeridian=!!t,o.$error.time){var i=p(),r=w();angular.isDefined(i)&&angular.isDefined(r)&&(e.setHours(i),c())}else v()});this.setupMousewheelEvents=function(t,i){var r=function(n){n.originalEvent&&(n=n.originalEvent);var t=n.wheelDelta?n.wheelDelta:-n.deltaY;return n.detail||t>0};t.bind("mousewheel wheel",function(t){n.$apply(r(t)?n.incrementHours():n.decrementHours());t.preventDefault()});i.bind("mousewheel wheel",function(t){n.$apply(r(t)?n.incrementMinutes():n.decrementMinutes());t.preventDefault()})};this.setupArrowkeyEvents=function(t,i){t.bind("keydown",function(t){38===t.which?(t.preventDefault(),n.incrementHours(),n.$apply()):40===t.which&&(t.preventDefault(),n.decrementHours(),n.$apply())});i.bind("keydown",function(t){38===t.which?(t.preventDefault(),n.incrementMinutes(),n.$apply()):40===t.which&&(t.preventDefault(),n.decrementMinutes(),n.$apply())})};this.setupInputEvents=function(t,i){if(n.readonlyInput)return n.updateHours=angular.noop,void(n.updateMinutes=angular.noop);var r=function(t,i){o.$setViewValue(null);o.$setValidity("time",!1);angular.isDefined(t)&&(n.invalidHours=t);angular.isDefined(i)&&(n.invalidMinutes=i)};n.updateHours=function(){var n=p();angular.isDefined(n)?(e.setHours(n),c("h")):r(!0)};t.bind("blur",function(){!n.invalidHours&&n.hours<10&&n.$apply(function(){n.hours=h(n.hours)})});n.updateMinutes=function(){var n=w();angular.isDefined(n)?(e.setMinutes(n),c("m")):r(void 0,!0)};i.bind("blur",function(){!n.invalidMinutes&&n.minutes<10&&n.$apply(function(){n.minutes=h(n.minutes)})})};this.render=function(){var n=o.$viewValue;isNaN(n)?(o.$setValidity("time",!1),r.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(n&&(e=n),b(),v())};n.showSpinners=angular.isDefined(t.showSpinners)?n.$parent.$eval(t.showSpinners):f.showSpinners;n.incrementHours=function(){s(60*l)};n.decrementHours=function(){s(60*-l)};n.incrementMinutes=function(){s(a)};n.decrementMinutes=function(){s(-a)};n.toggleMeridian=function(){s(720*(e.getHours()<12?1:-1))}}]).directive("timepicker",function(){return{restrict:"EA",require:["timepicker","?^ngModel"],controller:"TimepickerController",replace:!0,scope:{},templateUrl:"template/timepicker/timepicker.html",link:function(n,t,i,r){var f=r[0],u=r[1];u&&f.init(u,t.find("input"))}}});angular.module("ui.bootstrap.transition",[]).value("$transitionSuppressDeprecated",!1).factory("$transition",["$q","$timeout","$rootScope","$log","$transitionSuppressDeprecated",function(n,t,i,r,u){function e(n){for(var t in n)if(void 0!==o.style[t])return n[t]}u||r.warn("$transition is now deprecated. Use $animate from ngAnimate instead.");var f=function(r,u,e){e=e||{};var s=n.defer(),o=f[e.animation?"animationEndEventName":"transitionEndEventName"],h=function(){i.$apply(function(){r.unbind(o,h);s.resolve(r)})};return o&&r.bind(o,h),t(function(){angular.isString(u)?r.addClass(u):angular.isFunction(u)?u(r):angular.isObject(u)&&r.css(u);o||s.resolve(r)}),s.promise.cancel=function(){o&&r.unbind(o,h);s.reject("Transition cancelled")},s.promise},o=document.createElement("trans");return f.transitionEndEventName=e({WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}),f.animationEndEventName=e({WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"}),f}]);angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).factory("typeaheadParser",["$parse",function(n){var t=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(i){var r=i.match(t);if(!r)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+i+'".');return{itemName:r[3],source:n(r[4]),viewMapper:n(r[2]||r[1]),modelMapper:n(r[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$window","$rootScope","$position","typeaheadParser",function(n,t,i,r,u,f,e,o,s){var h=[9,13,27,38,40],c=200;return{require:"ngModel",link:function(l,a,v,y){function lt(){p.moveInProgress||(p.moveInProgress=!0,p.$digest());ot&&r.cancel(ot);ot=r(function(){p.matches.length&&at();p.moveInProgress=!1;p.$digest()},c)}function at(){p.position=tt?o.offset(a):o.position(a);p.position.top+=a.prop("offsetHeight")}var k=l.$eval(v.typeaheadMinLength),it,d,b,ft,et,ot,st,wt,ht,ct,rt;k||0===k||(k=1);var ut,g,vt=l.$eval(v.typeaheadWaitMs)||0,yt=l.$eval(v.typeaheadEditable)!==!1,nt=t(v.typeaheadLoading).assign||angular.noop,bt=t(v.typeaheadOnSelect),kt=angular.isDefined(v.typeaheadSelectOnBlur)?l.$eval(v.typeaheadSelectOnBlur):!1,pt=v.typeaheadInputFormatter?t(v.typeaheadInputFormatter):void 0,tt=v.typeaheadAppendToBody?l.$eval(v.typeaheadAppendToBody):!1,dt=l.$eval(v.typeaheadFocusFirst)!==!1,gt=t(v.ngModel).assign,w=s.parse(v.typeahead),p=l.$new();l.$on("$destroy",function(){p.$destroy()});it="typeahead-"+p.$id+"-"+Math.floor(1e4*Math.random());a.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":it});d=angular.element("<div typeahead-popup><\/div>");d.attr({id:it,matches:"matches",active:"activeIdx",select:"select(activeIdx)","move-in-progress":"moveInProgress",query:"query",position:"position"});angular.isDefined(v.typeaheadTemplateUrl)&&d.attr("template-url",v.typeaheadTemplateUrl);b=function(){p.matches=[];p.activeIdx=-1;a.attr("aria-expanded",!1)};ft=function(n){return it+"-option-"+n};p.$watch("activeIdx",function(n){0>n?a.removeAttr("aria-activedescendant"):a.attr("aria-activedescendant",ft(n))});et=function(n){var t={$viewValue:n};nt(l,!0);i.when(w.source(l,t)).then(function(i){var u=n===y.$viewValue,r;if(u&&ut)if(i&&i.length>0){for(p.activeIdx=dt?0:-1,p.matches.length=0,r=0;r<i.length;r++)t[w.itemName]=i[r],p.matches.push({id:ft(r),label:w.viewMapper(p,t),model:i[r]});p.query=n;at();a.attr("aria-expanded",!0)}else b();u&&nt(l,!1)},function(){b();nt(l,!1)})};tt&&(angular.element(f).bind("resize",lt),u.find("body").bind("scroll",lt));p.moveInProgress=!1;b();p.query=void 0;wt=function(n){st=r(function(){et(n)},vt)};ht=function(){st&&r.cancel(st)};y.$parsers.unshift(function(n){return ut=!0,0===k||n&&n.length>=k?vt>0?(ht(),wt(n)):et(n):(nt(l,!1),ht(),b()),yt?n:n?void y.$setValidity("editable",!1):(y.$setValidity("editable",!0),n)});y.$formatters.push(function(n){var i,r,t={};return yt||y.$setValidity("editable",!0),pt?(t.$model=n,pt(l,t)):(t[w.itemName]=n,i=w.viewMapper(l,t),t[w.itemName]=void 0,r=w.viewMapper(l,t),i!==r?i:n)});p.select=function(n){var t,u,i={};g=!0;i[w.itemName]=u=p.matches[n].model;t=w.modelMapper(l,i);gt(l,t);y.$setValidity("editable",!0);y.$setValidity("parse",!0);bt(l,{$item:u,$model:t,$label:w.viewMapper(l,i)});b();r(function(){a[0].focus()},0,!1)};a.bind("keydown",function(n){if(0!==p.matches.length&&-1!==h.indexOf(n.which)&&(-1!==p.activeIdx||13!==n.which)){if(-1===p.activeIdx&&9===n.which)return b(),void p.$digest();n.preventDefault();40===n.which?(p.activeIdx=(p.activeIdx+1)%p.matches.length,p.$digest()):38===n.which?(p.activeIdx=(p.activeIdx>0?p.activeIdx:p.matches.length)-1,p.$digest()):13===n.which||9===n.which?p.$apply(function(){p.select(p.activeIdx)}):27===n.which&&(n.stopPropagation(),b(),p.$digest())}});a.bind("blur",function(){kt&&p.matches.length&&-1!==p.activeIdx&&!g&&(g=!0,p.$apply(function(){p.select(p.activeIdx)}));ut=!1;g=!1});ct=function(n){a[0]!==n.target&&3!==n.which&&(b(),e.$$phase||p.$digest())};u.bind("click",ct);l.$on("$destroy",function(){u.unbind("click",ct);tt&&rt.remove();d.remove()});rt=n(d)(p);tt?u.find("body").append(rt):a.after(rt)}}}]).directive("typeaheadPopup",function(){return{restrict:"EA",scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&"},replace:!0,templateUrl:"template/typeahead/typeahead-popup.html",link:function(n,t,i){n.templateUrl=i.templateUrl;n.isOpen=function(){return n.matches.length>0};n.isActive=function(t){return n.active==t};n.selectActive=function(t){n.active=t};n.selectMatch=function(t){n.select({activeIdx:t})}}}}).directive("typeaheadMatch",["$templateRequest","$compile","$parse",function(n,t,i){return{restrict:"EA",scope:{index:"=",match:"=",query:"="},link:function(r,u,f){var e=i(f.templateUrl)(r.$parent)||"template/typeahead/typeahead-match.html";n(e).then(function(n){t(n.trim())(r,function(n){u.replaceWith(n)})})}}}]).filter("typeaheadHighlight",function(){function n(n){return n.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(t,i){return i?(""+t).replace(new RegExp(n(i),"gi"),"<strong>$&<\/strong>"):t}});angular.module("template/accordion/accordion-group.html",[]).run(["$templateCache",function(n){n.put("template/accordion/accordion-group.html",'<div class="panel panel-default">\n  <div class="panel-heading">\n    <h4 class="panel-title">\n      <a href="#" tabindex="0" class="accordion-toggle" ng-click="$event.preventDefault(); toggleOpen()" accordion-transclude="heading"><span ng-class="{\'text-muted\': isDisabled}">{{heading}}<\/span><\/a>\n    <\/h4>\n  <\/div>\n  <div class="panel-collapse collapse" collapse="!isOpen">\n\t  <div class="panel-body" ng-transclude><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("template/accordion/accordion.html",[]).run(["$templateCache",function(n){n.put("template/accordion/accordion.html",'<div class="panel-group" ng-transclude><\/div>')}]);angular.module("template/alert/alert.html",[]).run(["$templateCache",function(n){n.put("template/alert/alert.html",'<div class="alert" ng-class="[\'alert-\' + (type || \'warning\'), closeable ? \'alert-dismissible\' : null]" role="alert">\n    <button ng-show="closeable" type="button" class="close" ng-click="close($event)">\n        <span aria-hidden="true">&times;<\/span>\n        <span class="sr-only">Close<\/span>\n    <\/button>\n    <div ng-transclude><\/div>\n<\/div>\n')}]);angular.module("template/carousel/carousel.html",[]).run(["$templateCache",function(n){n.put("template/carousel/carousel.html",'<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n    <ol class="carousel-indicators" ng-show="slides.length > 1">\n        <li ng-repeat="slide in slides | orderBy:\'index\' track by $index" ng-class="{active: isActive(slide)}" ng-click="select(slide)"><\/li>\n    <\/ol>\n    <div class="carousel-inner" ng-transclude><\/div>\n    <a class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-left"><\/span><\/a>\n    <a class="right carousel-control" ng-click="next()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-right"><\/span><\/a>\n<\/div>\n')}]);angular.module("template/carousel/slide.html",[]).run(["$templateCache",function(n){n.put("template/carousel/slide.html",'<div ng-class="{\n    \'active\': active\n  }" class="item text-center" ng-transclude><\/div>\n')}]);angular.module("template/datepicker/datepicker.html",[]).run(["$templateCache",function(n){n.put("template/datepicker/datepicker.html",'<div ng-switch="datepickerMode" role="application" ng-keydown="keydown($event)">\n  <daypicker ng-switch-when="day" tabindex="0"><\/daypicker>\n  <monthpicker ng-switch-when="month" tabindex="0"><\/monthpicker>\n  <yearpicker ng-switch-when="year" tabindex="0"><\/yearpicker>\n<\/div>')}]);angular.module("template/datepicker/day.html",[]).run(["$templateCache",function(n){n.put("template/datepicker/day.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th colspan="{{::5 + showWeeks}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n    <tr>\n      <th ng-if="showWeeks" class="text-center"><\/th>\n      <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{{::label.full}}">{{::label.abbr}}<\/small><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-if="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}<\/em><\/td>\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n        <button type="button" style="min-width:100%;" class="btn btn-default btn-sm" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("template/datepicker/month.html",[]).run(["$templateCache",function(n){n.put("template/datepicker/month.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n        <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("template/datepicker/popup.html",[]).run(["$templateCache",function(n){n.put("template/datepicker/popup.html",'<ul class="dropdown-menu" ng-if="isOpen" style="display: block" ng-style="{top: position.top+\'px\', left: position.left+\'px\'}" ng-keydown="keydown($event)" ng-click="$event.stopPropagation()">\n\t<li ng-transclude><\/li>\n\t<li ng-if="showButtonBar" style="padding:10px 9px 2px">\n\t\t<span class="btn-group pull-left">\n\t\t\t<button type="button" class="btn btn-sm btn-info" ng-click="select(\'today\')">{{ getText(\'current\') }}<\/button>\n\t\t\t<button type="button" class="btn btn-sm btn-danger" ng-click="select(null)">{{ getText(\'clear\') }}<\/button>\n\t\t<\/span>\n\t\t<button type="button" class="btn btn-sm btn-success pull-right" ng-click="close()">{{ getText(\'close\') }}<\/button>\n\t<\/li>\n<\/ul>\n')}]);angular.module("template/datepicker/year.html",[]).run(["$templateCache",function(n){n.put("template/datepicker/year.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th colspan="3"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}">\n        <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("template/modal/backdrop.html",[]).run(["$templateCache",function(n){n.put("template/modal/backdrop.html",'<div class="modal-backdrop"\n     modal-animation-class="fade"\n     modal-in-class="in"\n     ng-style="{\'z-index\': 1040 + (index && 1 || 0) + index*10}"\n><\/div>\n')}]);angular.module("template/modal/window.html",[]).run(["$templateCache",function(n){n.put("template/modal/window.html",'<div modal-render="{{$isRendered}}" tabindex="-1" role="dialog" class="modal"\n    modal-animation-class="fade"\n    modal-in-class="in"\n\tng-style="{\'z-index\': 1050 + index*10, display: \'block\'}" ng-click="close($event)">\n    <div class="modal-dialog" ng-class="size ? \'modal-\' + size : \'\'"><div class="modal-content" modal-transclude><\/div><\/div>\n<\/div>\n')}]);angular.module("template/pagination/pager.html",[]).run(["$templateCache",function(n){n.put("template/pagination/pager.html",'<ul class="pager">\n  <li ng-class="{disabled: noPrevious(), previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}<\/a><\/li>\n  <li ng-class="{disabled: noNext(), next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}<\/a><\/li>\n<\/ul>')}]);angular.module("template/pagination/pagination.html",[]).run(["$templateCache",function(n){n.put("template/pagination/pagination.html",'<ul class="pagination">\n  <li ng-if="::boundaryLinks" ng-class="{disabled: noPrevious()||ngDisabled}"><a href ng-click="selectPage(1, $event)">{{::getText(\'first\')}}<\/a><\/li>\n  <li ng-if="::directionLinks" ng-class="{disabled: noPrevious()||ngDisabled}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}<\/a><\/li>\n  <li ng-repeat="page in pages track by $index" ng-class="{active: page.active,disabled: ngDisabled&&!page.active}"><a href ng-click="selectPage(page.number, $event)">{{page.text}}<\/a><\/li>\n  <li ng-if="::directionLinks" ng-class="{disabled: noNext()||ngDisabled}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}<\/a><\/li>\n  <li ng-if="::boundaryLinks" ng-class="{disabled: noNext()||ngDisabled}"><a href ng-click="selectPage(totalPages, $event)">{{::getText(\'last\')}}<\/a><\/li>\n<\/ul>\n')}]);angular.module("template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(n){n.put("template/tooltip/tooltip-html-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner" ng-bind-html="contentExp()"><\/div>\n<\/div>\n')}]);angular.module("template/tooltip/tooltip-html-unsafe-popup.html",[]).run(["$templateCache",function(n){n.put("template/tooltip/tooltip-html-unsafe-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner" bind-html-unsafe="content"><\/div>\n<\/div>\n')}]);angular.module("template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(n){n.put("template/tooltip/tooltip-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner" ng-bind="content"><\/div>\n<\/div>\n')}]);angular.module("template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(n){n.put("template/tooltip/tooltip-template-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner"\n    tooltip-template-transclude="contentExp()"\n    tooltip-template-transclude-scope="originScope()"><\/div>\n<\/div>\n')}]);angular.module("template/popover/popover-template.html",[]).run(["$templateCache",function(n){n.put("template/popover/popover-template.html",'<div class="popover"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="arrow"><\/div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-if="title"><\/h3>\n      <div class="popover-content"\n        tooltip-template-transclude="contentExp()"\n        tooltip-template-transclude-scope="originScope()"><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("template/popover/popover.html",[]).run(["$templateCache",function(n){n.put("template/popover/popover.html",'<div class="popover"\n  tooltip-animation-class="fade"\n  tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="arrow"><\/div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-if="title"><\/h3>\n      <div class="popover-content" ng-bind="content"><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("template/progressbar/bar.html",[]).run(["$templateCache",function(n){n.put("template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" ng-transclude><\/div>\n')}]);angular.module("template/progressbar/progress.html",[]).run(["$templateCache",function(n){n.put("template/progressbar/progress.html",'<div class="progress" ng-transclude><\/div>')}]);angular.module("template/progressbar/progressbar.html",[]).run(["$templateCache",function(n){n.put("template/progressbar/progressbar.html",'<div class="progress">\n  <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" ng-transclude><\/div>\n<\/div>\n')}]);angular.module("template/rating/rating.html",[]).run(["$templateCache",function(n){n.put("template/rating/rating.html",'<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}">\n    <i ng-repeat="r in range track by $index" ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')">\n        <span class="sr-only">({{ $index < value ? \'*\' : \' \' }})<\/span>\n    <\/i>\n<\/span>')}]);angular.module("template/tabs/tab.html",[]).run(["$templateCache",function(n){n.put("template/tabs/tab.html",'<li ng-class="{active: active, disabled: disabled}">\n  <a href="#" ng-click="$event.preventDefault(); select()" tab-heading-transclude>{{heading}}<\/a>\n<\/li>\n')}]);angular.module("template/tabs/tabset.html",[]).run(["$templateCache",function(n){n.put("template/tabs/tabset.html",'<div>\n  <ul class="nav nav-{{type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude><\/ul>\n  <div class="tab-content">\n    <div class="tab-pane" \n         ng-repeat="tab in tabs" \n         ng-class="{active: tab.active}"\n         tab-content-transclude="tab">\n    <\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("template/timepicker/timepicker.html",[]).run(["$templateCache",function(n){n.put("template/timepicker/timepicker.html",'<table>\n  <tbody>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td><a ng-click="incrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td><a ng-click="incrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n    <tr>\n      <td class="form-group" ng-class="{\'has-error\': invalidHours}">\n        <input style="width:50px;" type="text" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2">\n      <\/td>\n      <td>:<\/td>\n      <td class="form-group" ng-class="{\'has-error\': invalidMinutes}">\n        <input style="width:50px;" type="text" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2">\n      <\/td>\n      <td ng-show="showMeridian"><button type="button" class="btn btn-default text-center" ng-click="toggleMeridian()">{{meridian}}<\/button><\/td>\n    <\/tr>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td><a ng-click="decrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td><a ng-click="decrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(n){n.put("template/typeahead/typeahead-match.html",'<a href="#" ng-click="$event.preventDefault()" tabindex="-1" bind-html-unsafe="match.label | typeaheadHighlight:query"><\/a>\n')}]);angular.module("template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(n){n.put("template/typeahead/typeahead-popup.html",'<ul class="dropdown-menu" ng-show="isOpen() && !moveInProgress" ng-style="{top: position().top+\'px\', left: position().left+\'px\'}" style="display: block;" role="listbox" aria-hidden="{{!isOpen()}}">\n    <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)" role="option" id="{{::match.id}}">\n        <div typeahead-match index="$index" match="match" query="query" template-url="templateUrl"><\/div>\n    <\/li>\n<\/ul>\n')}]);!angular.$$csp()&&angular.element(document).find("head").prepend('<style type="text/css">.ng-animate.item:not(.left):not(.right){-webkit-transition:0s ease-in-out left;transition:0s ease-in-out left}<\/style>'),function(){angular.module("validator.rules",["validator"]).config(["$validatorProvider",function(n){return n.register("required",{invoke:"watch",validator:/.+/,error:"This field is required."}),n.register("number",{invoke:"watch",validator:/^Abstract:|^[-+]?[0-9]*[\.]?[0-9]*$/,error:"This field should be the number."}),n.register("email",{invoke:"blur",validator:/^Abstract:|(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,error:"This field should be the email."}),n.register("url",{invoke:"blur",validator:/^Abstract:|((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[\w]*))?)/,error:"This field should be the url."})}])}.call(this),function(){var n;n=angular.element;angular.module("validator.directive",["validator.provider"]).directive("validator",["$injector",function(t){return{restrict:"A",require:"ngModel",link:function(i,r,u,f){var c,o,l,h,s,a,v,e,y;return o=t.get("$validator"),c=t.get("$parse"),h=c(u.ngModel),e=[],y=function(n,o){var a,c,s,v,y,l,p;if(o==null&&(o={}),v=0,a=0,c=function(){var s,n,c;if(++v>=e.length){for(f.$setValidity(u.ngModel,!0),n=0,c=e.length;n<c;n++)s=e[n],s.success(h(i),i,r,u,t);typeof o.success=="function"&&o.success()}},e.length===0)return c();for(y=function(n){return n.validator(h(i),i,r,u,{success:function(){return c()},error:function(){if(n.enableError&&++a==1&&(f.$setValidity(u.ngModel,!1),n.error(h(i),i,r,u,t)),(typeof o.error=="function"?o.error():void 0)===1){try{r[0].scrollIntoViewIfNeeded()}catch(e){}return r[0].select()}}})},l=0,p=e.length;l<p;l++){s=e[l];switch(n){case"blur":if(s.invoke!=="blur")continue;s.enableError=!0;break;case"watch":if(s.invoke!=="watch"&&!s.enableError){c();continue}break;case"broadcast":s.enableError=!0}y(s)}},a=function(){var n;return n=o.getRule("required"),n==null&&(n=o.convertRule("required",{validator:/^.+$/,invoke:"watch"})),e.push(n)},v=function(n){var f,o,c,l,s;for(s=[],f=o=0,c=e.length;o<c;f=o+=1)((l=e[f])!=null?l.name:void 0)===n&&(e[f].success(h(i),i,r,u,t),e.splice(f,1),s.push(f--));return s},u.$observe("validator",function(n){var h,y,f,v,c,p,l;if(e.length=0,(s.validatorRequired||s.required)&&a(),h=n.match(/^\/(.*)\/$/),h){f=o.convertRule("dynamic",{validator:RegExp(h[1]),invoke:u.validatorInvoke,error:u.validatorError});e.push(f);return}if(h=n.match(/^\[(.+)\]$/),h){for(v=h[1].split(","),l=[],c=0,p=v.length;c<p;c++)y=v[c],f=o.getRule(y.replace(/^\s+|\s+$/g,"")),typeof f.init=="function"&&f.init(i,r,u,t),f?l.push(e.push(f)):l.push(void 0);return l}}),u.$observe("validatorError",function(n){var t,i;return t=u.validator.match(/^\/(.*)\/$/),t?(v("dynamic"),i=o.convertRule("dynamic",{validator:RegExp(t[1]),invoke:u.validatorInvoke,error:n}),e.push(i)):void 0}),s={validatorRequired:!1,required:!1},u.$observe("validatorRequired",function(n){return n&&n!=="false"?(a(),s.validatorRequired=!0):s.validatorRequired?(v("required"),s.validatorRequired=!1):void 0}),u.$observe("required",function(n){return n&&n!=="false"?(a(),s.required=!0):s.required?(v("required"),s.required=!1):void 0}),l=function(n,t){var r,f,e,o;return t?u.validatorGroup===t?!0:n.targetScope===i?u.ngModel.indexOf(t)===0:(r=function(n,t){var u,i;for(u in n){i=n[u];switch(typeof i){case"string":if(u==="$$hashKey"&&i===t)return!0;break;case"object":if(r(i,t))return!0}}return!1},f=u.ngModel.indexOf("."),e=f>=0?u.ngModel.substr(0,f):u.ngModel,o=c(e)(i),r(c(t)(n.targetScope),o.$$hashKey)):!0},i.$on(o.broadcastChannel.prepare,function(n,t){if(l(n,t.model))return t.accept()}),i.$on(o.broadcastChannel.start,function(n,t){if(l(n,t.model))return y("broadcast",{success:t.success,error:t.error})}),i.$on(o.broadcastChannel.reset,function(n,o){var s,c,a;if(l(n,o.model)){for(c=0,a=e.length;c<a;c++)s=e[c],s.success(h(i),i,r,u,t),s.invoke!=="watch"&&(s.enableError=!1);return f.$setValidity(u.ngModel,!0)}}),i.$watch(u.ngModel,function(n,t){if(n!==t)return y("watch",{oldValue:t})}),n(r).bind("blur",function(){return i.$apply(function(){return y("blur")})})}}}])}.call(this),function(){angular.module("validator",["validator.directive"])}.call(this),function(){var n;n=angular.element;angular.module("validator.provider",[]).provider("$validator",function(){var t,i,r;t=null;i=null;r=null;this.rules={};this.broadcastChannel={prepare:"$validatePrepare",start:"$validateStart",reset:"$validateReset"};this.setupProviders=function(n){return t=n,i=t.get("$q"),r=t.get("$timeout")};this.convertError=function(t){var i;return typeof t=="function"?t:(i=t.constructor===String?t:"",function(t,r,u,f){for(var s,h,o,a,c,e=n(u).parent(),l=[];e.length!==0;){if(e.hasClass("form-group")){for(e.addClass("has-error"),c=e.find("label"),o=0,a=c.length;o<a;o++)h=c[o],n(h).hasClass("error")&&n(h).remove();s=n("<label class='control-label error'>"+i+"<\/label>");f.id&&s.attr("for",f.id);n(u).parent().append(s);break}l.push(e=e.parent())}return l})};this.convertSuccess=function(t){return typeof t=="function"?t:function(t,i,r){for(var e,f,h,o,u=n(r).parent(),s=[];u.length!==0;){if(u.hasClass("has-error")){for(u.removeClass("has-error"),o=u.find("label"),f=0,h=o.length;f<h;f++)e=o[f],n(e).hasClass("error")&&n(e).remove();break}s.push(u=u.parent())}return s}};this.convertValidator=function(n){var u,f,r;return r=function(){},n.constructor===RegExp?(f=n,r=function(n,t,i,r,u){return n==null&&(n=""),f.test(n)?typeof u.success=="function"?u.success():void 0:typeof u.error=="function"?u.error():void 0}):typeof n=="function"&&(u=n,r=function(n,r,f,e,o){return i.all([u(n,r,f,e,t)]).then(function(n){return n&&n.length>0&&n[0]?typeof o.success=="function"?o.success():void 0:typeof o.error=="function"?o.error():void 0},function(){if(typeof o.error=="function")return o.error()})}),r};this.convertRule=function(n){return function(t,i){var r,u,f;return i==null&&(i={}),r={name:t,enableError:i.invoke==="watch",invoke:i.invoke,init:i.init,validator:(u=i.validator)!=null?u:function(){return!0},error:(f=i.error)!=null?f:"",success:i.success},r.error=n.convertError(r.error),r.success=n.convertSuccess(r.success),r.validator=n.convertValidator(r.validator),r}}(this);this.register=function(n,t){return t==null&&(t={}),this.rules[n]=this.convertRule(n,t)};this.getRule=function(n){return this.rules[n]?angular.copy(this.rules[n]):null};this.validate=function(n){return function(u,f){var h,o,c,e,s;return c=i.defer(),s=c.promise,o={total:0,success:0,error:0},e={promises:{success:[],error:[],then:[]},accept:function(){return o.total++},validatedSuccess:function(){var n,t,i,f,s,r,u;if(++o.success===o.total){for(r=e.promises.success,t=0,f=r.length;t<f;t++)n=r[t],n();for(u=e.promises.then,i=0,s=u.length;i<s;i++)n=u[i],n()}return o.success},validatedError:function(){var n,t,i,f,s,r,u;if(o.error++==0){for(r=e.promises.error,t=0,f=r.length;t<f;t++)n=r[t],n();for(u=e.promises.then,i=0,s=u.length;i<s;i++)n=u[i],n()}return o.error}},s.success=function(n){return e.promises.success.push(n),s},s.error=function(n){return e.promises.error.push(n),s},s.then=function(n){return e.promises.then.push(n),s},h={model:f,accept:e.accept,success:e.validatedSuccess,error:e.validatedError},u.$broadcast(n.broadcastChannel.prepare,h),r(function(){var r,f,n,s,i;if(o.total===0){for(i=e.promises.success,n=0,s=i.length;n<s;n++)f=i[n],f();return}return r=t.get("$validator"),u.$broadcast(r.broadcastChannel.start,h)}),s}}(this);this.reset=function(n){return function(t,i){return t.$broadcast(n.broadcastChannel.reset,{model:i})}}(this);this.get=function(n){return this.setupProviders(n),{rules:this.rules,broadcastChannel:this.broadcastChannel,register:this.register,convertRule:this.convertRule,getRule:this.getRule,validate:this.validate,reset:this.reset}};this.get.$inject=["$injector"];this.$get=this.get})}.call(this),function(){angular.module("builder.components",["builder","validator.rules"]).config(["$builderProvider",function(n){return n.registerComponent("textInput",{group:"Default",label:"Text Input",description:"",placeholder:"",required:!1,isAdvanced:!1,validationOptions:[{label:"none",rule:"[noSpecialChar]"},{label:"number",rule:"[number]"},{label:"email",rule:"[email]"},{label:"url",rule:"[url]"},{label:"required",rule:"[required, noSpecialChar]"},{label:"phonenumber",rule:"[phonenumber]"}],template:'<div class="form-group" ng-show="!isAdvanced || advanced">\n<label for="{{formName+index}}" class="col-md-12 control-label text-left" ng-class="{\'fb-required\':required}">{{CamelCaseToRegularForm(label)}}  <span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <input type="text" ng-model="inputText" validator-required="{{required}}" validator-group="{{formName}}" id="{{formName+index}}" class="form-control" placeholder="{{placeholder}}"/>\n        <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Placeholder<\/label>\n        <input type='text' ng-model=\"placeholder\" class='form-control'/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required<\/label>\n    <\/div>\n    <div class=\"form-group\" ng-if=\"validationOptions.length > 0\">\n        <label class='control-label text-left'>Validation<\/label>\n        <select ng-model=\"$parent.validation\" class='form-control' ng-options=\"option.rule as option.label for option in validationOptions\"><\/select>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("textArea",{group:"Default",label:"Text Area",description:"",placeholder:"",required:!1,template:'<div class="form-group">\n    <label for="{{formName+index}}" class="col-sm-4 control-label text-left" ng-class="{\'fb-required\':required}">{{label}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-sm-8">\n        <textarea type="text" ng-model="inputText" validator-required="{{required}}" validator-group="{{formName}}" id="{{formName+index}}" class="form-control" rows=\'6\' placeholder="{{placeholder}}"/>\n    <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Placeholder<\/label>\n        <input type='text' ng-model=\"placeholder\" class='form-control'/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required<\/label>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("hiddenText",{group:"Default",label:"hidden",description:"",placeholder:"placeholder",required:!1,template:'<div class="form-group" ng-show="advanced || !isAdvanced">\n   <div class="col-md-12">\n        <input type="hidden" ng-model="inputText" validator-required="{{required}}" validator-group="{{formName}}" id="{{formName+index}}" class="form-control" placeholder="{{placeholder}}" value="{{defaultValue}}"/>\n     <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Placeholder<\/label>\n        <input type='text' ng-model=\"placeholder\" class='form-control'/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required<\/label>\n    <\/div>\n    <div class=\"form-group\" ng-if=\"validationOptions.length > 0\">\n        <label class='control-label text-left'>Validation<\/label>\n        <select ng-model=\"$parent.validation\" class='form-control' ng-options=\"option.rule as option.label for option in validationOptions\"><\/select>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("textPassword",{group:"Default",label:"Text Input",description:"",placeholder:"placeholder",required:!1,isAdvanced:!1,validationOptions:[{label:"none",rule:"/.*/"},{label:"number",rule:"[number]"},{label:"email",rule:"[email]"},{label:"url",rule:"[url]"}],template:'<div class="form-group" ng-show="advanced || !isAdvanced">\n    <label for="{{formName+index}}" class="col-md-12 control-label text-left" ng-class="{\'fb-required\':required}">{{label}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <input type="password" ng-model="inputText" validator-required="{{required}}" validator-group="{{formName}}" id="{{formName+index}}" class="form-control" placeholder="{{placeholder}}"/>\n      <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='password' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Placeholder<\/label>\n        <input type='text' ng-model=\"placeholder\" class='form-control'/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required<\/label>\n    <\/div>\n    <div class=\"form-group\" ng-if=\"validationOptions.length > 0\">\n        <label class='control-label text-left'>Validation<\/label>\n        <select ng-model=\"$parent.validation\" class='form-control' ng-options=\"option.rule as option.label for option in validationOptions\"><\/select>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("checkbox",{group:"Default",label:"Checkbox",description:"",placeholder:"",required:!1,options:["value one","value two"],arrayToText:!0,isAdvanced:!1,template:'<div class="form-group" ng-show="!isAdvanced || advanced">\n    <label for="{{formName+index}}" class="col-md-12 control-label text-left" ng-class="{\'fb-required\':required}">{{label}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <input type=\'hidden\' ng-model="inputText" validator-required="{{required}}" validator-group="{{formName}}"/>\n        <div class=\'checkbox\' ng-repeat="item in options track by $index">\n            <label><input type=\'checkbox\' ng-model="$parent.inputArray[$index]" value=\'item\'/>\n                {{item}}\n            <\/label>\n        <\/div>\n      <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Options<\/label>\n        <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required\n        <\/label>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("radio",{group:"Default",label:"Radio",description:"",placeholder:"",required:!1,isAdvanced:!1,options:["value one","value two"],template:'<div class="form-group" ng-show="!isAdvanced || advanced">\n<label for="{{formName+index}}" class="col-md-12 control-label text-left" ng-class="{\'fb-required\':required}">{{CamelCaseToRegularForm(label)}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <div class=\'radio\' ng-repeat="item in options track by $index">\n            <label><input name=\'{{formName+index}}\' ng-model="$parent.inputText" validator-group="{{formName}}" value=\'{{item}}\' type=\'radio\'/>\n                {{item}}\n            <\/label>\n        <\/div>\n       <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Options<\/label>\n        <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("select",{group:"Default",label:"Select",description:"",placeholder:"placeholder",required:!1,options:["value one","value two"],template:'<div class="form-group">\n    <label for="{{formName+index}}" class="col-md-12 control-label text-left">{{CamelCaseToRegularForm(label)}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <select ng-options="value for value in options" id="{{formName+index}}" class="form-control"\n            ng-model="inputText" ng-init="inputText = options[0]"/>\n     <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Options<\/label>\n        <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("selectObject",{group:"Default",label:"Select",description:"",placeholder:"placeholder",required:!1,options:[{name:"valueName",value:"value"}],template:'<div class="form-group">\n    <label for="{{formName+index}}" class="col-md-12 control-label text-left">{{CamelCaseToRegularForm(label)}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n    <div class="col-md-12">\n        <select ng-options=" opt.name for opt in options" id="{{formName+index}}" class="form-control"\n            ng-model="inputText" ng-init="inputText = options[0]"/>\n   <\/div>\n<\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Options<\/label>\n        <textarea class=\"form-control\" rows=\"3\" ng-model=\"optionsText\"/>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"}),n.registerComponent("propertyBag",{group:"Default",label:"IPropertyBag",description:"",placeholder:"placeholder",required:!1,func:function(){console.log("default func")},template:'<div class="form-group"> <label for="{{formName+index}}" class="col-md-12 control-label text-left" ng-class="{\'fb-required\':required}">{{CamelCaseToRegularForm(label)}}<span ng-if="description" data-crosscut-popover content="description"  /><\/label>\n <div class="col-md-12">\n<button class="btn btn-primary" id="{{formName+index}}" ng-click="func()" style="margin-bottom: 10px;"> Configure <\/button><\/div><\/div>',popoverTemplate:"<form>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Label<\/label>\n        <input type='text' ng-model=\"label\" validator=\"[required]\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Description<\/label>\n        <input type='text' ng-model=\"description\" class='form-control'/>\n    <\/div>\n    <div class=\"form-group\">\n        <label class='control-label text-left'>Placeholder<\/label>\n        <input type='text' ng-model=\"placeholder\" class='form-control'/>\n    <\/div>\n    <div class=\"checkbox\">\n        <label>\n            <input type='checkbox' ng-model=\"required\" />\n            Required<\/label>\n    <\/div>\n    <div class=\"form-group\" ng-if=\"validationOptions.length > 0\">\n        <label class='control-label text-left'>Validation<\/label>\n        <select ng-model=\"$parent.validation\" class='form-control' ng-options=\"option.rule as option.label for option in validationOptions\"><\/select>\n    <\/div>\n\n    <hr/>\n    <div class='form-group'>\n        <input type='submit' ng-click=\"popover.save($event)\" class='btn btn-primary' value='Save'/>\n        <input type='button' ng-click=\"popover.cancel($event)\" class='btn btn-default' value='Cancel'/>\n        <input type='button' ng-click=\"popover.remove($event)\" class='btn btn-danger' value='Delete'/>\n    <\/div>\n<\/form>"})}])}.call(this),function(){var n;n=function(n,t){var i,r;for(i in n)r=n[i],i!=="$$hashKey"&&(t[i]=r)};angular.module("builder.controller",["builder.provider"]).controller("fbFormObjectEditableController",["$scope","$injector",function(t,i){var r;return r=i.get("$builder"),t.setupScope=function(i){var u;return n(i,t),t.optionsText=i.options.join("\n"),t.$watch("[label, description, placeholder, required, options, validation]",function(){return i.label=t.label,i.description=t.description,i.placeholder=t.placeholder,i.required=t.required,i.options=t.options,i.validation=t.validation},!0),t.$watch("optionsText",function(n){var i;return t.options=function(){var t,f,r,u;for(r=n.split("\n"),u=[],t=0,f=r.length;t<f;t++)i=r[t],i.length>0&&u.push(i);return u}(),t.inputText=t.options[0]}),u=r.components[i.component],t.validationOptions=u.validationOptions},t.data={model:null,backup:function(){return this.model={label:t.label,description:t.description,placeholder:t.placeholder,required:t.required,optionsText:t.optionsText,validation:t.validation}},rollback:function(){if(this.model)return t.label=this.model.label,t.description=this.model.description,t.placeholder=this.model.placeholder,t.required=this.model.required,t.optionsText=this.model.optionsText,t.validation=this.model.validation}}}]).controller("fbComponentsController",["$scope","$injector",function(n,t){var i;return i=t.get("$builder"),n.selectGroup=function(t,r){var u,o,f,e;t!=null&&t.preventDefault();n.activeGroup=r;n.components=[];f=i.components;e=[];for(o in f)u=f[o],u.group===r&&e.push(n.components.push(u));return e},n.groups=i.groups,n.activeGroup=n.groups[0],n.allComponents=i.components,n.$watch("allComponents",function(){return n.selectGroup(null,n.activeGroup)})}]).controller("fbComponentController",["$scope",function(t){return t.copyObjectToScope=function(i){return n(i,t)}}]).controller("fbFormController",["$scope","$injector",function(n,t){n.CamelCaseToRegularForm=function(n){return n.replace(/([A-Z])/g," $1").replace(/^./,function(n){return n.toUpperCase()})};var i,r;return i=t.get("$builder"),r=t.get("$timeout"),n.input==null&&(n.input=[]),n.$watch("form",function(){return n.input.length>n.form.length&&n.input.splice(n.form.length),r(function(){return n.$broadcast(i.broadcastChannel.updateInput)})},!0)}]).controller("fbFormObjectController",["$scope","$injector",function(t,i){var r;return r=i.get("$builder"),t.copyObjectToScope=function(i){return n(i,t)},t.updateInput=function(n){var i;return i={id:t.formObject.id,label:t.formObject.label,value:n!=null?n:""},t.$parent.input.splice(t.$index,1,i)}}])}.call(this),function(){angular.module("builder.directive",["builder.provider","builder.controller","builder.drag","validator"]).directive("fbBuilder",["$injector",function(n){var t,i;return t=n.get("$builder"),i=n.get("$drag"),{restrict:"A",scope:{fbBuilder:"="},template:"<div class='form-horizontal'>\n    <div class='fb-form-object-editable' ng-repeat=\"object in formObjects\"\n        fb-form-object-editable=\"object\"><\/div>\n<\/div>",link:function(n,r,u){var f,e,o;return n.formName=u.fbBuilder,(e=t.forms)[o=n.formName]==null&&(e[o]=[]),n.formObjects=t.forms[n.formName],f=!0,$(r).addClass("fb-builder"),i.droppable($(r),{move:function(n){var e,o,u,c,t,l,i,s,h,a,v;if(f&&($("div.fb-form-object-editable").popover("hide"),f=!1),u=$(r).find(".fb-form-object-editable:not(.empty,.dragging)"),u.length===0){$(r).find(".fb-form-object-editable.empty").length===0&&$(r).find(">div:first").append($("<div class='fb-form-object-editable empty'><\/div>"));return}for(i=[],i.push(-1e3),t=s=0,a=u.length;s<a;t=s+=1)o=$(u[t]),l=o.offset(),c=o.height(),i.push(l.top+c/2);for(i.push(i[i.length-1]+1e3),t=h=1,v=i.length;h<v;t=h+=1)if(n.pageY>i[t-1]&&n.pageY<=i[t]){$(r).find(".empty").remove();e=$("<div class='fb-form-object-editable empty'><\/div>");t-1<u.length?e.insertBefore($(u[t-1])):e.insertAfter($(u[t-2]));break}},out:function(){return f&&($("div.fb-form-object-editable").popover("hide"),f=!1),$(r).find(".empty").remove()},up:function(e,o,s){var c,h,l;if(f=!0,!i.isMouseMoved()){$(r).find(".empty").remove();return}return o||s.mode!=="drag"?o&&(s.mode==="mirror"&&t.insertFormObject(n.formName,$(r).find(".empty").index(".fb-form-object-editable"),{component:s.object.componentName}),s.mode==="drag"&&(l=s.object.formObject.index,h=$(r).find(".empty").index(".fb-form-object-editable"),l<h&&h--,t.updateFormObjectIndex(n.formName,l,h))):(c=s.object.formObject,c.editable&&t.removeFormObject(u.fbBuilder,c.index)),$(r).find(".empty").remove()}})}}}]).directive("fbFormObjectEditable",["$injector",function(n){var t,i,r,u;return t=n.get("$builder"),r=n.get("$drag"),i=n.get("$compile"),u=n.get("$validator"),{restrict:"A",controller:"fbFormObjectEditableController",scope:{formObject:"=fbFormObjectEditable"},link:function(n,f){var e;n.inputArray=[];n.$component=t.components[n.formObject.component];n.setupScope(n.formObject);n.$watch("$component.template",function(t){var r;if(t)return r=i(t)(n),$(f).html(r)});$(f).on("click",function(){return!1});if(r.draggable($(f),{object:{formObject:n.formObject}}),n.formObject.editable){e={};n.$watch("$component.popoverTemplate",function(t){if(t)return $(f).removeClass(e.id),e={id:"fb-"+Math.random().toString().substr(2),isClickedSave:!1,view:null,html:t},e.html=$(e.html).addClass(e.id),e.view=i(e.html)(n),$(f).addClass(e.id),$(f).popover({html:!0,title:n.$component.label,content:e.view,container:"body"})});n.popover={save:function(t){t.preventDefault();u.validate(n).success(function(){return e.isClickedSave=!0,$(f).popover("hide")})},remove:function(i){i.preventDefault();t.removeFormObject(n.$parent.formName,n.$parent.$index);$(f).popover("hide")},shown:function(){return n.data.backup(),e.isClickedSave=!1},cancel:function(t){n.data.rollback();t&&(t.preventDefault(),$(f).popover("hide"))}};$(f).on("show.bs.popover",function(){var n,t,i;return r.isMouseMoved()?!1:($("div.fb-form-object-editable:not(."+e.id+")").popover("hide"),n=$("form."+e.id).closest(".popover"),n.length>0?(t=$(f).offset().top+$(f).height()/2,i=t-n.height()/2,n.css({position:"absolute",top:i}),n.show(),setTimeout(function(){return n.addClass("in"),$(f).triggerHandler("shown.bs.popover")},0),!1):void 0)});$(f).on("shown.bs.popover",function(){$(".popover ."+e.id+" input:first").select();n.$apply(function(){return n.popover.shown()})});return $(f).on("hide.bs.popover",function(){var t;return t=$("form."+e.id).closest(".popover"),e.isClickedSave||(n.$$phase||n.$root.$$phase?n.popover.cancel():n.$apply(function(){return n.popover.cancel()})),t.removeClass("in"),setTimeout(function(){return t.hide()},300),!1})}}}}]).directive("fbComponents",function(){return{restrict:"A",template:'<ul ng-if="groups.length > 1" class="nav nav-tabs nav-justified">\n    <li ng-repeat="group in groups" ng-class="{active:activeGroup==group}">\n        <a href=\'#\' ng-click="selectGroup($event, group)">{{group}}<\/a>\n    <\/li>\n<\/ul>\n<div class=\'form-horizontal\'>\n    <div class=\'fb-component\' ng-repeat="component in components"\n        fb-component="component"><\/div>\n<\/div>',controller:"fbComponentsController"}}).directive("fbComponent",["$injector",function(n){var r,t,i;return r=n.get("$builder"),i=n.get("$drag"),t=n.get("$compile"),{restrict:"A",scope:{component:"=fbComponent"},controller:"fbComponentController",link:function(n,r){return n.copyObjectToScope(n.component),i.draggable($(r),{mode:"mirror",defer:!1,object:{componentName:n.component.name}}),n.$watch("component.template",function(i){var u;if(i)return u=t(i)(n),$(r).html(u)})}}}]).directive("fbForm",["$injector",function(n){return{restrict:"A",require:"ngModel",scope:{formName:"@fbForm",input:"=ngModel","default":"=fbDefault",advanced:"=advanced"},template:'<div class=\'fb-form-object\' ng-repeat="object in form" fb-form-object="object"><\/div>',controller:"fbFormController",link:function(t){var i,r,u;return i=n.get("$builder"),(r=i.forms)[u=t.formName]==null&&(r[u]=[]),t.form=i.forms[t.formName]}}}]).directive("crosscutFbForm",["$injector",function(n){return{restrict:"A",scope:{formName:"=formName",input:"=input","default":"=default",advanced:"=advanced",readonly:"=readonly"},template:'<div class=\'fb-form-object\' ng-repeat="object in form" fb-form-object="object"><\/div>',controller:"fbFormController",link:function(t){var i,r,u;return i=n.get("$builder"),(r=i.forms)[u=t.formName]==null&&(r[u]=[]),t.form=i.forms[t.formName]}}}]).directive("fbFormObject",["$injector",function(n){var t,i,r;return t=n.get("$builder"),i=n.get("$compile"),r=n.get("$parse"),{restrict:"A",controller:"fbFormObjectController",link:function(n,u,f){return n.formObject=r(f.fbFormObject)(n),n.$component=t.components[n.formObject.component],n.$on(t.broadcastChannel.updateInput,function(){return n.updateInput(n.inputText)}),n.$component.arrayToText&&(n.inputArray=[],n.$watch("inputArray",function(t,i){var u,r,f;if(t!==i){u=[];for(r in n.inputArray)n.inputArray[r]&&u.push((f=n.options[r])!=null?f:n.inputArray[r]);return n.inputText=JSON.stringify(u)}},!0)),n.$watch("inputText",function(){return n.updateInput(n.inputText)}),n.$watch(f.fbFormObject,function(){return n.copyObjectToScope(n.formObject)},!0),n.$watch("$component.template",function(t){var r,f,e;if(t)return f=$(t),r=f.find("[ng-model='inputText']"),r.attr({validator:"{{validation}}"}),n.readonly&&r.attr({"ng-disabled":n.readonly}),e=i(f)(n),$(u).html(e)}),!n.$component.arrayToText&&n.formObject.options.length>0&&(n.inputText=n.formObject.options[0]),n.$watch("default["+n.formObject.id+"]",function(t){if(t)return n.$component.arrayToText?n.inputArray=JSON.parse(t):n.inputText=t})}}}])}.call(this),function(){angular.module("builder.drag",[]).provider("$drag",function(){var t,n,i;t=null;n=null;this.data={draggables:{},droppables:{}};this.mouseMoved=!1;this.isMouseMoved=function(n){return function(){return n.mouseMoved}}(this);this.hooks={down:{},move:{},up:{}};this.eventMouseMove=function(){};this.eventMouseUp=function(){};$(function(n){return function(){$(document).on("mousedown",function(t){var r,u,i;n.mouseMoved=!1;i=n.hooks.down;for(u in i)r=i[u],r(t)});$(document).on("mousemove",function(t){var r,u,i;n.mouseMoved=!0;i=n.hooks.move;for(u in i)r=i[u],r(t)});return $(document).on("mouseup",function(t){var i,r,u=n.hooks.up;for(r in u)i=u[r],i(t)})}}(this));this.currentId=0;this.getNewId=function(n){return function(){return""+n.currentId++}}(this);this.setupEasing=function(){return jQuery.extend(jQuery.easing,{easeOutQuad:function(n,t,i,r,u){return-r*(t/=u)*(t-2)+i}})};this.setupProviders=function(i){return t=i,n=t.get("$rootScope")};this.isHover=function(){return function(n,t){var i,r,u,f,e;return(r=n.offset(),u=t.offset(),f={width:n.width(),height:n.height()},e={width:t.width(),height:t.height()},i={x:!1,y:!1},i.x=r.left>u.left&&r.left<u.left+e.width,i.x=i.x||r.left+f.width>u.left&&r.left+f.width<u.left+e.width,!i)?!1:(i.y=r.top>u.top&&r.top<u.top+e.height,i.y=i.y||r.top+f.height>u.top&&r.top+f.height<u.top+e.height,i.x&&i.y)}}(this);i=function(n,t){return setTimeout(function(){return t()},n)};this.autoScroll={up:!1,down:!1,scrolling:!1,scroll:function(n){return function(){return n.autoScroll.scrolling=!0,n.autoScroll.up?($("html, body").dequeue().animate({scrollTop:$(window).scrollTop()-50},100,"easeOutQuad"),i(100,function(){return n.autoScroll.scroll()})):n.autoScroll.down?($("html, body").dequeue().animate({scrollTop:$(window).scrollTop()+50},100,"easeOutQuad"),i(100,function(){return n.autoScroll.scroll()})):n.autoScroll.scrolling=!1}}(this),start:function(n){return function(t){if(t.clientY<50){if(n.autoScroll.up=!0,n.autoScroll.down=!1,!n.autoScroll.scrolling)return n.autoScroll.scroll()}else if(t.clientY>$(window).innerHeight()-50){if(n.autoScroll.up=!1,n.autoScroll.down=!0,!n.autoScroll.scrolling)return n.autoScroll.scroll()}else return n.autoScroll.up=!1,n.autoScroll.down=!1}}(this),stop:function(n){return function(){return n.autoScroll.up=!1,n.autoScroll.down=!1}}(this)};this.dragMirrorMode=function(n){return function(t,i,r){var u;i==null&&(i=!0);u={id:n.getNewId(),mode:"mirror",maternal:t[0],element:null,object:r};t.on("mousedown",function(r){var f;return r.preventDefault(),f=t.clone(),u.element=f[0],f.addClass("fb-draggable form-horizontal prepare-dragging"),n.hooks.move.drag=function(i,r){var e,h,s,o;if(!f.hasClass("prepare-dragging")||(f.css({width:t.width(),height:t.height()}),f.removeClass("prepare-dragging"),f.addClass("dragging"),!r)){f.offset({left:i.pageX-f.width()/2,top:i.pageY-f.height()/2});n.autoScroll.start(i);s=n.data.droppables;o=[];for(h in s)e=s[h],n.isHover(f,$(e.element))?o.push(e.move(i,u)):o.push(e.out(i,u));return o}},n.hooks.up.drag=function(t){var i,r,e,o=n.data.droppables;for(r in o)i=o[r],e=n.isHover(f,$(i.element)),i.up(t,e,u);return delete n.hooks.move.drag,delete n.hooks.up.drag,u.element=null,f.remove(),n.autoScroll.stop()},$("body").append(f),i?void 0:n.hooks.move.drag(r,i)});return u}}(this);this.dragDragMode=function(n){return function(t,i,r){var u;i==null&&(i=!0);u={id:n.getNewId(),mode:"drag",maternal:null,element:t[0],object:r};t.addClass("fb-draggable");t.on("mousedown",function(r){if(r.preventDefault(),!t.hasClass("dragging"))return t.addClass("prepare-dragging"),n.hooks.move.drag=function(i,r){var f,o,e;if(!t.hasClass("prepare-dragging")||(t.css({width:t.width(),height:t.height()}),t.removeClass("prepare-dragging"),t.addClass("dragging"),!r)){t.offset({left:i.pageX-t.width()/2,top:i.pageY-t.height()/2});n.autoScroll.start(i);e=n.data.droppables;for(o in e)f=e[o],n.isHover(t,$(f.element))?f.move(i,u):f.out(i,u)}},n.hooks.up.drag=function(i){var r,f,e,o=n.data.droppables;for(f in o)r=o[f],e=n.isHover(t,$(r.element)),r.up(i,e,u);return delete n.hooks.move.drag,delete n.hooks.up.drag,t.css({width:"",height:"",left:"",top:""}),t.removeClass("dragging defer-dragging"),n.autoScroll.stop()},i?void 0:n.hooks.move.drag(r,i)});return u}}(this);this.dropMode=function(t){return function(i,r){return{id:t.getNewId(),element:i[0],move:function(t,i){return n.$apply(function(){if(typeof r.move=="function")return r.move(t,i)})},up:function(t,i,u){return n.$apply(function(){if(typeof r.up=="function")return r.up(t,i,u)})},out:function(t,i){return n.$apply(function(){if(typeof r.out=="function")return r.out(t,i)})}}}}(this);this.draggable=function(n){return function(t,i){var r,u,f,e,o,s,h;if(i==null&&(i={}),f=[],i.mode==="mirror")for(e=0,s=t.length;e<s;e++)u=t[e],r=n.dragMirrorMode($(u),i.defer,i.object),f.push(r.id),n.data.draggables[r.id]=r;else for(o=0,h=t.length;o<h;o++)u=t[o],r=n.dragDragMode($(u),i.defer,i.object),f.push(r.id),n.data.draggables[r.id]=r;return f}}(this);this.droppable=function(n){return function(t,i){var r,e,f,u,o;for(i==null&&(i={}),f=[],u=0,o=t.length;u<o;u++)e=t[u],r=n.dropMode($(e),i),f.push(r),n.data.droppables[r.id]=r;return f}}(this);this.get=function(n){return this.setupEasing(),this.setupProviders(n),{isMouseMoved:this.isMouseMoved,data:this.data,draggable:this.draggable,droppable:this.droppable}};this.get.$inject=["$injector"];this.$get=this.get})}.call(this),function(){angular.module("builder",["builder.directive"])}.call(this),function(){var n=[].indexOf||function(n){for(var t=0,i=this.length;t<i;t++)if(t in this&&this[t]===n)return t;return-1};angular.module("builder.provider",[]).provider("$builder",function(){var i,t,r;t=null;i=null;r=null;this.version="0.0.2";this.components={};this.groups=[];this.broadcastChannel={updateInput:"$updateInput"};this.forms={"default":[]};this.formsId={"default":0};this.convertComponent=function(n,t){var i,r,u,f,e,o,s,h,c,l,a;return i={name:n,group:(r=t.group)!=null?r:"Default",label:(u=t.label)!=null?u:"",description:(f=t.description)!=null?f:"",placeholder:(e=t.placeholder)!=null?e:"",editable:(o=t.editable)!=null?o:!0,required:(s=t.required)!=null?s:!1,validation:(h=t.validation)!=null?h:"/.*/",validationOptions:(c=t.validationOptions)!=null?c:[],options:(l=t.options)!=null?l:[],arrayToText:(a=t.arrayToText)!=null?a:!1,template:t.template,templateUrl:t.templateUrl,popoverTemplate:t.popoverTemplate,popoverTemplateUrl:t.popoverTemplateUrl,isAdvanced:t.isAdvanced,customProperties:t.customProperties,datasource:t.datasource},i.template||i.templateUrl||console.error("The template is empty."),i.popoverTemplate||i.popoverTemplateUrl||console.error("The popoverTemplate is empty."),i};this.convertFormObject=function(n,t){var i,u,e,r,o,f,s,h,c,l,a,v,y,p,w;if(t==null&&(t={}),i=this.components[t.component],i==null)throw"The component "+t.component+" was not registered.";if(t.id){for(u=!1,f=this.forms[n],r=0,o=f.length;r<o;r++)if(e=f[r],t.id<=e.id){t.id=this.formsId[n]++;u=!0;break}u||(this.formsId[n]=t.id+1)}return{id:(s=t.id)!=null?s:this.formsId[n]++,component:t.component,editable:(h=t.editable)!=null?h:i.editable,index:(c=t.index)!=null?c:0,label:(l=t.label)!=null?l:i.label,description:(a=t.description)!=null?a:i.description,placeholder:(v=t.placeholder)!=null?v:i.placeholder,options:(y=t.options)!=null?y:i.options,required:(p=t.required)!=null?p:i.required,validation:(w=t.validation)!=null?w:i.validation,isAdvanced:t.isAdvanced!=null?t.isAdvanced:i.isAdvanced,customProperties:t.customProperties!=null?t.customProperties:i.customProperties,datasource:t.datasource!=null?t.datasource:i.datasource}};this.reindexFormObject=function(n){return function(t){var r,i,u,f;for(r=n.forms[t],i=u=0,f=r.length;u<f;i=u+=1)r[i].index=i}}(this);this.setupProviders=function(){return function(n){return t=n,i=t.get("$http"),r=t.get("$templateCache")}}(this);this.loadTemplate=function(n){return n.template==null&&i.get(n.templateUrl,{cache:r}).success(function(t){return n.template=t}),n.popoverTemplate==null?i.get(n.popoverTemplateUrl,{cache:r}).success(function(t){return n.popoverTemplate=t}):void 0};this.registerComponent=function(i){return function(r,u){var f,e;u==null&&(u={});i.components[r]==null?(f=i.convertComponent(r,u),i.components[r]=f,t!=null&&i.loadTemplate(f),(e=f.group,n.call(i.groups,e)<0)&&i.groups.push(f.group)):console.error("The component "+r+" was registered.")}}(this);this.addFormObject=function(n){return function(t,i){var r;return i==null&&(i={}),(r=n.forms)[t]==null&&(r[t]=[]),n.insertFormObject(t,n.forms[t].length,i)}}(this);this.insertFormObject=function(n){return function(t,i,r){var u,f;return r==null&&(r={}),(u=n.forms)[t]==null&&(u[t]=[]),(f=n.formsId)[t]==null&&(f[t]=0),i>n.forms[t].length?i=n.forms[t].length:i<0&&(i=0),n.forms[t].splice(i,0,n.convertFormObject(t,r)),n.reindexFormObject(t),n.forms[t][i]}}(this);this.removeFormObject=function(n){return function(t,i){var r;return r=n.forms[t],r.splice(i,1),n.reindexFormObject(t)}}(this);this.updateFormObjectIndex=function(n){return function(t,i,r){var f,u;if(i!==r)return u=n.forms[t],f=u.splice(i,1)[0],u.splice(r,0,f),n.reindexFormObject(t)}}(this);this.$get=["$injector",function(n){return function(t){var r,u,i;n.setupProviders(t);i=n.components;for(u in i)r=i[u],n.loadTemplate(r);return{version:n.version,components:n.components,groups:n.groups,forms:n.forms,broadcastChannel:n.broadcastChannel,registerComponent:n.registerComponent,addFormObject:n.addFormObject,insertFormObject:n.insertFormObject,removeFormObject:n.removeFormObject,updateFormObjectIndex:n.updateFormObjectIndex}}}(this)]})}.call(this);mfb=angular.module("ng-mfb",[]);mfb.run(["$templateCache",function(n){n.put("ng-mfb-menu-default.tpl.html",'<ul class="mfb-component--{{position}} mfb-{{effect}}"    data-mfb-toggle="{{togglingMethod}}" data-mfb-state="{{menuState}}" off-click="closeMenu()">  <li class="mfb-component__wrap">    <a ng-click="clicked($event)" ng-mouseenter="hovered()" ng-mouseleave="hovered()"       ng-attr-data-mfb-label="{{label}}" class="mfb-component__button--main">     <i class="mfb-component__main-icon--resting {{resting}}"><\/i>     <i class="mfb-component__main-icon--active {{active}}"><\/i>    <\/a>    <ul class="mfb-component__list" ng-transclude>    <\/ul><\/li><\/ul>');n.put("ng-mfb-menu-md.tpl.html",'<ul class="mfb-component--{{position}} mfb-{{effect}}"    data-mfb-toggle="{{togglingMethod}}" data-mfb-state="{{menuState}}">  <li class="mfb-component__wrap">    <a ng-click="clicked($event)" ng-mouseenter="hovered()" ng-mouseleave="hovered()"       style="background: transparent; box-shadow: none;"       ng-attr-data-mfb-label="{{label}}" class="mfb-component__button--main">     <md-button class="md-fab md-accent" aria-label={{label}} style="position:relative; margin: 0; padding:0;">       <md-icon style="left: 0; position: relative;" md-svg-icon="{{resting}}"         class="mfb-component__main-icon--resting"><\/md-icon>       <md-icon style="position:relative;" md-svg-icon="{{active}}"         class="mfb-component__main-icon--active"><\/md-icon>     <\/md-button>    <\/a>    <ul class="mfb-component__list" ng-transclude>    <\/ul><\/li><\/ul>');n.put("ng-mfb-button-default.tpl.html",'<li>  <a data-mfb-label="{{label}}" class="mfb-component__button--child">    <i class="mfb-component__child-icon {{icon}}">    <\/i>  <\/a><\/li>');n.put("ng-mfb-button-md.tpl.html",'<li>  <a href="" data-mfb-label="{{label}}" class="mfb-component__button--child"      style="background: transparent; box-shadow: none;">     <md-button style="margin: 0;" class="md-fab md-accent" aria-label={{label}}>       <md-icon md-svg-icon="{{icon}}"><\/md-icon>     <\/md-button>  <\/a><\/li>')}]);mfb.directive("mfbButtonClose",function(){return{restrict:"A",require:"^mfbMenu",link:function(n,t,i,r){t.bind("click",function(){r.close()})}}});mfb.directive("mfbMenu",["$timeout",function(n){return{restrict:"EA",transclude:!0,replace:!0,scope:{position:"@",effect:"@",label:"@",resting:"@restingIcon",active:"@activeIcon",mainAction:"&",menuState:"=?",togglingMethod:"@"},templateUrl:function(n,t){return t.templateUrl||"ng-mfb-menu-default.tpl.html"},controller:["$scope","$attrs",function(t,i){function h(){t.mainAction&&t.mainAction();u()||o()}function c(){u()}function o(){t.menuState===f?r():s()}function s(){t.menuState=f}function r(){t.menuState=e}function l(){return t.menuState}function a(){return window.Modernizr&&Modernizr.touch}function u(){return t.togglingMethod==="hover"}function v(){t.$apply(function(){t.togglingMethod="click"})}var f="open",e="closed";this.toggle=o;this.close=r;this.open=s;this.state=l;t.clicked=h;t.hovered=c;t.closeMenu=r;t.menuState||(t.menuState=e);a()&&u()&&n(v);i.$observe("menuState",function(){t.currentState=t.menuState})}]}}]);mfb.directive("mfbButton",[function(){return{require:"^mfbMenu",restrict:"EA",transclude:!0,replace:!0,scope:{icon:"@",label:"@"},templateUrl:function(n,t){return t.templateUrl||"ng-mfb-button-default.tpl.html"}}}]),function(n,t){"use strict";angular.module("googlechart",[]).constant("googleChartApiConfig",{version:"1",optionalSettings:{packages:["corechart"]}}).provider("googleJsapiUrl",function(){var n="https:",t="//www.google.com/jsapi";this.setProtocol=function(t){n=t};this.setUrl=function(n){t=n};this.$get=function(){return(n?n:"")+t}}).factory("googleChartApiPromise",["$rootScope","$q","googleChartApiConfig","googleJsapiUrl",function(i,r,u,f){var o=r.defer(),s=function(){var n={callback:function(){var n=u.optionalSettings.callback;i.$apply(function(){o.resolve()});angular.isFunction(n)&&n.call(this)}};n=angular.extend({},u.optionalSettings,n);t.google.load("visualization",u.version,n)},h=n.getElementsByTagName("head")[0],e=n.createElement("script");return e.setAttribute("type","text/javascript"),e.src=f,e.addEventListener?e.addEventListener("load",s,!1):e.onreadystatechange=function(){(e.readyState==="loaded"||e.readyState==="complete")&&(e.onreadystatechange=null,s())},h.appendChild(e),o.promise}]).directive("googleChart",["$timeout","$window","$rootScope","googleChartApiPromise",function(n,t,i,r){return{restrict:"A",scope:{chart:"=chart",onReady:"&",select:"&"},link:function(t,u){function f(n,i,r){var e,o,f,u;if(typeof t.chart.formatters[n]!="undefined"){if(t.formatters[n]==null)if(t.formatters[n]=[],n==="color")for(e=0;e<t.chart.formatters[n].length;e++){for(o=new i,u=0;u<t.chart.formatters[n][e].formats.length;u++)f=t.chart.formatters[n][e].formats[u],typeof f.fromBgColor!="undefined"&&typeof f.toBgColor!="undefined"?o.addGradientRange(f.from,f.to,f.color,f.fromBgColor,f.toBgColor):o.addRange(f.from,f.to,f.color,f.bgcolor);t.formatters[n].push(o)}else for(u=0;u<t.chart.formatters[n].length;u++)t.formatters[n].push(new i(t.chart.formatters[n][u]));for(u=0;u<t.formatters[n].length;u++)t.chart.formatters[n][u].columnNum<r.getNumberOfColumns()&&t.formatters[n][u].format(r,t.chart.formatters[n][u].columnNum);(n==="arrow"||n==="bar"||n==="color")&&(t.chart.options.allowHtml=!0)}}function e(){e.triggered||t.chart==undefined||(e.triggered=!0,n(function(){var i,r,o;if(e.triggered=!1,typeof t.formatters=="undefined"&&(t.formatters={}),i=t.chart.data instanceof google.visualization.DataTable?t.chart.data:Array.isArray(t.chart.data)?google.visualization.arrayToDataTable(t.chart.data):new google.visualization.DataTable(t.chart.data,.5),typeof t.chart.formatters!="undefined"&&(f("number",google.visualization.NumberFormat,i),f("arrow",google.visualization.ArrowFormat,i),f("date",google.visualization.DateFormat,i),f("bar",google.visualization.BarFormat,i),f("color",google.visualization.ColorFormat,i)),r=t.chart.customFormatters,typeof r!="undefined")for(name in r)f(name,r[name],i);o={chartType:t.chart.type,dataTable:i,view:t.chart.view,options:t.chart.options,containerId:u[0]};t.chartWrapper==null?(t.chartWrapper=new google.visualization.ChartWrapper(o),google.visualization.events.addListener(t.chartWrapper,"ready",function(){t.chart.displayed=!0;t.$apply(function(n){n.onReady({chartWrapper:n.chartWrapper})})}),google.visualization.events.addListener(t.chartWrapper,"error",function(n){console.log("Chart not displayed due to error: "+n.message+". Full error object follows.");console.log(n)}),google.visualization.events.addListener(t.chartWrapper,"select",function(){var n=t.chartWrapper.getChart().getSelection()[0];n&&t.$apply(function(){t.select({selectedItem:n})})})):(t.chartWrapper.setChartType(t.chart.type),t.chartWrapper.setDataTable(i),t.chartWrapper.setView(t.chart.view),t.chartWrapper.setOptions(t.chart.options));n(function(){t.chartWrapper.draw()})},0,!0))}function o(){r.then(function(){e()})}t.$watch("chart",function(){o()},!0);i.$on("resizeMsg",function(){n(function(){t.chartWrapper&&o()})})}}}]).run(["$rootScope","$window",function(n,t){angular.element(t).bind("resize",function(){n.$emit("resizeMsg")})}])}(document,window),function(){"use strict";angular.module("as.sortable",[]).constant("sortableConfig",{itemClass:"as-sortable-item",handleClass:"as-sortable-item-handle",placeHolderClass:"as-sortable-placeholder",dragClass:"as-sortable-drag",hiddenClass:"as-sortable-hidden",dragging:"as-sortable-dragging"})}(),function(){"use strict";var n=angular.module("as.sortable");n.factory("$helper",["$document","$window",function(n,t){return{height:function(n){return n[0].getBoundingClientRect().height},width:function(n){return n[0].getBoundingClientRect().width},offset:function(i,r){var u=i[0].getBoundingClientRect();return r||(r=n[0].documentElement),{width:u.width||i.prop("offsetWidth"),height:u.height||i.prop("offsetHeight"),top:u.top+(t.pageYOffset||r.scrollTop-r.offsetTop),left:u.left+(t.pageXOffset||r.scrollLeft-r.offsetLeft)}},eventObj:function(n){var t=n;return n.targetTouches!==undefined?t=n.targetTouches.item(0):n.originalEvent!==undefined&&n.originalEvent.targetTouches!==undefined&&(t=n.originalEvent.targetTouches.item(0)),t},isTouchInvalid:function(n){var t=!1;return n.touches!==undefined&&n.touches.length>1?t=!0:n.originalEvent!==undefined&&n.originalEvent.touches!==undefined&&n.originalEvent.touches.length>1&&(t=!0),t},positionStarted:function(n,t,i){var r={};return r.offsetX=n.pageX-this.offset(t,i).left,r.offsetY=n.pageY-this.offset(t,i).top,r.startX=r.lastX=n.pageX,r.startY=r.lastY=n.pageY,r.nowX=r.nowY=r.distX=r.distY=r.dirAx=0,r.dirX=r.dirY=r.lastDirX=r.lastDirY=r.distAxX=r.distAxY=0,r},calculatePosition:function(n,t){n.lastX=n.nowX;n.lastY=n.nowY;n.nowX=t.pageX;n.nowY=t.pageY;n.distX=n.nowX-n.lastX;n.distY=n.nowY-n.lastY;n.lastDirX=n.dirX;n.lastDirY=n.dirY;n.dirX=n.distX===0?0:n.distX>0?1:-1;n.dirY=n.distY===0?0:n.distY>0?1:-1;var i=Math.abs(n.distX)>Math.abs(n.distY)?1:0;n.dirAx!==i?(n.distAxX=0,n.distAxY=0):(n.distAxX+=Math.abs(n.distX),n.dirX!==0&&n.dirX!==n.lastDirX&&(n.distAxX=0),n.distAxY+=Math.abs(n.distY),n.dirY!==0&&n.dirY!==n.lastDirY&&(n.distAxY=0));n.dirAx=i},movePosition:function(n,t,i,r,u,f){var e,o=u==="relative";t.x=n.pageX-i.offsetX;t.y=n.pageY-i.offsetY;r&&(e=this.offset(r,f),o&&(t.x-=e.left,t.y-=e.top,e.left=0,e.top=0),t.x<e.left?t.x=e.left:t.x>=e.width+e.left-this.offset(t).width&&(t.x=e.width+e.left-this.offset(t).width),t.y<e.top?t.y=e.top:t.y>=e.height+e.top-this.offset(t).height&&(t.y=e.height+e.top-this.offset(t).height));t.css({left:t.x+"px",top:t.y+"px"});this.calculatePosition(i,n)},dragItem:function(n){return{index:n.index(),parent:n.sortableScope,source:n,targetElement:null,targetElementOffset:null,sourceInfo:{index:n.index(),itemScope:n.itemScope,sortableScope:n.sortableScope},canMove:function(n,t,i){return this.targetElement!==t?(this.targetElement=t,this.targetElementOffset=i,!0):n.dirX*(i.left-this.targetElementOffset.left)>0||n.dirY*(i.top-this.targetElementOffset.top)>0?(this.targetElementOffset=i,!0):!1},moveTo:function(n,t){this.parent=n;this.isSameParent()&&this.source.index()<t&&!this.sourceInfo.sortableScope.cloning&&(t=t-1);this.index=t},isSameParent:function(){return this.parent.element===this.sourceInfo.sortableScope.element},isOrderChanged:function(){return this.index!==this.sourceInfo.index},eventArgs:function(){return{source:this.sourceInfo,dest:{index:this.index,sortableScope:this.parent}}},apply:function(){this.sourceInfo.sortableScope.cloning?this.parent.options.clone||this.parent.insertItem(this.index,angular.copy(this.source.modelValue)):(this.sourceInfo.sortableScope.removeItem(this.sourceInfo.index),(this.parent.options.allowDuplicates||this.parent.modelValue.indexOf(this.source.modelValue)<0)&&this.parent.insertItem(this.index,this.source.modelValue))}}},noDrag:function(n){return n.attr("no-drag")!==undefined||n.attr("data-no-drag")!==undefined},findAncestor:function(n,t){n=n[0];for(var i=Element.matches||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector;(n=n.parentElement)&&!i.call(n,t););return n?angular.element(n):angular.element(document.body)}}}])}(),function(){"use strict";var n=angular.module("as.sortable");n.controller("as.sortable.sortableController",["$scope",function(n){this.scope=n;n.modelValue=null;n.callbacks=null;n.type="sortable";n.options={longTouch:!1};n.isDisabled=!1;n.insertItem=function(t,i){n.options.allowDuplicates?n.modelValue.splice(t,0,angular.copy(i)):n.modelValue.splice(t,0,i)};n.removeItem=function(t){var i=null;return t>-1&&(i=n.modelValue.splice(t,1)[0]),i};n.isEmpty=function(){return n.modelValue&&n.modelValue.length===0};n.accept=function(t,i,r){return n.callbacks.accept(t,i,r)}}]);n.directive("asSortable",function(){return{require:"ngModel",restrict:"A",scope:!0,controller:"as.sortable.sortableController",link:function(n,t,i,r){var f,u;(f=r,f)&&(f.$render=function(){n.modelValue=f.$modelValue},n.element=t,t.data("_scope",n),u={accept:null,orderChanged:null,itemMoved:null,dragStart:null,dragMove:null,dragCancel:null,dragEnd:null},u.accept=function(){return!0},u.orderChanged=function(){},u.itemMoved=function(){},u.dragStart=function(){},u.dragMove=angular.noop,u.dragCancel=function(){},u.dragEnd=function(){},n.$watch(i.asSortable,function(t){angular.forEach(t,function(t,i){u[i]?typeof t=="function"&&(u[i]=t):n.options[i]=t});n.callbacks=u},!0),angular.isDefined(i.isDisabled)&&n.$watch(i.isDisabled,function(t){angular.isUndefined(t)||(n.isDisabled=t)},!0))}}})}(),function(){"use strict";function t(n,i){return!i||i.nodeName==="HTML"?!1:i.parentNode===n?!0:t(n,i.parentNode)}var n=angular.module("as.sortable");n.controller("as.sortable.sortableItemHandleController",["$scope",function(n){this.scope=n;n.itemScope=null;n.type="handle"}]);n.directive("asSortableItemHandle",["sortableConfig","$helper","$window","$document","$timeout",function(n,i,r,u,f){return{require:"^asSortableItem",scope:!0,restrict:"A",controller:"as.sortable.sortableItemHandleController",link:function(e,o,s,h){function dt(n,t){a.css("display")!=="table-row"&&a.css("display","block");t.sortableScope.options.clone||(n[0].parentNode.insertBefore(a[0],n[0]),l.moveTo(t.sortableScope,t.index()))}function ti(n,t){a.css("display")!=="table-row"&&a.css("display","block");t.sortableScope.options.clone||(n.after(a),l.moveTo(t.sortableScope,t.index()+1))}function gt(n){for(var t;!t&&n.length;)t=n.data("_scope"),t||(n=n.parent());return t}function ni(){e.itemScope.sortableScope.cloning||tt.replaceWith(e.itemScope.element);a.remove();c.remove();c=null;p=!1;v.css("cursor","");v.removeClass("as-sortable-un-selectable")}var c,a,tt,w,l,v,ut,y,b,at,k,d,it,vt,ft,rt,et,yt,ot,g,pt,st,nt,wt,p,bt,kt,ht=!1,ct,lt=!1;g="ontouchstart"in r;pt=/iPad|iPhone|iPod/.test(r.navigator.userAgent)&&!r.MSStream;n.handleClass&&o.addClass(n.handleClass);e.itemScope=h.scope;o.data("_scope",e);e.$watchGroup(["sortableScope.isDisabled","sortableScope.options.longTouch"],function(n){ht!==n[0]?(ht=n[0],ht?et():rt()):lt!==n[1]?(lt=n[1],et(),rt()):rt()});e.$on("$destroy",function(){angular.element(u[0].body).unbind("keydown",ct)});bt=function(n){return typeof e.sortableScope.options.placeholder=="function"?angular.element(e.sortableScope.options.placeholder(n)):typeof e.sortableScope.options.placeholder=="string"?angular.element(e.sortableScope.options.placeholder):angular.element(u[0].createElement(n.element.prop("tagName")))};y=function(n){var t=function(){angular.element(u).unbind("mousemove",f);angular.element(u).unbind("touchmove",f);o.unbind("mouseup",t);o.unbind("touchend",t);o.unbind("touchcancel",t)},r,f=function(u){u.preventDefault();var f=i.eventObj(u);r||(r={clientX:f.clientX,clientY:f.clientY});Math.abs(f.clientX-r.clientX)+Math.abs(f.clientY-r.clientY)>10&&(t(),at(n))};angular.element(u).bind("mousemove",f);angular.element(u).bind("touchmove",f);o.bind("mouseup",t);o.bind("touchend",t);o.bind("touchcancel",t);n.stopPropagation()};at=function(t){var r,f;(g||t.button!==2&&t.which!==3)&&(g&&i.isTouchInvalid(t)||!p&&vt(t)&&(p=!0,t.preventDefault(),r=i.eventObj(t),e.sortableScope=e.sortableScope||e.itemScope.sortableScope,e.callbacks=e.callbacks||e.itemScope.callbacks,e.itemScope.sortableScope.cloning=e.itemScope.sortableScope.options.clone||e.itemScope.sortableScope.options.ctrlClone&&t.ctrlKey?!0:!1,b=angular.element(u[0].querySelector(e.sortableScope.options.scrollableContainer)).length>0?u[0].querySelector(e.sortableScope.options.scrollableContainer):u[0].documentElement,v=e.sortableScope.options.containment?i.findAncestor(o,e.sortableScope.options.containment):angular.element(u[0].body),v.css("cursor","move"),v.css("cursor","-webkit-grabbing"),v.css("cursor","-moz-grabbing"),v.addClass("as-sortable-un-selectable"),ut=e.sortableScope.options.containerPositioning||"absolute",l=i.dragItem(e),f=e.itemScope.element.prop("tagName"),c=angular.element(u[0].createElement(e.sortableScope.element.prop("tagName"))).addClass(e.sortableScope.element.attr("class")).addClass(n.dragClass),c.css("width",i.width(e.itemScope.element)+"px"),c.css("height",i.height(e.itemScope.element)+"px"),a=bt(e.itemScope).addClass(n.placeHolderClass).addClass(e.sortableScope.options.additionalPlaceholderClass),a.css("width",i.width(e.itemScope.element)+"px"),a.css("height",i.height(e.itemScope.element)+"px"),tt=angular.element(u[0].createElement(f)),n.hiddenClass&&tt.addClass(n.hiddenClass),w=i.positionStarted(r,e.itemScope.element,b),e.itemScope.sortableScope.options.clone||e.itemScope.element.after(a),e.itemScope.sortableScope.cloning?c.append(e.itemScope.element.clone()):(e.itemScope.element.after(tt),c.append(e.itemScope.element)),v.append(c),i.movePosition(r,c,w,v,ut,b),e.sortableScope.$apply(function(){e.callbacks.dragStart(l.eventArgs())}),yt()))};vt=function(n){var t,u,r;for(t=angular.element(n.target),u=gt(t),r=u&&u.type==="handle";r&&t[0]!==o[0];)i.noDrag(t)&&(r=!1),t=t.parent();return r};k=function(f){var h,k,d,o,s,nt,y;if((!g||!i.isTouchInvalid(f))&&p&&c){if(f.preventDefault(),h=i.eventObj(f),e.callbacks.dragMove!==angular.noop&&e.sortableScope.$apply(function(){e.callbacks.dragMove(w,v,h)}),k=h.pageX-u[0].documentElement.scrollLeft,d=h.pageY-(r.pageYOffset||u[0].documentElement.scrollTop),c.addClass(n.hiddenClass),s=angular.element(u[0].elementFromPoint(k,d)),c.removeClass(n.hiddenClass),i.movePosition(h,c,w,v,ut,b),c.addClass(n.dragging),o=gt(s),!o||!o.type)return;if(o.type==="handle"&&(o=o.itemScope),o.type!=="item"&&o.type!=="sortable")return;if(o.type==="item"&&o.accept(e,o.sortableScope,o)){if(s=o.element,nt=i.offset(s,b),!l.canMove(w,s,nt))return;y=ft(o.sortableScope.element);y<0?dt(s,o):y<=o.index()?ti(s,o):dt(s,o)}o.type==="sortable"&&o.accept(e,o)&&!t(o.element[0],s[0])&&(kt(s)||o.options.clone||(s[0].appendChild(a[0]),l.moveTo(o,o.modelValue.length)))}};ft=function(t){var r,i;if(t.hasClass(n.placeHolderClass))return 0;for(r=t.children(),i=0;i<r.length;i+=1)if(angular.element(r[i]).hasClass(n.placeHolderClass))return i;return-1};kt=function(n){return ft(n)>=0};d=function(n){p&&(n.preventDefault(),c&&(ni(),l.apply(),e.sortableScope.$apply(function(){l.isSameParent()?l.isOrderChanged()&&e.callbacks.orderChanged(l.eventArgs()):e.callbacks.itemMoved(l.eventArgs())}),e.sortableScope.$apply(function(){e.callbacks.dragEnd(l.eventArgs())}),l=null),ot())};it=function(n){p&&(n.preventDefault(),c&&(ni(),e.sortableScope.$apply(function(){e.callbacks.dragCancel(l.eventArgs())}),l=null),ot())};rt=function(){g&&(lt?pt?(o.bind("touchstart",st),o.bind("touchend",nt),o.bind("touchmove",nt)):o.bind("contextmenu",y):o.bind("touchstart",y));o.bind("mousedown",y)};et=function(){o.unbind("touchstart",st);o.unbind("touchend",nt);o.unbind("touchmove",nt);o.unbind("contextmenu",y);o.unbind("touchstart",y);o.unbind("mousedown",y)};st=function(n){wt=f(function(){y(n)},500)};nt=function(){f.cancel(wt)};ct=function(n){n.keyCode===27&&it(n)};angular.element(u[0].body).bind("keydown",ct);yt=function(){angular.element(u).bind("touchmove",k);angular.element(u).bind("touchend",d);angular.element(u).bind("touchcancel",it);angular.element(u).bind("mousemove",k);angular.element(u).bind("mouseup",d)};ot=function(){angular.element(u).unbind("touchend",d);angular.element(u).unbind("touchcancel",it);angular.element(u).unbind("touchmove",k);angular.element(u).unbind("mouseup",d);angular.element(u).unbind("mousemove",k)}}}}])}(),function(){"use strict";var n=angular.module("as.sortable");n.controller("as.sortable.sortableItemController",["$scope",function(n){this.scope=n;n.sortableScope=null;n.modelValue=null;n.type="item";n.index=function(){return n.$index};n.itemData=function(){return n.sortableScope.modelValue[n.$index]}}]);n.directive("asSortableItem",["sortableConfig",function(n){return{require:["^asSortable","?ngModel"],restrict:"A",controller:"as.sortable.sortableItemController",link:function(t,i,r,u){var e=u[0],f=u[1];n.itemClass&&i.addClass(n.itemClass);t.sortableScope=e.scope;f?f.$render=function(){t.modelValue=f.$modelValue}:t.modelValue=e.scope.modelValue[t.$index];t.element=i;i.data("_scope",t)}}}])}();window.AngularSlider=function(n,t,i){function b(n){d.cssText=n}function o(n,t){return typeof n===t}function k(){u.inputtypes=function(n){for(var u,f,o,e=0,s=n.length;s>e;e++)r.setAttribute("type",f=n[e]),u="text"!==r.type,u&&(r.value=y,r.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&r.style.WebkitAppearance!==i?(h.appendChild(r),o=t.defaultView,u=o.getComputedStyle&&"textfield"!==o.getComputedStyle(r,null).WebkitAppearance&&0!==r.offsetHeight,h.removeChild(r)):/^(search|tel)$/.test(f)||(u=/^(url|email)$/.test(f)?r.checkValidity&&r.checkValidity()===!1:r.value!=y)),p[n[e]]=!!u;return p}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var f,s,u={},h=t.documentElement,v=t.createElement("modernizr"),d=v.style,r=t.createElement("input"),y=":)",c=({}.toString,{}),p={},w=[],l=w.slice,a={}.hasOwnProperty,e;s=o(a,"undefined")||o(a.call,"undefined")?function(n,t){return t in n&&o(n.constructor.prototype[t],"undefined")}:function(n,t){return a.call(n,t)};Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,i,r;if("function"!=typeof t)throw new TypeError;return i=l.call(arguments,1),r=function(){var f,e,u;return this instanceof r?(f=function(){},f.prototype=t.prototype,e=new f,u=t.apply(e,i.concat(l.call(arguments))),Object(u)===u?u:e):t.apply(n,i.concat(l.call(arguments)))},r});for(e in c)s(c,e)&&(f=e.toLowerCase(),u[f]=c[e](),w.push((u[f]?"":"no-")+f));return u.input||k(),u.addTest=function(n,t){if("object"==typeof n)for(var r in n)s(n,r)&&u.addTest(r,n[r]);else{if(n=n.toLowerCase(),u[n]!==i)return u;t="function"==typeof t?t():t;"undefined"!=typeof enableClasses&&enableClasses&&(h.className+=" "+(t?"":"no-")+n);u[n]=t}return u},b(""),v=r=null,u._version="2.7.1",u}(this,this.document),function(n,t,i){function h(n){return"[object Function]"==y.call(n)}function c(n){return"string"==typeof n}function l(){}function w(n){return!n||"loaded"==n||"complete"==n||"uninitialized"==n}function e(){var n=a.shift();v=1;n?n.t?s(function(){("c"==n.t?r.injectCss:r.injectJs)(n.s,0,n.a,n.x,n.e,1)},0):(n(),e()):v=0}function ut(n,i,f,h,c,l,y){function k(t){if(!d&&w(p.readyState)&&(tt.r=d=1,!v&&e(),p.onload=p.onreadystatechange=null,t)){"img"!=n&&s(function(){nt.removeChild(p)},50);for(var r in u[i])u[i].hasOwnProperty(r)&&u[i][r].onload()}}var y=y||r.errorTimeout,p=t.createElement(n),d=0,b=0,tt={t:f,s:i,e:c,a:l,x:y};1===u[i]&&(b=1,u[i]=[]);"object"==n?p.data=i:(p.src=i,p.type=n);p.width=p.height="0";p.onerror=p.onload=p.onreadystatechange=function(){k.call(this,b)};a.splice(h,0,tt);"img"!=n&&(b||2===u[i]?(nt.insertBefore(p,g?null:o),s(k,y)):u[i].push(p))}function ft(n,t,i,r,u){return v=0,t=t||"j",c(n)?ut("c"==t?et:tt,n,t,this.i++,i,r,u):(a.splice(this.i++,0,n),1==a.length&&e()),this}function b(){var n=r;return n.loader={load:ft,i:0},n}var k,r,f=t.documentElement,s=n.setTimeout,o=t.getElementsByTagName("script")[0],y={}.toString,a=[],v=0,d="MozAppearance"in f.style,g=d&&!!t.createRange().compareNode,nt=g?f:o.parentNode,f=n.opera&&"[object Opera]"==y.call(n.opera),f=!!t.attachEvent&&!f,tt=d?"object":f?"script":"img",et=f?"script":tt,it=Array.isArray||function(n){return"[object Array]"==y.call(n)},p=[],u={},rt={timeout:function(n,t){return t.length&&(n.timeout=t[0]),n}};r=function(n){function a(n){for(var u,r,n=n.split("!"),f=p.length,i=n.pop(),e=n.length,i={url:i,origUrl:i,prefixes:n},t=0;e>t;t++)r=n[t].split("="),(u=rt[r.shift()])&&(i=u(i,r));for(t=0;f>t;t++)i=p[t](i);return i}function f(n,t,r,f,e){var o=a(n),s=o.autoCallback;o.url.split(".").pop().split("?").shift();o.bypass||(t&&(t=h(t)?t:t[n]||t[f]||t[n.split("/").pop().split("?")[0]]),o.instead?o.instead(n,t,r,f,e):(u[o.url]?o.noexec=!0:u[o.url]=1,r.load(o.url,o.forceCSS||!o.forceJS&&"css"==o.url.split(".").pop().split("?").shift()?"c":i,o.noexec,o.attrs,o.timeout),(h(t)||h(s))&&r.load(function(){b();t&&t(o.origUrl,e,f);s&&s(o.origUrl,e,f);u[o.url]=2})))}function s(n,t){function a(n,o){if(n){if(c(n))o||(i=function(){var n=[].slice.call(arguments);s.apply(this,n);u()}),f(n,i,t,0,e);else if(Object(n)===n)for(r in v=function(){var t,i=0;for(t in n)n.hasOwnProperty(t)&&i++;return i}(),n)n.hasOwnProperty(r)&&(!o&&!--v&&(h(i)?i=function(){var n=[].slice.call(arguments);s.apply(this,n);u()}:i[r]=function(n){return function(){var t=[].slice.call(arguments);n&&n.apply(this,t);u()}}(s[r])),f(n[r],i,t,r,e))}else o||u()}var v,r,e=!!n.test,o=n.load||n.both,i=n.callback||l,s=i,u=n.complete||l;a(e?n.yep:n.nope,!!o);o&&a(o)}var e,t,o=this.yepnope.loader;if(c(n))f(n,0,o,0);else if(it(n))for(e=0;e<n.length;e++)t=n[e],c(t)?f(t,0,o,0):it(t)?r(t):Object(t)===t&&s(t,o);else Object(n)===n&&s(n,o)};r.addPrefix=function(n,t){rt[n]=t};r.addFilter=function(n){p.push(n)};r.errorTimeout=1e4;null==t.readyState&&t.addEventListener&&(t.readyState="loading",t.addEventListener("DOMContentLoaded",k=function(){t.removeEventListener("DOMContentLoaded",k,0);t.readyState="complete"},0));n.yepnope=b();n.yepnope.executeStack=e;n.yepnope.injectJs=function(n,i,u,f,h,c){var v,y,a=t.createElement("script"),f=f||r.errorTimeout;a.src=n;for(y in u)a.setAttribute(y,u[y]);i=c?e:i||l;a.onreadystatechange=a.onload=function(){!v&&w(a.readyState)&&(v=1,i(),a.onload=a.onreadystatechange=null)};s(function(){v||(v=1,i(1))},f);h?a.onload():o.parentNode.insertBefore(a,o)};n.yepnope.injectCss=function(n,i,r,u,f,h){var c,u=t.createElement("link"),i=h?e:i||l;u.href=n;u.rel="stylesheet";u.type="text/css";for(c in r)u.setAttribute(c,r[c]);f||(o.parentNode.insertBefore(u,o),s(i,0))}}(this,document);AngularSlider.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};angular.module("vr.directives.slider",["ngTouch"]).directive("slider",["$timeout","$document","$interpolate","$swipe",function(n,t,i,r){function o(n){return angular.element(n)}function p(n){return""+n+"px"}function w(n,t){return n.css({opacity:t})}function s(n){return w(n,0)}function h(n){return w(n,1)}function f(n,t){return n.css({left:t})}function a(n){var t=parseFloat(n.css("width"));return isNaN(t)?n[0].offsetWidth:t}function c(n){return a(n)/2}function e(n){try{return n.offset().left}catch(t){}return n[0].getBoundingClientRect().left}function y(n,t){return e(n)>e(t)?e(n)-e(t)-a(t):e(t)-e(n)-a(n)}function l(n,t){return n.attr("ng-bind-template",t)}function v(n,t,i,r,u){(angular.isUndefined(t)||!t)&&(t=0);(angular.isUndefined(i)||!i||0==i)&&(i=1/Math.pow(10,t));(angular.isUndefined(r)||!r)&&(r=0);(angular.isUndefined(n)||!n)&&(n=0);var e=(n-r)%i,f=e>i/2?n+i-e:n-e;return(angular.isUndefined(u)||!u)&&(u=f),f=Math.min(Math.max(f,r),u),parseFloat(f.toFixed(t))}function b(n,t){return Math.floor(n/t+.5)*t}function k(n,t){return n>0&&!isNaN(t)?Math.ceil(t/n)*n:t}function u(n){return g+" "+n+" "+nt}var d=3,g=i.startSymbol(),nt=i.endSymbol();return{restrict:"EA",require:"ngModel",scope:{floor:"@",ceiling:"@",step:"@",stepWidth:"@",precision:"@",buffer:"@",stickiness:"@",showSteps:"@",ngModel:"=",ngModelRange:"=",ngDisabled:"=",ngChange:"&",translateFn:"&",translateRangeFn:"&",translateCombinedFn:"&",scaleFn:"&",inverseScaleFn:"&"},template:"<span class='bar full'><\/span><span class='bar steps'><span class='bubble step' ng-repeat='step in stepBubbles()'><\/span><\/span><span class='bar selection'><\/span><span class='bar unselected low'><\/span><span class='bar unselected high'><\/span><span class='pointer low'><\/span><span class='pointer high'><\/span><span class='bubble low'><\/span><span class='bubble high'><\/span><span class='bubble middle'><\/span><span class='bubble selection'><\/span><span class='bubble limit floor'><\/span><span class='bubble limit ceiling'><\/span><input type='range' class='input low' /><input type='range' class='input high' /><input type='range' class='input selection' />",compile:function(i,w){function st(n){n||(n=i);var t=[];return angular.forEach(n.children(),function(n){t.push(o(n))}),t}function ht(n,t,i){return{fullBar:n[0],stepBubs:n[1],selBar:t?n[2]:null,unSelBarLow:t?n[3]:null,unSelBarHigh:t?n[4]:null,minPtr:t?n[5]:n[2],maxPtr:t?n[6]:null,lowBub:t?n[7]:n[3],highBub:t?n[8]:null,cmbBub:t?n[9]:null,selBub:t?n[10]:null,flrBub:t?n[11]:n[4],ceilBub:t?n[12]:n[5],minInput:i?t?n[13]:n[6]:null,maxInput:i?t?n[14]:null:null,selInput:i?t?n[15]:null:null}}var lt=w.showSteps,it=w.stepWidth?"stepWidth":"step",rt=null!=w.ngModelRange,g={},nt="ngModel",tt="ngModelRange",ft="selectBar",ut=["floor","ceiling","stickiness",nt],et;if((g=function(){for(var n,i=st(),r=[],t=0,u=i.length;u>t;t++)n=i[t],n=o(n),n.css({"white-space":"nowrap",position:"absolute",display:"block","z-index":1}),r.push(n);return r}(),g=ht(g,!0,!0),w.translateFn&&w.$set("translateFn",""+w.translateFn+"(value)"),w.translateRangeFn&&w.$set("translateRangeFnFn",""+w.translateRangeFn+"(low,high)"),w.translateCombinedFn&&w.$set("translateCombinedFnFn",""+w.translateCombinedFn+"(low,high)"),w.scaleFn&&w.$set("scaleFn",""+w.scaleFn+"(value)"),w.inverseScaleFn&&w.$set("inverseScaleFn",""+w.inverseScaleFn+"(value)"),g.fullBar.css({left:0,right:0}),AngularSlider.inputtypes.range)?(et={position:"absolute",margin:0,padding:0,opacity:0,height:"100%"},g.minInput.attr("step",u("inputSteps()")),g.minInput.attr("min",u("floor")),g.minInput.css(et),g.minInput.css("left",0),rt?(g.minInput.attr("max",u("ngModelRange - (buffer / 2)")),g.maxInput.attr("step",u("inputSteps()")),g.maxInput.attr("min",u("ngModel + (buffer / 2)")),g.maxInput.attr("max",u("ceiling")),g.maxInput.css(et),g.selInput.attr("step",u("inputSteps()")),g.selInput.attr("min",u("ngModel")),g.selInput.attr("max",u("ngModelRange")),g.selInput.css(et)):(g.minInput.attr("max",u("ceiling")),g.minInput.css({width:"100%"}),g.maxInput.remove(),g.selInput.remove())):(g.minInput.remove(),g.maxInput.remove(),g.selInput.remove()),l(g.stepBubs.children().eq(0),u("translation(step)")),l(g.ceilBub,u("translation(ceiling)")),l(g.flrBub,u("translation(floor)")),l(g.selBub,u("rangeTranslation("+nt+","+tt+")")),l(g.lowBub,u("translation("+nt+")")),l(g.highBub,u("translation("+tt+")")),l(g.cmbBub,u("combinedTranslation("+nt+","+tt+")")),rt)ut.push(tt),ut.unshift("buffer");else for(var ct=[g.selBar,g.unSelBarLow,g.unSelBarHigh,g.maxPtr,g.selBub,g.highBub,g.cmbBub],ot=0,at=ct.length;at>ot;ot++)i=ct[ot],i.remove();return ut.unshift("precision",it),lt||g.stepBubs.children().remove(),{post:function(i,u,l,w){function ui(){var n,t,r;(angular.forEach(ut,function(n){i[n]=parseFloat(i[n]);n==nt||n==tt?i[n]=v(i[n],i.precision,i[it],i.floor,i.ceiling):"buffer"==n?i.buffer=!i.buffer||isNaN(i.buffer)||i.buffer<0?0:k(i[it],i.buffer):"precision"==n?i.precision=!i.precision||isNaN(i.precision)?0:parseInt(i.precision):n==it?i[it]=!i[it]||isNaN(i[it])?1/Math.pow(10,i.precision):parseFloat(i[it].toFixed(i.precision)):"stickiness"==n&&(isNaN(i.stickiness)?i.stickiness=d:i.stickiness<1&&(i.stickiness=1));i.decodedValues[n]=i.decodeRef(n)}),rt)&&(i[tt]<i[nt]&&(n=i[tt],i[tt]=i[nt],i[nt]=n),t=v(i[tt]-i[nt],i.precision,i[it]),i.buffer>0&&t<i.buffer&&(r=i.encode((i.decodedValues[nt]+i.decodedValues[tt])/2),i[nt]=v(r-i.buffer/2,i.precision,i[it],i.floor,i.ceiling),i[tt]=i[nt]+i.buffer,i[tt]>i.ceiling&&(i[tt]=i.ceiling,i[nt]=i.ceiling-i.buffer)));bt=a(g.fullBar);at=c(g.minPtr);ot=e(g.fullBar);kt=ot+bt-a(g.minPtr);dt=kt-ot;vt=i.floor;yt=i.decodedValues.floor;pt=i.ceiling;ni=i.decodedValues.ceiling;ti=pt-vt;lt=ni-yt;ii=b(lt,i.decodedValues[it])}function wt(){function d(n){return 100*((n-ot)/dt)}function vi(n){return d(n)/100*lt+yt}function ni(n){return i.encode(vi(n))}function fi(n){var t=n-yt;return ti==lt?t=b(t,i.decodedValues[it])/ii:t/=lt,100*t}function l(n){return fi(i.decode(n))}function n(n){return p(n*dt/100)}function hi(n){return Math.min(Math.max(n,ot),kt)}function ht(t){return f(t,n(d(hi(e(t)))))}function wt(n,t,r){var u=n>0?1:-1;return t=t?t:100,r?(Math.sin(Math.min(Math.abs(n/t),1)*Math.PI-Math.PI/2)+1)*u*t/6:u*Math.pow(Math.min(Math.abs(2*(n/t)),1),i.stickiness)*t/2}function ei(){var u=fi(i.decodedValues[nt]),b=l(i[nt]+i[it])-u,k=u-l(i[nt]-i[it]),a=l(i[nt]+i.buffer)-u,o=d(at+ot),t=u+wt(et,et>0?b:k);if(f(g.minPtr,n(t)),f(g.lowBub,n(d(e(g.minPtr)-c(g.lowBub)+at))),rt){var s=fi(i.decodedValues[tt]),ut=l(i[tt]+i[it])-s,ft=s-l(i[tt]-i[it]),v=s-l(i[tt]-i.buffer),r=s+wt(ct,ct>0?ut:ft);if(t>s-v&&(t=u+wt(et,a,!0),f(g.minPtr,n(t)),f(g.lowBub,n(d(e(g.minPtr)-c(g.lowBub)+at)))),u+a>r&&(r=s+wt(ct,v,!0)),f(g.maxPtr,n(r)),f(g.highBub,n(d(e(g.maxPtr)-c(g.highBub)+at))),f(g.selBar,n(t+o)),g.selBar.css({width:n(r-t)}),f(g.selBub,n((t+r)/2-d(c(g.selBub)+ot)+o)),f(g.cmbBub,n((t+r)/2-d(c(g.cmbBub)+ot)+o)),g.unSelBarLow.css({left:0,width:n(t+o)}),f(g.unSelBarHigh,n(r+o)),g.unSelBarHigh.css({right:0}),AngularSlider.inputtypes.range){var h=2*o,y=t+a/2,st=100-y;y+=h;var ht=r-v/2,p=t+h,w=r-t-h;t+h>=r&&(p=t,w=r+h-t);g.minInput.css({width:n(ht)});g.maxInput.css({left:n(y),width:n(st)});g.selInput.css({left:n(p),width:n(w)})}}}function oi(){var n=g.lowBub;ht(g.lowBub);rt&&(ht(g.highBub),ht(g.selBub),y(g.lowBub,g.highBub)<10?(s(g.lowBub),s(g.highBub),h(g.cmbBub),ht(g.cmbBub),n=g.cmbBub):(h(g.lowBub),h(g.highBub),s(g.cmbBub),n=g.highBub));y(g.flrBub,g.lowBub)<5?s(g.flrBub):rt?y(g.flrBub,n)<5?s(g.flrBub):h(g.flrBub):h(g.flrBub);y(g.lowBub,g.ceilBub)<5?s(g.ceilBub):rt?y(n,g.ceilBub)<5?s(g.ceilBub):h(g.ceilBub):h(g.ceilBub)}function gt(){et=0;ct=0;ut&&(ei(),oi(),ut.removeClass("active"));ut=null;k=null;si=!1}function st(n){ut&&i.$apply(function(){var s=n.clientX||n.x,r,f,h,a,o;if(si)r=ni(s)-li,f=ni(s)+ai,vt>r?(f+=vt-r,r=vt):f>pt&&(r-=f-pt,f=pt),h=l(r),a=l(f),et=h,ct=a,i[nt]=r=v(r,i.precision,i[it],i.floor,i.ceiling),i[tt]=f=v(f,i.precision,i[it],i.floor,i.ceiling),et-=l(r),ct-=l(f);else{var p=hi(s+ot-e(u)-c(ut)),y=d(p),t=i.encode(yt+lt*y/100);(et=y,rt)&&(i.buffer>0?k===nt?t>i[tt]-i.buffer&&(t=i[tt]-i.buffer):t<i[nt]+i.buffer&&(t=i[nt]+i.buffer):k===nt?t>i[tt]&&(i[nt]=i[tt],i.decodedValues[nt]=i.decodeRef(nt),k=tt,o=g.minPtr,g.minPtr=g.maxPtr,g.maxPtr=o,g.maxPtr.removeClass("active").removeClass("high").addClass("low"),g.minPtr.addClass("active").removeClass("low").addClass("high")):t<i[nt]&&(i[tt]=i[nt],i.decodedValues[tt]=i.decodeRef(tt),k=nt,o=g.minPtr,g.minPtr=g.maxPtr,g.maxPtr=o,g.minPtr.removeClass("active").removeClass("low").addClass("high"),g.maxPtr.addClass("active").removeClass("high").addClass("low")));i[k]=t=v(t,i.precision,i[it],i.floor,i.ceiling);i.decodedValues[k]=i.decodeRef(k);k===nt?(et-=l(t),ct=0):(ct=et-l(t),et=0)}i.ngChange&&i.ngChange();w.$setViewValue(i[nt]);ei();oi()})}function ci(n,t,r){var f,u;i.ngDisabled&&1==i.ngDisabled||(f=n.clientX||n.x,(ut=t,k=r,ut.addClass("active"),k==ft)&&(si=!0,u=ni(f),li=u-i[nt],ai=i[tt]-u),st(n))}function yi(){function i(n,t,i){function u(n){ci(n,t,i)}function f(n){st(n);gt()}n=o(n);r.bind(n,{start:u,move:st,end:f,cancel:gt})}function n(n,t,i){n=o(n);i=angular.isUndefined(i)?n:o(i);r.bind(n,{start:function(n){ci(n,i,t)}})}function u(n){n=o(n);r.bind(n,{move:st,end:function(n){st(n);gt()},cancel:gt})}AngularSlider.inputtypes.range?(i(g.minInput,g.minPtr,nt),rt&&(i(g.maxInput,g.maxPtr,tt),i(g.selInput,g.selBar,ft))):(u(t),n(g.minPtr,nt),n(g.lowBub,nt),n(g.flrBub,nt,g.minPtr),rt?(n(g.maxPtr,tt),n(g.highBub,tt),n(g.ceilBub,tt,g.maxPtr),n(g.selBar,ft),n(g.selBub,ft,g.selBar),n(g.unSelBarLow,nt,g.minPtr),n(g.unSelBarHigh,tt,g.maxPtr)):(n(g.ceilBub,nt,g.minPtr),n(g.fullBar,nt,g.minPtr)))}var si,li,ai,ut,k;ui();f(g.flrBub,0);f(g.ceilBub,p(bt-a(g.ceilBub)));ei();oi();ri||(yi(),ri=!0)}var g=ht(st(u),rt,AngularSlider.inputtypes.range);i.decodedValues={floor:0,ceiling:0,step:0,stepWidth:0,precision:0,buffer:0,stickiness:0,ngModel:0,ngModelRange:0};i.translation=function(n){return n=parseFloat(n).toFixed(i.precision),angular.isUndefined(l.translateFn)?""+n:i.translateFn({value:n})};i.rangeTranslation=function(n,t){return angular.isUndefined(l.translateRangeFn)?"Range: "+i.translation((t-n).toFixed(i.precision)):i.translateRangeFn({low:n,high:t})};i.combinedTranslation=function(n,t){return angular.isUndefined(l.translateCombinedFn)?i.translation(n)+" - "+i.translation(t):i.translateCombinedFn({low:n,high:t})};i.encode=function(n){return angular.isUndefined(l.scaleFn)||""==l.scaleFn?n:i.scaleFn({value:n})};i.decode=function(n){return angular.isUndefined(l.inverseScaleFn)||""==l.inverseScaleFn?n:i.inverseScaleFn({value:n})};(1!=Math.round(i.encode(i.decode(1)))||100!=Math.round(i.encode(i.decode(100))))&&console.warn("The scale and inverseScale functions are not perfect inverses: 1 = "+i.encode(i.decode(1))+"  100 = "+i.encode(i.decode(100)));i.decodeRef=function(n){return i.decode(i[n])};i.inputSteps=function(){return Math.pow(10,-1*i.precision)};for(var bt=0,at=0,ot=0,kt=0,dt=0,vt=0,yt=0,pt=0,ni=0,ti=0,lt=0,ii=1,et=0,ct=0,ri=!1,gt=0;gt<ut.length;gt++)i.$watch(ut[gt],function(){wt()});o(window).bind("resize",function(){wt()});i.$on("refreshSlider",function(){n(function(){wt()})});n(function(){wt()})}}}}}]);angular.module("xeditable",[]).value("editableOptions",{theme:"default",icon_set:"default",buttons:"right",blurElem:"cancel",blurForm:"ignore",activate:"focus",isDisabled:!1,activationEvent:"click"});angular.module("xeditable").directive("editableBsdate",["editableDirectiveFactory",function(n){return n({directiveName:"editableBsdate",inputTpl:"<div><\/div>",render:function(){this.parent.render.call(this);var n=angular.element('<input type="text" class="form-control" ng-model="$data"/>'),t=angular.element('<button type="button" class="btn btn-default"><i class="glyphicon glyphicon-calendar"><\/i><\/button>'),i=angular.element('<span class="input-group-btn"><\/span>');n.attr("datepicker-popup",this.attrs.eDatepickerPopupXEditable||"yyyy/MM/dd");n.attr("is-open",this.attrs.eIsOpen);n.attr("date-disabled",this.attrs.eDateDisabled);n.attr("datepicker-popup",this.attrs.eDatepickerPopup);n.attr("datepicker-mode",this.attrs.eDatepickerMode||"day");n.attr("min-date",this.attrs.eMinDate);n.attr("max-date",this.attrs.eMaxDate);n.attr("show-weeks",this.attrs.eShowWeeks||!0);n.attr("starting-day",this.attrs.eStartingDay||0);n.attr("init-date",this.attrs.eInitDate||new Date);n.attr("min-mode",this.attrs.eMinMode||"day");n.attr("max-mode",this.attrs.eMaxMode||"year");n.attr("format-day",this.attrs.eFormatDay||"dd");n.attr("format-month",this.attrs.eFormatMonth||"MMMM");n.attr("format-year",this.attrs.eFormatYear||"yyyy");n.attr("format-day-header",this.attrs.eFormatDayHeader||"EEE");n.attr("format-day-title",this.attrs.eFormatDayTitle||"MMMM yyyy");n.attr("format-month-title",this.attrs.eFormatMonthTitle||"yyyy");n.attr("year-range",this.attrs.eYearRange||20);n.attr("show-button-bar",this.attrs.eShowButtonBar||!0);n.attr("current-text",this.attrs.eCurrentText||"Today");n.attr("clear-text",this.attrs.eClearText||"Clear");n.attr("close-text",this.attrs.eCloseText||"Done");n.attr("close-on-date-selection",this.attrs.eCloseOnDateSelection||!0);n.attr("date-picker-append-to-body",this.attrs.eDatePickerAppendToBody||!1);n.attr("date-disabled",this.attrs.eDateDisabled);t.attr("ng-click",this.attrs.eNgClick);i.append(t);this.inputEl.prepend(n);this.inputEl.append(i);this.inputEl.removeAttr("class");this.inputEl.attr("class","input-group")}})}]);angular.module("xeditable").directive("editableBstime",["editableDirectiveFactory",function(n){return n({directiveName:"editableBstime",inputTpl:"<timepicker><\/timepicker>",render:function(){this.parent.render.call(this);var n=angular.element('<div class="well well-small" style="display:inline-block;"><\/div>');n.attr("ng-model",this.inputEl.attr("ng-model"));this.inputEl.removeAttr("ng-model");this.attrs.eNgChange&&(n.attr("ng-change",this.inputEl.attr("ng-change")),this.inputEl.removeAttr("ng-change"));this.inputEl.wrap(n)}})}]);angular.module("xeditable").directive("editableCheckbox",["editableDirectiveFactory",function(n){return n({directiveName:"editableCheckbox",inputTpl:'<input type="checkbox">',render:function(){this.parent.render.call(this);this.attrs.eTitle&&(this.inputEl.wrap("<label><\/label>"),this.inputEl.parent().append(this.attrs.eTitle))},autosubmit:function(){var n=this;n.inputEl.bind("change",function(){setTimeout(function(){n.scope.$apply(function(){n.scope.$form.$submit()})},500)})}})}]);angular.module("xeditable").directive("editableChecklist",["editableDirectiveFactory","editableNgOptionsParser",function(n,t){return n({directiveName:"editableChecklist",inputTpl:"<span><\/span>",useCopy:!0,render:function(){this.parent.render.call(this);var n=t(this.attrs.eNgOptions),i='<label ng-repeat="'+n.ngRepeat+'"><input type="checkbox" checklist-model="$parent.$data" checklist-value="'+n.locals.valueFn+'"><span ng-bind="'+n.locals.displayFn+'"><\/span><\/label>';this.inputEl.removeAttr("ng-model");this.inputEl.removeAttr("ng-options");this.inputEl.html(i)}})}]);angular.module("xeditable").directive("editableCombodate",["editableDirectiveFactory","editableCombodate",function(n,t){return n({directiveName:"editableCombodate",inputTpl:'<input type="text">',render:function(){var i,n,r;this.parent.render.call(this);i={value:new Date(this.scope.$data)};n=this;angular.forEach(["format","template","minYear","maxYear","yearDescending","minuteStep","secondStep","firstItem","errorClass","customClass","roundTime","smartDays"],function(t){var r="e"+t.charAt(0).toUpperCase()+t.slice(1);r in n.attrs&&(i[t]=n.attrs[r])});r=t.getInstance(this.inputEl,i);r.$widget.find("select").bind("change",function(){n.scope.$data=new Date(r.getValue()).toISOString()})}})}]),function(){var n="text|password|email|tel|number|url|search|color|date|datetime|time|month|week|file".split("|");angular.forEach(n,function(n){var t="editable"+n.charAt(0).toUpperCase()+n.slice(1);angular.module("xeditable").directive(t,["editableDirectiveFactory",function(i){return i({directiveName:t,inputTpl:'<input type="'+n+'">'})}])});angular.module("xeditable").directive("editableRange",["editableDirectiveFactory",function(n){return n({directiveName:"editableRange",inputTpl:'<input type="range" id="range" name="range">',render:function(){this.parent.render.call(this);this.inputEl.after("<output>{{$data}}<\/output>")}})}])}();angular.module("xeditable").directive("editableRadiolist",["editableDirectiveFactory","editableNgOptionsParser",function(n,t){return n({directiveName:"editableRadiolist",inputTpl:"<span><\/span>",render:function(){this.parent.render.call(this);var n=t(this.attrs.eNgOptions),i='<label ng-repeat="'+n.ngRepeat+'"><input type="radio" ng-disabled="'+this.attrs.eNgDisabled+'" ng-model="$parent.$data" value="{{'+n.locals.valueFn+'}}"><span ng-bind="'+n.locals.displayFn+'"><\/span><\/label>';this.inputEl.removeAttr("ng-model");this.inputEl.removeAttr("ng-options");this.inputEl.html(i)},autosubmit:function(){var n=this;n.inputEl.bind("change",function(){setTimeout(function(){n.scope.$apply(function(){n.scope.$form.$submit()})},500)})}})}]);angular.module("xeditable").directive("editableSelect",["editableDirectiveFactory",function(n){return n({directiveName:"editableSelect",inputTpl:"<select><\/select>",autosubmit:function(){var n=this;n.inputEl.bind("change",function(){n.scope.$apply(function(){n.scope.$form.$submit()})})}})}]);angular.module("xeditable").directive("editableTextarea",["editableDirectiveFactory",function(n){return n({directiveName:"editableTextarea",inputTpl:"<textarea><\/textarea>",addListeners:function(){var n=this;n.parent.addListeners.call(n);n.single&&"no"!==n.buttons&&n.autosubmit()},autosubmit:function(){var n=this;n.inputEl.bind("keydown",function(t){(t.ctrlKey||t.metaKey)&&13===t.keyCode&&n.scope.$apply(function(){n.scope.$form.$submit()})})}})}]);angular.module("xeditable").factory("editableController",["$q","editableUtils",function(n,t){function i(n,i,r,u,f,e,o,s,h,c){var a,v,l=this;l.scope=n;l.elem=r;l.attrs=i;l.inputEl=null;l.editorEl=null;l.single=!0;l.error="";l.theme=f[o.theme]||f["default"];l.parent={};l.icon_set="default"===o.icon_set?e["default"][o.theme]:e.external[o.icon_set];l.inputTpl="";l.directiveName="";l.useCopy=!1;l.single=null;l.buttons="right";l.init=function(t){if(l.single=t,l.name=i.eName||i[l.directiveName],!i[l.directiveName])throw"You should provide value for `"+l.directiveName+"` in editable element!";a=u(i[l.directiveName]);l.buttons=l.single?l.attrs.buttons||o.buttons:"no";i.eName&&l.scope.$watch("$data",function(n){l.scope.$form.$data[i.eName]=n});i.onshow&&(l.onshow=function(){return l.catchError(u(i.onshow)(n))});i.onhide&&(l.onhide=function(){return u(i.onhide)(n)});i.oncancel&&(l.oncancel=function(){return u(i.oncancel)(n)});i.onbeforesave&&(l.onbeforesave=function(){return l.catchError(u(i.onbeforesave)(n))});i.onaftersave&&(l.onaftersave=function(){return l.catchError(u(i.onaftersave)(n))});n.$parent.$watch(i[l.directiveName],function(){l.setLocalValue();l.handleEmpty()})};l.render=function(){var r=l.theme,u,n,f,e;l.inputEl=angular.element(l.inputTpl);l.controlsEl=angular.element(r.controlsTpl);l.controlsEl.append(l.inputEl);"no"!==l.buttons&&(l.buttonsEl=angular.element(r.buttonsTpl),l.submitEl=angular.element(r.submitTpl),l.cancelEl=angular.element(r.cancelTpl),l.icon_set&&(l.submitEl.find("span").addClass(l.icon_set.ok),l.cancelEl.find("span").addClass(l.icon_set.cancel)),l.buttonsEl.append(l.submitEl).append(l.cancelEl),l.controlsEl.append(l.buttonsEl),l.inputEl.addClass("editable-has-buttons"));l.errorEl=angular.element(r.errorTpl);l.controlsEl.append(l.errorEl);l.editorEl=angular.element(l.single?r.formTpl:r.noformTpl);l.editorEl.append(l.controlsEl);for(u in i.$attr)u.length<=1||(n=!1,f=u.substring(1,2),"e"===u.substring(0,1)&&f===f.toUpperCase()&&(n=u.substring(1),"Form"!==n&&"NgSubmit"!==n)&&(n=n.substring(0,1).toLowerCase()+t.camelToDash(n.substring(1)),e="value"!==n&&""===i[u]?n:i[u],l.inputEl.attr(n,e)));l.inputEl.addClass("editable-input");l.inputEl.attr("ng-model","$data");l.editorEl.addClass(t.camelToDash(l.directiveName));l.single&&(l.editorEl.attr("editable-form","$form"),l.editorEl.attr("blur",l.attrs.blur||("no"===l.buttons?"cancel":o.blurElem)));angular.isFunction(r.postrender)&&r.postrender.call(l)};l.setLocalValue=function(){l.scope.$data=l.useCopy?angular.copy(a(n.$parent)):a(n.$parent)};l.show=function(){return l.setLocalValue(),l.render(),r.after(l.editorEl),h(l.editorEl)(n),l.addListeners(),r.addClass("editable-hide"),l.onshow()};l.hide=function(){return l.editorEl.remove(),r.removeClass("editable-hide"),l.onhide()};l.cancel=function(){l.oncancel()};l.addListeners=function(){l.inputEl.bind("keyup",function(n){if(l.single)switch(n.keyCode){case 27:l.scope.$apply(function(){l.scope.$form.$cancel()})}});l.single&&"no"===l.buttons&&l.autosubmit();l.editorEl.bind("click",function(n){n.which&&1!==n.which||l.scope.$form.$visible&&(l.scope.$form._clicked=!0)})};l.setWaiting=function(n){n?(v=!l.inputEl.attr("disabled")&&!l.inputEl.attr("ng-disabled")&&!l.inputEl.attr("ng-enabled"),v&&(l.inputEl.attr("disabled","disabled"),l.buttonsEl&&l.buttonsEl.find("button").attr("disabled","disabled"))):v&&(l.inputEl.removeAttr("disabled"),l.buttonsEl&&l.buttonsEl.find("button").removeAttr("disabled"))};l.activate=function(n,t){setTimeout(function(){var i=l.inputEl[0];"focus"===o.activate&&i.focus&&(n&&(t=t||n,i.onfocus=function(){var i=this;setTimeout(function(){i.setSelectionRange(n,t)})}),i.focus());"select"===o.activate&&i.select&&i.select()},0)};l.setError=function(t){angular.isObject(t)||(n.$error=t,l.error=t)};l.catchError=function(n,t){return angular.isObject(n)&&t!==!0?c.when(n).then(angular.bind(this,function(n){this.catchError(n,!0)}),angular.bind(this,function(n){this.catchError(n,!0)})):t&&angular.isObject(n)&&n.status&&200!==n.status&&n.data&&angular.isString(n.data)?(this.setError(n.data),n=n.data):angular.isString(n)&&this.setError(n),n};l.save=function(){a.assign(n.$parent,l.useCopy?angular.copy(l.scope.$data):l.scope.$data)};l.handleEmpty=function(){var t=a(n.$parent),i=null===t||void 0===t||""===t||angular.isArray(t)&&0===t.length;r.toggleClass("editable-empty",i)};l.autosubmit=angular.noop;l.onshow=angular.noop;l.onhide=angular.noop;l.oncancel=angular.noop;l.onbeforesave=angular.noop;l.onaftersave=angular.noop}return i.$inject=["$scope","$attrs","$element","$parse","editableThemes","editableIcons","editableOptions","$rootScope","$compile","$q"],i}]);angular.module("xeditable").factory("editableDirectiveFactory",["$parse","$compile","editableThemes","$rootScope","$document","editableController","editableFormController","editableOptions",function(n,t,i,r,u,f,e,o){return function(t){return{restrict:"A",scope:!0,require:[t.directiveName,"?^form"],controller:f,link:function(i,f,s,h){var l,c=h[0],a=!1,y,v,p;if(h[1])l=h[1],a=void 0===s.eSingle;else if(s.eForm)if(y=n(s.eForm)(i),y)l=y,a=!0;else for(v=0;v<u[0].forms.length;v++)if(u[0].forms[v].name===s.eForm){l=null;a=!0;break}if(angular.forEach(t,function(n,t){void 0!==c[t]&&(c.parent[t]=c[t])}),angular.extend(c,t),p=angular.isDefined(s.editDisabled)?i.$eval(s.editDisabled):o.isDisabled,!p)if(c.init(!a),i.$editable=c,f.addClass("editable"),a)if(l){if(i.$form=l,!i.$form.$addEditable)throw"Form with editable elements should have `editable-form` attribute.";i.$form.$addEditable(c)}else r.$$editableBuffer=r.$$editableBuffer||{},r.$$editableBuffer[s.eForm]=r.$$editableBuffer[s.eForm]||[],r.$$editableBuffer[s.eForm].push(c),i.$form=null;else i.$form=e(),i.$form.$addEditable(c),s.eForm&&(i.$parent[s.eForm]=i.$form),(!s.eForm||s.eClickable)&&(f.addClass("editable-click"),f.bind(o.activationEvent,function(n){n.preventDefault();n.editable=c;i.$apply(function(){i.$form.$show()})}))}}}}]);angular.module("xeditable").factory("editableFormController",["$parse","$document","$rootScope","editablePromiseCollection","editableUtils",function(n,t,i,r,u){var f=[],s=function(n,t){if(t==n)return!0;for(var i=t.parentNode;null!==i;){if(i==n)return!0;i=i.parentNode}return!1},e=function(n,t){var i=!0,r=n.$editables;return angular.forEach(r,function(n){var r=n.editorEl[0];s(r,t.target)&&(i=!1)}),i},o;return t.bind("click",function(n){if(!(n.which&&1!==n.which||n.isDefaultPrevented())){for(var r=[],u=[],t=0;t<f.length;t++)f[t]._clicked?f[t]._clicked=!1:f[t].$waiting||("cancel"===f[t]._blur&&e(f[t],n)&&r.push(f[t]),"submit"===f[t]._blur&&e(f[t],n)&&u.push(f[t]));(r.length||u.length)&&i.$apply(function(){angular.forEach(r,function(n){n.$cancel()});angular.forEach(u,function(n){n.$submit()})})}}),i.$on("closeEdit",function(){for(var n=0;n<f.length;n++)f[n].$hide()}),o={$addEditable:function(n){this.$editables.push(n);n.elem.bind("$destroy",angular.bind(this,this.$removeEditable,n));n.scope.$form||(n.scope.$form=this);this.$visible&&n.catchError(n.show());n.catchError(n.setWaiting(this.$waiting))},$removeEditable:function(n){for(var t=0;t<this.$editables.length;t++)if(this.$editables[t]===n)return void this.$editables.splice(t,1)},$show:function(){if(!this.$visible){this.$visible=!0;var n=r();n.when(this.$onshow());this.$setError(null,"");angular.forEach(this.$editables,function(t){n.when(t.show())});n.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,this.$activate),onFalse:angular.bind(this,this.$activate),onString:angular.bind(this,this.$activate)});setTimeout(angular.bind(this,function(){this._clicked=!1;-1===u.indexOf(f,this)&&f.push(this)}),0)}},$activate:function(n){var t;if(this.$editables.length){if(angular.isString(n))for(t=0;t<this.$editables.length;t++)if(this.$editables[t].name===n)return void this.$editables[t].activate();for(t=0;t<this.$editables.length;t++)if(this.$editables[t].error)return void this.$editables[t].activate();this.$editables[0].activate(this.$editables[0].elem[0].selectionStart,this.$editables[0].elem[0].selectionEnd)}},$hide:function(){this.$visible&&(this.$visible=!1,this.$onhide(),angular.forEach(this.$editables,function(n){n.hide()}),u.arrayRemove(f,this))},$cancel:function(){this.$visible&&(this.$oncancel(),angular.forEach(this.$editables,function(n){n.cancel()}),this.$hide())},$setWaiting:function(n){this.$waiting=!!n;angular.forEach(this.$editables,function(t){t.setWaiting(!!n)})},$setError:function(n,t){angular.forEach(this.$editables,function(i){n&&i.name!==n||i.setError(t)})},$submit:function(){function n(n){var t=r();t.when(this.$onbeforesave());t.then({onWait:angular.bind(this,this.$setWaiting),onTrue:n?angular.bind(this,this.$save):angular.bind(this,this.$hide),onFalse:angular.bind(this,this.$hide),onString:angular.bind(this,this.$activate)})}if(!this.$waiting){this.$setError(null,"");var t=r();angular.forEach(this.$editables,function(n){t.when(n.onbeforesave())});t.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,n,!0),onFalse:angular.bind(this,n,!1),onString:angular.bind(this,this.$activate)})}},$save:function(){angular.forEach(this.$editables,function(n){n.save()});var n=r();n.when(this.$onaftersave());angular.forEach(this.$editables,function(t){n.when(t.onaftersave())});n.then({onWait:angular.bind(this,this.$setWaiting),onTrue:angular.bind(this,this.$hide),onFalse:angular.bind(this,this.$hide),onString:angular.bind(this,this.$activate)})},$onshow:angular.noop,$oncancel:angular.noop,$onhide:angular.noop,$onbeforesave:angular.noop,$onaftersave:angular.noop},function(){return angular.extend({$editables:[],$visible:!1,$waiting:!1,$data:{},_clicked:!1,_blur:null},o)}}]);angular.module("xeditable").directive("editableForm",["$rootScope","$parse","editableFormController","editableOptions",function(n,t,i,r){return{restrict:"A",require:["form"],compile:function(){return{pre:function(t,r,u,f){var e,h=f[0],o,s;u.editableForm?t[u.editableForm]&&t[u.editableForm].$show?(e=t[u.editableForm],angular.extend(h,e)):(e=i(),t[u.editableForm]=e,angular.extend(e,h)):(e=i(),angular.extend(h,e));o=n.$$editableBuffer;s=h.$name;s&&o&&o[s]&&(angular.forEach(o[s],function(n){e.$addEditable(n)}),delete o[s])},post:function(n,i,u,f){var e;e=u.editableForm&&n[u.editableForm]&&n[u.editableForm].$show?n[u.editableForm]:f[0];u.onshow&&(e.$onshow=angular.bind(e,t(u.onshow),n));u.onhide&&(e.$onhide=angular.bind(e,t(u.onhide),n));u.oncancel&&(e.$oncancel=angular.bind(e,t(u.oncancel),n));u.shown&&t(u.shown)(n)&&e.$show();e._blur=u.blur||r.blurForm;u.ngSubmit||u.submit||(u.onbeforesave&&(e.$onbeforesave=function(){return t(u.onbeforesave)(n,{$data:e.$data})}),u.onaftersave&&(e.$onaftersave=function(){return t(u.onaftersave)(n,{$data:e.$data})}),i.bind("submit",function(t){t.preventDefault();n.$apply(function(){e.$submit()})}));i.bind("click",function(n){n.which&&1!==n.which||e.$visible&&(e._clicked=!0)})}}}}}]);angular.module("xeditable").factory("editablePromiseCollection",["$q",function(n){function t(){return{promises:[],hasFalse:!1,hasString:!1,when:function(t,i){if(t===!1)this.hasFalse=!0;else if(!i&&angular.isObject(t))this.promises.push(n.when(t));else{if(!angular.isString(t))return;this.hasString=!0}},then:function(t){function u(){i.hasString||i.hasFalse?!i.hasString&&i.hasFalse?o():f():e()}t=t||{};var e=t.onTrue||angular.noop,o=t.onFalse||angular.noop,f=t.onString||angular.noop,r=t.onWait||angular.noop,i=this;this.promises.length?(r(!0),n.all(this.promises).then(function(n){r(!1);angular.forEach(n,function(n){i.when(n,!0)});u()},function(){r(!1);f()})):u()}}}return t}]);angular.module("xeditable").factory("editableUtils",[function(){return{indexOf:function(n,t){if(n.indexOf)return n.indexOf(t);for(var i=0;i<n.length;i++)if(t===n[i])return i;return-1},arrayRemove:function(n,t){var i=this.indexOf(n,t);return i>=0&&n.splice(i,1),t},camelToDash:function(n){return n.replace(/[A-Z]/g,function(n,t){return(t?"-":"")+n.toLowerCase()})},dashToCamel:function(n){return n.replace(/([\:\-\_]+(.))/g,function(n,t,i,r){return r?i.toUpperCase():i}).replace(/^moz([A-Z])/,"Moz$1")}}}]);angular.module("xeditable").factory("editableNgOptionsParser",[function(){function n(n){var i;if(!(i=n.match(t)))throw"ng-options parse error";var r,s=i[2]||i[1],u=i[4]||i[6],f=i[5],h=(i[3]||"",i[2]?i[1]:u),e=i[7],o=i[8],c=o?i[8]:null;return void 0===f?(r=u+" in "+e,void 0!==o&&(r+=" track by "+c)):r="("+f+", "+u+") in "+e,{ngRepeat:r,locals:{valueName:u,keyName:f,valueFn:h,displayFn:s}}}var t=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+(.*?)(?:\s+track\s+by\s+(.*?))?$/;return n}]);angular.module("xeditable").factory("editableCombodate",[function(){function n(n,t){if(this.$element=angular.element(n),"INPUT"!=this.$element[0].nodeName)throw"Combodate should be applied to INPUT element";this.defaults={format:"YYYY-MM-DD HH:mm",template:"D / MMM / YYYY   H : mm",value:null,minYear:1970,maxYear:2015,yearDescending:!0,minuteStep:5,secondStep:1,firstItem:"empty",errorClass:null,customClass:"",roundTime:!0,smartDays:!0};this.options=angular.extend({},this.defaults,t);this.init()}return n.prototype={constructor:n,init:function(){if(this.map={day:["D","date"],month:["M","month"],year:["Y","year"],hour:["[Hh]","hours"],minute:["m","minutes"],second:["s","seconds"],ampm:["[Aa]",""]},this.$widget=angular.element('<span class="combodate"><\/span>').html(this.getTemplate()),this.initCombos(),this.options.smartDays){var n=this;this.$widget.find("select").bind("change",function(t){(angular.element(t.target).hasClass("month")||angular.element(t.target).hasClass("year"))&&n.fillCombo("day")})}this.$widget.find("select").css("width","auto");this.$element.css("display","none").after(this.$widget);this.setValue(this.$element.val()||this.options.value)},getTemplate:function(){var n=this.options.template,t=this.options.customClass;return angular.forEach(this.map,function(t){t=t[0];var i=new RegExp(t+"+"),r=t.length>1?t.substring(1,2):t;n=n.replace(i,"{"+r+"}")}),n=n.replace(/ /g,"&nbsp;"),angular.forEach(this.map,function(i,r){i=i[0];var u=i.length>1?i.substring(1,2):i;n=n.replace("{"+u+"}",'<select class="'+r+" "+t+'"><\/select>')}),n},initCombos:function(){var n,t;for(n in this.map)t=this.$widget[0].querySelectorAll("."+n),this["$"+n]=t.length?angular.element(t):null,this.fillCombo(n)},fillCombo:function(n){var t=this["$"+n],i;if(t){var u="fill"+n.charAt(0).toUpperCase()+n.slice(1),r=this[u](),f=t.val();for(t.html(""),i=0;i<r.length;i++)t.append('<option value="'+r[i][0]+'">'+r[i][1]+"<\/option>");t.val(f)}},fillCommon:function(n){var t,r=[],i;return"name"===this.options.firstItem?(t=moment.relativeTime||moment.langData()._relativeTime,i="function"==typeof t[n]?t[n](1,!0,n,!1):t[n],i=i.split(" ").reverse()[0],r.push(["",i])):"empty"===this.options.firstItem&&r.push(["",""]),r},fillDay:function(){var r,n,u=this.fillCommon("d"),e=-1!==this.options.template.indexOf("DD"),f=31,t,i;for(this.options.smartDays&&this.$month&&this.$year&&(t=parseInt(this.$month.val(),10),i=parseInt(this.$year.val(),10),isNaN(t)||isNaN(i)||(f=moment([i,t]).daysInMonth())),n=1;f>=n;n++)r=e?this.leadZero(n):n,u.push([n,r]);return u},fillMonth:function(){for(var t,i=this.fillCommon("M"),r=-1!==this.options.template.indexOf("MMMM"),u=-1!==this.options.template.indexOf("MMM"),f=-1!==this.options.template.indexOf("MM"),n=0;11>=n;n++)t=r?moment().date(1).month(n).format("MMMM"):u?moment().date(1).month(n).format("MMM"):f?this.leadZero(n+1):n+1,i.push([n,t]);return i},fillYear:function(){for(var t,i=[],r=-1!==this.options.template.indexOf("YYYY"),n=this.options.maxYear;n>=this.options.minYear;n--)t=r?n:(n+"").substring(2),i[this.options.yearDescending?"push":"unshift"]([n,t]);return this.fillCommon("y").concat(i)},fillHour:function(){for(var t,i=this.fillCommon("h"),r=-1!==this.options.template.indexOf("h"),u=(-1!==this.options.template.indexOf("H"),-1!==this.options.template.toLowerCase().indexOf("hh")),f=r?1:0,e=r?12:23,n=f;e>=n;n++)t=u?this.leadZero(n):n,i.push([n,t]);return i},fillMinute:function(){for(var t,i=this.fillCommon("m"),r=-1!==this.options.template.indexOf("mm"),n=0;59>=n;n+=this.options.minuteStep)t=r?this.leadZero(n):n,i.push([n,t]);return i},fillSecond:function(){for(var t,i=this.fillCommon("s"),r=-1!==this.options.template.indexOf("ss"),n=0;59>=n;n+=this.options.secondStep)t=r?this.leadZero(n):n,i.push([n,t]);return i},fillAmpm:function(){var n=-1!==this.options.template.indexOf("a");return-1!==this.options.template.indexOf("A"),[["am",n?"am":"AM"],["pm",n?"pm":"PM"]]},getValue:function(n){var i,t={},r=this,u=!1;return angular.forEach(this.map,function(n,i){if("ampm"!==i){var f="day"===i?1:0;return t[i]=r["$"+i]?parseInt(r["$"+i].val(),10):f,isNaN(t[i])?(u=!0,!1):void 0}}),u?"":(this.$ampm&&(t.hour=12===t.hour?"am"===this.$ampm.val()?0:12:"am"===this.$ampm.val()?t.hour:t.hour+12),i=moment([t.year,t.month,t.day,t.hour,t.minute,t.second]),this.highlight(i),n=void 0===n?this.options.format:n,null===n?i.isValid()?i:null:i.isValid()?i.format(n):"")},setValue:function(n){function u(n,t){var i={};return angular.forEach(n.children("option"),function(n){var r=angular.element(n).attr("value"),u;""!==r&&(u=Math.abs(r-t),("undefined"==typeof i.distance||u<i.distance)&&(i={value:r,distance:u}))}),i.value}if(n){var r="string"==typeof n?moment(n,this.options.format,!0):moment(n),i=this,t={};r.isValid()&&(angular.forEach(this.map,function(n,i){"ampm"!==i&&(t[i]=r[n[1]]())}),this.$ampm&&(t.hour>=12?(t.ampm="pm",t.hour>12&&(t.hour-=12)):(t.ampm="am",0===t.hour&&(t.hour=12))),angular.forEach(t,function(n,t){i["$"+t]&&("minute"===t&&i.options.minuteStep>1&&i.options.roundTime&&(n=u(i["$"+t],n)),"second"===t&&i.options.secondStep>1&&i.options.roundTime&&(n=u(i["$"+t],n)),i["$"+t].val(n))}),this.options.smartDays&&this.fillCombo("day"),this.$element.val(r.format(this.options.format)).triggerHandler("change"))}},highlight:function(n){n.isValid()?this.options.errorClass?this.$widget.removeClass(this.options.errorClass):this.$widget.find("select").css("border-color",this.borderColor):this.options.errorClass?this.$widget.addClass(this.options.errorClass):(this.borderColor||(this.borderColor=this.$widget.find("select").css("border-color")),this.$widget.find("select").css("border-color","red"))},leadZero:function(n){return 9>=n?"0"+n:n},destroy:function(){this.$widget.remove();this.$element.removeData("combodate").show()}},{getInstance:function(t,i){return new n(t,i)}}}]);angular.module("xeditable").factory("editableIcons",function(){return{"default":{bs2:{ok:"icon-ok icon-white",cancel:"icon-remove"},bs3:{ok:"glyphicon glyphicon-ok",cancel:"glyphicon glyphicon-remove"}},external:{"font-awesome":{ok:"fa fa-check",cancel:"fa fa-times"}}}});angular.module("xeditable").factory("editableThemes",function(){return{"default":{formTpl:'<form class="editable-wrap"><\/form>',noformTpl:'<span class="editable-wrap"><\/span>',controlsTpl:'<span class="editable-controls"><\/span>',inputTpl:"",errorTpl:'<div class="editable-error" ng-show="$error" ng-bind="$error"><\/div>',buttonsTpl:'<span class="editable-buttons"><\/span>',submitTpl:'<button type="submit">save<\/button>',cancelTpl:'<button type="button" ng-click="$form.$cancel()">cancel<\/button>'},bs2:{formTpl:'<form class="form-inline editable-wrap" role="form"><\/form>',noformTpl:'<span class="editable-wrap"><\/span>',controlsTpl:'<div class="editable-controls controls control-group" ng-class="{\'error\': $error}"><\/div>',inputTpl:"",errorTpl:'<div class="editable-error help-block" ng-show="$error" ng-bind="$error"><\/div>',buttonsTpl:'<span class="editable-buttons"><\/span>',submitTpl:'<button type="submit" class="btn btn-primary"><span><\/span><\/button>',cancelTpl:'<button type="button" class="btn" ng-click="$form.$cancel()"><span><\/span><\/button>'},bs3:{formTpl:'<form class="form-inline editable-wrap" role="form"><\/form>',noformTpl:'<span class="editable-wrap"><\/span>',controlsTpl:'<div class="editable-controls form-group" ng-class="{\'has-error\': $error}"><\/div>',inputTpl:"",errorTpl:'<div class="editable-error help-block" ng-show="$error" ng-bind="$error"><\/div>',buttonsTpl:'<span class="editable-buttons"><\/span>',submitTpl:'<button type="submit" class="btn btn-primary"><span><\/span><\/button>',cancelTpl:'<button type="button" class="btn btn-default" ng-click="$form.$cancel()"><span><\/span><\/button>',buttonsClass:"",inputClass:"",postrender:function(){switch(this.directiveName){case"editableText":case"editableSelect":case"editableTextarea":case"editableEmail":case"editableTel":case"editableNumber":case"editableUrl":case"editableSearch":case"editableDate":case"editableDatetime":case"editableBsdate":case"editableTime":case"editableMonth":case"editableWeek":if(this.inputEl.addClass("form-control"),this.theme.inputClass){if(this.inputEl.attr("multiple")&&("input-sm"===this.theme.inputClass||"input-lg"===this.theme.inputClass))break;this.inputEl.addClass(this.theme.inputClass)}break;case"editableCheckbox":this.editorEl.addClass("checkbox")}this.buttonsEl&&this.theme.buttonsClass&&this.buttonsEl.find("button").addClass(this.theme.buttonsClass)}}}});angular.module("security",[]).constant("security.urls",{site:"/",manage:"/manage",join:"/api/account/register",login:"/token",logout:"/api/account/logout",forgotPassword:"/api/account/forgotpassword",resetPassword:"/api/account/resetpassword",setPassword:"/api/account/setPassword",confirmEmail:"/api/account/confirmEmail",userInfo:"/api/account/userInfo",changePassword:"/api/account/changePassword",externalLogins:"/api/account/externalLogins",manageInfo:"/api/account/manageInfo",registerExternal:"/api/account/registerExternal",addExternalLogin:"/api/account/addExternalLogin",removeLogin:"/api/account/removeLogin",submitSecondFactor:"/api/account/verify/code",lastSignInDate:"/api/account/updatelastsignin"}).factory("security.api",["$http","security.urls","webApiUri",function(n,t,i){var r={"Content-Type":"application/x-www-form-urlencoded"},u=function(n){var t=function(n){var i="",e,f,r,u;return angular.forEach(n,function(n,o){if(n instanceof Array)for(u=0;u<n.length;++u)e=n[u],f=o+"["+u+"]",r={},r[f]=e,i+=t(r)+"&";else n instanceof Object?angular.forEach(n,function(n,u){f=o+"["+u+"]";r={};r[f]=n;i+=t(r)+"&"}):n!==undefined&&n!==null&&(i+=encodeURIComponent(o)+"="+encodeURIComponent(n)+"&")}),i.length?i.substr(0,i.length-1):i};return angular.isObject(n)&&String(n)!=="[object File]"?t(n):n};return{getUserInfo:function(r){return n({url:i+t.userInfo,method:"GET",headers:{Authorization:"Bearer "+r}})},login:function(f){return n({method:"POST",url:i+t.login,data:u(f),headers:r})},logout:function(){return n({method:"POST",url:i+t.logout})},register:function(r){return n({method:"POST",url:i+t.join,data:r})},forgotPassword:function(r){return n({method:"POST",url:i+t.forgotPassword,data:r})},resetPassword:function(r){return n({method:"POST",url:i+t.resetPassword,data:r})},setPassword:function(r){return n({method:"POST",url:i+t.setPassword,data:r})},confirmEmail:function(r){return n({method:"GET",url:i+t.confirmEmail+"?code="+encodeURIComponent(r.code)+"&userId="+encodeURIComponent(r.userId)})},changePassword:function(r){return n({method:"POST",url:i+t.changePassword,data:r})},getExternalLogins:function(){return n({method:"GET",url:i+t.externalLogins+"?returnUrl="+encodeURIComponent(t.site)+"&generateState=true",isArray:!0})},manageInfo:function(){return n({method:"GET",url:i+t.manageInfo+"?returnUrl="+encodeURIComponent(t.site)+"&generateState=false"})},registerExternal:function(r,u){return n({method:"POST",url:i+t.registerExternal,data:u,headers:{Authorization:"Bearer "+r}})},addExternalLogin:function(r,u){return n({method:"POST",url:i+t.addExternalLogin,data:{externalAccessToken:u},headers:{Authorization:"Bearer "+r}})},removeLogin:function(r){return n({method:"POST",url:i+t.removeLogin,data:r})},submitSecondFactor:function(r){return n({method:"POST",url:i+t.submitSecondFactor,data:r})},lastSignInDate:function(){return n({method:"PUT",url:i+t.lastSignInDate})}}}]).provider("security",["security.urls",function(n){var t=this;t.registerThenLogin=!0;t.usePopups=!1;t.urls={login:"login",registerExternal:"registerExternal",postLogout:"login",home:"app.home"};t.apiUrls=n;t.events={login:null,logout:null,register:null,reloadUser:null,closeOAuthWindow:null};t.$get=["security.api","$q","$http","$state","$timeout",function(n,i,r,u,f){var h=null,v=function(n){var u={},f,t,i,e,o,s,h,r;if(n===null)return u;for(f=n.split("&"),r=0;r<f.length;r++)t=f[r],i=t.indexOf("="),i===-1?(e=t,o=null):(e=t.substr(0,i),o=t.substr(i+1)),s=decodeURIComponent(e),h=decodeURIComponent(o),u[s]=h;return u},o=function(n,t){return n&&(n==="clear"?(localStorage.removeItem("accessToken"),sessionStorage.removeItem("accessToken"),delete r.defaults.headers.common.Authorization):(t?localStorage.accessToken=n:sessionStorage.accessToken=n,r.defaults.headers.common.Authorization="Bearer "+n)),sessionStorage.accessToken||localStorage.accessToken},y=function(n){return n&&n.twoFactorEnabled!=null&&n.twoFactorEnabled==="True"?!0:!1},c=function(n){return n&&n.twoFactorValidated!=null&&n.twoFactorValidated==="True"?!0:!1},w=function(){return y(e.user)&&c(e.user)},l=function(n){if(n=="clear"){delete localStorage.associating;return}return n&&(localStorage.associating=n),localStorage.associating},s=function(n){if(n=="clear"){delete localStorage.redirectTarget;return}return n&&(localStorage.redirectTarget=n),localStorage.redirectTarget},a=function(r,f,h){var c=i.defer();return r.error?c.reject({message:r.error}):o()&&l()?(l("clear"),s("clear"),n.addExternalLogin(o(),r.access_token).success(function(){c.resolve()})):n.getUserInfo(r.access_token).success(function(n){n.hasRegistered?(o(r.access_token,h),e.user=n,e.redirectAuthenticated(s()||t.urls.home),t.events.login&&t.events.login(e,n),c.resolve(e.user)):(e.externalUser=n,e.externalUser.access_token=r.access_token,e.externalUser.provider=f,h!=null&&(localStorage.rememberMe=h),u.go(t.urls.registerExternal),c.reject())}),c.promise},p=function(){var f=u.href(u.current.name,u.params),i,h,c,r;f!=null&&f.indexOf("access_token")!=-1&&(i=v(u.href(u.current.name,u.params).substring(1)),window.opener?(window.opener.external_data=i,window.close()):(h=s(),u.go(h||t.urls.home),c=JSON.parse(localStorage.loginProvider),r=!1,localStorage.rememberMe&&(r=JSON.parse(localStorage.rememberMe),delete localStorage.rememberMe),delete localStorage.loginProvider,a(i,c,r)));o()&&u.current.name!=="forgotPassword"&&u.current.name!=="twofactor"&&u.current.name!=="twofactormethod"&&u.current.name!=="resetPassword"&&u.current.name!=="modifyPassword"&&u.current.name!=="login"&&(o(o()),n.getUserInfo(o()).success(function(n){e.user=n;t.events.reloadUser&&t.events.reloadUser(e,n)}))},e=this;return e.user=null,e.externalUser=null,e.externalLogins=[],e.isAuthenticated=function(){return e.user!=null},e.updateLastSignInDate=function(){return n.lastSignInDate()},e.login=function(r){var f=i.defer();return r.twoFactorCode=c(),r.grant_type="password",n.login(r).success(function(i){c(i)&&(i[".redirect"]=undefined);o(i.access_token,r.rememberMe);i[".redirect"]?u.go(i[".redirect"]):n.lastSignInDate().then(function(){e.user=i;e.user.userPrivilegesRights=JSON.parse(e.user.userPrivilegesRights);e.redirectAuthenticated(s()||t.urls.home)},function(n){f.reject(n)});t.events.login&&t.events.login(e,i);f.resolve(i)}).error(function(n){f.reject(n)}),f.promise},e.loginWithExternal=function(n,r){var u=i.defer(),o;return t.usePopups?(o=window.open(n.url,"frame","resizeable,height=510,width=380"),f.cancel(h),h=f(function s(){if(!o.closed){h=f(s,500);return}if(t.events.closeOAuthWindow&&t.events.closeOAuthWindow(e,window.external_data),typeof window.external_data=="undefined"){u.reject();return}var i=window.external_data;delete window.external_data;u.resolve(a(i,n,r.rememberMe))},500)):(r!=null&&r.rememberMe!=null&&(localStorage.rememberMe=JSON.stringify(r.rememberMe)),localStorage.loginProvider=JSON.stringify(n),window.location.href=n.url),u.promise},e.logout=function(){var r=i.defer();return n.logout().success(function(){e.user=null;o("clear");s("clear");t.events.logout&&t.events.logout(e);u.go(t.urls.postLogout);r.resolve()}).error(function(n){r.reject(n)}),r.promise},e.register=function(r){var u=i.defer();return n.register(r).success(function(){t.events.register&&t.events.register(e);t.registerThenLogin?e.login(r).then(function(n){u.resolve(n)},function(n){u.reject(n)}):u.resolve()}).error(function(n){u.reject(n)}),u.promise},e.registerExternal=function(){var t=i.defer();return e.externalUser?n.registerExternal(e.externalUser.access_token,e.externalUser).success(function(){t.resolve(e.loginWithExternal(e.externalUser.provider));e.externalUser=null}).error(function(n){t.reject(n)}):t.reject(),t.promise},e.forgotPassword=function(t){var r=i.defer();return n.forgotPassword(t).success(function(n){r.resolve(n)}).error(function(n){r.reject(n)}),r.promise},e.resetPassword=function(t){var r=i.defer();return n.resetPassword(t).success(function(n){r.resolve(n)}).error(function(n){r.reject(n)}),r.promise},e.setPassword=function(t){var r=i.defer();return n.setPassword(t).success(function(){r.resolve()}).error(function(n){r.reject(n)}),r.promise},e.confirmEmail=function(t){var r=i.defer();return n.confirmEmail(t).success(function(n){r.resolve(n)}).error(function(n){r.reject(n)}),r.promise},e.manageInfo=function(){var t=i.defer();return n.manageInfo().success(function(n){t.resolve(n)}).error(function(n){t.reject(n)}),t.promise},e.changePassword=function(t){var r=i.defer();return n.changePassword(t).success(function(){r.resolve()}).error(function(n){r.reject(n)}),r.promise},e.addExternalLogin=function(t,r){var u=i.defer();return n.addExternalLogin(t,r).success(function(){u.resolve()}).error(function(n){u.reject(n)}),u.promise},e.associateExternal=function(n,r){var u=i.defer(),o;return t.usePopups?(o=window.open(n.url,"frame","resizeable,height=510,width=380"),f.cancel(h),h=f(function c(){if(!o.closed){h=f(c,500);return}if(t.events.closeOAuthWindow&&t.events.closeOAuthWindow(e,window.external_data),typeof window.external_data=="undefined"){u.reject();return}var i=window.external_data;delete window.external_data;u.resolve(a(i,n,data.rememberMe))},500)):(localStorage.loginProvider=JSON.stringify(n),l(!0),s(r||"/"),window.location.href=n.url),u.promise},e.removeLogin=function(t){var r=i.defer();return n.removeLogin(t).success(function(n){r.resolve(n)}).error(function(n){r.reject(n)}),r.promise},e.hasAccessToken=function(){return o()?!0:!1},e.authenticate=function(){o()||(s()||s(u.current.name),u.go(t.urls.login))},e.redirectAuthenticated=function(n){o()&&(s()&&s("clear"),u.go(n))},e.submitSecondFactor=function(t){var r=i.defer();return o()||r.reject(),n.submitSecondFactor(t).success(function(i){o(i.access_token,t.rememberMe);n.lastSignInDate().then(function(){e.user=i;r.resolve(i)},function(n){r.reject(n)})}).error(function(n){r.reject(n)}),r.promise},p(),e}]}]),function(){"use strict";function i(n){return angular.isUndefined(n)||n===null}var n={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,COMMAND:91,MAP:{91:"COMMAND",8:"BACKSPACE",9:"TAB",13:"ENTER",16:"SHIFT",17:"CTRL",18:"ALT",19:"PAUSEBREAK",20:"CAPSLOCK",27:"ESC",32:"SPACE",33:"PAGE_UP",34:"PAGE_DOWN",35:"END",36:"HOME",37:"LEFT",38:"UP",39:"RIGHT",40:"DOWN",43:"+",44:"PRINTSCREEN",45:"INSERT",46:"DELETE",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",109:"-",110:".",111:"/",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NUMLOCK",145:"SCROLLLOCK",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},isControl:function(t){var i=t.which;switch(i){case n.COMMAND:case n.SHIFT:case n.CTRL:case n.ALT:return!0}return t.metaKey||t.ctrlKey||t.altKey?!0:!1},isFunctionKey:function(n){return n=n.which?n.which:n,n>=112&&n<=123},isVerticalMovement:function(t){return~[n.UP,n.DOWN].indexOf(t)},isHorizontalMovement:function(t){return~[n.LEFT,n.RIGHT,n.BACKSPACE,n.DELETE].indexOf(t)},toSeparator:function(t){var i={ENTER:"\n",TAB:"\t",SPACE:" "}[t];return i?i:n[t]?undefined:t}},r,t;angular.element.prototype.querySelectorAll===undefined&&(angular.element.prototype.querySelectorAll=function(n){return angular.element(this[0].querySelectorAll(n))});angular.element.prototype.closest===undefined&&(angular.element.prototype.closest=function(n){for(var t=this[0],i=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector;t;){if(i.bind(t)(n))return t;t=t.parentElement}return!1});r=0;t=angular.module("ui.select",[]).constant("uiSelectConfig",{theme:"bootstrap",searchEnabled:!0,sortable:!1,placeholder:"",refreshDelay:1e3,closeOnSelect:!0,skipFocusser:!1,dropdownPosition:"auto",removeSelected:!0,resetSearchInput:!0,generateId:function(){return r++},appendToBody:!1,spinnerEnabled:!1,spinnerClass:"glyphicon glyphicon-refresh ui-select-spin",backspaceReset:!0}).service("uiSelectMinErr",function(){var n=angular.$$minErr("ui.select");return function(){var t=n.apply(this,arguments),i=t.message.replace(new RegExp("\nhttp://errors.angularjs.org/.*"),"");return new Error(i)}}).directive("uisTranscludeAppend",function(){return{link:function(n,t,i,r,u){u(n,function(n){t.append(n)})}}}).filter("highlight",function(){function n(n){return(""+n).replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(t,i){return i&&t?(""+t).replace(new RegExp(n(i),"gi"),'<span class="ui-select-highlight">$&<\/span>'):t}}).factory("uisOffset",["$document","$window",function(n,t){return function(i){var r=i[0].getBoundingClientRect();return{width:r.width||i.prop("offsetWidth"),height:r.height||i.prop("offsetHeight"),top:r.top+(t.pageYOffset||n[0].documentElement.scrollTop),left:r.left+(t.pageXOffset||n[0].documentElement.scrollLeft)}}}]);t.factory("$$uisDebounce",["$timeout",function(n){return function(t,i){var r;return function(){var u=this,f=Array.prototype.slice.call(arguments);r&&n.cancel(r);r=n(function(){t.apply(u,f)},i)}}}]);t.directive("uiSelectChoices",["uiSelectConfig","uisRepeatParser","uiSelectMinErr","$compile","$window",function(n,t,i,r,u){return{restrict:"EA",require:"^uiSelect",replace:!0,transclude:!0,templateUrl:function(t){t.addClass("ui-select-choices");var i=t.parent().attr("theme")||n.theme;return i+"/choices.tpl.html"},compile:function(r,f){var s,l,h,c,e,o,a;if(!f.repeat)throw i("repeat","Expected 'repeat' expression.");if(s=f.groupBy,l=f.groupFilter,s){if(h=r.querySelectorAll(".ui-select-choices-group"),h.length!==1)throw i("rows","Expected 1 .ui-select-choices-group but got '{0}'.",h.length);h.attr("ng-repeat",t.getGroupNgRepeatExpression())}if(c=t.parse(f.repeat),e=r.querySelectorAll(".ui-select-choices-row"),e.length!==1)throw i("rows","Expected 1 .ui-select-choices-row but got '{0}'.",e.length);if(e.attr("ng-repeat",c.repeatExpression(s)).attr("ng-if","$select.open"),o=r.querySelectorAll(".ui-select-choices-row-inner"),o.length!==1)throw i("rows","Expected 1 .ui-select-choices-row-inner but got '{0}'.",o.length);return o.attr("uis-transclude-append",""),a=u.document.addEventListener?e:o,a.attr("ng-click","$select.select("+c.itemName+",$select.skipFocusser,$event)"),function(t,i,u,f){f.parseRepeatAttr(u.repeat,s,l);f.disableChoiceExpression=u.uiDisableChoice;f.onHighlightCallback=u.onHighlight;f.minimumInputLength=parseInt(u.minimumInputLength)||0;f.dropdownPosition=u.position?u.position.toLowerCase():n.dropdownPosition;t.$watch("$select.search",function(n){n&&!f.open&&f.multiple&&f.activate(!1,!0);f.activeIndex=f.tagging.isActivated?-1:0;!u.minimumInputLength||f.search.length>=u.minimumInputLength?f.refresh(u.refresh):f.items=[]});u.$observe("refreshDelay",function(){var i=t.$eval(u.refreshDelay);f.refreshDelay=i!==undefined?i:n.refreshDelay});t.$watch("$select.open",function(n){n?(r.attr("role","listbox"),f.refresh(u.refresh)):i.removeAttr("role")})}}}}]);t.controller("uiSelectCtrl",["$scope","$element","$timeout","$filter","$$uisDebounce","uisRepeatParser","uiSelectMinErr","uiSelectConfig","$parse","$injector","$window",function(t,r,u,f,e,o,s,h,c,l,a){function ut(n,t,i){var u,f,e,r;if(n.findIndex)return n.findIndex(t,i);for(u=Object(n),f=u.length>>>0,r=0;r<f;r++)if(e=u[r],t.call(i,e,r,u))return r;return-1}function b(){v.resetSearchInput&&(v.search=w,v.selected&&v.items.length&&!v.multiple&&(v.activeIndex=ut(v.items,function(n){return angular.equals(this,n)},v.selected)))}function ft(n,t){for(var i,u=[],r=0;r<t.length;r++)for(i=0;i<n.length;i++)n[i].name==[t[r]]&&u.push(n[i]);return u}function et(n,t){var i=y.indexOf(n);t&&i===-1&&y.push(n);!t&&i>-1&&y.splice(i,1)}function k(n){return y.indexOf(n)>-1}function it(n,t){return n.replace(t,"").trim()}function ot(n){function i(n,i){var r=t.indexOf(n);i&&r===-1&&t.push(n);!i&&r>-1&&t.splice(r,1)}function r(n){return t.indexOf(n)>-1}if(n){var t=[];v.isLocked=function(n,t){var u=!1,f=v.selected[t];return f&&(n?(u=!!n.$eval(v.lockChoiceExpression),i(f,u)):u=r(f)),u}}}function st(t){var f=!0,i,u,r;switch(t){case n.DOWN:if(!v.open&&v.multiple)v.activate(!1,!0);else if(v.activeIndex<v.items.length-1)for(i=++v.activeIndex;k(v.items[i])&&i<v.items.length;)v.activeIndex=++i;break;case n.UP:if(u=v.search.length===0&&v.tagging.isActivated?-1:0,!v.open&&v.multiple)v.activate(!1,!0);else if(v.activeIndex>u)for(r=--v.activeIndex;k(v.items[r])&&r>u;)v.activeIndex=--r;break;case n.TAB:(!v.multiple||v.open)&&v.select(v.items[v.activeIndex],!0);break;case n.ENTER:v.open&&(v.tagging.isActivated||v.activeIndex>=0)?v.select(v.items[v.activeIndex],v.skipFocusser):v.activate(!1,!0);break;case n.ESC:v.close();break;default:f=!1}return f}function rt(){var n=r.querySelectorAll(".ui-select-choices-content"),u=n.querySelectorAll(".ui-select-choices-row");if(u.length<1)throw s("choices","Expected multiple .ui-select-choices-row but got '{0}'.",u.length);if(!(v.activeIndex<0)){var t=u[v.activeIndex],i=t.offsetTop+t.clientHeight-n[0].scrollTop,f=n[0].offsetHeight;i>f?n[0].scrollTop+=i-f:i<t.clientHeight&&(v.isGrouped&&v.activeIndex===0?n[0].scrollTop=0:n[0].scrollTop-=t.clientHeight-i)}}var v=this,w="",g,nt,y,p,d,tt;if(v.placeholder=h.placeholder,v.searchEnabled=h.searchEnabled,v.sortable=h.sortable,v.refreshDelay=h.refreshDelay,v.paste=h.paste,v.resetSearchInput=h.resetSearchInput,v.refreshing=!1,v.spinnerEnabled=h.spinnerEnabled,v.spinnerClass=h.spinnerClass,v.removeSelected=h.removeSelected,v.closeOnSelect=!0,v.skipFocusser=!1,v.search=w,v.activeIndex=0,v.items=[],v.open=!1,v.focus=!1,v.disabled=!1,v.selected=undefined,v.dropdownPosition="auto",v.focusser=undefined,v.multiple=undefined,v.disableChoiceExpression=undefined,v.tagging={isActivated:!1,fct:undefined},v.taggingTokens={isActivated:!1,tokens:undefined},v.lockChoiceExpression=undefined,v.clickTriggeredSelect=!1,v.$filter=f,v.$element=r,v.$animate=function(){try{return l.get("$animate")}catch(n){return null}}(),v.searchInput=r.querySelectorAll("input.ui-select-search"),v.searchInput.length!==1)throw s("searchInput","Expected 1 input.ui-select-search but got '{0}'.",v.searchInput.length);v.isEmpty=function(){return i(v.selected)||v.selected===""||v.multiple&&v.selected.length===0};v.activate=function(n,i){var e,o,f;if(v.disabled||v.open)v.open&&!v.searchEnabled&&v.close();else if(i||b(),t.$broadcast("uis:activate"),v.open=!0,v.activeIndex=v.activeIndex>=v.items.length?0:v.activeIndex,v.activeIndex===-1&&v.taggingLabel!==!1&&(v.activeIndex=0),e=r.querySelectorAll(".ui-select-choices-content"),o=r.querySelectorAll(".ui-select-search"),v.$animate&&v.$animate.on&&v.$animate.enabled(e[0]))if(f=function(t,i){i==="start"&&v.items.length===0?(v.$animate.off("removeClass",o[0],f),u(function(){v.focusSearchInput(n)})):i==="close"&&(v.$animate.off("enter",e[0],f),u(function(){v.focusSearchInput(n)}))},v.items.length>0)v.$animate.on("enter",e[0],f);else v.$animate.on("removeClass",o[0],f);else u(function(){v.focusSearchInput(n);!v.tagging.isActivated&&v.items.length>1&&rt()})};v.focusSearchInput=function(n){v.search=n||v.search;v.searchInput[0].focus()};v.findGroupByName=function(n){return v.groups&&v.groups.filter(function(t){return t.name===n})[0]};v.parseRepeatAttr=function(n,i,r){function e(n){var f=t.$eval(i),u;v.groups=[];angular.forEach(n,function(n){var t=angular.isFunction(f)?f(n):n[f],i=v.findGroupByName(t);i?i.items.push(n):v.groups.push({name:t,items:[n]})});r&&(u=t.$eval(r),angular.isFunction(u)?v.groups=u(v.groups):angular.isArray(u)&&(v.groups=ft(v.groups,u)));v.items=[];v.groups.forEach(function(n){v.items=v.items.concat(n.items)})}function h(n){v.items=n||[]}v.setItemsFn=i?e:h;v.parserResult=o.parse(n);v.isGrouped=!!i;v.itemProperty=v.parserResult.itemName;var u=v.parserResult.source,f=function(){var n=u(t);t.$uisSource=Object.keys(n).map(function(t){var i={};return i[v.parserResult.keyName]=t,i.value=n[t],i})};v.parserResult.keyName&&(f(),v.parserResult.source=c("$uisSource"+v.parserResult.filters),t.$watch(u,function(n,t){n!==t&&f()},!0));v.refreshItems=function(n){var i,r;n=n||v.parserResult.source(t);i=v.selected;!v.isEmpty()&&(!angular.isArray(i)||i.length)&&v.multiple&&v.removeSelected?n!==undefined&&n!==null&&(r=n.filter(function(n){return angular.isArray(i)?i.every(function(t){return!angular.equals(n,t)}):!angular.equals(n,i)}),v.setItemsFn(r)):v.setItemsFn(n);(v.dropdownPosition==="auto"||v.dropdownPosition==="up")&&t.calculateDropdownPos();t.$broadcast("uis:refresh")};t.$watchCollection(v.parserResult.source,function(n){if(n===undefined||n===null)v.items=[];else if(angular.isArray(n))v.refreshItems(n),angular.isDefined(v.ngModel.$modelValue)&&(v.ngModel.$modelValue=null);else throw s("items","Expected an array but got '{0}'.",n);})};v.refresh=function(n){n!==undefined&&(g&&u.cancel(g),g=u(function(){if(t.$select.search.length>=t.$select.minimumInputLength){var i=t.$eval(n);i&&angular.isFunction(i.then)&&!v.refreshing&&(v.refreshing=!0,i.finally(function(){v.refreshing=!1}))}},v.refreshDelay))};v.isActive=function(n){if(!v.open)return!1;var i=v.items.indexOf(n[v.itemProperty]),t=i==v.activeIndex;return!t||i<0?!1:(t&&!angular.isUndefined(v.onHighlightCallback)&&n.$eval(v.onHighlightCallback),t)};nt=function(n){return v.selected&&angular.isArray(v.selected)&&v.selected.filter(function(t){return angular.equals(t,n)}).length>0};y=[];v.isDisabled=function(n){if(v.open){var i=n[v.itemProperty],r=v.items.indexOf(i),t=!1;if(r>=0&&(angular.isDefined(v.disableChoiceExpression)||v.multiple)){if(i.isTag)return!1;v.multiple&&(t=nt(i));!t&&angular.isDefined(v.disableChoiceExpression)&&(t=!!n.$eval(v.disableChoiceExpression));et(i,t)}return t}};v.select=function(n,r,u){if(i(n)||!k(n)){if(!v.items&&!v.search&&!v.tagging.isActivated)return;if(!n||!k(n)){if(v.clickTriggeredSelect=!1,u&&(u.type==="click"||u.type==="touchend")&&n&&(v.clickTriggeredSelect=!0),v.tagging.isActivated&&v.clickTriggeredSelect===!1){if(v.taggingLabel===!1)if(v.activeIndex<0){if(n===undefined&&(n=v.tagging.fct!==undefined?v.tagging.fct(v.search):v.search),!n||angular.equals(v.items[0],n))return}else n=v.items[v.activeIndex];else if(v.activeIndex===0){if(n===undefined)return;if(v.tagging.fct!==undefined&&typeof n=="string"){if(n=v.tagging.fct(n),!n)return}else typeof n=="string"&&(n=it(n,v.taggingLabel))}if(nt(n)){v.close(r);return}}else typeof n=="string"&&(n=it(n,v.taggingLabel));b();t.$broadcast("uis:select",n);v.closeOnSelect&&v.close(r)}}};v.close=function(n){v.open&&(v.ngModel&&v.ngModel.$setTouched&&v.ngModel.$setTouched(),v.open=!1,b(),t.$broadcast("uis:close",n))};v.setFocus=function(){v.focus||v.focusInput[0].focus()};v.clear=function(n){v.select(null);n.stopPropagation();u(function(){v.focusser[0].focus()},0,!1)};v.toggle=function(n){v.open?(v.close(),n.preventDefault(),n.stopPropagation()):v.activate()};v.isLocked=function(){return!1};t.$watch(function(){return angular.isDefined(v.lockChoiceExpression)&&v.lockChoiceExpression!==""},ot);p=null;d=!1;v.sizeSearchInput=function(){var n=v.searchInput[0],f=v.$element[0],i=function(){return f.clientWidth*!!n.offsetParent},r=function(t){return t===0?!1:(v.searchInput.css("width","50px"),setTimeout(function(){var i=Math.max(50,t-n.offsetLeft-10);v.searchInput.css("width",i+"px")},0),!0)};v.searchInput.css("width","10px");u(function(){p!==null||r(i())||(p=t.$watch(function(){d||(d=!0,t.$$postDigest(function(){d=!1;r(i())&&(p(),p=null)}))},angular.noop))})};v.searchInput.on("keydown",function(i){var r=i.which;~[n.ENTER,n.ESC].indexOf(r)&&(i.preventDefault(),i.stopPropagation());t.$apply(function(){var f=!1,t;if((v.items.length>0||v.tagging.isActivated)&&(st(r)||v.searchEnabled||(i.preventDefault(),i.stopPropagation()),v.taggingTokens.isActivated)){for(t=0;t<v.taggingTokens.tokens.length;t++)v.taggingTokens.tokens[t]===n.MAP[i.keyCode]&&v.search.length>0&&(f=!0);f&&u(function(){v.searchInput.triggerHandler("tagged");var t=v.search.replace(n.MAP[i.keyCode],"").trim();v.tagging.fct&&(t=v.tagging.fct(t));t&&v.select(t,!0)})}});n.isVerticalMovement(r)&&v.items.length>0&&rt();(r===n.ENTER||r===n.ESC)&&(i.preventDefault(),i.stopPropagation())});v.searchInput.on("paste",function(t){var i,r,u,f,e;if(i=window.clipboardData&&window.clipboardData.getData?window.clipboardData.getData("Text"):(t.originalEvent||t).clipboardData.getData("text/plain"),i=v.search+i,i&&i.length>0)if(v.taggingTokens.isActivated){for(r=[],u=0;u<v.taggingTokens.tokens.length;u++)if(f=n.toSeparator(v.taggingTokens.tokens[u])||v.taggingTokens.tokens[u],i.indexOf(f)>-1){r=i.split(f);break}r.length===0&&(r=[i]);e=v.search;angular.forEach(r,function(n){var t=v.tagging.fct?v.tagging.fct(n):n;t&&v.select(t,!0)});v.search=e||w;t.preventDefault();t.stopPropagation()}else v.paste&&(v.paste(i),v.search=w,t.preventDefault(),t.stopPropagation())});v.searchInput.on("tagged",function(){u(function(){b()})});tt=e(function(){v.sizeSearchInput()},50);angular.element(a).bind("resize",tt);t.$on("$destroy",function(){v.searchInput.off("keyup keydown tagged blur paste");angular.element(a).off("resize",tt)});t.$watch("$select.activeIndex",function(n){n&&r.find("input").attr("aria-activedescendant","ui-select-choices-row-"+v.generatedId+"-"+n)});t.$watch("$select.open",function(n){n||r.find("input").removeAttr("aria-activedescendant")})}]);t.directive("uiSelect",["$document","uiSelectConfig","uiSelectMinErr","uisOffset","$compile","$parse","$timeout",function(n,t,i,r,u,f,e){return{restrict:"EA",templateUrl:function(n,i){var r=i.theme||t.theme;return r+(angular.isDefined(i.multiple)?"/select-multiple.tpl.html":"/select.tpl.html")},replace:!0,transclude:!0,require:["uiSelect","^ngModel"],scope:!0,controller:"uiSelectCtrl",controllerAs:"$select",compile:function(u,o){var s=/{(.*)}\s*{(.*)}/.exec(o.ngClass),h;return s&&(h="{"+s[1]+", "+s[2]+"}",o.ngClass=h,u.attr("ng-class",h)),angular.isDefined(o.multiple)?u.append("<ui-select-multiple/>").removeAttr("multiple"):u.append("<ui-select-single/>"),o.inputId&&(u.querySelectorAll("input.ui-select-search")[0].id=o.inputId),function(u,o,s,h,c){function b(n){var i,t,f,r;l.open&&(i=!1,i=window.jQuery?window.jQuery.contains(o[0],n.target):o[0].contains(n.target),i||l.clickTriggeredSelect||(l.skipFocusser?t=!0:(f=["input","button","textarea","select"],r=angular.element(n.target).controller("uiSelect"),t=r&&r!==l,t||(t=~f.indexOf(n.target.tagName.toLowerCase()))),l.close(t),u.$digest()),l.clickTriggeredSelect=!1)}function it(){var t=r(o);v=angular.element('<div class="ui-select-placeholder"><\/div>');v[0].style.width=t.width+"px";v[0].style.height=t.height+"px";o.after(v);w=o[0].style.width;n.find("body").append(o);o[0].style.position="absolute";o[0].style.left=t.left+"px";o[0].style.top=t.top+"px";o[0].style.width=t.width+"px"}function k(){v!==null&&(v.replaceWith(o),v=null,o[0].style.position="",o[0].style.left="",o[0].style.top="",o[0].style.width=w,l.setFocus())}var l=h[0],tt=h[1],p,v,w,a,y;l.generatedId=t.generateId();l.baseTitle=s.title||"Select box";l.focusserTitle=l.baseTitle+" focus";l.focusserId="focusser-"+l.generatedId;l.closeOnSelect=function(){return angular.isDefined(s.closeOnSelect)?f(s.closeOnSelect)():t.closeOnSelect}();u.$watch("skipFocusser",function(){var n=u.$eval(s.skipFocusser);l.skipFocusser=n!==undefined?n:t.skipFocusser});l.onSelectCallback=f(s.onSelect);l.onRemoveCallback=f(s.onRemove);l.ngModel=tt;l.choiceGrouped=function(n){return l.isGrouped&&n&&n.name};s.tabindex&&s.$observe("tabindex",function(n){l.focusInput.attr("tabindex",n);o.removeAttr("tabindex")});u.$watch(function(){return u.$eval(s.searchEnabled)},function(n){l.searchEnabled=n!==undefined?n:t.searchEnabled});u.$watch("sortable",function(){var n=u.$eval(s.sortable);l.sortable=n!==undefined?n:t.sortable});s.$observe("backspaceReset",function(){var n=u.$eval(s.backspaceReset);l.backspaceReset=n!==undefined?n:!0});s.$observe("limit",function(){l.limit=angular.isDefined(s.limit)?parseInt(s.limit,10):undefined});u.$watch("removeSelected",function(){var n=u.$eval(s.removeSelected);l.removeSelected=n!==undefined?n:t.removeSelected});s.$observe("disabled",function(){l.disabled=s.disabled!==undefined?s.disabled:!1});s.$observe("resetSearchInput",function(){var n=u.$eval(s.resetSearchInput);l.resetSearchInput=n!==undefined?n:!0});s.$observe("paste",function(){l.paste=u.$eval(s.paste)});s.$observe("tagging",function(){if(s.tagging!==undefined){var n=u.$eval(s.tagging);l.tagging={isActivated:!0,fct:n!==!0?n:undefined}}else l.tagging={isActivated:!1,fct:undefined}});s.$observe("taggingLabel",function(){s.tagging!==undefined&&(l.taggingLabel=s.taggingLabel==="false"?!1:s.taggingLabel!==undefined?s.taggingLabel:"(new)")});s.$observe("taggingTokens",function(){if(s.tagging!==undefined){var n=s.taggingTokens!==undefined?s.taggingTokens.split("|"):[",","ENTER"];l.taggingTokens={isActivated:!0,tokens:n}}});s.$observe("spinnerEnabled",function(){var n=u.$eval(s.spinnerEnabled);l.spinnerEnabled=n!==undefined?n:t.spinnerEnabled});s.$observe("spinnerClass",function(){var n=s.spinnerClass;l.spinnerClass=n!==undefined?s.spinnerClass:t.spinnerClass});angular.isDefined(s.autofocus)&&e(function(){l.setFocus()});angular.isDefined(s.focusOn)&&u.$on(s.focusOn,function(){e(function(){l.setFocus()})});n.on("click",b);u.$on("$destroy",function(){n.off("click",b)});c(u,function(n){var f=angular.element("<div>").append(n),r=f.querySelectorAll(".ui-select-match"),t,u;if(r.removeAttr("ui-select-match"),r.removeAttr("data-ui-select-match"),r.length!==1)throw i("transcluded","Expected 1 .ui-select-match but got '{0}'.",r.length);if(o.querySelectorAll(".ui-select-match").replaceWith(r),t=f.querySelectorAll(".ui-select-choices"),t.removeAttr("ui-select-choices"),t.removeAttr("data-ui-select-choices"),t.length!==1)throw i("transcluded","Expected 1 .ui-select-choices but got '{0}'.",t.length);o.querySelectorAll(".ui-select-choices").replaceWith(t);u=f.querySelectorAll(".ui-select-no-choice");u.removeAttr("ui-select-no-choice");u.removeAttr("data-ui-select-no-choice");u.length==1&&o.querySelectorAll(".ui-select-no-choice").replaceWith(u)});p=u.$eval(s.appendToBody);(p!==undefined?p:t.appendToBody)&&(u.$watch("$select.open",function(n){n?it():k()}),u.$on("$destroy",function(){k()}));v=null;w="";a=null;y="direction-up";u.$watch("$select.open",function(){(l.dropdownPosition==="auto"||l.dropdownPosition==="up")&&u.calculateDropdownPos()});var d=function(n,t){n=n||r(o);t=t||r(a);a[0].style.position="absolute";a[0].style.top=t.height*-1+"px";o.addClass(y)},rt=function(n,t){o.removeClass(y);n=n||r(o);t=t||r(a);a[0].style.position="";a[0].style.top=""},g=function(){e(function(){if(l.dropdownPosition==="up")d();else{o.removeClass(y);var t=r(o),i=r(a),u=n[0].documentElement.scrollTop||n[0].body.scrollTop;t.top+t.height+i.height>u+n[0].documentElement.clientHeight?d(t,i):rt(t,i)}a[0].style.opacity=1})},nt=!1;u.calculateDropdownPos=function(){if(l.open){if(a=angular.element(o).querySelectorAll(".ui-select-dropdown"),a.length===0)return;if(l.search!==""||nt||(a[0].style.opacity=0,nt=!0),!r(a).height&&l.$animate&&l.$animate.on&&l.$animate.enabled(a)){var n=!0;l.$animate.on("enter",a,function(t,i){i==="close"&&n&&(g(),n=!1)})}else g()}else{if(a===null||a.length===0)return;a[0].style.opacity=0;a[0].style.position="";a[0].style.top="";o.removeClass(y)}}}}}}]);t.directive("uiSelectMatch",["uiSelectConfig",function(n){function t(n,t){return n[0].hasAttribute(t)?n.attr(t):n[0].hasAttribute("data-"+t)?n.attr("data-"+t):n[0].hasAttribute("x-"+t)?n.attr("x-"+t):void 0}return{restrict:"EA",require:"^uiSelect",replace:!0,transclude:!0,templateUrl:function(i){i.addClass("ui-select-match");var r=i.parent(),u=t(r,"theme")||n.theme,f=angular.isDefined(t(r,"multiple"));return u+(f?"/match-multiple.tpl.html":"/match.tpl.html")},link:function(t,i,r,u){function f(n){u.allowClear=angular.isDefined(n)?n===""?!0:n.toLowerCase()==="true":!1}u.lockChoiceExpression=r.uiLockChoice;r.$observe("placeholder",function(t){u.placeholder=t!==undefined?t:n.placeholder});r.$observe("allowClear",f);f(r.allowClear);u.multiple&&u.sizeSearchInput()}}}]);t.directive("uiSelectMultiple",["uiSelectMinErr","$timeout",function(t,r){return{restrict:"EA",require:["^uiSelect","^ngModel"],controller:["$scope","$timeout",function(n,t){var r=this,i=n.$select,u;angular.isUndefined(i.selected)&&(i.selected=[]);n.$evalAsync(function(){u=n.ngModel});r.activeMatchIndex=-1;r.updateModel=function(){u.$setViewValue(Date.now());r.refreshComponent()};r.refreshComponent=function(){i.refreshItems&&i.refreshItems();i.sizeSearchInput&&i.sizeSearchInput()};r.removeChoice=function(u){if(i.isLocked(null,u))return!1;var f=i.selected[u],e={};return e[i.parserResult.itemName]=f,i.selected.splice(u,1),r.activeMatchIndex=-1,i.sizeSearchInput(),t(function(){i.onRemoveCallback(n,{$item:f,$model:i.parserResult.modelMapper(n,e)})}),r.updateModel(),!0};r.getPlaceholder=function(){if(!i.selected||!i.selected.length)return i.placeholder}}],controllerAs:"$selectMultiple",link:function(u,f,e,o){function v(n){return angular.isNumber(n.selectionStart)?n.selectionStart:n.value.length}function y(t){function l(){switch(t){case n.LEFT:return~h.activeMatchIndex?f:r;case n.RIGHT:return~h.activeMatchIndex&&i!==r?c:(s.activate(),!1);case n.BACKSPACE:return~h.activeMatchIndex?h.removeChoice(i)?f:i:r;case n.DELETE:return~h.activeMatchIndex?(h.removeChoice(h.activeMatchIndex),i):!1}}var e=v(s.searchInput[0]),o=s.selected.length,r=o-1,i=h.activeMatchIndex,c=h.activeMatchIndex+1,f=h.activeMatchIndex-1,u=i;return e>0||s.search.length&&t==n.RIGHT?!1:(s.close(),u=l(),h.activeMatchIndex=s.selected.length&&u!==!1?Math.min(r,Math.max(0,u)):-1,!0)}function l(n){if(n===undefined||s.search===undefined)return!1;return n.filter(function(n){return s.search.toUpperCase()===undefined||n===undefined?!1:n.toUpperCase()===s.search.toUpperCase()}).length>0}function a(n,t){var f=-1,r,i,u;if(angular.isArray(n))for(r=angular.copy(n),i=0;i<r.length;i++)s.tagging.fct===undefined?r[i]+" "+s.taggingLabel===t&&(f=i):(u=r[i],angular.isObject(u)&&(u.isTag=!0),angular.equals(u,t)&&(f=i));return f}var s=o[0],c=u.ngModel=o[1],h=u.$selectMultiple;s.multiple=!0;s.focusInput=s.searchInput;c.$isEmpty=function(n){return!n||n.length===0};c.$parsers.unshift(function(){for(var t={},i,r=[],n=s.selected.length-1;n>=0;n--)t={},t[s.parserResult.itemName]=s.selected[n],i=s.parserResult.modelMapper(u,t),r.unshift(i);return r});c.$formatters.unshift(function(n){var e=s.parserResult&&s.parserResult.source(u,{$select:{search:""}}),o={},r,t,f,i;if(!e)return n;if(t=[],f=function(n,i){var f,h,e;if(n&&n.length){for(f=n.length-1;f>=0;f--)if((o[s.parserResult.itemName]=n[f],r=s.parserResult.modelMapper(u,o),s.parserResult.trackByExp&&(h=/(\w*)\./.exec(s.parserResult.trackByExp),e=/\.([^\s]+)/.exec(s.parserResult.trackByExp),h&&h.length>0&&h[1]==s.parserResult.itemName&&e&&e.length>0&&r[e[1]]==i[e[1]]))||angular.equals(r,i))return t.unshift(n[f]),!0;return!1}},!n)return t;for(i=n.length-1;i>=0;i--)f(s.selected,n[i])||f(e,n[i])||t.unshift(n[i]);return t});u.$watchCollection(function(){return c.$modelValue},function(n,t){t!=n&&(angular.isDefined(c.$modelValue)&&(c.$modelValue=null),h.refreshComponent())});c.$render=function(){if(!angular.isArray(c.$viewValue))if(i(c.$viewValue))c.$viewValue=[];else throw t("multiarr","Expected model value to be array but got '{0}'",c.$viewValue);s.selected=c.$viewValue;h.refreshComponent();u.$evalAsync()};u.$on("uis:select",function(n,t){if(!(s.selected.length>=s.limit)){s.selected.push(t);var i={};i[s.parserResult.itemName]=t;r(function(){s.onSelectCallback(u,{$item:t,$model:s.parserResult.modelMapper(u,i)})});h.updateModel()}});u.$on("uis:activate",function(){h.activeMatchIndex=-1});u.$watch("$select.disabled",function(n,t){t&&!n&&s.sizeSearchInput()});s.searchInput.on("keydown",function(t){var i=t.which;u.$apply(function(){var r=!1;n.isHorizontalMovement(i)&&(r=y(i));r&&i!=n.TAB&&(t.preventDefault(),t.stopPropagation())})});s.searchInput.on("keyup",function(t){if(n.isVerticalMovement(t.which)||u.$evalAsync(function(){s.activeIndex=s.taggingLabel===!1?-1:0}),s.tagging.isActivated&&s.search.length>0){if(t.which===n.TAB||n.isControl(t)||n.isFunctionKey(t)||t.which===n.ESC||n.isVerticalMovement(t.which))return;if(s.activeIndex=s.taggingLabel===!1?-1:0,s.taggingLabel===!1)return;var i=angular.copy(s.items),r=angular.copy(s.items),f,v,o=!1,c=-1,e,h;if(s.tagging.fct!==undefined){if(e=s.$filter("filter")(i,{isTag:!0}),e.length>0&&(h=e[0]),i.length>0&&h&&(o=!0,i=i.slice(1,i.length),r=r.slice(1,r.length)),f=s.tagging.fct(s.search),r.some(function(n){return angular.equals(n,f)})||s.selected.some(function(n){return angular.equals(n,f)})){u.$evalAsync(function(){s.activeIndex=0;s.items=i});return}f&&(f.isTag=!0)}else{if(e=s.$filter("filter")(i,function(n){return n.match(s.taggingLabel)}),e.length>0&&(h=e[0]),v=i[0],v!==undefined&&i.length>0&&h&&(o=!0,i=i.slice(1,i.length),r=r.slice(1,r.length)),f=s.search+" "+s.taggingLabel,a(s.selected,s.search)>-1)return;if(l(r.concat(s.selected))){o&&(i=r,u.$evalAsync(function(){s.activeIndex=0;s.items=i}));return}if(l(r)){o&&(s.items=r.slice(1,r.length));return}}o&&(c=a(s.selected,f));c>-1?i=i.slice(c+1,i.length-1):(i=[],f&&i.push(f),i=i.concat(r));u.$evalAsync(function(){if(s.activeIndex=0,s.items=i,s.isGrouped){var n=f?i.slice(1):i;s.setItemsFn(n);f&&(s.items.unshift(f),s.groups.unshift({name:"",items:[f],tagging:!0}))}})}});s.searchInput.on("blur",function(){r(function(){h.activeMatchIndex=-1})})}}}]);t.directive("uiSelectNoChoice",["uiSelectConfig",function(n){return{restrict:"EA",require:"^uiSelect",replace:!0,transclude:!0,templateUrl:function(t){t.addClass("ui-select-no-choice");var i=t.parent().attr("theme")||n.theme;return i+"/no-choice.tpl.html"}}}]);t.directive("uiSelectSingle",["$timeout","$compile",function(t,r){return{restrict:"EA",require:["^uiSelect","^ngModel"],link:function(u,f,e,o){var s=o[0],c=o[1],h;c.$parsers.unshift(function(n){if(i(n))return n;var t={};return t[s.parserResult.itemName]=n,s.parserResult.modelMapper(u,t)});c.$formatters.unshift(function(n){var t,f,o,e,r;if(i(n))return n;if(t=s.parserResult&&s.parserResult.source(u,{$select:{search:""}}),f={},t){if(e=function(t){return f[s.parserResult.itemName]=t,o=s.parserResult.modelMapper(u,f),o===n},s.selected&&e(s.selected))return s.selected;for(r=t.length-1;r>=0;r--)if(e(t[r]))return t[r]}return n});u.$watch("$select.selected",function(n){c.$viewValue!==n&&c.$setViewValue(n)});c.$render=function(){s.selected=c.$viewValue};u.$on("uis:select",function(n,r){s.selected=r;var f={};f[s.parserResult.itemName]=r;t(function(){s.onSelectCallback(u,{$item:r,$model:i(r)?r:s.parserResult.modelMapper(u,f)})})});u.$on("uis:close",function(n,i){t(function(){s.focusser.prop("disabled",!1);i||s.focusser[0].focus()},0,!1)});u.$on("uis:activate",function(){h.prop("disabled",!0)});h=angular.element("<input ng-disabled='$select.disabled' class='ui-select-focusser ui-select-offscreen' type='text' id='{{ $select.focusserId }}' aria-label='{{ $select.focusserTitle }}' aria-haspopup='true' role='button' />");r(h)(u);s.focusser=h;s.focusInput=h;f.parent().append(h);h.bind("focus",function(){u.$evalAsync(function(){s.focus=!0})});h.bind("blur",function(){u.$evalAsync(function(){s.focus=!1})});h.bind("keydown",function(t){if(t.which===n.BACKSPACE&&s.backspaceReset!==!1){t.preventDefault();t.stopPropagation();s.select(undefined);u.$apply();return}t.which===n.TAB||n.isControl(t)||n.isFunctionKey(t)||t.which===n.ESC||((t.which==n.DOWN||t.which==n.UP||t.which==n.ENTER||t.which==n.SPACE)&&(t.preventDefault(),t.stopPropagation(),s.activate()),u.$digest())});h.bind("keyup input",function(t){t.which===n.TAB||n.isControl(t)||n.isFunctionKey(t)||t.which===n.ESC||t.which==n.ENTER||t.which===n.BACKSPACE||(s.activate(h.val()),h.val(""),u.$digest())})}}}]);t.directive("uiSelectSort",["$timeout","uiSelectConfig","uiSelectMinErr",function(n,t,i){return{require:["^^uiSelect","^ngModel"],link:function(t,r,u,f){if(t[u.uiSelectSort]===null)throw i("sort","Expected a list to sort");var a=f[0],w=f[1],b=angular.extend({axis:"horizontal"},t.$eval(u.uiSelectSortOptions)),v=b.axis,h="dragging",c="dropping",o="dropping-before",s="dropping-after";t.$watch(function(){return a.sortable},function(n){n?r.attr("draggable",!0):r.removeAttr("draggable")});r.on("dragstart",function(n){r.addClass(h);(n.dataTransfer||n.originalEvent.dataTransfer).setData("text",t.$index.toString())});r.on("dragend",function(){e(h)});var k=function(n,t){this.splice(t,0,this.splice(n,1)[0])},e=function(n){angular.forEach(a.$element.querySelectorAll("."+n),function(t){angular.element(t).removeClass(n)})},y=function(n){n.preventDefault();var t=v==="vertical"?n.offsetY||n.layerY||(n.originalEvent?n.originalEvent.offsetY:0):n.offsetX||n.layerX||(n.originalEvent?n.originalEvent.offsetX:0);t<this[v==="vertical"?"offsetHeight":"offsetWidth"]/2?(e(s),r.addClass(o)):(e(o),r.addClass(s))},p,l=function(t){t.preventDefault();var i=parseInt((t.dataTransfer||t.originalEvent.dataTransfer).getData("text"),10);n.cancel(p);p=n(function(){d(i)},20)},d=function(n){var i=t.$eval(u.uiSelectSort),h=i[n],f=null;f=r.hasClass(o)?n<t.$index?t.$index-1:t.$index:n<t.$index?t.$index:t.$index+1;k.apply(i,[n,f]);w.$setViewValue(Date.now());t.$apply(function(){t.$emit("uiSelectSort:change",{array:i,item:h,from:n,to:f})});e(c);e(o);e(s);r.off("drop",l)};r.on("dragenter",function(){if(!r.hasClass(h)){r.addClass(c);r.on("dragover",y);r.on("drop",l)}});r.on("dragleave",function(n){n.target==r&&(e(c),e(o),e(s),r.off("dragover",y),r.off("drop",l))})}}}]);t.directive("uisOpenClose",["$parse","$timeout",function(n,t){return{restrict:"A",require:"uiSelect",link:function(i,r,u,f){f.onOpenCloseCallback=n(u.uisOpenClose);i.$watch("$select.open",function(n,r){n!==r&&t(function(){f.onOpenCloseCallback(i,{isOpen:n})})})}}}]);t.service("uisRepeatParser",["uiSelectMinErr","$parse",function(n,t){var i=this;i.parse=function(i){var r,u,f,e;if(r=i.match(/^\s*(?:([\s\S]+?)\s+as\s+)?(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+(\s*[\s\S]+?)?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/),!r)throw n("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",i);return u=r[5],f="",r[3]&&(u=r[5].replace(/(^\()|(\)$)/g,""),e=r[5].match(/^\s*(?:[\s\S]+?)(?:[^\|]|\|\|)+([\s\S]*)\s*$/),e&&e[1].trim()&&(f=e[1],u=u.replace(f,""))),{itemName:r[4]||r[2],keyName:r[3],source:t(u),filters:f,trackByExp:r[6],modelMapper:t(r[1]||r[4]||r[2]),repeatExpression:function(n){var t=this.itemName+" in "+(n?"$group.items":"$select.items");return this.trackByExp&&(t+=" track by "+this.trackByExp),t}}};i.getGroupNgRepeatExpression=function(){return"$group in $select.groups track by $group.name"}}])}();angular.module("ui.select").run(["$templateCache",function(n){n.put("bootstrap/choices.tpl.html",'<ul class="ui-select-choices ui-select-choices-content ui-select-dropdown dropdown-menu" ng-show="$select.open && $select.items.length > 0"><li class="ui-select-choices-group" id="ui-select-choices-{{ $select.generatedId }}"><div class="divider" ng-show="$select.isGrouped && $index > 0"><\/div><div ng-show="$select.isGrouped" class="ui-select-choices-group-label dropdown-header" ng-bind="$group.name"><\/div><div ng-attr-id="ui-select-choices-row-{{ $select.generatedId }}-{{$index}}" class="ui-select-choices-row" ng-class="{active: $select.isActive(this), disabled: $select.isDisabled(this)}" role="option"><span class="ui-select-choices-row-inner"><\/span><\/div><\/li><\/ul>');n.put("bootstrap/match-multiple.tpl.html",'<span class="ui-select-match"><span ng-repeat="$item in $select.selected track by $index"><span class="ui-select-match-item btn btn-default btn-xs" tabindex="-1" type="button" ng-disabled="$select.disabled" ng-click="$selectMultiple.activeMatchIndex = $index;" ng-class="{\'btn-primary\':$selectMultiple.activeMatchIndex === $index, \'select-locked\':$select.isLocked(this, $index)}" ui-select-sort="$select.selected"><span class="close ui-select-match-close" ng-hide="$select.disabled" ng-click="$selectMultiple.removeChoice($index)">&nbsp;&times;<\/span> <span uis-transclude-append=""><\/span><\/span><\/span><\/span>');n.put("bootstrap/match.tpl.html",'<div class="ui-select-match" ng-hide="$select.open && $select.searchEnabled" ng-disabled="$select.disabled" ng-class="{\'btn-default-focus\':$select.focus}"><span tabindex="-1" class="btn btn-default form-control ui-select-toggle" aria-label="{{ $select.baseTitle }} activate" ng-disabled="$select.disabled" ng-click="$select.activate()" style="outline: 0;"><span ng-show="$select.isEmpty()" class="ui-select-placeholder text-muted">{{$select.placeholder}}<\/span> <span ng-hide="$select.isEmpty()" class="ui-select-match-text pull-left" ng-class="{\'ui-select-allow-clear\': $select.allowClear && !$select.isEmpty()}" ng-transclude=""><\/span> <i class="caret pull-right" ng-click="$select.toggle($event)"><\/i> <a ng-show="$select.allowClear && !$select.isEmpty() && ($select.disabled !== true)" aria-label="{{ $select.baseTitle }} clear" style="margin-right: 10px" ng-click="$select.clear($event)" class="btn btn-xs btn-link pull-right"><i class="glyphicon glyphicon-remove" aria-hidden="true"><\/i><\/a><\/span><\/div>');n.put("bootstrap/no-choice.tpl.html",'<ul class="ui-select-no-choice dropdown-menu" ng-show="$select.items.length == 0"><li ng-transclude=""><\/li><\/ul>');n.put("bootstrap/select-multiple.tpl.html",'<div class="ui-select-container ui-select-multiple ui-select-bootstrap dropdown form-control" ng-class="{open: $select.open}"><div><div class="ui-select-match"><\/div><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" class="ui-select-search input-xs" placeholder="{{$selectMultiple.getPlaceholder()}}" ng-disabled="$select.disabled" ng-click="$select.activate()" ng-model="$select.search" role="combobox" aria-expanded="{{$select.open}}" aria-label="{{$select.baseTitle}}" ng-class="{\'spinner\': $select.refreshing}" ondrop="return false;"><\/div><div class="ui-select-choices"><\/div><div class="ui-select-no-choice"><\/div><\/div>');n.put("bootstrap/select.tpl.html",'<div class="ui-select-container ui-select-bootstrap dropdown" ng-class="{open: $select.open}"><div class="ui-select-match"><\/div><span ng-show="$select.open && $select.refreshing && $select.spinnerEnabled" class="ui-select-refreshing {{$select.spinnerClass}}"><\/span> <input type="search" autocomplete="off" tabindex="-1" aria-expanded="true" aria-label="{{ $select.baseTitle }}" aria-owns="ui-select-choices-{{ $select.generatedId }}" class="form-control ui-select-search" ng-class="{ \'ui-select-search-hidden\' : !$select.searchEnabled }" placeholder="{{$select.placeholder}}" ng-model="$select.search" ng-show="$select.open"><div class="ui-select-choices"><\/div><div class="ui-select-no-choice"><\/div><\/div>');n.put("select2/choices.tpl.html",'<ul tabindex="-1" class="ui-select-choices ui-select-choices-content select2-results"><li class="ui-select-choices-group" ng-class="{\'select2-result-with-children\': $select.choiceGrouped($group) }"><div ng-show="$select.choiceGrouped($group)" class="ui-select-choices-group-label select2-result-label" ng-bind="$group.name"><\/div><ul id="ui-select-choices-{{ $select.generatedId }}" ng-class="{\'select2-result-sub\': $select.choiceGrouped($group), \'select2-result-single\': !$select.choiceGrouped($group) }"><li role="option" ng-attr-id="ui-select-choices-row-{{ $select.generatedId }}-{{$index}}" class="ui-select-choices-row" ng-class="{\'select2-highlighted\': $select.isActive(this), \'select2-disabled\': $select.isDisabled(this)}"><div class="select2-result-label ui-select-choices-row-inner"><\/div><\/li><\/ul><\/li><\/ul>');n.put("select2/match-multiple.tpl.html",'<span class="ui-select-match"><li class="ui-select-match-item select2-search-choice" ng-repeat="$item in $select.selected track by $index" ng-class="{\'select2-search-choice-focus\':$selectMultiple.activeMatchIndex === $index, \'select2-locked\':$select.isLocked(this, $index)}" ui-select-sort="$select.selected"><span uis-transclude-append=""><\/span> <a href="javascript:;" class="ui-select-match-close select2-search-choice-close" ng-click="$selectMultiple.removeChoice($index)" tabindex="-1"><\/a><\/li><\/span>');n.put("select2/match.tpl.html",'<a class="select2-choice ui-select-match" ng-class="{\'select2-default\': $select.isEmpty()}" ng-click="$select.toggle($event)" aria-label="{{ $select.baseTitle }} select"><span ng-show="$select.isEmpty()" class="select2-chosen">{{$select.placeholder}}<\/span> <span ng-hide="$select.isEmpty()" class="select2-chosen" ng-transclude=""><\/span> <abbr ng-if="$select.allowClear && !$select.isEmpty()" class="select2-search-choice-close" ng-click="$select.clear($event)"><\/abbr> <span class="select2-arrow ui-select-toggle"><b><\/b><\/span><\/a>');n.put("select2/no-choice.tpl.html",'<div class="ui-select-no-choice dropdown" ng-show="$select.items.length == 0"><div class="dropdown-content"><div data-selectable="" ng-transclude=""><\/div><\/div><\/div>');n.put("select2/select-multiple.tpl.html",'<div class="ui-select-container ui-select-multiple select2 select2-container select2-container-multi" ng-class="{\'select2-container-active select2-dropdown-open open\': $select.open, \'select2-container-disabled\': $select.disabled}"><ul class="select2-choices"><span class="ui-select-match"><\/span><li class="select2-search-field"><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="combobox" aria-expanded="true" aria-owns="ui-select-choices-{{ $select.generatedId }}" aria-label="{{ $select.baseTitle }}" aria-activedescendant="ui-select-choices-row-{{ $select.generatedId }}-{{ $select.activeIndex }}" class="select2-input ui-select-search" placeholder="{{$selectMultiple.getPlaceholder()}}" ng-disabled="$select.disabled" ng-hide="$select.disabled" ng-model="$select.search" ng-click="$select.activate()" style="width: 34px;" ondrop="return false;"><\/li><\/ul><div class="ui-select-dropdown select2-drop select2-with-searchbox select2-drop-active" ng-class="{\'select2-display-none\': !$select.open || $select.items.length === 0}"><div class="ui-select-choices"><\/div><\/div><\/div>');n.put("select2/select.tpl.html",'<div class="ui-select-container select2 select2-container" ng-class="{\'select2-container-active select2-dropdown-open open\': $select.open, \'select2-container-disabled\': $select.disabled, \'select2-container-active\': $select.focus, \'select2-allowclear\': $select.allowClear && !$select.isEmpty()}"><div class="ui-select-match"><\/div><div class="ui-select-dropdown select2-drop select2-with-searchbox select2-drop-active" ng-class="{\'select2-display-none\': !$select.open}"><div class="search-container" ng-class="{\'ui-select-search-hidden\':!$select.searchEnabled, \'select2-search\':$select.searchEnabled}"><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" ng-class="{\'select2-active\': $select.refreshing}" role="combobox" aria-expanded="true" aria-owns="ui-select-choices-{{ $select.generatedId }}" aria-label="{{ $select.baseTitle }}" class="ui-select-search select2-input" ng-model="$select.search"><\/div><div class="ui-select-choices"><\/div><div class="ui-select-no-choice"><\/div><\/div><\/div>');n.put("selectize/choices.tpl.html",'<div ng-show="$select.open" class="ui-select-choices ui-select-dropdown selectize-dropdown" ng-class="{\'single\': !$select.multiple, \'multi\': $select.multiple}"><div class="ui-select-choices-content selectize-dropdown-content"><div class="ui-select-choices-group optgroup"><div ng-show="$select.isGrouped" class="ui-select-choices-group-label optgroup-header" ng-bind="$group.name"><\/div><div role="option" class="ui-select-choices-row" ng-class="{active: $select.isActive(this), disabled: $select.isDisabled(this)}"><div class="option ui-select-choices-row-inner" data-selectable=""><\/div><\/div><\/div><\/div><\/div>');n.put("selectize/match-multiple.tpl.html",'<div class="ui-select-match" data-value="" ng-repeat="$item in $select.selected track by $index" ng-click="$selectMultiple.activeMatchIndex = $index;" ng-class="{\'active\':$selectMultiple.activeMatchIndex === $index}" ui-select-sort="$select.selected"><span class="ui-select-match-item" ng-class="{\'select-locked\':$select.isLocked(this, $index)}"><span uis-transclude-append=""><\/span> <span class="remove ui-select-match-close" ng-hide="$select.disabled" ng-click="$selectMultiple.removeChoice($index)">&times;<\/span><\/span><\/div>');n.put("selectize/match.tpl.html",'<div ng-hide="$select.searchEnabled && ($select.open || $select.isEmpty())" class="ui-select-match"><span ng-show="!$select.searchEnabled && ($select.isEmpty() || $select.open)" class="ui-select-placeholder text-muted">{{$select.placeholder}}<\/span> <span ng-hide="$select.isEmpty() || $select.open" ng-transclude=""><\/span><\/div>');n.put("selectize/no-choice.tpl.html",'<div class="ui-select-no-choice selectize-dropdown" ng-show="$select.items.length == 0"><div class="selectize-dropdown-content"><div data-selectable="" ng-transclude=""><\/div><\/div><\/div>');n.put("selectize/select-multiple.tpl.html",'<div class="ui-select-container selectize-control multi plugin-remove_button" ng-class="{\'open\': $select.open}"><div class="selectize-input" ng-class="{\'focus\': $select.open, \'disabled\': $select.disabled, \'selectize-focus\' : $select.focus}" ng-click="$select.open && !$select.searchEnabled ? $select.toggle($event) : $select.activate()"><div class="ui-select-match"><\/div><input type="search" autocomplete="off" tabindex="-1" class="ui-select-search" ng-class="{\'ui-select-search-hidden\':!$select.searchEnabled}" placeholder="{{$selectMultiple.getPlaceholder()}}" ng-model="$select.search" ng-disabled="$select.disabled" aria-expanded="{{$select.open}}" aria-label="{{ $select.baseTitle }}" ondrop="return false;"><\/div><div class="ui-select-choices"><\/div><div class="ui-select-no-choice"><\/div><\/div>');n.put("selectize/select.tpl.html",'<div class="ui-select-container selectize-control single" ng-class="{\'open\': $select.open}"><div class="selectize-input" ng-class="{\'focus\': $select.open, \'disabled\': $select.disabled, \'selectize-focus\' : $select.focus}" ng-click="$select.open && !$select.searchEnabled ? $select.toggle($event) : $select.activate()"><div class="ui-select-match"><\/div><input type="search" autocomplete="off" tabindex="-1" class="ui-select-search ui-select-toggle" ng-class="{\'ui-select-search-hidden\':!$select.searchEnabled}" ng-click="$select.toggle($event)" placeholder="{{$select.placeholder}}" ng-model="$select.search" ng-hide="!$select.isEmpty() && !$select.open" ng-disabled="$select.disabled" aria-label="{{ $select.baseTitle }}"><\/div><div class="ui-select-choices"><\/div><div class="ui-select-no-choice"><\/div><\/div>')}]);angular.module("oitozero.ngSweetAlert",[]).factory("SweetAlert",["$rootScope",function(n){var t=window.swal;return{swal:function(i,r,u){n.$evalAsync(function(){"function"==typeof r?t(i,function(t){n.$evalAsync(function(){r(t)})},u):t(i,r,u)})},success:function(i,r){n.$evalAsync(function(){t(i,r,"success")})},error:function(i,r){n.$evalAsync(function(){t(i,r,"error")})},warning:function(i,r){n.$evalAsync(function(){t(i,r,"warning")})},info:function(i,r){n.$evalAsync(function(){t(i,r,"info")})}}}]);!function(n,t){"use strict";var u=["ng","oc.lazyLoad"],r={},l=[],i=[],a=[],e=[],o=n.noop,s={},c=[],y=n.module("oc.lazyLoad",["ng"]),v,h,f;y.provider("$ocLazyLoad",["$controllerProvider","$provide","$compileProvider","$filterProvider","$injector","$animateProvider",function(v,y,p,w,b,k){function it(t,i,r){var l,e,h,v,y,p;if(i){for(v=[],l=i.length-1;l>=0;l--)if(e=i[l],n.isString(e)||(e=ot(e)),e&&-1===c.indexOf(e)&&(!d[e]||-1!==a.indexOf(e))){if(y=-1===u.indexOf(e),h=f(e),y&&(u.push(e),it(t,h.requires,r)),h._runBlocks.length>0)for(s[e]=[];h._runBlocks.length>0;)s[e].push(h._runBlocks.shift());n.isDefined(s[e])&&(y||r.rerun)&&(v=v.concat(s[e]));g(t,h._invokeQueue,e,r.reconfig);g(t,h._configBlocks,e,r.reconfig);o(y?"ocLazyLoad.moduleLoaded":"ocLazyLoad.moduleReloaded",e);i.pop();c.push(e)}p=t.getInstanceInjector();n.forEach(v,function(n){p.invoke(n)})}}function et(t,i){function c(t,i){var u,r=!0;return i.length&&(u=s(t),n.forEach(i,function(n){r=r&&s(n)!==u})),r}function s(t){return n.isArray(t)?tt(t.toString()):n.isObject(t)?tt(ft(t)):n.isDefined(t)&&null!==t?tt(t.toString()):t}var f=t[2][0],u=t[1],h=!1,e;if(n.isUndefined(r[i])&&(r[i]={}),n.isUndefined(r[i][u])&&(r[i][u]={}),e=function(n,t){r[i][u].hasOwnProperty(n)||(r[i][u][n]=[]);c(t,r[i][u][n])&&(h=!0,r[i][u][n].push(t),o("ocLazyLoad.componentLoaded",[i,u,n]))},n.isString(f))e(f,t[2][1]);else{if(!n.isObject(f))return!1;n.forEach(f,function(t,i){n.isString(t)?e(t,f[1]):e(i,t)})}return h}function g(t,i,r,u){var s,c,f,e,a,h,o,v;if(i)for(s=0,c=i.length;c>s;s++)if(f=i[s],n.isArray(f)){if(null!==t){if(!t.hasOwnProperty(f[0]))throw new Error("unsupported provider "+f[0]);e=t[f[0]]}if(a=et(f,r),"invoke"!==f[1])a&&n.isDefined(e)&&e[f[1]].apply(e,f[2]);else if(h=function(t){var i=l.indexOf(r+"-"+t);(-1===i||u)&&(-1===i&&l.push(r+"-"+t),n.isDefined(e)&&e[f[1]].apply(e,f[2]))},n.isFunction(f[2][0]))h(f[2][0]);else if(n.isArray(f[2][0]))for(o=0,v=f[2][0].length;v>o;o++)n.isFunction(f[2][0][o])&&h(f[2][0][o])}}function ot(t){var i=null;return n.isString(t)?i=t:n.isObject(t)&&t.hasOwnProperty("name")&&n.isString(t.name)&&(i=t.name),i}function st(t){if(!n.isString(t))return!1;try{return f(t)}catch(i){if(/No module/.test(i)||i.message.indexOf("$injector:nomod")>-1)return!1}}var d={},ht={$controllerProvider:v,$compileProvider:p,$filterProvider:w,$provide:y,$injector:b,$animateProvider:k},rt=!1,ct=!1,nt=[],ut={},ft,tt;nt.push=function(n){-1===this.indexOf(n)&&Array.prototype.push.apply(this,arguments)};this.config=function(t){n.isDefined(t.modules)&&(n.isArray(t.modules)?n.forEach(t.modules,function(n){d[n.name]=n}):d[t.modules.name]=t.modules);n.isDefined(t.debug)&&(rt=t.debug);n.isDefined(t.events)&&(ct=t.events)};this._init=function(r){var h;if(0===i.length){var s=[r],o=["ng:app","ng-app","x-ng-app","data-ng-app"],c=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/,f=function(n){return n&&s.push(n)};n.forEach(o,function(t){o[t]=!0;f(document.getElementById(t));t=t.replace(":","\\:");"undefined"!=typeof r[0]&&r[0].querySelectorAll&&(n.forEach(r[0].querySelectorAll("."+t),f),n.forEach(r[0].querySelectorAll("."+t+"\\:"),f),n.forEach(r[0].querySelectorAll("["+t+"]"),f))});n.forEach(s,function(t){if(0===i.length){var f=" "+r.className+" ",u=c.exec(f);u?i.push((u[2]||"").replace(/\s+/g,",")):n.forEach(t.attributes,function(n){0===i.length&&o[n.name]&&i.push(n.value)})}})}0!==i.length||(t.jasmine||t.mocha)&&n.isDefined(n.mock)||console.error("No module found during bootstrap, unable to init ocLazyLoad. You should always use the ng-app directive or angular.boostrap when you use ocLazyLoad.");h=function l(t){if(-1===u.indexOf(t)){u.push(t);var i=n.module(t);g(null,i._invokeQueue,t);g(null,i._configBlocks,t);n.forEach(i.requires,l)}};n.forEach(i,function(n){h(n)});i=[];e.pop()};ft=function(t){try{return JSON.stringify(t)}catch(r){var i=[];return JSON.stringify(t,function(t,r){if(n.isObject(r)&&null!==r){if(-1!==i.indexOf(r))return;i.push(r)}return r})}};tt=function(n){var i,r,u,t=0;if(0==n.length)return t;for(i=0,u=n.length;u>i;i++)r=n.charCodeAt(i),t=(t<<5)-t+r,t|=0;return t};this.$get=["$log","$rootElement","$rootScope","$cacheFactory","$q",function(t,r,s,l,a){function v(n){var i=a.defer();return t.error(n.message),i.reject(n),i.promise}var y,p=l("ocLazyLoad");return rt||(t={},t.error=n.noop,t.warn=n.noop,t.info=n.noop),ht.getInstanceInjector=function(){return y?y:y=r.data("$injector")||n.injector()},o=function(n,i){ct&&s.$broadcast(n,i);rt&&t.info(n,i)},{_broadcast:o,_$log:t,_getFilesCache:function(){return p},toggleWatch:function(n){n?e.push(!0):e.pop()},getModuleConfig:function(t){if(!n.isString(t))throw new Error("You need to give the name of the module to get");return d[t]?n.copy(d[t]):null},setModuleConfig:function(t){if(!n.isObject(t))throw new Error("You need to give the module config object to set");return d[t.name]=t,t},getModules:function(){return u},isLoaded:function(t){var f=function(n){var t=u.indexOf(n)>-1;return t||(t=!!st(n)),t},i,r;if(n.isString(t)&&(t=[t]),n.isArray(t)){for(i=0,r=t.length;r>i;i++)if(!f(t[i]))return!1;return!0}throw new Error("You need to define the module(s) name(s)");},_getModuleName:ot,_getModule:function(n){try{return f(n)}catch(t){throw(/No module/.test(t)||t.message.indexOf("$injector:nomod")>-1)&&(t.message='The module "'+ft(n)+'" that you are trying to load does not exist. '+t.message),t;}},moduleExists:st,_loadDependencies:function(t,i){var e,o,u,f=[],r=this;if(t=r._getModuleName(t),null===t)return a.when();try{e=r._getModule(t)}catch(s){return v(s)}return o=r.getRequires(e),n.forEach(o,function(e){var s,o;if(n.isString(e)){if(s=r.getModuleConfig(e),null===s)return void nt.push(e);e=s;s.name=void 0}if(r.moduleExists(e.name))return u=e.files.filter(function(n){return r.getModuleConfig(e.name).files.indexOf(n)<0}),0!==u.length&&r._$log.warn('Module "',t,'" attempted to redefine configuration for dependency. "',e.name,'"\n Additional Files Loaded:',u),n.isDefined(r.filesLoader)?void f.push(r.filesLoader(e,i).then(function(){return r._loadDependencies(e)})):v(new Error("Error: New dependencies need to be loaded from external files ("+e.files+"), but no loader has been defined."));if(n.isArray(e)?(o=[],n.forEach(e,function(n){var t=r.getModuleConfig(n);null===t?o.push(n):t.files&&(o=o.concat(t.files))}),o.length>0&&(e={files:o})):n.isObject(e)&&e.hasOwnProperty("name")&&e.name&&(r.setModuleConfig(e),nt.push(e.name)),n.isDefined(e.files)&&0!==e.files.length){if(!n.isDefined(r.filesLoader))return v(new Error('Error: the module "'+e.name+'" is defined in external files ('+e.files+"), but no loader has been defined."));f.push(r.filesLoader(e,i).then(function(){return r._loadDependencies(e)}))}}),a.all(f)},inject:function(t){var r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],f=this,u=a.defer(),e,o,s;if(n.isDefined(t)&&null!==t){if(n.isArray(t))return e=[],n.forEach(t,function(n){e.push(f.inject(n))}),a.all(e);f._addToLoadList(f._getModuleName(t),!0)}if(i.length>0)o=i.slice(),s=function h(n){nt.push(n);ut[n]=u.promise;f._loadDependencies(n,r).then(function(){try{c=[];it(ht,nt,r)}catch(n){return f._$log.error(n.message),void u.reject(n)}i.length>0?h(i.shift()):u.resolve(o)},function(n){u.reject(n)})},s(i.shift());else{if(r&&r.name&&ut[r.name])return ut[r.name];u.resolve()}return u.promise},getRequires:function(t){var i=[];return n.forEach(t.requires,function(n){-1===u.indexOf(n)&&i.push(n)}),i},_invokeQueue:g,_registerInvokeList:et,_register:it,_addToLoadList:h}}];this._init(n.element(t.document))}]);v=n.bootstrap;n.bootstrap=function(t,i,r){return n.forEach(i.slice(),function(n){h(n,!0,!0)}),v(t,i,r)};h=function(t,r,u){(e.length>0||r)&&n.isString(t)&&-1===i.indexOf(t)&&(i.push(t),u&&a.push(t))};f=n.module;n.module=function(n,t,i){return h(n,!1,!0),f(n,t,i)};"undefined"!=typeof module&&"undefined"!=typeof exports&&module.exports===exports&&(module.exports="oc.lazyLoad")}(angular,window),function(n){"use strict";n.module("oc.lazyLoad").directive("ocLazyLoad",["$ocLazyLoad","$compile","$animate","$parse",function(t,i,r,u){return{restrict:"A",terminal:!0,priority:1e3,compile:function(f){var e=f[0].innerHTML;return f.html(""),function(o,s,h){var c=u(h.ocLazyLoad);o.$watch(function(){return c(o)||h.ocLazyLoad},function(u){n.isDefined(u)&&t.load(u).then(function(){r.enter(e,s);var t=f.contents();n.forEach(t,function(n){3!==n.nodeType&&i(n)(o)})})},!0)}}}}])}(angular),function(n){"use strict";n.module("oc.lazyLoad").config(["$provide",function(t){t.decorator("$ocLazyLoad",["$delegate","$q","$window","$interval",function(t,i,r,u){var e=!1,f=!1,o=r.document.getElementsByTagName("head")[0]||r.document.getElementsByTagName("body")[0];return t.buildElement=function(s,h,c){var l,d,v=i.defer(),y=t._getFilesCache(),g=function(n){var t=(new Date).getTime();return n.indexOf("?")>=0?"&"===n.substring(0,n.length-1)?n+"_dc="+t:n+"&_dc="+t:n+"?_dc="+t},p,w,a,b,nt,tt,k,it,rt;switch(n.isUndefined(y.get(h))&&y.put(h,v.promise),s){case"css":l=r.document.createElement("link");l.type="text/css";l.rel="stylesheet";l.href=c.cache===!1?g(h):h;break;case"js":l=r.document.createElement("script");l.src=c.cache===!1?g(h):h;break;default:y.remove(h);v.reject(new Error('Requested type "'+s+'" is not known. Could not inject "'+h+'"'))}return l.onload=l.onreadystatechange=function(){l.readyState&&!/^c|loade/.test(l.readyState)||d||(l.onload=l.onreadystatechange=null,d=1,t._broadcast("ocLazyLoad.fileLoaded",h),v.resolve())},l.onerror=function(){y.remove(h);v.reject(new Error("Unable to load "+h))},l.async=c.serie?0:1,p=o.lastChild,c.insertBefore&&(w=n.element(n.isDefined(window.jQuery)?c.insertBefore:document.querySelector(c.insertBefore)),w&&w.length>0&&(p=w[0])),(p.parentNode.insertBefore(l,p),"css"==s)&&(e||(a=r.navigator.userAgent.toLowerCase(),/iP(hone|od|ad)/.test(r.navigator.platform)?(b=r.navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/),nt=parseFloat([parseInt(b[1],10),parseInt(b[2],10),parseInt(b[3]||0,10)].join(".")),f=6>nt):a.indexOf("android")>-1?(tt=parseFloat(a.slice(a.indexOf("android")+8)),f=4.4>tt):a.indexOf("safari")>-1&&(k=a.match(/version\/([\.\d]+)/i),f=k&&k[1]&&parseFloat(k[1])<6)),f&&(it=1e3,rt=u(function(){try{l.sheet.cssRules;u.cancel(rt);l.onload()}catch(n){--it<=0&&l.onerror()}},20))),v.promise},t}])}])}(angular),function(n){"use strict";n.module("oc.lazyLoad").config(["$provide",function(t){t.decorator("$ocLazyLoad",["$delegate","$q",function(t,i){return t.filesLoader=function(r){var u=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],e=[],o=[],s=[],f=[],h=null,w=t._getFilesCache(),v,c,l,a,y,p;return(t.toggleWatch(!0),n.extend(u,r),v=function(i){var c,r=null;if(n.isObject(i)&&(r=i.type,i=i.path),h=w.get(i),n.isUndefined(h)||u.cache===!1){if(null!==(c=/^(css|less|html|htm|js)?(?=!)/.exec(i))&&(r=c[1],i=i.substr(c[1].length+1,i.length)),!r)if(null!==(c=/[.](css|less|html|htm|js)?((\?|#).*)?$/.exec(i)))r=c[1];else{if(t.jsLoader.hasOwnProperty("ocLazyLoadLoader")||!t.jsLoader.hasOwnProperty("load"))return void t._$log.error("File type could not be determined. "+i);r="js"}"css"!==r&&"less"!==r||-1!==e.indexOf(i)?"html"!==r&&"htm"!==r||-1!==o.indexOf(i)?"js"===r||-1===s.indexOf(i)?s.push(i):t._$log.error("File type is not valid. "+i):o.push(i):e.push(i)}else h&&f.push(h)},(u.serie?v(u.files.shift()):n.forEach(u.files,function(n){v(n)}),e.length>0)&&(c=i.defer(),t.cssLoader(e,function(i){n.isDefined(i)&&t.cssLoader.hasOwnProperty("ocLazyLoadLoader")?(t._$log.error(i),c.reject(i)):c.resolve()},u),f.push(c.promise)),o.length>0&&(l=i.defer(),t.templatesLoader(o,function(i){n.isDefined(i)&&t.templatesLoader.hasOwnProperty("ocLazyLoadLoader")?(t._$log.error(i),l.reject(i)):l.resolve()},u),f.push(l.promise)),s.length>0&&(a=i.defer(),t.jsLoader(s,function(i){n.isDefined(i)&&t.jsLoader.hasOwnProperty("ocLazyLoadLoader")?(t._$log.error(i),a.reject(i)):a.resolve()},u),f.push(a.promise)),0===f.length)?(y=i.defer(),p="Error: no file to load has been found, if you're trying to load an existing module you should use the 'inject' method instead of 'load'.",t._$log.error(p),y.reject(p),y.promise):u.serie&&u.files.length>0?i.all(f).then(function(){return t.filesLoader(r,u)}):i.all(f)["finally"](function(n){return t.toggleWatch(!1),n})},t.load=function(r){var h,v=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],o=this,u=null,c=[],e=i.defer(),f=n.copy(r),l=n.copy(v),a,s;return n.isArray(f)?(n.forEach(f,function(n){c.push(o.load(n,l))}),i.all(c).then(function(n){e.resolve(n)},function(n){e.reject(n)}),e.promise):(n.isString(f)?(u=o.getModuleConfig(f),u||(u={files:[f]})):n.isObject(f)&&(u=n.isDefined(f.path)&&n.isDefined(f.type)?{files:[f]}:o.setModuleConfig(f)),null===u)?(a=o._getModuleName(f),h='Module "'+(a||"unknown")+'" is not configured, cannot load.',t._$log.error(h),e.reject(new Error(h)),e.promise):(n.isDefined(u.template)&&(n.isUndefined(u.files)&&(u.files=[]),n.isString(u.template)?u.files.push(u.template):n.isArray(u.template)&&u.files.concat(u.template)),s=n.extend({},l,u),n.isUndefined(u.files)&&n.isDefined(u.name)&&t.moduleExists(u.name)?t.inject(u.name,s):(t.filesLoader(u,s).then(function(){t.inject(null,s).then(function(n){e.resolve(n)},function(n){e.reject(n)})},function(n){e.reject(n)}),e.promise))},t}])}])}(angular),function(n){"use strict";n.module("oc.lazyLoad").config(["$provide",function(t){t.decorator("$ocLazyLoad",["$delegate","$q",function(t,i){return t.cssLoader=function(r,u,f){var e=[];n.forEach(r,function(n){e.push(t.buildElement("css",n,f))});i.all(e).then(function(){u()},function(n){u(n)})},t.cssLoader.ocLazyLoadLoader=!0,t}])}])}(angular),function(n){"use strict";n.module("oc.lazyLoad").config(["$provide",function(t){t.decorator("$ocLazyLoad",["$delegate","$q",function(t,i){return t.jsLoader=function(r,u,f){var e=[];n.forEach(r,function(n){e.push(t.buildElement("js",n,f))});i.all(e).then(function(){u()},function(n){u(n)})},t.jsLoader.ocLazyLoadLoader=!0,t}])}])}(angular),function(n){"use strict";n.module("oc.lazyLoad").config(["$provide",function(t){t.decorator("$ocLazyLoad",["$delegate","$templateCache","$q","$http",function(t,i,r,u){return t.templatesLoader=function(f,e,o){var s=[],h=t._getFilesCache();return n.forEach(f,function(t){var f=r.defer();s.push(f.promise);u.get(t,o).success(function(r){n.isString(r)&&r.length>0&&n.forEach(n.element(r),function(n){"SCRIPT"===n.nodeName&&"text/ng-template"===n.type&&i.put(n.id,n.innerHTML)});n.isUndefined(h.get(t))&&h.put(t,!0);f.resolve()}).error(function(n){f.reject(new Error('Unable to load template file "'+t+'": '+n))})}),r.all(s).then(function(){e()},function(n){e(n)})},t.templatesLoader.ocLazyLoadLoader=!0,t}])}])}(angular);Array.prototype.indexOf||(Array.prototype.indexOf=function(n,t){var r,f,u,i;if(null==this)throw new TypeError('"this" is null or not defined');if((f=Object(this),u=f.length>>>0,0===u)||(i=+t||0,Math.abs(i)===1/0&&(i=0),i>=u))return-1;for(r=Math.max(i>=0?i:u-Math.abs(i),0);u>r;){if(r in f&&f[r]===n)return r;r++}return-1});angular.module("ngDraggable",[]).service("ngDraggable",[function(){var n=this;n.inputEvent=function(n){return angular.isDefined(n.touches)?n.touches[0]:angular.isDefined(n.originalEvent)&&angular.isDefined(n.originalEvent.touches)?n.originalEvent.touches[0]:n}}]).directive("ngDrag",["$rootScope","$parse","$document","$window","ngDraggable",function(n,t,i,r,u){return{restrict:"A",link:function(f,e,o){f.value=o.ngDrag;var w,d=!1,s,h,c,l,g,nt,ut="ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch,ft="touchstart mousedown",b="touchmove mousemove",k="touchend mouseup",tt,et=f.$id,a=null,v=null,p=!1,ot=null,st=t(o.ngDragStart)||null,ht=t(o.ngDragStop)||null,ct=t(o.ngDragSuccess)||null,it=angular.isDefined(o.allowTransform)?f.$eval(o.allowTransform):!0,wt=t(o.ngDragData),lt=angular.noop,bt=function(){var n;e.attr("draggable","false");n=e[0].querySelectorAll?angular.element(e[0].querySelectorAll("[ng-drag-handle]")):e.find("[ng-drag-handle]");n.length&&(tt=n);at(!0)},at=function(n){if(n){if(f.$on("$destroy",kt),f.$watch(o.ngDrag,dt),f.$watch(o.ngCenterAnchor,gt),tt)tt.on(ft,vt);else e.on(ft,vt);if(!ut&&e[0].nodeName.toLowerCase()=="img")e.on("mousedown",function(){return!1})}},kt=function(){at(!1)},dt=function(n){p=n},gt=function(n){angular.isDefined(n)&&(d=n||"true")},ni=function(n){return angular.isDefined(angular.element(n.target).attr("ng-cancel-drag"))},vt=function(n){if(p&&!ni(n)&&(n.type!="mousedown"||n.button==0))if(ut){y();ot=setTimeout(function(){y();yt(n)},100);i.on(b,y);i.on(k,y)}else yt(n)},y=function(){clearTimeout(ot);i.off(b,y);i.off(k,y)},yt=function(t){if(p){t.preventDefault();w=e[0].getBoundingClientRect();v=it?w:{left:document.body.scrollLeft,top:document.body.scrollTop};e.centerX=e[0].offsetWidth/2;e.centerY=e[0].offsetHeight/2;s=u.inputEvent(t).pageX;h=u.inputEvent(t).pageY;g=s-w.left;nt=h-w.top;d?(c=s-e.centerX-r.pageXOffset,l=h-e.centerY-r.pageYOffset):(c=s-g-r.pageXOffset,l=h-nt-r.pageYOffset);i.on(b,rt);i.on(k,pt);lt=n.$on("draggable:_triggerHandlerMove",function(n,t){rt(t)})}},rt=function(t){p&&(t.preventDefault(),e.hasClass("dragging")||(a=wt(f),e.addClass("dragging"),n.$broadcast("draggable:start",{x:s,y:h,tx:c,ty:l,event:t,element:e,data:a}),st&&f.$apply(function(){st(f,{$data:a,$event:t})})),s=u.inputEvent(t).pageX,h=u.inputEvent(t).pageY,d?(c=s-e.centerX-v.left,l=h-e.centerY-v.top):(c=s-g-v.left,l=h-nt-v.top),ri(c,l),n.$broadcast("draggable:move",{x:s,y:h,tx:c,ty:l,event:t,element:e,data:a,uid:et,dragOffset:v}))},pt=function(t){p&&(t.preventDefault(),n.$broadcast("draggable:end",{x:s,y:h,tx:c,ty:l,event:t,element:e,data:a,callback:ti,uid:et}),e.removeClass("dragging"),e.parent().find(".drag-enter").removeClass("drag-enter"),ii(),i.off(b,rt),i.off(k,pt),ht&&f.$apply(function(){ht(f,{$data:a,$event:t})}),lt())},ti=function(n){ct&&f.$apply(function(){ct(f,{$data:a,$event:n})})},ii=function(){it?e.css({transform:"","z-index":"","-webkit-transform":"","-ms-transform":""}):e.css({position:"",top:"",left:""})},ri=function(n,t){it?e.css({transform:"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, "+n+", "+t+", 0, 1)","z-index":99999,"-webkit-transform":"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, "+n+", "+t+", 0, 1)","-ms-transform":"matrix(1, 0, 0, 1, "+n+", "+t+")"}):e.css({left:n+"px",top:t+"px",position:"fixed"})};bt()}}}]).directive("ngDrop",["$parse","$timeout","$window","$document","ngDraggable",function(n,t,i,r){return{restrict:"A",link:function(i,u,f){i.value=f.ngDrop;i.isTouching=!1;var o=null,l=i.$id,e=!1,a=n(f.ngDropSuccess),v=n(f.ngDragStart),y=n(f.ngDragStop),p=n(f.ngDragMove),w=function(){c(!0)},c=function(n){n&&(i.$watch(f.ngDrop,k),i.$on("$destroy",b),i.$on("draggable:start",d),i.$on("draggable:move",g),i.$on("draggable:end",nt))},b=function(){c(!1)},k=function(n){e=n},d=function(n,r){e&&(s(r.x,r.y,r.element),f.ngDragStart&&t(function(){v(i,{$data:r.data,$event:r})}))},g=function(n,r){e&&(s(r.x,r.y,r.element),f.ngDragMove&&t(function(){p(i,{$data:r.data,$event:r})}))},nt=function(n,r){if(!e||l===r.uid){h(!1,r.element);return}s(r.x,r.y,r.element)&&(r.callback&&r.callback(r),f.ngDropSuccess&&t(function(){a(i,{$data:r.data,$event:r,$target:i.$eval(i.value)})}));f.ngDragStop&&t(function(){y(i,{$data:r.data,$event:r})});h(!1,r.element)},s=function(n,t,r){var f=tt(n,t);return i.isTouching=f,f&&(o=u),h(f,r),f},h=function(n,t){n?(u.addClass("drag-enter"),t.addClass("drag-over")):o==u&&(o=null,u.removeClass("drag-enter"),t.removeClass("drag-over"))},tt=function(n,t){var i=u[0].getBoundingClientRect();return n-=r[0].body.scrollLeft+r[0].documentElement.scrollLeft,t-=r[0].body.scrollTop+r[0].documentElement.scrollTop,n>=i.left&&n<=i.right&&t<=i.bottom&&t>=i.top};w()}}}]).directive("ngDragClone",["$parse","$timeout","ngDraggable",function(){return{restrict:"A",link:function(n,t){var r,i=!0;n.clonedData={};var o=function(){r=t.find("img");t.attr("draggable","false");r.attr("draggable","false");u();s(!0)},s=function(t){t&&(n.$on("draggable:start",c),n.$on("draggable:move",l),n.$on("draggable:end",a),h())},h=function(){r.off("mousedown touchstart touchmove touchend touchcancel",e);r.on("mousedown touchstart touchmove touchend touchcancel",e)},c=function(r,u){i=!0;angular.isDefined(u.data.allowClone)&&(i=u.data.allowClone);i&&(n.$apply(function(){n.clonedData=u.data}),t.css("width",u.element[0].offsetWidth),t.css("height",u.element[0].offsetHeight),f(u.tx,u.ty))},l=function(n,t){i&&(_tx=t.tx+t.dragOffset.left,_ty=t.ty+t.dragOffset.top,f(_tx,_ty))},a=function(){i&&u()},u=function(){t.css({left:0,top:0,position:"fixed","z-index":-1,visibility:"hidden"})},f=function(n,i){t.css({transform:"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, "+n+", "+i+", 0, 1)","z-index":99999,visibility:"visible","-webkit-transform":"matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, "+n+", "+i+", 0, 1)","-ms-transform":"matrix(1, 0, 0, 1, "+n+", "+i+")"})},e=function(n){var t=n;return t.preventDefault&&t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.cancelBubble=!0,t.returnValue=!1,!1};o()}}}]).directive("ngPreventDrag",["$parse","$timeout",function(){return{restrict:"A",link:function(n,t){var i=function(){t.attr("draggable","false");r(!0)},r=function(n){if(n)t.on("mousedown touchstart touchmove touchend touchcancel",u)},u=function(n){var t=n.originalEvent;return t.preventDefault&&t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.cancelBubble=!0,t.returnValue=!1,!1};i()}}}]).directive("ngCancelDrag",[function(){return{restrict:"A",link:function(n,t){t.find("*").attr("ng-cancel-drag","ng-cancel-drag")}}}]).directive("ngDragScroll",["$window","$interval","$timeout","$document","$rootScope",function(n,t,i,r,u){return{restrict:"A",link:function(t,i,f){var o=null,e={verticalScroll:f.verticalScroll||!0,horizontalScroll:f.horizontalScroll||!0,activationDistance:f.activationDistance||75,scrollDistance:f.scrollDistance||15},h=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(n){window.setTimeout(n,1e3/60)}}(),s=!1,c=function(){function t(n){var i=Array.prototype.slice.call(arguments);s&&h(function(){u.$apply(function(){n.apply(null,i);t(n)})})}s=!0;t(function(){var s,h;if(o){var c=Math.max(document.documentElement.clientWidth,window.innerWidth||0),l=Math.max(document.documentElement.clientHeight,window.innerHeight||0),t=0,f=0;if(e.horizontalScroll&&(o.clientX<e.activationDistance?t=-e.scrollDistance:o.clientX>c-e.activationDistance&&(t=e.scrollDistance)),e.verticalScroll&&(o.clientY<e.activationDistance?f=-e.scrollDistance:o.clientY>l-e.activationDistance&&(f=e.scrollDistance)),t!==0||f!==0){var a=n.pageXOffset||r[0].documentElement.scrollLeft,v=n.pageYOffset||r[0].documentElement.scrollTop,y=i.css("transform");i.css("transform","initial");n.scrollBy(t,f);s=(n.pageXOffset||r[0].documentElement.scrollLeft)-a;h=(n.pageYOffset||r[0].documentElement.scrollTop)-v;i.css("transform",y);o.pageX+=s;o.pageY+=h;u.$emit("draggable:_triggerHandlerMove",o)}}})},l=function(){s=!1};t.$on("draggable:start",function(n,t){t.element[0]===i[0]&&(s||c())});t.$on("draggable:end",function(n,t){t.element[0]===i[0]&&s&&l()});t.$on("draggable:move",function(n,t){t.element[0]===i[0]&&(o=t.event)})}}}]);angular.module("ng-showdown",["ngSanitize"]).provider("$showdown",ngShowdown).directive("sdModelToHtml",["$showdown","$sanitize","$sce",sdModelToHtmlDirective]).directive("markdownToHtml",["$showdown","$sanitize","$sce",markdownToHtmlDirective]).filter("sdStripHtml",["$showdown",stripHtmlFilter]).filter("stripHtml",["$showdown",stripHtmlFilter]),function(n,t,i){"use strict";function e(n){return u(n)?n:Object.keys(n).map(function(t){return n[t]})}function k(n){return n===null}function l(n,t){var r=Object.keys(n);return r.map(function(r){return t[r]!==i&&t[r]==n[r]}).indexOf(!1)==-1}function v(n,t){function f(n,t,i){for(var r=0;t+r<=n.length;){if(n.charAt(t+r)==i)return r;r++}return-1}for(var u=0,r,i=0;i<=t.length;i++){if(r=f(n,u,t.charAt(i)),r==-1)return!1;u+=r+1}return!0}function d(n,t,i){var r=0;return n.filter(function(n){var u=p(i)?r<t&&i(n):r<t;return r=u?r+1:r,u})}function h(n,t,i){return i.round(n*i.pow(10,t))/i.pow(10,t)}function g(n,t,i){t=t||[];var f=Object.keys(n);return f.forEach(function(f){var e,o;r(n[f])&&!u(n[f])?(e=i?i+"."+f:i,g(n[f],t,e||f)):(o=i?i+"."+f:f,t.push(o))}),t}function nt(n){return n&&n.$evalAsync&&n.$watch}function tt(){return function(n,t){return n>t}}function it(){return function(n,t){return n>=t}}function rt(){return function(n,t){return n<t}}function ut(){return function(n,t){return n<=t}}function ft(){return function(n,t){return n==t}}function et(){return function(n,t){return n!=t}}function ot(){return function(n,t){return n===t}}function st(){return function(n,t){return n!==t}}function ht(n){return function(t,i){return(t=r(t)?e(t):t,!u(t)||f(i))?!1:t.some(function(t){return o(i)&&r(t)||a(i)?n(i)(t):t===i})}}function y(n,t){return(t=t||0,t>=n.length)?n:u(n[t])?y(n.slice(0,t).concat(n[t],n.slice(t+1)),t):y(n,t+1)}function ct(n){return function(t,i){function h(n,t){return f(t)?!1:n.some(function(n){return c(n,t)})}if(t=r(t)?e(t):t,!u(t))return t;var o=[],s=n(i);return f(i)?t.filter(function(n,t,i){return i.indexOf(n)===t}):t.filter(function(n){var t=s(n);return h(o,t)?!1:(o.push(t),!0)})}}function lt(n,t,i){return t?n+i+lt(n,--t,i):n}var p=t.isDefined,f=t.isUndefined,a=t.isFunction,o=t.isString,s=t.isNumber,r=t.isObject,u=t.isArray,w=t.forEach,b=t.extend,at=t.copy,c=t.equals;String.prototype.contains||(String.prototype.contains=function(){return String.prototype.indexOf.apply(this,arguments)!==-1});t.module("a8m.angular",[]).filter("isUndefined",function(){return function(n){return t.isUndefined(n)}}).filter("isDefined",function(){return function(n){return t.isDefined(n)}}).filter("isFunction",function(){return function(n){return t.isFunction(n)}}).filter("isString",function(){return function(n){return t.isString(n)}}).filter("isNumber",function(){return function(n){return t.isNumber(n)}}).filter("isArray",function(){return function(n){return t.isArray(n)}}).filter("isObject",function(){return function(n){return t.isObject(n)}}).filter("isEqual",function(){return function(n,i){return t.equals(n,i)}});t.module("a8m.conditions",[]).filter({isGreaterThan:tt,">":tt,isGreaterThanOrEqualTo:it,">=":it,isLessThan:rt,"<":rt,isLessThanOrEqualTo:ut,"<=":ut,isEqualTo:ft,"==":ft,isNotEqualTo:et,"!=":et,isIdenticalTo:ot,"===":ot,isNotIdenticalTo:st,"!==":st});t.module("a8m.is-null",[]).filter("isNull",function(){return function(n){return k(n)}});t.module("a8m.after-where",[]).filter("afterWhere",function(){return function(n,t){if(n=r(n)?e(n):n,!u(n)||f(t))return n;var i=n.map(function(n){return l(t,n)}).indexOf(!0);return n.slice(i===-1?0:i)}});t.module("a8m.after",[]).filter("after",function(){return function(n,t){return n=r(n)?e(n):n,u(n)?n.slice(t):n}});t.module("a8m.before-where",[]).filter("beforeWhere",function(){return function(n,t){if(n=r(n)?e(n):n,!u(n)||f(t))return n;var i=n.map(function(n){return l(t,n)}).indexOf(!0);return n.slice(0,i===-1?n.length:++i)}});t.module("a8m.before",[]).filter("before",function(){return function(n,t){return n=r(n)?e(n):n,u(n)?n.slice(0,t?--t:t):n}});t.module("a8m.chunk-by",["a8m.filter-watcher"]).filter("chunkBy",["filterWatcher",function(n){return function(t,i,r){function e(n,t){for(var i=[];n--;)i[n]=t;return i}function o(n,t,i){return u(n)?n.map(function(n,r,u){return r=r*t,n=u.slice(r,r+t),!f(i)&&n.length<t?n.concat(e(t-n.length,i)):n}).slice(0,Math.ceil(n.length/t)):n}return n.isMemoized("chunkBy",arguments)||n.memoize("chunkBy",arguments,this,o(t,i,r))}}]);t.module("a8m.concat",[]).filter("concat",[function(){return function(n,t){if(f(t))return n;if(u(n))return r(t)?n.concat(e(t)):n.concat(t);if(r(n)){var i=e(n);return r(t)?i.concat(e(t)):i.concat(t)}return n}}]);t.module("a8m.contains",[]).filter({contains:["$parse",ht],some:["$parse",ht]});t.module("a8m.count-by",[]).filter("countBy",["$parse",function(n){return function(t,i){var o={},h=n(i),s;return(t=r(t)?e(t):t,!u(t)||f(i))?t:(t.forEach(function(n){s=h(n);o[s]||(o[s]=0);o[s]++}),o)}}]);t.module("a8m.defaults",[]).filter("defaults",["$parse",function(n){return function(t,i){if(t=r(t)?e(t):t,!u(t)||!r(i))return t;var o=g(i);return t.forEach(function(t){o.forEach(function(r){var u=n(r),e=u.assign;f(u(t))&&e(t,u(i))})}),t}}]);t.module("a8m.every",[]).filter("every",["$parse",function(n){return function(t,i){return(t=r(t)?e(t):t,!u(t)||f(i))?!0:t.every(function(t){return r(t)||a(i)?n(i)(t):t===i})}}]);t.module("a8m.filter-by",[]).filter("filterBy",["$parse",function(n){return function(t,h,c,l){var a;return(c=o(c)||s(c)?String(c).toLowerCase():i,t=r(t)?e(t):t,!u(t)||f(c))?t:t.filter(function(t){return h.some(function(i){if(~i.indexOf("+")){var r=i.replace(/\s+/g,"").split("+");a=r.map(function(i){return n(i)(t)}).join(" ")}else a=n(i)(t);return!o(a)&&!s(a)?!1:(a=String(a).toLowerCase(),l?a===c:a.contains(c))})})}}]);t.module("a8m.first",[]).filter("first",["$parse",function(n){return function(t){var h,o,f;return(t=r(t)?e(t):t,!u(t))?t:(f=Array.prototype.slice.call(arguments,1),h=s(f[0])?f[0]:1,o=s(f[0])?s(f[1])?i:f[1]:f[0],f.length?d(t,h,o?n(o):o):t[0])}}]);t.module("a8m.flatten",[]).filter("flatten",function(){return function(n,t){return(t=t||!1,n=r(n)?e(n):n,!u(n))?n:t?[].concat.apply([],n):y(n,0)}});t.module("a8m.fuzzy-by",[]).filter("fuzzyBy",["$parse",function(n){return function(t,i,s,h){var l=h||!1,c,a;return(t=r(t)?e(t):t,!u(t)||f(i)||f(s))?t:(a=n(i),t.filter(function(n){return(c=a(n),!o(c))?!1:(c=l?c:c.toLowerCase(),s=l?s:s.toLowerCase(),v(c,s)!==!1)}))}}]);t.module("a8m.fuzzy",[]).filter("fuzzy",function(){return function(n,t,i){function h(n,t){var u=Object.keys(n),i,r;return 0<u.filter(function(u){return(i=n[u],r)?!0:o(i)?(i=s?i:i.toLowerCase(),r=v(i,t)!==!1):!1}).length}var s=i||!1;return(n=r(n)?e(n):n,!u(n)||f(t))?n:(t=s?t:t.toLowerCase(),n.filter(function(n){return o(n)?(n=s?n:n.toLowerCase(),v(n,t)!==!1):r(n)?h(n,t):!1}))}});t.module("a8m.group-by",["a8m.filter-watcher"]).filter("groupBy",["$parse","filterWatcher",function(n,t){return function(i,u){function e(n,t){var i={},r;return w(n,function(n){r=t(n);i[r]||(i[r]=[]);i[r].push(n)}),i}return!r(i)||f(u)?i:t.isMemoized("groupBy",arguments)||t.memoize("groupBy",arguments,this,e(i,n(u)))}}]);t.module("a8m.is-empty",[]).filter("isEmpty",function(){return function(n){return r(n)?!e(n).length:!n.length}});t.module("a8m.join",[]).filter("join",function(){return function(n,t){return f(n)||!u(n)?n:(f(t)&&(t=" "),n.join(t))}});t.module("a8m.last",[]).filter("last",["$parse",function(n){return function(t){var c,h,o,f=at(t);return(f=r(f)?e(f):f,!u(f))?f:(o=Array.prototype.slice.call(arguments,1),c=s(o[0])?o[0]:1,h=s(o[0])?s(o[1])?i:o[1]:o[0],o.length?d(f.reverse(),c,h?n(h):h).reverse():f[f.length-1])}}]);t.module("a8m.map",[]).filter("map",["$parse",function(n){return function(t,i){return(t=r(t)?e(t):t,!u(t)||f(i))?t:t.map(function(t){return n(i)(t)})}}]);t.module("a8m.omit",[]).filter("omit",["$parse",function(n){return function(t,i){return(t=r(t)?e(t):t,!u(t)||f(i))?t:t.filter(function(t){return!n(i)(t)})}}]);t.module("a8m.pick",[]).filter("pick",["$parse",function(n){return function(t,i){return(t=r(t)?e(t):t,!u(t)||f(i))?t:t.filter(function(t){return n(i)(t)})}}]);t.module("a8m.range",[]).filter("range",function(){return function(n,t,i,r,u){var f,e;for(i=i||0,r=r||1,f=0;f<parseInt(t);f++)e=i+f*r,n.push(a(u)?u(e):e);return n}});t.module("a8m.remove-with",[]).filter("removeWith",function(){return function(n,t){return f(t)?n:(n=r(n)?e(n):n,n.filter(function(n){return!l(t,n)}))}});t.module("a8m.remove",[]).filter("remove",function(){return function(n){n=r(n)?e(n):n;var t=Array.prototype.slice.call(arguments,1);return u(n)?n.filter(function(n){return!t.some(function(t){return c(t,n)})}):n}});t.module("a8m.reverse",[]).filter("reverse",[function(){return function(n){return(n=r(n)?e(n):n,o(n))?n.split("").reverse().join(""):u(n)?n.slice().reverse():n}}]);t.module("a8m.search-field",[]).filter("searchField",["$parse",function(n){return function(t){var f,o,i;return(t=r(t)?e(t):t,i=Array.prototype.slice.call(arguments,1),!u(t)||!i.length)?t:t.map(function(t){return o=i.map(function(i){return f=n(i),f(t)}).join(" "),b(t,{searchField:o})})}}]);t.module("a8m.to-array",[]).filter("toArray",function(){return function(n,t){return r(n)?t?Object.keys(n).map(function(t){return b(n[t],{$key:t})}):e(n):n}});t.module("a8m.unique",[]).filter({unique:["$parse",ct],uniq:["$parse",ct]});t.module("a8m.where",[]).filter("where",function(){return function(n,t){return f(t)?n:(n=r(n)?e(n):n,n.filter(function(n){return l(t,n)}))}});t.module("a8m.xor",[]).filter("xor",["$parse",function(n){return function(t,i,f){function o(t,i){var r=n(f);return i.some(function(n){return f?c(r(n),r(t)):c(n,t)})}return(f=f||!1,t=r(t)?e(t):t,i=r(i)?e(i):i,!u(t)||!u(i))?t:t.concat(i).filter(function(n){return!(o(n,t)&&o(n,i))})}}]);t.module("a8m.math.byteFmt",["a8m.math"]).filter("byteFmt",["$math",function(n){return function(t,i){return s(i)&&isFinite(i)&&i%1==0&&i>=0&&s(t)&&isFinite(t)?t<1024?h(t,i,n)+" B":t<1048576?h(t/1024,i,n)+" KB":t<1073741824?h(t/1048576,i,n)+" MB":h(t/1073741824,i,n)+" GB":"NaN"}}]);t.module("a8m.math.degrees",["a8m.math"]).filter("degrees",["$math",function(n){return function(t,i){if(s(i)&&isFinite(i)&&i%1==0&&i>=0&&s(t)&&isFinite(t)){var r=t*180/n.PI;return n.round(r*n.pow(10,i))/n.pow(10,i)}return"NaN"}}]);t.module("a8m.math.kbFmt",["a8m.math"]).filter("kbFmt",["$math",function(n){return function(t,i){return s(i)&&isFinite(i)&&i%1==0&&i>=0&&s(t)&&isFinite(t)?t<1024?h(t,i,n)+" KB":t<1048576?h(t/1024,i,n)+" MB":h(t/1048576,i,n)+" GB":"NaN"}}]);t.module("a8m.math",[]).factory("$math",["$window",function(n){return n.Math}]);t.module("a8m.math.max",["a8m.math"]).filter("max",["$math","$parse",function(n,t){function i(i,r){var u=i.map(function(n){return t(r)(n)});return u.indexOf(n.max.apply(n,u))}return function(t,r){return u(t)?f(r)?n.max.apply(n,t):t[i(t,r)]:t}}]);t.module("a8m.math.min",["a8m.math"]).filter("min",["$math","$parse",function(n,t){function i(i,r){var u=i.map(function(n){return t(r)(n)});return u.indexOf(n.min.apply(n,u))}return function(t,r){return u(t)?f(r)?n.min.apply(n,t):t[i(t,r)]:t}}]);t.module("a8m.math.percent",["a8m.math"]).filter("percent",["$math","$window",function(n,t){return function(i,r,u){var f=o(i)?t.Number(i):i;return(r=r||100,u=u||!1,!s(f)||t.isNaN(f))?i:u?n.round(f/r*100):f/r*100}}]);t.module("a8m.math.radians",["a8m.math"]).filter("radians",["$math",function(n){return function(t,i){if(s(i)&&isFinite(i)&&i%1==0&&i>=0&&s(t)&&isFinite(t)){var r=t*3.14159265359/180;return n.round(r*n.pow(10,i))/n.pow(10,i)}return"NaN"}}]);t.module("a8m.math.radix",[]).filter("radix",function(){return function(n,t){return!s(n)||!/^[2-9]$|^[1-2]\d$|^3[0-6]$/.test(t)?n:n.toString(t).toUpperCase()}});t.module("a8m.math.shortFmt",["a8m.math"]).filter("shortFmt",["$math",function(n){return function(t,i){return s(i)&&isFinite(i)&&i%1==0&&i>=0&&s(t)&&isFinite(t)?t<1e3?t:t<1e6?h(t/1e3,i,n)+" K":t<1e9?h(t/1e6,i,n)+" M":h(t/1e9,i,n)+" B":"NaN"}}]);t.module("a8m.math.sum",[]).filter("sum",function(){return function(n,t){return u(n)?n.reduce(function(n,t){return n+t},t||0):n}});t.module("a8m.ends-with",[]).filter("endsWith",function(){return function(n,t,i){var r=i||!1,u;return!o(n)||f(t)?n:(n=r?n:n.toLowerCase(),u=n.length-t.length,n.indexOf(r?t:t.toLowerCase(),u)!==-1)}});t.module("a8m.latinize",[]).filter("latinize",[function(){function f(n){return n.replace(/[^\u0000-\u007E]/g,function(n){return u[n]||n})}for(var i=[{base:"A",letters:"AⒶＡÀÁÂẦẤẪẨÃĀĂẰẮẴẲȦǠÄǞẢÅǺǍȀȂẠẬẶḀĄȺⱯ"},{base:"AA",letters:"Ꜳ"},{base:"AE",letters:"ÆǼǢ"},{base:"AO",letters:"Ꜵ"},{base:"AU",letters:"Ꜷ"},{base:"AV",letters:"ꜸꜺ"},{base:"AY",letters:"Ꜽ"},{base:"B",letters:"BⒷＢḂḄḆɃƂƁ"},{base:"C",letters:"CⒸＣĆĈĊČÇḈƇȻꜾ"},{base:"D",letters:"DⒹＤḊĎḌḐḒḎĐƋƊƉꝹ"},{base:"DZ",letters:"ǱǄ"},{base:"Dz",letters:"ǲǅ"},{base:"E",letters:"EⒺＥÈÉÊỀẾỄỂẼĒḔḖĔĖËẺĚȄȆẸỆȨḜĘḘḚƐƎ"},{base:"F",letters:"FⒻＦḞƑꝻ"},{base:"G",letters:"GⒼＧǴĜḠĞĠǦĢǤƓꞠꝽꝾ"},{base:"H",letters:"HⒽＨĤḢḦȞḤḨḪĦⱧⱵꞍ"},{base:"I",letters:"IⒾＩÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗ"},{base:"J",letters:"JⒿＪĴɈ"},{base:"K",letters:"KⓀＫḰǨḲĶḴƘⱩꝀꝂꝄꞢ"},{base:"L",letters:"LⓁＬĿĹĽḶḸĻḼḺŁȽⱢⱠꝈꝆꞀ"},{base:"LJ",letters:"Ǉ"},{base:"Lj",letters:"ǈ"},{base:"M",letters:"MⓂＭḾṀṂⱮƜ"},{base:"N",letters:"NⓃＮǸŃÑṄŇṆŅṊṈȠƝꞐꞤ"},{base:"NJ",letters:"Ǌ"},{base:"Nj",letters:"ǋ"},{base:"O",letters:"OⓄＯÒÓÔỒỐỖỔÕṌȬṎŌṐṒŎȮȰÖȪỎŐǑȌȎƠỜỚỠỞỢỌỘǪǬØǾƆƟꝊꝌ"},{base:"OI",letters:"Ƣ"},{base:"OO",letters:"Ꝏ"},{base:"OU",letters:"Ȣ"},{base:"OE",letters:"Œ"},{base:"oe",letters:"œ"},{base:"P",letters:"PⓅＰṔṖƤⱣꝐꝒꝔ"},{base:"Q",letters:"QⓆＱꝖꝘɊ"},{base:"R",letters:"RⓇＲŔṘŘȐȒṚṜŖṞɌⱤꝚꞦꞂ"},{base:"S",letters:"SⓈＳẞŚṤŜṠŠṦṢṨȘŞⱾꞨꞄ"},{base:"T",letters:"TⓉＴṪŤṬȚŢṰṮŦƬƮȾꞆ"},{base:"TZ",letters:"Ꜩ"},{base:"U",letters:"UⓊＵÙÚÛŨṸŪṺŬÜǛǗǕǙỦŮŰǓȔȖƯỪỨỮỬỰỤṲŲṶṴɄ"},{base:"V",letters:"VⓋＶṼṾƲꝞɅ"},{base:"VY",letters:"Ꝡ"},{base:"W",letters:"WⓌＷẀẂŴẆẄẈⱲ"},{base:"X",letters:"XⓍＸẊẌ"},{base:"Y",letters:"YⓎＹỲÝŶỸȲẎŸỶỴƳɎỾ"},{base:"Z",letters:"ZⓏＺŹẐŻŽẒẔƵȤⱿⱫꝢ"},{base:"a",letters:"aⓐａẚàáâầấẫẩãāăằắẵẳȧǡäǟảåǻǎȁȃạậặḁąⱥɐ"},{base:"aa",letters:"ꜳ"},{base:"ae",letters:"æǽǣ"},{base:"ao",letters:"ꜵ"},{base:"au",letters:"ꜷ"},{base:"av",letters:"ꜹꜻ"},{base:"ay",letters:"ꜽ"},{base:"b",letters:"bⓑｂḃḅḇƀƃɓ"},{base:"c",letters:"cⓒｃćĉċčçḉƈȼꜿↄ"},{base:"d",letters:"dⓓｄḋďḍḑḓḏđƌɖɗꝺ"},{base:"dz",letters:"ǳǆ"},{base:"e",letters:"eⓔｅèéêềếễểẽēḕḗĕėëẻěȅȇẹệȩḝęḙḛɇɛǝ"},{base:"f",letters:"fⓕｆḟƒꝼ"},{base:"g",letters:"gⓖｇǵĝḡğġǧģǥɠꞡᵹꝿ"},{base:"h",letters:"hⓗｈĥḣḧȟḥḩḫẖħⱨⱶɥ"},{base:"hv",letters:"ƕ"},{base:"i",letters:"iⓘｉìíîĩīĭïḯỉǐȉȋịįḭɨı"},{base:"j",letters:"jⓙｊĵǰɉ"},{base:"k",letters:"kⓚｋḱǩḳķḵƙⱪꝁꝃꝅꞣ"},{base:"l",letters:"lⓛｌŀĺľḷḹļḽḻſłƚɫⱡꝉꞁꝇ"},{base:"lj",letters:"ǉ"},{base:"m",letters:"mⓜｍḿṁṃɱɯ"},{base:"n",letters:"nⓝｎǹńñṅňṇņṋṉƞɲŉꞑꞥ"},{base:"nj",letters:"ǌ"},{base:"o",letters:"oⓞｏòóôồốỗổõṍȭṏōṑṓŏȯȱöȫỏőǒȍȏơờớỡởợọộǫǭøǿɔꝋꝍɵ"},{base:"oi",letters:"ƣ"},{base:"ou",letters:"ȣ"},{base:"oo",letters:"ꝏ"},{base:"p",letters:"pⓟｐṕṗƥᵽꝑꝓꝕ"},{base:"q",letters:"qⓠｑɋꝗꝙ"},{base:"r",letters:"rⓡｒŕṙřȑȓṛṝŗṟɍɽꝛꞧꞃ"},{base:"s",letters:"sⓢｓßśṥŝṡšṧṣṩșşȿꞩꞅẛ"},{base:"t",letters:"tⓣｔṫẗťṭțţṱṯŧƭʈⱦꞇ"},{base:"tz",letters:"ꜩ"},{base:"u",letters:"uⓤｕùúûũṹūṻŭüǜǘǖǚủůűǔȕȗưừứữửựụṳųṷṵʉ"},{base:"v",letters:"vⓥｖṽṿʋꝟʌ"},{base:"vy",letters:"ꝡ"},{base:"w",letters:"wⓦｗẁẃŵẇẅẘẉⱳ"},{base:"x",letters:"xⓧｘẋẍ"},{base:"y",letters:"yⓨｙỳýŷỹȳẏÿỷẙỵƴɏỿ"},{base:"z",letters:"zⓩｚźẑżžẓẕƶȥɀⱬꝣ"}],u={},r,t,n=0;n<i.length;n++)for(r=i[n].letters.split(""),t=0;t<r.length;t++)u[r[t]]=i[n].base;return function(n){return o(n)?f(n):n}}]);t.module("a8m.ltrim",[]).filter("ltrim",function(){return function(n,t){var i=t||"\\s";return o(n)?n.replace(new RegExp("^"+i+"+"),""):n}});t.module("a8m.match",[]).filter("match",function(){return function(n,t,i){var r=new RegExp(t,i);return o(n)?n.match(r):null}});t.module("a8m.repeat",[]).filter("repeat",[function(){return function(n,t,i){var r=~~t;return o(n)?r?lt(n,--t,i||""):n:n}}]);t.module("a8m.rtrim",[]).filter("rtrim",function(){return function(n,t){var i=t||"\\s";return o(n)?n.replace(new RegExp(i+"+$"),""):n}});t.module("a8m.slugify",[]).filter("slugify",[function(){return function(n,t){var i=f(t)?"-":t;return o(n)?n.toLowerCase().replace(/\s+/g,i):n}}]);t.module("a8m.starts-with",[]).filter("startsWith",function(){return function(n,t,i){var r=i||!1;return!o(n)||f(t)?n:(n=r?n:n.toLowerCase(),!n.indexOf(r?t:t.toLowerCase()))}});t.module("a8m.stringular",[]).filter("stringular",function(){return function(n){var t=Array.prototype.slice.call(arguments,1);return n.replace(/{(\d+)}/g,function(n,i){return f(t[i])?n:t[i]})}});t.module("a8m.strip-tags",[]).filter("stripTags",function(){return function(n){return o(n)?n.replace(/<\S[^><]*>/g,""):n}});t.module("a8m.test",[]).filter("test",function(){return function(n,t,i){var r=new RegExp(t,i);return o(n)?r.test(n):n}});t.module("a8m.trim",[]).filter("trim",function(){return function(n,t){var i=t||"\\s";return o(n)?n.replace(new RegExp("^"+i+"+|"+i+"+$","g"),""):n}});t.module("a8m.truncate",[]).filter("truncate",function(){return function(n,t,i,r){return(t=f(t)?n.length:t,r=r||!1,i=i||"",!o(n)||n.length<=t)?n:n.substring(0,r?n.indexOf(" ",t)===-1?n.length:n.indexOf(" ",t):t)+i}});t.module("a8m.ucfirst",[]).filter("ucfirst",[function(){return function(n){return o(n)?n.split(" ").map(function(n){return n.charAt(0).toUpperCase()+n.substring(1)}).join(" "):n}}]);t.module("a8m.uri-component-encode",[]).filter("uriComponentEncode",["$window",function(n){return function(t){return o(t)?n.encodeURIComponent(t):t}}]);t.module("a8m.uri-encode",[]).filter("uriEncode",["$window",function(n){return function(t){return o(t)?n.encodeURI(t):t}}]);t.module("a8m.wrap",[]).filter("wrap",function(){return function(n,t,i){return o(n)&&p(t)?[t,n,i||t].join(""):n}});t.module("a8m.filter-watcher",[]).provider("filterWatcher",function(){this.$get=["$window","$rootScope",function(n,t){function e(t,i){function u(){var t=[];return function(i,u){if(r(u)&&!k(u)){if(~t.indexOf(u))return"[Circular]";t.push(u)}return n==u?"$WINDOW":n.document==u?"$DOCUMENT":nt(u)?"$SCOPE":u}}return[t,JSON.stringify(i,u())].join("#").replace(/"/g,"")}function s(n){var t=n.targetScope.$id;w(i[t],function(n){delete u[n]});delete i[t]}function h(){o(function(){t.$$phase||(u={})},2e3)}function c(n,t){var r=n.$id;return f(i[r])&&(n.$on("$destroy",s),i[r]=[]),i[r].push(t)}function l(n,t){var i=e(n,t);return u[i]}function a(n,t,i,r){var f=e(n,t);return u[f]=r,nt(i)?c(i,f):h(),r}var u={},i={},o=n.setTimeout;return{isMemoized:l,memoize:a}}]});t.module("angular.filter",["a8m.ucfirst","a8m.uri-encode","a8m.uri-component-encode","a8m.slugify","a8m.latinize","a8m.strip-tags","a8m.stringular","a8m.truncate","a8m.starts-with","a8m.ends-with","a8m.wrap","a8m.trim","a8m.ltrim","a8m.rtrim","a8m.repeat","a8m.test","a8m.match","a8m.to-array","a8m.concat","a8m.contains","a8m.unique","a8m.is-empty","a8m.after","a8m.after-where","a8m.before","a8m.before-where","a8m.defaults","a8m.where","a8m.reverse","a8m.remove","a8m.remove-with","a8m.group-by","a8m.count-by","a8m.chunk-by","a8m.search-field","a8m.fuzzy-by","a8m.fuzzy","a8m.omit","a8m.pick","a8m.every","a8m.filter-by","a8m.xor","a8m.map","a8m.first","a8m.last","a8m.flatten","a8m.join","a8m.range","a8m.math","a8m.math.max","a8m.math.min","a8m.math.percent","a8m.math.radix","a8m.math.sum","a8m.math.degrees","a8m.math.radians","a8m.math.byteFmt","a8m.math.kbFmt","a8m.math.shortFmt","a8m.angular","a8m.conditions","a8m.is-null","a8m.filter-watcher"])}(window,window.angular),function(){var t={},n=function(n,t,i){this.element=n;this.value=t;this.options=i;this.inDrag=!1};n.prototype.valueToRadians=function(n,t,i,r,u){return t=t||100,u=u||0,i=i||360,r=r||0,Math.PI/180*((n-u)*(i-r)/(t-u)+r)};n.prototype.radiansToValue=function(n,t,i,r,u){return t=t||100,i=i||0,r=r||360,u=u||0,(180/Math.PI*n-u)*(t-i)/(r-u)+i};n.prototype.createArc=function(n,t,i,r,u){return d3.svg.arc().innerRadius(n).outerRadius(t).startAngle(i).endAngle(r).cornerRadius(u)};n.prototype.drawArc=function(n,t,i,r,u,f){var e=n.append("path").attr("id",i).attr("d",t).style(r).attr("transform","translate("+this.options.size/2+", "+this.options.size/2+")");if(this.options.readOnly===!1){if(u)e.on("click",u);f&&e.call(f)}return e};n.prototype.createArcs=function(){var n=parseInt(this.options.size/2,10),t=this.valueToRadians(this.options.startAngle,360),r=this.valueToRadians(this.options.endAngle,360);this.options.scale.enabled&&(n-=this.options.scale.width+this.options.scale.spaceWidth);var s=n-this.options.trackWidth,h=n-this.options.barWidth,c=n-this.options.barWidth,u=n,f=n,e=n,o=n,i;this.options.barWidth>this.options.trackWidth?(i=(this.options.barWidth-this.options.trackWidth)/2,s-=i,u-=i):this.options.barWidth<this.options.trackWidth&&(i=(this.options.trackWidth-this.options.barWidth)/2,f-=i,e-=i,h-=i,c-=i);this.options.bgColor&&(this.bgArc=this.options.bgFull?this.createArc(0,n,0,Math.PI*2):this.createArc(0,n,t,r));this.options.skin.type==="tron"&&(u=u-this.options.skin.width-this.options.skin.spaceWidth,f=f-this.options.skin.width-this.options.skin.spaceWidth,e=e-this.options.skin.width-this.options.skin.spaceWidth,o=o-this.options.skin.width-this.options.skin.spaceWidth,this.hoopArc=this.createArc(n-this.options.skin.width,n,t,r));this.trackArc=this.createArc(s,u,t,r,this.options.trackCap);this.changeArc=this.createArc(h,f,t,t,this.options.barCap);this.valueArc=this.createArc(c,e,t,t,this.options.barCap);this.interactArc=this.createArc(1,o,t,r)};n.prototype.drawArcs=function(n,t){var r=d3.select(this.element).append("svg").attr("width",this.options.size).attr("height",this.options.size),f,s,a,v,y,p;if(this.options.bgColor&&this.drawArc(r,this.bgArc,"bgArc",{fill:this.options.bgColor}),this.options.displayInput&&(f=this.options.size*.2+"px",this.options.fontSize!=="auto"&&(f=this.options.fontSize+"px"),this.options.step<1&&(this.value=this.value.toFixed(1)),s=this.value,typeof this.options.inputFormatter=="function"&&(s=this.options.inputFormatter(s)),r.append("text").attr("id","text").attr("text-anchor","middle").attr("font-size",f).style("fill",this.options.textColor).text(s+this.options.unit||"").attr("transform","translate("+this.options.size/2+", "+(this.options.size/2+this.options.size*.06)+")"),this.options.subText.enabled&&(f=this.options.size*.07+"px",this.options.subText.font!=="auto"&&(f=this.options.subText.font+"px"),r.append("text").attr("class","sub-text").attr("text-anchor","middle").attr("font-size",f).style("fill",this.options.subText.color).text(this.options.subText.text).attr("transform","translate("+this.options.size/2+", "+(this.options.size/2+this.options.size*.15)+")"))),this.options.scale.enabled){var i,e,o=0,u=0,h,c=this.valueToRadians(this.options.min,this.options.max,this.options.endAngle,this.options.startAngle,this.options.min),w=this.valueToRadians(this.options.max,this.options.max,this.options.endAngle,this.options.startAngle,this.options.min),l=0;(this.options.startAngle!==0||this.options.endAngle!==360)&&(l=1);this.options.scale.type==="dots"?(a=this.options.scale.width,i=this.options.size/2-a,e=this.options.scale.quantity,v=i+this.options.scale.width,h=d3.range(e).map(function(){return u=o*(w-c)-Math.PI/2+c,o=o+1/(e-l),{cx:v+Math.cos(u)*i,cy:v+Math.sin(u)*i,r:a}}),r.selectAll("circle").data(h).enter().append("circle").attr({r:function(n){return n.r},cx:function(n){return n.cx},cy:function(n){return n.cy},fill:this.options.scale.color})):this.options.scale.type==="lines"&&(y=this.options.scale.height,i=this.options.size/2,e=this.options.scale.quantity,h=d3.range(e).map(function(){return u=o*(w-c)-Math.PI/2+c,o=o+1/(e-l),{x1:i+Math.cos(u)*i,y1:i+Math.sin(u)*i,x2:i+Math.cos(u)*(i-y),y2:i+Math.sin(u)*(i-y)}}),r.selectAll("line").data(h).enter().append("line").attr({x1:function(n){return n.x1},y1:function(n){return n.y1},x2:function(n){return n.x2},y2:function(n){return n.y2},"stroke-width":this.options.scale.width,stroke:this.options.scale.color}))}this.options.skin.type==="tron"&&this.drawArc(r,this.hoopArc,"hoopArc",{fill:this.options.skin.color});this.drawArc(r,this.trackArc,"trackArc",{fill:this.options.trackColor});this.changeElem=this.options.displayPrevious?this.drawArc(r,this.changeArc,"changeArc",{fill:this.options.prevBarColor}):this.drawArc(r,this.changeArc,"changeArc",{"fill-opacity":0});this.valueElem=this.drawArc(r,this.valueArc,"valueArc",{fill:this.options.barColor});p="pointer";this.options.readOnly&&(p="default");this.drawArc(r,this.interactArc,"interactArc",{"fill-opacity":0,cursor:p},n,t)};n.prototype.draw=function(n){function f(){t.inDrag=!0;var n=d3.event.x-t.options.size/2,i=d3.event.y-t.options.size/2;u(n,i,!1)}function r(){t.inDrag=!1;var n=d3.mouse(this.parentNode),i=n[0]-t.options.size/2,r=n[1]-t.options.size/2;u(i,r,!0)}function u(i,r,u){var s=Math.atan(r/i)/(Math.PI/180),o,f,e;i>=0&&r<=0||i>=0&&r>=0?f=90:(f=270,t.options.startAngle<0&&(f=-90));o=(f+s)*(Math.PI/180);t.value=t.radiansToValue(o,t.options.max,t.options.min,t.options.endAngle,t.options.startAngle);t.value>=t.options.min&&t.value<=t.options.max&&(t.value=Math.round(~~((t.value<0?-.5:.5)+t.value/t.options.step)*t.options.step*100)/100,t.options.step<1&&(t.value=t.value.toFixed(1)),n(t.value),t.valueArc.endAngle(t.valueToRadians(t.value,t.options.max,t.options.endAngle,t.options.startAngle,t.options.min)),t.valueElem.attr("d",t.valueArc),u&&(t.changeArc.endAngle(t.valueToRadians(t.value,t.options.max,t.options.endAngle,t.options.startAngle,t.options.min)),t.changeElem.attr("d",t.changeArc)),t.options.displayInput&&(e=t.value,typeof t.options.inputFormatter=="function"&&(e=t.options.inputFormatter(e)),d3.select(t.element).select("#text").text(e+t.options.unit||"")))}var t,i;d3.select(this.element).select("svg").remove();t=this;t.createArcs();i=d3.behavior.drag().on("drag",f).on("dragend",r);t.drawArcs(r,i);t.options.animate.enabled?t.valueElem.transition().ease(t.options.animate.ease).duration(t.options.animate.duration).tween("",function(){var n=d3.interpolate(t.valueToRadians(t.options.startAngle,360),t.valueToRadians(t.value,t.options.max,t.options.endAngle,t.options.startAngle,t.options.min));return function(i){var r=n(i);t.valueElem.attr("d",t.valueArc.endAngle(r));t.changeElem.attr("d",t.changeArc.endAngle(r))}}):(t.changeArc.endAngle(this.valueToRadians(this.value,this.options.max,this.options.endAngle,this.options.startAngle,this.options.min)),t.changeElem.attr("d",t.changeArc),t.valueArc.endAngle(this.valueToRadians(this.value,this.options.max,this.options.endAngle,this.options.startAngle,this.options.min)),t.valueElem.attr("d",t.valueArc))};n.prototype.setValue=function(n){var i,t;!this.inDrag&&this.value>=this.options.min&&this.value<=this.options.max&&(i=this.valueToRadians(n,this.options.max,this.options.endAngle,this.options.startAngle,this.options.min),this.value=Math.round(~~((n<0?-.5:.5)+n/this.options.step)*this.options.step*100)/100,this.options.step<1&&(this.value=this.value.toFixed(1)),this.changeArc.endAngle(i),d3.select(this.element).select("#changeArc").attr("d",this.changeArc),this.valueArc.endAngle(i),d3.select(this.element).select("#valueArc").attr("d",this.valueArc),this.options.displayInput&&(t=this.value,typeof this.options.inputFormatter=="function"&&(t=this.options.inputFormatter(t)),d3.select(this.element).select("#text").text(t+this.options.unit||"")))};t.Knob=n;t.knobDirective=function(){return{restrict:"E",scope:{value:"=",options:"="},link:function(n,i){var u,r,f,e;n.value=n.value||0;u={skin:{type:"simple",width:10,color:"rgba(255,0,0,.5)",spaceWidth:5},animate:{enabled:!0,duration:1e3,ease:"bounce"},size:200,startAngle:0,endAngle:360,unit:"",displayInput:!0,inputFormatter:function(n){return n},readOnly:!1,trackWidth:50,barWidth:50,trackColor:"rgba(0,0,0,0)",barColor:"rgba(255,0,0,.5)",prevBarColor:"rgba(0,0,0,0)",textColor:"#222",barCap:0,trackCap:0,fontSize:"auto",subText:{enabled:!1,text:"",color:"gray",font:"auto"},bgColor:"",bgFull:!1,scale:{enabled:!1,type:"lines",color:"gray",width:4,quantity:20,height:10,spaceWidth:15},step:1,displayPrevious:!1,min:0,max:100,dynamicOptions:!1};n.options=angular.merge(u,n.options);r=new t.Knob(i[0],n.value,n.options);n.$watch("value",function(n,t){(n!==null||typeof n!="undefined")&&typeof t!="undefined"&&n!==t&&r.setValue(n)});n.options.dynamicOptions&&(f=!0,n.$watch("options",function(){if(f)f=!1;else{var o=angular.merge(u,n.options);r=new t.Knob(i[0],n.value,o);e()}},!0));e=function(){r.draw(function(t){n.$apply(function(){n.value=t})})};e()}}};angular.module("ui.knob",[]).directive("uiKnob",t.knobDirective)}(),function(n){"use strict";angular.module(n,[]).directive(n,function(){return{restrict:"A",link:function(n,t){iFrameResize({checkOrigin:!1},t[0])}}})}("ngIframeResizer");angular.module("angular-clipboard",[]).factory("clipboard",["$document","$window",function(n,t){function i(i){var r=n[0].createElement("textarea");return r.style.position="absolute",r.textContent=i,r.style.left="-10000px",r.style.top=(t.pageYOffset||n[0].documentElement.scrollTop)+"px",r}function r(t){try{n[0].body.style.webkitUserSelect="initial";var i=n[0].getSelection();if(i.removeAllRanges(),t.select(),!n[0].execCommand("copy"))throw"failure copy";i.removeAllRanges()}finally{n[0].body.style.webkitUserSelect=""}}function u(t,u){var f=i(t,u);n[0].body.appendChild(f);r(f);n[0].body.removeChild(f)}return{copyText:u,supported:"queryCommandSupported"in n[0]&&n[0].queryCommandSupported("copy")}}]).directive("clipboard",["clipboard",function(n){return{restrict:"A",scope:{onCopied:"&",onError:"&",text:"=",supported:"=?"},link:function(t,i){t.supported=n.supported;i.on("click",function(){try{n.copyText(t.text,i[0]);angular.isFunction(t.onCopied)&&t.$evalAsync(t.onCopied())}catch(r){angular.isFunction(t.onError)&&t.$evalAsync(t.onError({err:r}))}})}}}]),function(){"use strict";function n(n){return angular.isUndefined(n)||n===null}function i(){try{return require("moment")}catch(n){throw new Error("Please install moment via npm. Please reference to: https://github.com/urish/angular-moment");}}function t(t,r){if(typeof r=="undefined")if(typeof require=="function")r=i();else throw new Error("Moment cannot be found by angular-moment! Please reference to: https://github.com/urish/angular-moment");return t.module("angularMoment",[]).constant("angularMomentConfig",{preprocess:null,timezone:null,format:null,statefulFilters:!0}).constant("moment",r).constant("amTimeAgoConfig",{withoutSuffix:!1,serverTime:null,titleFormat:null,fullDateThreshold:null,fullDateFormat:null,fullDateThresholdUnit:"day"}).directive("amTimeAgo",["$window","moment","amMoment","amTimeAgoConfig",function(i,r,u,f){return function(e,o,s){function p(){var n,t,i;return a?n=a:f.serverTime?(t=(new Date).getTime(),i=t-tt+f.serverTime,n=r(i)):n=r(),n}function w(){l&&(i.clearTimeout(l),l=null)}function g(n){var f=p().diff(n,d),u=y&&f>=y,r,t;u?o.text(n.format(k)):o.text(n.from(p(),v));b&&ut&&o.attr("title",n.format(b));u||(r=Math.abs(p().diff(n,"minute")),t=3600,r<1?t=1:r<60?t=30:r<180&&(t=300),l=i.setTimeout(function(){g(n)},t*1e3))}function nt(n){rt&&o.attr("datetime",n)}function h(){if(w(),c){var n=u.preprocessDate(c);g(n);nt(n.toISOString())}}var l=null,c,v=f.withoutSuffix,b=f.titleFormat,y=f.fullDateThreshold,k=f.fullDateFormat,d=f.fullDateThresholdUnit,tt=(new Date).getTime(),it=s.amTimeAgo,a,rt="TIME"===o[0].nodeName.toUpperCase(),ut=!o.attr("title");e.$watch(it,function(t){if(n(t)||t===""){w();c&&(o.text(""),nt(""),c=null);return}c=t;h()});t.isDefined(s.amFrom)&&e.$watch(s.amFrom,function(t){a=n(t)||t===""?null:r(t);h()});t.isDefined(s.amWithoutSuffix)&&e.$watch(s.amWithoutSuffix,function(n){typeof n=="boolean"?(v=n,h()):v=f.withoutSuffix});s.$observe("amFullDateThreshold",function(n){y=n;h()});s.$observe("amFullDateFormat",function(n){k=n;h()});s.$observe("amFullDateThresholdUnit",function(n){d=n;h()});e.$on("$destroy",function(){w()});e.$on("amMoment:localeChanged",function(){h()})}}]).service("amMoment",["moment","$rootScope","$log","angularMomentConfig",function(n,i,r,u){var f=null;this.changeLocale=function(r,u){var f=n.locale(r,u);return t.isDefined(r)&&i.$broadcast("amMoment:localeChanged"),f};this.changeTimezone=function(t){n.tz&&n.tz.setDefault?(n.tz.setDefault(t),i.$broadcast("amMoment:timezoneChanged")):r.warn("angular-moment: changeTimezone() works only with moment-timezone.js v0.3.0 or greater.");u.timezone=t;f=t};this.preprocessDate=function(t){return(f!==u.timezone&&this.changeTimezone(u.timezone),u.preprocess)?u.preprocess(t):!isNaN(parseFloat(t))&&isFinite(t)?n(parseInt(t,10)):n(t)}}]).filter("amParse",["moment",function(n){return function(t,i){return n(t,i)}}]).filter("amFromUnix",["moment",function(n){return function(t){return n.unix(t)}}]).filter("amUtc",["moment",function(n){return function(t){return n.utc(t)}}]).filter("amUtcOffset",["amMoment",function(n){function t(t,i){return n.preprocessDate(t).utcOffset(i)}return t}]).filter("amLocal",["moment",function(n){return function(t){return n.isMoment(t)?t.local():null}}]).filter("amTimezone",["amMoment","angularMomentConfig","$log",function(n,t,i){function r(t,r){var u=n.preprocessDate(t);return r?u.tz?u.tz(r):(i.warn("angular-moment: named timezone specified but moment.tz() is undefined. Did you forget to include moment-timezone.js ?"),u):u}return r}]).filter("amCalendar",["moment","amMoment","angularMomentConfig",function(t,i,r){function u(t,r,u){if(n(t))return"";var f=i.preprocessDate(t);return f.isValid()?f.calendar(r,u):""}return u.$stateful=r.statefulFilters,u}]).filter("amDifference",["moment","amMoment","angularMomentConfig",function(t,i,r){function u(r,u,f,e){if(n(r))return"";var o=i.preprocessDate(r),s=n(u)?t():i.preprocessDate(u);return!o.isValid()||!s.isValid()?"":o.diff(s,f,e)}return u.$stateful=r.statefulFilters,u}]).filter("amDateFormat",["moment","amMoment","angularMomentConfig",function(t,i,r){function u(t,r){if(n(t))return"";var u=i.preprocessDate(t);return u.isValid()?u.format(r):""}return u.$stateful=r.statefulFilters,u}]).filter("amDurationFormat",["moment","angularMomentConfig",function(t,i){function r(i,r,u){return n(i)?"":t.duration(i,r).humanize(u)}return r.$stateful=i.statefulFilters,r}]).filter("amTimeAgo",["moment","amMoment","angularMomentConfig",function(t,i,r){function u(r,u,f){var e,o;return n(r)?"":(r=i.preprocessDate(r),e=t(r),!e.isValid())?"":(o=t(f),!n(f)&&o.isValid())?e.from(o,u):e.fromNow(u)}return u.$stateful=r.statefulFilters,u}]).filter("amSubtract",["moment","angularMomentConfig",function(t,i){function r(i,r,u){return n(i)?"":t(i).subtract(parseInt(r,10),u)}return r.$stateful=i.statefulFilters,r}]).filter("amAdd",["moment","angularMomentConfig",function(t,i){function r(i,r,u){return n(i)?"":t(i).add(parseInt(r,10),u)}return r.$stateful=i.statefulFilters,r}]).filter("amStartOf",["moment","angularMomentConfig",function(t,i){function r(i,r){return n(i)?"":t(i).startOf(r)}return r.$stateful=i.statefulFilters,r}]).filter("amEndOf",["moment","angularMomentConfig",function(t,i){function r(i,r){return n(i)?"":t(i).endOf(r)}return r.$stateful=i.statefulFilters,r}]),"angularMoment"}var r=window&&window.process&&window.process.type;typeof define=="function"&&define.amd?define(["angular","moment"],t):typeof module!="undefined"&&module&&module.exports&&typeof require=="function"&&!r?module.exports=t(require("angular"),require("moment")):t(angular,(typeof global!="undefined"&&typeof global.moment!="undefined"?global:window).moment)}();!function(n,t){"function"==typeof define&&define.amd?define([],t):"undefined"!=typeof module&&module.exports?module.exports=t():n.tv4=t()}(this,function(){function o(n){return encodeURI(n).replace(/%25[0-9][0-9]/g,function(n){return"%"+n.substring(3)})}function nt(n){var i="",t,c,l,a,v,y;k[n.charAt(0)]&&(i=n.charAt(0),n=n.substring(1));var r="",u="",e=!0,f=!1,p=!1;"+"===i?e=!1:"."===i?(u=".",r="."):"/"===i?(u="/",r="/"):"#"===i?(u="#",e=!1):";"===i?(u=";",r=";",f=!0,p=!0):"?"===i?(u="?",r="&",f=!0):"&"===i&&(u="&",r="&",f=!0);for(var w=[],b=n.split(","),s=[],g={},h=0;h<b.length;h++){for(t=b[h],c=null,-1!==t.indexOf(":")&&(l=t.split(":"),t=l[0],c=parseInt(l[1],10)),a={};d[t.charAt(t.length-1)];)a[t.charAt(t.length-1)]=!0,t=t.substring(0,t.length-1);v={truncate:c,name:t,suffices:a};s.push(v);g[t]=v;w.push(t)}return y=function(n){for(var h,t,c,v,l,i="",y=0,a=0;a<s.length;a++)if(h=s[a],t=n(h.name),null===t||void 0===t||Array.isArray(t)&&0===t.length||"object"==typeof t&&0===Object.keys(t).length)y++;else if(i+=a===y?u:r||",",Array.isArray(t))for(f&&(i+=h.name+"="),c=0;c<t.length;c++)c>0&&(i+=h.suffices["*"]?r||",":",",h.suffices["*"]&&f&&(i+=h.name+"=")),i+=e?encodeURIComponent(t[c]).replace(/!/g,"%21"):o(t[c]);else if("object"==typeof t){f&&!h.suffices["*"]&&(i+=h.name+"=");v=!0;for(l in t)v||(i+=h.suffices["*"]?r||",":","),v=!1,i+=e?encodeURIComponent(l).replace(/!/g,"%21"):o(l),i+=h.suffices["*"]?"=":",",i+=e?encodeURIComponent(t[l]).replace(/!/g,"%21"):o(t[l])}else f&&(i+=h.name,p&&""===t||(i+="=")),null!=h.truncate&&(t=t.substring(0,h.truncate)),i+=e?encodeURIComponent(t).replace(/!/g,"%21"):o(t);return i},y.varNames=w,{prefix:u,substitution:y}}function s(n){if(!(this instanceof s))return new s(n);for(var t=n.split("{"),i=[t.shift()],h=[],r=[],u=[];t.length>0;){var e=t.shift(),o=e.split("}")[0],c=e.substring(o.length+1),f=nt(o);r.push(f.substitution);h.push(f.prefix);i.push(c);u=u.concat(f.substitution.varNames)}this.fill=function(n){for(var f,u=i[0],t=0;t<r.length;t++)f=r[t],u+=f(n),u+=i[t+1];return u};this.varNames=u;this.template=n}function h(n,t){var r,i;if(n===t)return!0;if(n&&t&&"object"==typeof n&&"object"==typeof t){if(Array.isArray(n)!==Array.isArray(t))return!1;if(Array.isArray(n)){if(n.length!==t.length)return!1;for(r=0;r<n.length;r++)if(!h(n[r],t[r]))return!1}else{for(i in n)if(void 0===t[i]&&void 0!==n[i])return!1;for(i in t)if(void 0===n[i]&&void 0!==t[i])return!1;for(i in n)if(!h(n[i],t[i]))return!1}return!0}return!1}function w(n){var t=String(n).replace(/^\s+|\s+$/g,"").match(/^([^:\/?#]+:)?(\/\/(?:[^:@]*(?::[^:@]*)?@)?(([^:\/?#]*)(?::(\d*))?))?([^?#]*)(\?[^#]*)?(#[\s\S]*)?/);return t?{href:t[0]||"",protocol:t[1]||"",authority:t[2]||"",host:t[3]||"",hostname:t[4]||"",port:t[5]||"",pathname:t[6]||"",search:t[7]||"",hash:t[8]||""}:null}function a(n,t){function i(n){var t=[];return n.replace(/^(\.\.?(\/|$))+/,"").replace(/\/(\.(\/|$))+/g,"/").replace(/\/\.\.$/,"/../").replace(/\/?[^\/]*/g,function(n){"/.."===n?t.pop():t.push(n)}),t.join("").replace(/^\//,"/"===n.charAt(0)?"/":"")}return t=w(t||""),n=w(n||""),t&&n?(t.protocol||n.protocol)+(t.protocol||t.authority?t.authority:n.authority)+i(t.protocol||t.authority||"/"===t.pathname.charAt(0)?t.pathname:t.pathname?(n.authority&&!n.pathname?"/":"")+n.pathname.slice(0,n.pathname.lastIndexOf("/")+1)+t.pathname:n.pathname)+(t.protocol||t.authority||t.pathname?t.search:t.search||n.search)+t.hash:null}function c(n){return n.split("#")[0]}function l(n,t){var i,r;if(n&&"object"==typeof n)if(void 0===t?t=n.id:"string"==typeof n.id&&(t=a(t,n.id),n.id=t),Array.isArray(n))for(i=0;i<n.length;i++)l(n[i],t);else{"string"==typeof n.$ref&&(n.$ref=a(t,n.$ref));for(r in n)"enum"!==r&&l(n[r],t)}}function v(n){n=n||"en";var t=i[n];return function(n){var i=t[n.code]||f[n.code],r;return"string"!=typeof i?"Unknown error code "+n.code+": "+JSON.stringify(n.messageParams):(r=n.params,i.replace(/\{([^{}]*)\}/g,function(n,t){var i=r[t];return"string"==typeof i||"number"==typeof i?i:n}))}}function r(n,t,i,r,u){if(Error.call(this),void 0===n)throw new Error("No error code supplied: "+r);this.message="";this.params=t;this.code=n;this.dataPath=i||"";this.schemaPath=r||"";this.subErrors=u||null;var f=new Error(this.message);if(this.stack=f.stack||f.stacktrace,!this.stack)try{throw f;}catch(f){this.stack=f.stack||f.stacktrace}}function tt(n,t){if(t.substring(0,n.length)===n){var i=t.substring(n.length);if(t.length>0&&"/"===t.charAt(n.length-1)||"#"===i.charAt(0)||"?"===i.charAt(0))return!0}return!1}function b(r){var s,o,e=new n,h={setErrorReporter:function(n){return"string"==typeof n?this.language(n):(o=n,!0)},addFormat:function(){e.addFormat.apply(e,arguments)},language:function(n){return n?(i[n]||(n=n.split("-")[0]),i[n]?(s=n,n):!1):s},addLanguage:function(n,r){var u,f;for(u in t)r[u]&&!r[t[u]]&&(r[t[u]]=r[u]);if(f=n.split("-")[0],i[f]){i[n]=Object.create(i[f]);for(u in r)"undefined"==typeof i[f][u]&&(i[f][u]=r[u]),i[n][u]=r[u]}else i[n]=r,i[f]=r;return this},freshApi:function(n){var t=b();return n&&t.language(n),t},validate:function(t,i,r,u){var c=v(s),l=o?function(n,t,i){return o(n,t,i)||c(n,t,i)}:c,h=new n(e,!1,l,r,u),f;return"string"==typeof i&&(i={$ref:i}),h.addSchema("",i),f=h.validateAll(t,i,null,null,""),!f&&u&&(f=h.banUnknownProperties(t,i)),this.error=f,this.missing=h.missing,this.valid=null===f,this.valid},validateResult:function(){var n={};return this.validate.apply(n,arguments),n},validateMultiple:function(t,i,r,u){var c=v(s),l=o?function(n,t,i){return o(n,t,i)||c(n,t,i)}:c,h=new n(e,!0,l,r,u),f;return"string"==typeof i&&(i={$ref:i}),h.addSchema("",i),h.validateAll(t,i,null,null,""),u&&h.banUnknownProperties(t,i),f={},f.errors=h.errors,f.missing=h.missing,f.valid=0===f.errors.length,f},addSchema:function(){return e.addSchema.apply(e,arguments)},getSchema:function(){return e.getSchema.apply(e,arguments)},getSchemaMap:function(){return e.getSchemaMap.apply(e,arguments)},getSchemaUris:function(){return e.getSchemaUris.apply(e,arguments)},getMissingUris:function(){return e.getMissingUris.apply(e,arguments)},dropSchemas:function(){e.dropSchemas.apply(e,arguments)},defineKeyword:function(){e.defineKeyword.apply(e,arguments)},defineError:function(n,r,e){var s,o;if("string"!=typeof n||!/^[A-Z]+(_[A-Z]+)*$/.test(n))throw new Error("Code name must be a string in UPPER_CASE_WITH_UNDERSCORES");if("number"!=typeof r||r%1!=0||1e4>r)throw new Error("Code number must be an integer > 10000");if("undefined"!=typeof t[n])throw new Error("Error already defined: "+n+" as "+t[n]);if("undefined"!=typeof u[r])throw new Error("Error code already used: "+u[r]+" as "+r);t[n]=r;u[r]=n;f[n]=f[r]=e;for(s in i)o=i[s],o[n]&&(o[r]=o[r]||o[n])},reset:function(){e.reset();this.error=null;this.missing=[];this.valid=!0},missing:[],error:null,valid:!0,normSchema:l,resolveUrl:a,getDocumentUri:c,errorCodes:t};return h.language(r||"en"),h}var k,d,n,y,g,t,u,p,f,i,e;Object.keys||(Object.keys=function(){var t=Object.prototype.hasOwnProperty,i=!{toString:null}.propertyIsEnumerable("toString"),n=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],r=n.length;return function(u){var e,o,f;if("object"!=typeof u&&"function"!=typeof u||null===u)throw new TypeError("Object.keys called on non-object");e=[];for(o in u)t.call(u,o)&&e.push(o);if(i)for(f=0;r>f;f++)t.call(u,n[f])&&e.push(n[f]);return e}}());Object.create||(Object.create=function(){function n(){}return function(t){if(1!==arguments.length)throw new Error("Object.create implementation only accepts one parameter.");return n.prototype=t,new n}}());Array.isArray||(Array.isArray=function(n){return"[object Array]"===Object.prototype.toString.call(n)});Array.prototype.indexOf||(Array.prototype.indexOf=function(n){var u,r,t,i;if(null===this)throw new TypeError;if((u=Object(this),r=u.length>>>0,0===r)||(t=0,arguments.length>1&&(t=Number(arguments[1]),t!==t?t=0:0!==t&&t!==1/0&&t!==-(1/0)&&(t=(t>0||-1)*Math.floor(Math.abs(t)))),t>=r))return-1;for(i=t>=0?t:Math.max(r-Math.abs(t),0);r>i;i++)if(i in u&&u[i]===n)return i;return-1});Object.isFrozen||(Object.isFrozen=function(n){for(var t="tv4_test_frozen_key";n.hasOwnProperty(t);)t+=Math.random();try{return n[t]=!0,delete n[t],!1}catch(i){return!0}});k={"+":!0,"#":!0,".":!0,"/":!0,";":!0,"?":!0,"&":!0};d={"*":!0};s.prototype={toString:function(){return this.template},fillFromObject:function(n){return this.fill(function(t){return n[t]})}};n=function(n,t,i,r,u){if(this.missing=[],this.missingMap={},this.formatValidators=n?Object.create(n.formatValidators):{},this.schemas=n?Object.create(n.schemas):{},this.collectMultiple=t,this.errors=[],this.handleError=t?this.collectError:this.returnError,r&&(this.checkRecursive=!0,this.scanned=[],this.scannedFrozen=[],this.scannedFrozenSchemas=[],this.scannedFrozenValidationErrors=[],this.validatedSchemasKey="tv4_validation_id",this.validationErrorsKey="tv4_validation_errors_id"),u&&(this.trackUnknownProperties=!0,this.knownPropertyPaths={},this.unknownPropertyPaths={}),this.errorReporter=i||v("en"),"string"==typeof this.errorReporter)throw new Error("debug");if(this.definedKeywords={},n)for(var f in n.definedKeywords)this.definedKeywords[f]=n.definedKeywords[f].slice(0)};n.prototype.defineKeyword=function(n,t){this.definedKeywords[n]=this.definedKeywords[n]||[];this.definedKeywords[n].push(t)};n.prototype.createError=function(n,t,i,u,f,e,o){var s=new r(n,t,i,u,f);return s.message=this.errorReporter(s,e,o),s};n.prototype.returnError=function(n){return n};n.prototype.collectError=function(n){return n&&this.errors.push(n),null};n.prototype.prefixErrors=function(n,t,i){for(var r=n;r<this.errors.length;r++)this.errors[r]=this.errors[r].prefixWith(t,i);return this};n.prototype.banUnknownProperties=function(n,i){var r,f,u;for(r in this.unknownPropertyPaths)if(f=this.createError(t.UNKNOWN_PROPERTY,{path:r},r,"",null,n,i),u=this.handleError(f),u)return u;return null};n.prototype.addFormat=function(n,t){if("object"==typeof n){for(var i in n)this.addFormat(i,n[i]);return this}this.formatValidators[n]=t};n.prototype.resolveRefs=function(n,i){if(void 0!==n.$ref){if(i=i||{},i[n.$ref])return this.createError(t.CIRCULAR_REFERENCE,{urls:Object.keys(i).join(", ")},"","",null,void 0,n);i[n.$ref]=!0;n=this.getSchema(n.$ref,i)}return n};n.prototype.getSchema=function(n,t){var i,r,e,u,o,f,s;if(void 0!==this.schemas[n])return i=this.schemas[n],this.resolveRefs(i,t);if(r=n,e="",-1!==n.indexOf("#")&&(e=n.substring(n.indexOf("#")+1),r=n.substring(0,n.indexOf("#"))),"object"==typeof this.schemas[r]){if(i=this.schemas[r],u=decodeURIComponent(e),""===u)return this.resolveRefs(i,t);if("/"!==u.charAt(0))return void 0;for(o=u.split("/").slice(1),f=0;f<o.length;f++){if(s=o[f].replace(/~1/g,"/").replace(/~0/g,"~"),void 0===i[s]){i=void 0;break}i=i[s]}if(void 0!==i)return this.resolveRefs(i,t)}void 0===this.missing[r]&&(this.missing.push(r),this.missing[r]=r,this.missingMap[r]=r)};n.prototype.searchSchemas=function(n,t){var u,i,r;if(Array.isArray(n))for(u=0;u<n.length;u++)this.searchSchemas(n[u],t);else if(n&&"object"==typeof n){"string"==typeof n.id&&tt(t,n.id)&&void 0===this.schemas[n.id]&&(this.schemas[n.id]=n);for(i in n)"enum"!==i&&("object"==typeof n[i]?this.searchSchemas(n[i],t):"$ref"===i&&(r=c(n[i]),r&&void 0===this.schemas[r]&&void 0===this.missingMap[r]&&(this.missingMap[r]=r)))}};n.prototype.addSchema=function(n,t){if("string"!=typeof n||"undefined"==typeof t){if("object"!=typeof n||"string"!=typeof n.id)return;t=n;n=t.id}n===c(n)+"#"&&(n=c(n));this.schemas[n]=t;delete this.missingMap[n];l(t,n);this.searchSchemas(t,n)};n.prototype.getSchemaMap=function(){var t={},n;for(n in this.schemas)t[n]=this.schemas[n];return t};n.prototype.getSchemaUris=function(n){var i=[],t;for(t in this.schemas)(!n||n.test(t))&&i.push(t);return i};n.prototype.getMissingUris=function(n){var i=[],t;for(t in this.missingMap)(!n||n.test(t))&&i.push(t);return i};n.prototype.dropSchemas=function(){this.schemas={};this.reset()};n.prototype.reset=function(){this.missing=[];this.missingMap={};this.errors=[]};n.prototype.validateAll=function(n,t,i,u,f){var p,c,l,a,o,b,v,y;if(t=this.resolveRefs(t),!t)return null;if(t instanceof r)return this.errors.push(t),t;var e,w=this.errors.length,s=null,h=null;if(this.checkRecursive&&n&&"object"==typeof n){if((p=!this.scanned.length,n[this.validatedSchemasKey])&&(c=n[this.validatedSchemasKey].indexOf(t),-1!==c))return this.errors=this.errors.concat(n[this.validationErrorsKey][c]),null;if(Object.isFrozen(n)&&(e=this.scannedFrozen.indexOf(n),-1!==e)&&(l=this.scannedFrozenSchemas[e].indexOf(t),-1!==l))return this.errors=this.errors.concat(this.scannedFrozenValidationErrors[e][l]),null;if(this.scanned.push(n),Object.isFrozen(n))-1===e&&(e=this.scannedFrozen.length,this.scannedFrozen.push(n),this.scannedFrozenSchemas.push([])),s=this.scannedFrozenSchemas[e].length,this.scannedFrozenSchemas[e][s]=t,this.scannedFrozenValidationErrors[e][s]=[];else{if(!n[this.validatedSchemasKey])try{Object.defineProperty(n,this.validatedSchemasKey,{value:[],configurable:!0});Object.defineProperty(n,this.validationErrorsKey,{value:[],configurable:!0})}catch(k){n[this.validatedSchemasKey]=[];n[this.validationErrorsKey]=[]}h=n[this.validatedSchemasKey].length;n[this.validatedSchemasKey][h]=t;n[this.validationErrorsKey][h]=[]}}if(a=this.errors.length,o=this.validateBasic(n,t,f)||this.validateNumeric(n,t,f)||this.validateString(n,t,f)||this.validateArray(n,t,f)||this.validateObject(n,t,f)||this.validateCombinations(n,t,f)||this.validateHypermedia(n,t,f)||this.validateFormat(n,t,f)||this.validateDefinedKeywords(n,t,f)||null,p){for(;this.scanned.length;)b=this.scanned.pop(),delete b[this.validatedSchemasKey];this.scannedFrozen=[];this.scannedFrozenSchemas=[]}if(o||a!==this.errors.length)for(;i&&i.length||u&&u.length;)v=i&&i.length?""+i.pop():null,y=u&&u.length?""+u.pop():null,o&&(o=o.prefixWith(v,y)),this.prefixErrors(a,v,y);return null!==s?this.scannedFrozenValidationErrors[e][s]=this.errors.slice(w):null!==h&&(n[this.validationErrorsKey][h]=this.errors.slice(w)),this.handleError(o)};n.prototype.validateFormat=function(n,i){if("string"!=typeof i.format||!this.formatValidators[i.format])return null;var r=this.formatValidators[i.format].call(null,n,i);return"string"==typeof r||"number"==typeof r?this.createError(t.FORMAT_CUSTOM,{message:r},"","/format",null,n,i):r&&"object"==typeof r?this.createError(t.FORMAT_CUSTOM,{message:r.message||"?"},r.dataPath||"",r.schemaPath||"/format",null,n,i):null};n.prototype.validateDefinedKeywords=function(n,i,r){var e,s,o,h,u,f,c,l;for(e in this.definedKeywords)if("undefined"!=typeof i[e])for(s=this.definedKeywords[e],o=0;o<s.length;o++){if(h=s[o],u=h(n,i[e],i,r),"string"==typeof u||"number"==typeof u)return this.createError(t.KEYWORD_CUSTOM,{key:e,message:u},"","",null,n,i).prefixWith(null,e);if(u&&"object"==typeof u){if(f=u.code,"string"==typeof f){if(!t[f])throw new Error("Undefined error code (use defineError): "+f);f=t[f]}else"number"!=typeof f&&(f=t.KEYWORD_CUSTOM);return c="object"==typeof u.message?u.message:{key:e,message:u.message||"?"},l=u.schemaPath||"/"+e.replace(/~/g,"~0").replace(/\//g,"~1"),this.createError(f,c,u.dataPath||null,l,null,n,i)}}return null};n.prototype.validateBasic=function(n,t,i){var r;return(r=this.validateType(n,t,i))?r.prefixWith(null,"type"):(r=this.validateEnum(n,t,i))?r.prefixWith(null,"type"):null};n.prototype.validateType=function(n,i){var u,r,f,e;if(void 0===i.type)return null;for(u=typeof n,null===n?u="null":Array.isArray(n)&&(u="array"),r=i.type,Array.isArray(r)||(r=[r]),f=0;f<r.length;f++)if(e=r[f],e===u||"integer"===e&&"number"===u&&n%1==0)return null;return this.createError(t.INVALID_TYPE,{type:u,expected:r.join("/")},"","",null,n,i)};n.prototype.validateEnum=function(n,i){var r,u;if(void 0===i["enum"])return null;for(r=0;r<i["enum"].length;r++)if(u=i["enum"][r],h(n,u))return null;return this.createError(t.ENUM_MISMATCH,{value:"undefined"!=typeof JSON?JSON.stringify(n):n},"","",null,n,i)};n.prototype.validateNumeric=function(n,t,i){return this.validateMultipleOf(n,t,i)||this.validateMinMax(n,t,i)||this.validateNaN(n,t,i)||null};y=Math.pow(2,-51);g=1-y;n.prototype.validateMultipleOf=function(n,i){var r=i.multipleOf||i.divisibleBy,u;return void 0===r?null:"number"==typeof n&&(u=n/r%1,u>=y&&g>u)?this.createError(t.NUMBER_MULTIPLE_OF,{value:n,multipleOf:r},"","",null,n,i):null};n.prototype.validateMinMax=function(n,i){if("number"!=typeof n)return null;if(void 0!==i.minimum){if(n<i.minimum)return this.createError(t.NUMBER_MINIMUM,{value:n,minimum:i.minimum},"","/minimum",null,n,i);if(i.exclusiveMinimum&&n===i.minimum)return this.createError(t.NUMBER_MINIMUM_EXCLUSIVE,{value:n,minimum:i.minimum},"","/exclusiveMinimum",null,n,i)}if(void 0!==i.maximum){if(n>i.maximum)return this.createError(t.NUMBER_MAXIMUM,{value:n,maximum:i.maximum},"","/maximum",null,n,i);if(i.exclusiveMaximum&&n===i.maximum)return this.createError(t.NUMBER_MAXIMUM_EXCLUSIVE,{value:n,maximum:i.maximum},"","/exclusiveMaximum",null,n,i)}return null};n.prototype.validateNaN=function(n,i){return"number"!=typeof n?null:isNaN(n)===!0||n===1/0||n===-(1/0)?this.createError(t.NUMBER_NOT_A_NUMBER,{value:n},"","/type",null,n,i):null};n.prototype.validateString=function(n,t,i){return this.validateStringLength(n,t,i)||this.validateStringPattern(n,t,i)||null};n.prototype.validateStringLength=function(n,i){return"string"!=typeof n?null:void 0!==i.minLength&&n.length<i.minLength?this.createError(t.STRING_LENGTH_SHORT,{length:n.length,minimum:i.minLength},"","/minLength",null,n,i):void 0!==i.maxLength&&n.length>i.maxLength?this.createError(t.STRING_LENGTH_LONG,{length:n.length,maximum:i.maxLength},"","/maxLength",null,n,i):null};n.prototype.validateStringPattern=function(n,i){var u,f,e,r;return"string"!=typeof n||"string"!=typeof i.pattern&&!(i.pattern instanceof RegExp)?null:(i.pattern instanceof RegExp?u=i.pattern:(e="",r=i.pattern.match(/^\/(.+)\/([img]*)$/),r?(f=r[1],e=r[2]):f=i.pattern,u=new RegExp(f,e)),u.test(n)?null:this.createError(t.STRING_PATTERN,{pattern:i.pattern},"","/pattern",null,n,i))};n.prototype.validateArray=function(n,t,i){return Array.isArray(n)?this.validateArrayLength(n,t,i)||this.validateArrayUniqueItems(n,t,i)||this.validateArrayItems(n,t,i)||null:null};n.prototype.validateArrayLength=function(n,i){var r;return void 0!==i.minItems&&n.length<i.minItems&&(r=this.createError(t.ARRAY_LENGTH_SHORT,{length:n.length,minimum:i.minItems},"","/minItems",null,n,i),this.handleError(r))?r:void 0!==i.maxItems&&n.length>i.maxItems&&(r=this.createError(t.ARRAY_LENGTH_LONG,{length:n.length,maximum:i.maxItems},"","/maxItems",null,n,i),this.handleError(r))?r:null};n.prototype.validateArrayUniqueItems=function(n,i){var r,u,f;if(i.uniqueItems)for(r=0;r<n.length;r++)for(u=r+1;u<n.length;u++)if(h(n[r],n[u])&&(f=this.createError(t.ARRAY_UNIQUE,{match1:r,match2:u},"","/uniqueItems",null,n,i),this.handleError(f)))return f;return null};n.prototype.validateArrayItems=function(n,i,r){if(void 0===i.items)return null;var f,u;if(Array.isArray(i.items)){for(u=0;u<n.length;u++)if(u<i.items.length){if(f=this.validateAll(n[u],i.items[u],[u],["items",u],r+"/"+u))return f}else if(void 0!==i.additionalItems)if("boolean"==typeof i.additionalItems){if(!i.additionalItems&&(f=this.createError(t.ARRAY_ADDITIONAL_ITEMS,{},"/"+u,"/additionalItems",null,n,i),this.handleError(f)))return f}else if(f=this.validateAll(n[u],i.additionalItems,[u],["additionalItems"],r+"/"+u))return f}else for(u=0;u<n.length;u++)if(f=this.validateAll(n[u],i.items,[u],["items"],r+"/"+u))return f;return null};n.prototype.validateObject=function(n,t,i){return"object"!=typeof n||null===n||Array.isArray(n)?null:this.validateObjectMinMaxProperties(n,t,i)||this.validateObjectRequiredProperties(n,t,i)||this.validateObjectProperties(n,t,i)||this.validateObjectDependencies(n,t,i)||null};n.prototype.validateObjectMinMaxProperties=function(n,i){var r,u=Object.keys(n);return void 0!==i.minProperties&&u.length<i.minProperties&&(r=this.createError(t.OBJECT_PROPERTIES_MINIMUM,{propertyCount:u.length,minimum:i.minProperties},"","/minProperties",null,n,i),this.handleError(r))?r:void 0!==i.maxProperties&&u.length>i.maxProperties&&(r=this.createError(t.OBJECT_PROPERTIES_MAXIMUM,{propertyCount:u.length,maximum:i.maxProperties},"","/maxProperties",null,n,i),this.handleError(r))?r:null};n.prototype.validateObjectRequiredProperties=function(n,i){var r,u,f;if(void 0!==i.required)for(r=0;r<i.required.length;r++)if(u=i.required[r],void 0===n[u]&&(f=this.createError(t.OBJECT_REQUIRED,{key:u},"","/required/"+r,null,n,i),this.handleError(f)))return f;return null};n.prototype.validateObjectProperties=function(n,i,r){var e,u,f,o,s,h;for(u in n){if(f=r+"/"+u.replace(/~/g,"~0").replace(/\//g,"~1"),o=!1,void 0!==i.properties&&void 0!==i.properties[u]&&(o=!0,e=this.validateAll(n[u],i.properties[u],[u],["properties",u],f)))return e;if(void 0!==i.patternProperties)for(s in i.patternProperties)if(h=new RegExp(s),h.test(u)&&(o=!0,e=this.validateAll(n[u],i.patternProperties[s],[u],["patternProperties",s],f)))return e;if(o)this.trackUnknownProperties&&(this.knownPropertyPaths[f]=!0,delete this.unknownPropertyPaths[f]);else if(void 0!==i.additionalProperties){if(this.trackUnknownProperties&&(this.knownPropertyPaths[f]=!0,delete this.unknownPropertyPaths[f]),"boolean"==typeof i.additionalProperties){if(!i.additionalProperties&&(e=this.createError(t.OBJECT_ADDITIONAL_PROPERTIES,{key:u},"","/additionalProperties",null,n,i).prefixWith(u,null),this.handleError(e)))return e}else if(e=this.validateAll(n[u],i.additionalProperties,[u],["additionalProperties"],f))return e}else this.trackUnknownProperties&&!this.knownPropertyPaths[f]&&(this.unknownPropertyPaths[f]=!0)}return null};n.prototype.validateObjectDependencies=function(n,i,r){var u,f,e,o,s;if(void 0!==i.dependencies)for(f in i.dependencies)if(void 0!==n[f])if(e=i.dependencies[f],"string"==typeof e){if(void 0===n[e]&&(u=this.createError(t.OBJECT_DEPENDENCY_KEY,{key:f,missing:e},"","",null,n,i).prefixWith(null,f).prefixWith(null,"dependencies"),this.handleError(u)))return u}else if(Array.isArray(e)){for(o=0;o<e.length;o++)if(s=e[o],void 0===n[s]&&(u=this.createError(t.OBJECT_DEPENDENCY_KEY,{key:f,missing:s},"","/"+o,null,n,i).prefixWith(null,f).prefixWith(null,"dependencies"),this.handleError(u)))return u}else if(u=this.validateAll(n,e,[],["dependencies",f],r))return u;return null};n.prototype.validateCombinations=function(n,t,i){return this.validateAllOf(n,t,i)||this.validateAnyOf(n,t,i)||this.validateOneOf(n,t,i)||this.validateNot(n,t,i)||null};n.prototype.validateAllOf=function(n,t,i){var u,r,f;if(void 0===t.allOf)return null;for(r=0;r<t.allOf.length;r++)if(f=t.allOf[r],u=this.validateAll(n,f,[],["allOf",r],i))return u;return null};n.prototype.validateAnyOf=function(n,i,r){var e,o,f,s,h,u,l,a;if(void 0===i.anyOf)return null;for(f=[],s=this.errors.length,this.trackUnknownProperties&&(e=this.unknownPropertyPaths,o=this.knownPropertyPaths),h=!0,u=0;u<i.anyOf.length;u++){this.trackUnknownProperties&&(this.unknownPropertyPaths={},this.knownPropertyPaths={});var v=i.anyOf[u],y=this.errors.length,c=this.validateAll(n,v,[],["anyOf",u],r);if(null===c&&y===this.errors.length){if(this.errors=this.errors.slice(0,s),this.trackUnknownProperties){for(l in this.knownPropertyPaths)o[l]=!0,delete e[l];for(a in this.unknownPropertyPaths)o[a]||(e[a]=!0);h=!1;continue}return null}c&&f.push(c.prefixWith(null,""+u).prefixWith(null,"anyOf"))}return this.trackUnknownProperties&&(this.unknownPropertyPaths=e,this.knownPropertyPaths=o),h?(f=f.concat(this.errors.slice(s)),this.errors=this.errors.slice(0,s),this.createError(t.ANY_OF_MISSING,{},"","/anyOf",f,n,i)):void 0};n.prototype.validateOneOf=function(n,i,r){var u,l,a;if(void 0===i.oneOf)return null;var f,e,o=null,s=[],h=this.errors.length;for(this.trackUnknownProperties&&(f=this.unknownPropertyPaths,e=this.knownPropertyPaths),u=0;u<i.oneOf.length;u++){this.trackUnknownProperties&&(this.unknownPropertyPaths={},this.knownPropertyPaths={});var v=i.oneOf[u],y=this.errors.length,c=this.validateAll(n,v,[],["oneOf",u],r);if(null===c&&y===this.errors.length){if(null!==o)return this.errors=this.errors.slice(0,h),this.createError(t.ONE_OF_MULTIPLE,{index1:o,index2:u},"","/oneOf",null,n,i);if(o=u,this.trackUnknownProperties){for(l in this.knownPropertyPaths)e[l]=!0,delete f[l];for(a in this.unknownPropertyPaths)e[a]||(f[a]=!0)}}else c&&s.push(c)}return this.trackUnknownProperties&&(this.unknownPropertyPaths=f,this.knownPropertyPaths=e),null===o?(s=s.concat(this.errors.slice(h)),this.errors=this.errors.slice(0,h),this.createError(t.ONE_OF_MISSING,{},"","/oneOf",s,n,i)):(this.errors=this.errors.slice(0,h),null)};n.prototype.validateNot=function(n,i,r){var f,e,u,o,s;return void 0===i.not?null:(u=this.errors.length,this.trackUnknownProperties&&(f=this.unknownPropertyPaths,e=this.knownPropertyPaths,this.unknownPropertyPaths={},this.knownPropertyPaths={}),o=this.validateAll(n,i.not,null,null,r),s=this.errors.slice(u),this.errors=this.errors.slice(0,u),this.trackUnknownProperties&&(this.unknownPropertyPaths=f,this.knownPropertyPaths=e),null===o&&0===s.length?this.createError(t.NOT_PASSED,{},"","/not",null,n,i):null)};n.prototype.validateHypermedia=function(n,t,i){var o,r,u,c,l;if(!t.links)return null;for(r=0;r<t.links.length;r++)if(u=t.links[r],"describedby"===u.rel){for(var f=new s(u.href),h=!0,e=0;e<f.varNames.length;e++)if(!(f.varNames[e]in n)){h=!1;break}if(h&&(c=f.fillFromObject(n),l={$ref:c},o=this.validateAll(n,l,[],["links",r],i)))return o}};t={INVALID_TYPE:0,ENUM_MISMATCH:1,ANY_OF_MISSING:10,ONE_OF_MISSING:11,ONE_OF_MULTIPLE:12,NOT_PASSED:13,NUMBER_MULTIPLE_OF:100,NUMBER_MINIMUM:101,NUMBER_MINIMUM_EXCLUSIVE:102,NUMBER_MAXIMUM:103,NUMBER_MAXIMUM_EXCLUSIVE:104,NUMBER_NOT_A_NUMBER:105,STRING_LENGTH_SHORT:200,STRING_LENGTH_LONG:201,STRING_PATTERN:202,OBJECT_PROPERTIES_MINIMUM:300,OBJECT_PROPERTIES_MAXIMUM:301,OBJECT_REQUIRED:302,OBJECT_ADDITIONAL_PROPERTIES:303,OBJECT_DEPENDENCY_KEY:304,ARRAY_LENGTH_SHORT:400,ARRAY_LENGTH_LONG:401,ARRAY_UNIQUE:402,ARRAY_ADDITIONAL_ITEMS:403,FORMAT_CUSTOM:500,KEYWORD_CUSTOM:501,CIRCULAR_REFERENCE:600,UNKNOWN_PROPERTY:1e3};u={};for(p in t)u[t[p]]=p;return f={INVALID_TYPE:"Invalid type: {type} (expected {expected})",ENUM_MISMATCH:"No enum match for: {value}",ANY_OF_MISSING:'Data does not match any schemas from "anyOf"',ONE_OF_MISSING:'Data does not match any schemas from "oneOf"',ONE_OF_MULTIPLE:'Data is valid against more than one schema from "oneOf": indices {index1} and {index2}',NOT_PASSED:'Data matches schema from "not"',NUMBER_MULTIPLE_OF:"Value {value} is not a multiple of {multipleOf}",NUMBER_MINIMUM:"Value {value} is less than minimum {minimum}",NUMBER_MINIMUM_EXCLUSIVE:"Value {value} is equal to exclusive minimum {minimum}",NUMBER_MAXIMUM:"Value {value} is greater than maximum {maximum}",NUMBER_MAXIMUM_EXCLUSIVE:"Value {value} is equal to exclusive maximum {maximum}",NUMBER_NOT_A_NUMBER:"Value {value} is not a valid number",STRING_LENGTH_SHORT:"String is too short ({length} chars), minimum {minimum}",STRING_LENGTH_LONG:"String is too long ({length} chars), maximum {maximum}",STRING_PATTERN:"String does not match pattern: {pattern}",OBJECT_PROPERTIES_MINIMUM:"Too few properties defined ({propertyCount}), minimum {minimum}",OBJECT_PROPERTIES_MAXIMUM:"Too many properties defined ({propertyCount}), maximum {maximum}",OBJECT_REQUIRED:"Missing required property: {key}",OBJECT_ADDITIONAL_PROPERTIES:"Additional properties not allowed",OBJECT_DEPENDENCY_KEY:"Dependency failed - key must exist: {missing} (due to key: {key})",ARRAY_LENGTH_SHORT:"Array is too short ({length}), minimum {minimum}",ARRAY_LENGTH_LONG:"Array is too long ({length}), maximum {maximum}",ARRAY_UNIQUE:"Array items are not unique (indices {match1} and {match2})",ARRAY_ADDITIONAL_ITEMS:"Additional items not allowed",FORMAT_CUSTOM:"Format validation failed ({message})",KEYWORD_CUSTOM:"Keyword failed: {key} ({message})",CIRCULAR_REFERENCE:"Circular $refs: {urls}",UNKNOWN_PROPERTY:"Unknown property (not in schema)"},r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r.prototype.name="ValidationError",r.prototype.prefixWith=function(n,t){if(null!==n&&(n=n.replace(/~/g,"~0").replace(/\//g,"~1"),this.dataPath="/"+n+this.dataPath),null!==t&&(t=t.replace(/~/g,"~0").replace(/\//g,"~1"),this.schemaPath="/"+t+this.schemaPath),null!==this.subErrors)for(var i=0;i<this.subErrors.length;i++)this.subErrors[i].prefixWith(n,t);return this},i={},e=b(),e.addLanguage("en-gb",f),e.tv4=e,e});!function(){var n={parse:function(n){if(typeof n!="string")throw new TypeError("ObjectPath.parse must be passed a string");for(var i=0,f=[],e,r,u,t;i<n.length;)if(e=n.indexOf(".",i),r=n.indexOf("[",i),e===-1&&r===-1)f.push(n.slice(i,n.length)),i=n.length;else if(r===-1||e!==-1&&e<r)f.push(n.slice(i,e)),i=e+1;else if(r>i&&(f.push(n.slice(i,r)),i=r),u=n.slice(r+1,r+2),u!=='"'&&u!=="'")t=n.indexOf("]",r),t===-1&&(t=n.length),f.push(n.slice(i+1,t)),i=n.slice(t+1,t+2)==="."?t+2:t+1;else{for(t=n.indexOf(u+"]",r),t===-1&&(t=n.length);n.slice(t-1,t)==="\\"&&r<n.length;)r++,t=n.indexOf(u+"]",r);f.push(n.slice(i+2,t).replace(new RegExp("\\"+u,"g"),u));i=n.slice(t+2,t+3)==="."?t+3:t+2}return f},stringify:function(n,t){return Array.isArray(n)||(n=[n.toString()]),t=t==='"'?'"':"'",n.map(function(n){return"["+t+n.toString().replace(new RegExp(t,"g"),"\\"+t)+t+"]"}).join("")},normalize:function(t,i){return n.stringify(Array.isArray(t)?t:n.parse(t),i)},registerModule:function(t){t.module("ObjectPath",[]).provider("ObjectPath",function(){this.parse=n.parse;this.stringify=n.stringify;this.normalize=n.normalize;this.$get=function(){return n}})}};typeof define=="function"&&define.amd?define(function(){return{ObjectPath:n,parse:n.parse,stringify:n.stringify,normalize:n.normalize}}):typeof exports=="object"?exports.ObjectPath=n:window.ObjectPath=n}(),function(n){n.fn.miniview=function(t){function g(n){p=!0;r.css("cursor","move");var t=r.position();l=Math.round(t.left+u+h/2);a=Math.round(t.top+f+c/2);b(n);n.type==="touchstart"?(v="touchmove",y="touchend"):(v="mousemove",y="mouseup");r.on(v,b);r.on(y,nt)}function b(n){var e,t,r;if(p){if(n.preventDefault(),n.type.match(/touch/)){if(n.touches.length>1)return;e=n.touches[0]}else e=n;t=e.clientX-l;r=e.clientY-a;u+t<0&&(t=-u);f+r<0&&(r=-f);u+h+t>o&&(t=o-u-h);f+c+r>s&&(r=s-f-c);l+=t;a+=r;u+=t;f+=r;var w=o/i[0].scrollWidth,b=s/i[0].scrollHeight,v=u/w,y=f/b;navigator.userAgent.match(/webkit/i)?(i[0].scrollLeft=Math.round(v),i[0].scrollTop=Math.round(y)):(i[0].scrollLeft=Math.round(v),i[0].scrollTop=Math.round(y));k()}}function nt(){p=!1;r.css("cursor","default")}function w(){if(i[0]!==undefined){var n=[i.width(),i.height()],t=[i.scrollLeft(),i.scrollTop()],r=o/i[0].scrollWidth,e=s/i[0].scrollHeight,l=n[0]*r-0,a=n[1]*e-0,v=t[0]*r,y=t[1]*e;h=Math.round(l);c=Math.round(a);u=Math.round(v);f=Math.round(y)}k()}function k(){e.css("width",h+"px");e.css("height",c+"px");e.css("left",u+"px");e.css("top",f+"px")}function d(){return r.find(".mini").remove(),t.each(function(){var t=n("<div><\/div>").addClass("mini");r.append(t);var u=o/i[0].scrollWidth,f=s/i[0].scrollHeight,e=n(this).width()*u,h=n(this).height()*f,c=(n(this).position().left+i.scrollLeft())*u,l=(n(this).position().top+i.scrollTop())*f;t.css("width",Math.round(e)+"px");t.css("height",Math.round(h)+"px");t.css("left",Math.round(c)+"px");t.css("top",Math.round(l)+"px")}),this}var i=this,r,e,o,s,l,a,u,f,h,c,v,y,p=!1;r=n("#miniview");o=r.width();s=r.height();r.find(".port").remove();e=n("<div><\/div>").addClass("port").css("z-index",1);r.append(e);w();i.bind("resize",w);i.bind("drag",d);i.bind("scroll",w);r.bind("mousedown",g);d()}}(jQuery);angular.module("colorpicker.module",[]).factory("helper",function(){return{closest:function(n,t){for(var i=n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector;n;){if(i.bind(n)(t))return n;n=n.parentNode}return!1},getOffset:function(n){for(var t=0,i=0;n&&!isNaN(n.offsetLeft)&&!isNaN(n.offsetTop);)t+=n.offsetLeft,i+=n.offsetTop,n=n.offsetParent;return{top:i,left:t}},extend:function(){for(var t,n=1;n<arguments.length;n++)for(t in arguments[n])arguments[n].hasOwnProperty(t)&&(arguments[0][t]=arguments[n][t]);return arguments[0]},stringParsers:[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(n){return[n[1],n[2],n[3],n[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(n){return[2.55*n[1],2.55*n[2],2.55*n[3],n[4]]}},{re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(n){return[parseInt(n[1],16),parseInt(n[2],16),parseInt(n[3],16)]}},{re:/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,parse:function(n){return[parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16),parseInt(n[3]+n[3],16)]}}]}}).factory("Color",["helper",function(n){return{value:{h:1,s:1,b:1,a:1},rgb:function(){var n=this.toRGB();return"rgb("+n.r+","+n.g+","+n.b+")"},rgba:function(){var n=this.toRGB();return"rgba("+n.r+","+n.g+","+n.b+","+n.a+")"},hex:function(){return this.toHex()},RGBtoHSB:function(n,t,i,r){n/=255;t/=255;i/=255;var e,o,f,u;return f=Math.max(n,t,i),u=f-Math.min(n,t,i),e=u===0?null:f==n?(t-i)/u:f==t?(i-n)/u+2:(n-t)/u+4,e=(e+360)%6/6,o=u===0?0:u/f,{h:e||1,s:o,b:f,a:r||1}},HueToRGB:function(n,t,i){return i<0?i+=1:i>1&&(i-=1),i*6<1?n+(t-n)*i*6:i*2<1?t:i*3<2?n+(t-n)*(2/3-i)*6:n},setColor:function(t){var r;t=t.toLowerCase();for(r in n.stringParsers){var i=n.stringParsers[r],u=i.re.exec(t),f=u&&i.parse(u),e=i.space||"rgba";if(f)return this.value=this.RGBtoHSB.apply(null,f),!1}},setHue:function(n){this.value.h=1-n},setSaturation:function(n){this.value.s=n},setLightness:function(n){this.value.b=1-n},setAlpha:function(n){this.value.a=parseInt((1-n)*100,10)/100},toRGB:function(n,t,i,r){n||(n=this.value.h,t=this.value.s,i=this.value.b);n*=360;var e,o,s,f,u;return n=n%360/60,u=i*t,f=u*(1-Math.abs(n%2-1)),e=o=s=i-u,n=~~n,e+=[u,f,0,0,f,u][n],o+=[f,u,u,f,0,0][n],s+=[0,0,f,u,u,f][n],{r:Math.round(e*255),g:Math.round(o*255),b:Math.round(s*255),a:r||this.value.a}},toHex:function(n,t,i,r){var u=this.toRGB(n,t,i,r);return"#"+(16777216|parseInt(u.r)<<16|parseInt(u.g)<<8|parseInt(u.b)).toString(16).substr(1)}}}]).directive("colorpicker",["$document","$compile","Color","helper",function(n,t,i,r){return{require:"?ngModel",restrict:"A",link:function(u,f,e,o){var h=angular.element('<div class="colorpicker dropdown-menu"><div class="colorpicker-saturation"><i><b><\/b><\/i><\/div><div class="colorpicker-hue"><i><\/i><\/div><div class="colorpicker-alpha"><i><\/i><\/div><div class="colorpicker-color"><div><\/div><\/div><button class="close close-colorpicker">&times;<\/button><\/div>'),c=i,p,l,d,y,a=null,s=null,w=e.colorpicker?e.colorpicker:"hex",v=e.colorpickerPosition?e.colorpickerPosition:"bottom",k;t(h)(u);l={enabled:w==="rgba",css:null};l.enabled===!0&&(h.addClass("alpha"),l.css=h.find("div")[2].style);h.addClass("colorpicker-position-"+v);angular.element(document.body).append(h);o&&(o.$render=function(){f.val(o.$viewValue)},u.$watch(e.ngModel,function(){it()}));f.bind("$destroy",function(){h.remove()});d=h.find("div")[0].style;p=h.find("div")[4].style;y=h.find("i");var g=function(){try{p.backgroundColor=c[w]()}catch(n){p.backgroundColor=c.toHex()}d.backgroundColor=c.toHex(c.value.h,1,1,1);l.enabled===!0&&(l.css.backgroundColor=c.toHex())},nt=function(n){n.stopPropagation();n.preventDefault();var t=r.closest(n.target,"div");if(t.className==="colorpicker-saturation")s=r.extend({},{maxLeft:100,maxTop:100,callLeft:"setSaturation",callTop:"setLightness"});else if(t.className==="colorpicker-hue")s=r.extend({},{maxLeft:0,maxTop:100,callLeft:!1,callTop:"setHue"});else if(t.className==="colorpicker-alpha")s=r.extend({},{maxLeft:0,maxTop:100,callLeft:!1,callTop:"setAlpha"});else return s=null,!1;s.knob=t.children[0].style;s.left=n.pageX-r.getOffset(t).left;s.top=n.pageY-r.getOffset(t).top;a={left:n.pageX,top:n.pageY}},b=function(n){var t,i,r;if(s)return t=Math.max(0,Math.min(s.maxLeft,s.left+((n.pageX||a.left)-a.left))),i=Math.max(0,Math.min(s.maxTop,s.top+((n.pageY||a.top)-a.top))),s.knob.left=t+"px",s.knob.top=i+"px",s.callLeft&&c[s.callLeft].call(c,t/100),s.callTop&&c[s.callTop].call(c,i/100),g(),r=c[w](),f.val(r),o&&u.$apply(o.$setViewValue(r)),!1},tt=function(){n.unbind("mousemove",b);n.unbind("mouseup",tt)},it=function(){c.setColor(f.val());y.eq(0).css({left:c.value.s*100+"px",top:100-c.value.b*100+"px"});y.eq(1).css("top",100*(1-c.value.h)+"px");y.eq(2).css("top",100*(1-c.value.a)+"px");g()},rt=function(){var t,n=r.getOffset(f[0]);return v==="top"?t={top:n.top-146,left:n.left}:v==="right"?t={top:n.top,left:n.left+141}:v==="bottom"?t={top:n.top+f[0].offsetHeight,left:n.left}:v==="left"&&(t={top:n.top,left:n.left-131}),{top:t.top+"px",left:t.left+"px"}};f.bind("click",function(){it();h.addClass("colorpicker-visible").css(rt())});h.bind("mousedown",function(n){n.stopPropagation();n.preventDefault()});h.find("div").bind("click",function(n){nt(n);b(n)});h.find("div").bind("mousedown",function(t){nt(t);n.bind("mousemove",b);n.bind("mouseup",tt)});k=function(){h.hasClass("colorpicker-visible")&&h.removeClass("colorpicker-visible")};h.find("button").bind("click",function(){k()});n.bind("mousedown",function(){k()})}}}]),function(n){function t(n,r){if(n=n?n:"",r=r||{},n instanceof t)return n;if(!(this instanceof t))return new t(n,r);var u=ut(n);this._originalInput=n;this._r=u.r;this._g=u.g;this._b=u.b;this._a=u.a;this._roundA=i(100*this._a)/100;this._format=r.format||u.format;this._gradientType=r.gradientType;this._r<1&&(this._r=i(this._r));this._g<1&&(this._g=i(this._g));this._b<1&&(this._b=i(this._b));this._ok=u.ok;this._tc_id=rt++}function ut(n){var t={r:0,g:0,b:0},i=1,r=null,e=null,l=null,u=!1,f=!1;return typeof n=="string"&&(n=ui(n)),typeof n=="object"&&(h(n.r)&&h(n.g)&&h(n.b)?(t=ft(n.r,n.g,n.b),u=!0,f=String(n.r).substr(-1)==="%"?"prgb":"rgb"):h(n.h)&&h(n.s)&&h(n.v)?(r=c(n.s),e=c(n.v),t=ot(n.h,r,e),u=!0,f="hsv"):h(n.h)&&h(n.s)&&h(n.l)&&(r=c(n.s),l=c(n.l),t=et(n.h,r,l),u=!0,f="hsl"),n.hasOwnProperty("a")&&(i=n.a)),i=d(i),{ok:u,format:n.format||f,r:o(255,s(t.r,0)),g:o(255,s(t.g,0)),b:o(255,s(t.b,0)),a:i}}function ft(n,t,i){return{r:r(n,255)*255,g:r(t,255)*255,b:r(i,255)*255}}function y(n,t,i){var e;n=r(n,255);t=r(t,255);i=r(i,255);var u=s(n,t,i),h=o(n,t,i),f,c,l=(u+h)/2;if(u==h)f=c=0;else{e=u-h;c=l>.5?e/(2-u-h):e/(u+h);switch(u){case n:f=(t-i)/e+(t<i?6:0);break;case t:f=(i-n)/e+2;break;case i:f=(n-t)/e+4}f/=6}return{h:f,s:c,l:l}}function et(n,t,i){function h(n,t,i){return(i<0&&(i+=1),i>1&&(i-=1),i<1/6)?n+(t-n)*6*i:i<1/2?t:i<2/3?n+(t-n)*(2/3-i)*6:n}var e,o,s,u,f;return n=r(n,360),t=r(t,100),i=r(i,100),t===0?e=o=s=i:(u=i<.5?i*(1+t):i+t-i*t,f=2*i-u,e=h(f,u,n+1/3),o=h(f,u,n),s=h(f,u,n-1/3)),{r:e*255,g:o*255,b:s*255}}function p(n,t,i){n=r(n,255);t=r(t,255);i=r(i,255);var u=s(n,t,i),h=o(n,t,i),f,c,l=u,e=u-h;if(c=u===0?0:e/u,u==h)f=0;else{switch(u){case n:f=(t-i)/e+(t<i?6:0);break;case t:f=(i-n)/e+2;break;case i:f=(n-t)/e+4}f/=6}return{h:f,s:c,v:l}}function ot(t,i,u){t=r(t,360)*6;i=r(i,100);u=r(u,100);var h=n.floor(t),c=t-h,f=u*(1-i),e=u*(1-c*i),o=u*(1-(1-c)*i),s=h%6,l=[u,e,f,f,o,u][s],a=[o,u,u,e,f,f][s],v=[f,f,o,u,u,e][s];return{r:l*255,g:a*255,b:v*255}}function w(n,t,r,u){var f=[e(i(n).toString(16)),e(i(t).toString(16)),e(i(r).toString(16))];return u&&f[0].charAt(0)==f[0].charAt(1)&&f[1].charAt(0)==f[1].charAt(1)&&f[2].charAt(0)==f[2].charAt(1)?f[0].charAt(0)+f[1].charAt(0)+f[2].charAt(0):f.join("")}function st(n,t,r,u,f){var o=[e(i(n).toString(16)),e(i(t).toString(16)),e(i(r).toString(16)),e(g(u))];return f&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1)?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0):o.join("")}function b(n,t,r,u){var f=[e(g(u)),e(i(n).toString(16)),e(i(t).toString(16)),e(i(r).toString(16))];return f.join("")}function ht(n,i){i=i===0?0:i||10;var r=t(n).toHsl();return r.s-=i/100,r.s=a(r.s),t(r)}function ct(n,i){i=i===0?0:i||10;var r=t(n).toHsl();return r.s+=i/100,r.s=a(r.s),t(r)}function lt(n){return t(n).desaturate(100)}function at(n,i){i=i===0?0:i||10;var r=t(n).toHsl();return r.l+=i/100,r.l=a(r.l),t(r)}function vt(n,r){r=r===0?0:r||10;var u=t(n).toRgb();return u.r=s(0,o(255,u.r-i(255*-(r/100)))),u.g=s(0,o(255,u.g-i(255*-(r/100)))),u.b=s(0,o(255,u.b-i(255*-(r/100)))),t(u)}function yt(n,i){i=i===0?0:i||10;var r=t(n).toHsl();return r.l-=i/100,r.l=a(r.l),t(r)}function pt(n,i){var r=t(n).toHsl(),u=(r.h+i)%360;return r.h=u<0?360+u:u,t(r)}function wt(n){var i=t(n).toHsl();return i.h=(i.h+180)%360,t(i)}function bt(n){var i=t(n).toHsl(),r=i.h;return[t(n),t({h:(r+120)%360,s:i.s,l:i.l}),t({h:(r+240)%360,s:i.s,l:i.l})]}function kt(n){var i=t(n).toHsl(),r=i.h;return[t(n),t({h:(r+90)%360,s:i.s,l:i.l}),t({h:(r+180)%360,s:i.s,l:i.l}),t({h:(r+270)%360,s:i.s,l:i.l})]}function dt(n){var i=t(n).toHsl(),r=i.h;return[t(n),t({h:(r+72)%360,s:i.s,l:i.l}),t({h:(r+216)%360,s:i.s,l:i.l})]}function gt(n,i,r){i=i||6;r=r||30;var u=t(n).toHsl(),f=360/r,e=[t(n)];for(u.h=(u.h-(f*i>>1)+720)%360;--i;)u.h=(u.h+f)%360,e.push(t(u));return e}function ni(n,i){i=i||6;for(var r=t(n).toHsv(),e=r.h,o=r.s,u=r.v,f=[],s=1/i;i--;)f.push(t({h:e,s:o,v:u})),u=(u+s)%1;return f}function ti(n){var i={},t;for(t in n)n.hasOwnProperty(t)&&(i[n[t]]=t);return i}function d(n){return n=parseFloat(n),(isNaN(n)||n<0||n>1)&&(n=1),n}function r(t,i){ii(t)&&(t="100%");var r=ri(t);return(t=o(i,s(0,parseFloat(t))),r&&(t=parseInt(t*i,10)/100),n.abs(t-i)<1e-6)?1:t%i/parseFloat(i)}function a(n){return o(1,s(0,n))}function u(n){return parseInt(n,16)}function ii(n){return typeof n=="string"&&n.indexOf(".")!=-1&&parseFloat(n)===1}function ri(n){return typeof n=="string"&&n.indexOf("%")!=-1}function e(n){return n.length==1?"0"+n:""+n}function c(n){return n<=1&&(n=n*100+"%"),n}function g(t){return n.round(parseFloat(t)*255).toString(16)}function nt(n){return u(n)/255}function h(n){return!!f.CSS_UNIT.exec(n)}function ui(n){var i,t;if(n=n.replace(tt,"").replace(it,"").toLowerCase(),i=!1,l[n])n=l[n],i=!0;else if(n=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};return(t=f.rgb.exec(n))?{r:t[1],g:t[2],b:t[3]}:(t=f.rgba.exec(n))?{r:t[1],g:t[2],b:t[3],a:t[4]}:(t=f.hsl.exec(n))?{h:t[1],s:t[2],l:t[3]}:(t=f.hsla.exec(n))?{h:t[1],s:t[2],l:t[3],a:t[4]}:(t=f.hsv.exec(n))?{h:t[1],s:t[2],v:t[3]}:(t=f.hsva.exec(n))?{h:t[1],s:t[2],v:t[3],a:t[4]}:(t=f.hex8.exec(n))?{r:u(t[1]),g:u(t[2]),b:u(t[3]),a:nt(t[4]),format:i?"name":"hex8"}:(t=f.hex6.exec(n))?{r:u(t[1]),g:u(t[2]),b:u(t[3]),format:i?"name":"hex"}:(t=f.hex4.exec(n))?{r:u(t[1]+""+t[1]),g:u(t[2]+""+t[2]),b:u(t[3]+""+t[3]),a:nt(t[4]+""+t[4]),format:i?"name":"hex8"}:(t=f.hex3.exec(n))?{r:u(t[1]+""+t[1]),g:u(t[2]+""+t[2]),b:u(t[3]+""+t[3]),format:i?"name":"hex"}:!1}function fi(n){var t,i;return n=n||{level:"AA",size:"small"},t=(n.level||"AA").toUpperCase(),i=(n.size||"small").toLowerCase(),t!=="AA"&&t!=="AAA"&&(t="AA"),i!=="small"&&i!=="large"&&(i="small"),{level:t,size:i}}var tt=/^\s+/,it=/\s+$/,rt=0,i=n.round,o=n.min,s=n.max,v=n.random,l,k,f;t.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var n=this.toRgb();return(n.r*299+n.g*587+n.b*114)/1e3},getLuminance:function(){var u=this.toRgb(),t,i,r,f,e,o;return t=u.r/255,i=u.g/255,r=u.b/255,f=t<=.03928?t/12.92:n.pow((t+.055)/1.055,2.4),e=i<=.03928?i/12.92:n.pow((i+.055)/1.055,2.4),o=r<=.03928?r/12.92:n.pow((r+.055)/1.055,2.4),.2126*f+.7152*e+.0722*o},setAlpha:function(n){return this._a=d(n),this._roundA=i(100*this._a)/100,this},toHsv:function(){var n=p(this._r,this._g,this._b);return{h:n.h*360,s:n.s,v:n.v,a:this._a}},toHsvString:function(){var n=p(this._r,this._g,this._b),t=i(n.h*360),r=i(n.s*100),u=i(n.v*100);return this._a==1?"hsv("+t+", "+r+"%, "+u+"%)":"hsva("+t+", "+r+"%, "+u+"%, "+this._roundA+")"},toHsl:function(){var n=y(this._r,this._g,this._b);return{h:n.h*360,s:n.s,l:n.l,a:this._a}},toHslString:function(){var n=y(this._r,this._g,this._b),t=i(n.h*360),r=i(n.s*100),u=i(n.l*100);return this._a==1?"hsl("+t+", "+r+"%, "+u+"%)":"hsla("+t+", "+r+"%, "+u+"%, "+this._roundA+")"},toHex:function(n){return w(this._r,this._g,this._b,n)},toHexString:function(n){return"#"+this.toHex(n)},toHex8:function(n){return st(this._r,this._g,this._b,this._a,n)},toHex8String:function(n){return"#"+this.toHex8(n)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(r(this._r,255)*100)+"%",g:i(r(this._g,255)*100)+"%",b:i(r(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(r(this._r,255)*100)+"%, "+i(r(this._g,255)*100)+"%, "+i(r(this._b,255)*100)+"%)":"rgba("+i(r(this._r,255)*100)+"%, "+i(r(this._g,255)*100)+"%, "+i(r(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:k[w(this._r,this._g,this._b,!0)]||!1},toFilter:function(n){var r="#"+b(this._r,this._g,this._b,this._a),u=r,f=this._gradientType?"GradientType = 1, ":"",i;return n&&(i=t(n),u="#"+b(i._r,i._g,i._b,i._a)),"progid:DXImageTransform.Microsoft.gradient("+f+"startColorstr="+r+",endColorstr="+u+")"},toString:function(n){var i=!!n;n=n||this._format;var t=!1,r=this._a<1&&this._a>=0,u=!i&&r&&(n==="hex"||n==="hex6"||n==="hex3"||n==="hex4"||n==="hex8"||n==="name");return u?n==="name"&&this._a===0?this.toName():this.toRgbString():(n==="rgb"&&(t=this.toRgbString()),n==="prgb"&&(t=this.toPercentageRgbString()),(n==="hex"||n==="hex6")&&(t=this.toHexString()),n==="hex3"&&(t=this.toHexString(!0)),n==="hex4"&&(t=this.toHex8String(!0)),n==="hex8"&&(t=this.toHex8String()),n==="name"&&(t=this.toName()),n==="hsl"&&(t=this.toHslString()),n==="hsv"&&(t=this.toHsvString()),t||this.toHexString())},clone:function(){return t(this.toString())},_applyModification:function(n,t){var i=n.apply(null,[this].concat([].slice.call(t)));return this._r=i._r,this._g=i._g,this._b=i._b,this.setAlpha(i._a),this},lighten:function(){return this._applyModification(at,arguments)},brighten:function(){return this._applyModification(vt,arguments)},darken:function(){return this._applyModification(yt,arguments)},desaturate:function(){return this._applyModification(ht,arguments)},saturate:function(){return this._applyModification(ct,arguments)},greyscale:function(){return this._applyModification(lt,arguments)},spin:function(){return this._applyModification(pt,arguments)},_applyCombination:function(n,t){return n.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(gt,arguments)},complement:function(){return this._applyCombination(wt,arguments)},monochromatic:function(){return this._applyCombination(ni,arguments)},splitcomplement:function(){return this._applyCombination(dt,arguments)},triad:function(){return this._applyCombination(bt,arguments)},tetrad:function(){return this._applyCombination(kt,arguments)}};t.fromRatio=function(n,i){var u,r;if(typeof n=="object"){u={};for(r in n)n.hasOwnProperty(r)&&(u[r]=r==="a"?n[r]:c(n[r]));n=u}return t(n,i)};t.equals=function(n,i){return!n||!i?!1:t(n).toRgbString()==t(i).toRgbString()};t.random=function(){return t.fromRatio({r:v(),g:v(),b:v()})};t.mix=function(n,i,r){r=r===0?0:r||50;var u=t(n).toRgb(),f=t(i).toRgb(),e=r/100,o={r:(f.r-u.r)*e+u.r,g:(f.g-u.g)*e+u.g,b:(f.b-u.b)*e+u.b,a:(f.a-u.a)*e+u.a};return t(o)};t.readability=function(i,r){var u=t(i),f=t(r);return(n.max(u.getLuminance(),f.getLuminance())+.05)/(n.min(u.getLuminance(),f.getLuminance())+.05)};t.isReadable=function(n,i,r){var f=t.readability(n,i),e,u;u=!1;e=fi(r);switch(e.level+e.size){case"AAsmall":case"AAAlarge":u=f>=4.5;break;case"AAlarge":u=f>=3;break;case"AAAsmall":u=f>=7}return u};t.mostReadable=function(n,i,r){var f=null,o=0,e,s,h,c,u;for(r=r||{},s=r.includeFallbackColors,h=r.level,c=r.size,u=0;u<i.length;u++)e=t.readability(n,i[u]),e>o&&(o=e,f=t(i[u]));return t.isReadable(n,f,{level:h,size:c})||!s?f:(r.includeFallbackColors=!1,t.mostReadable(n,["#fff","#000"],r))};l=t.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};k=t.hexNames=ti(l);f=function(){var n="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",t="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",i="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{CSS_UNIT:new RegExp(n),rgb:new RegExp("rgb"+t),rgba:new RegExp("rgba"+i),hsl:new RegExp("hsl"+t),hsla:new RegExp("hsla"+i),hsv:new RegExp("hsv"+t),hsva:new RegExp("hsva"+i),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();typeof module!="undefined"&&module.exports?module.exports=t:typeof define=="function"&&define.amd?define(function(){return t}):window.tinycolor=t}(Math);mod=angular.module("panel-infinite-scroll",[]);mod.directive("panelInfiniteScroll",["$rootScope","$window","$timeout",function(n,t,i){return{link:function(t,r,u){var e,f,s,o;s=0;u.panelInfiniteScrollDistance!=null&&t.$watch(u.panelInfiniteScrollDistance,function(n){return s=parseInt(n,10)});o=!0;e=!1;u.panelInfiniteScrollDisabled!=null&&t.$watch(u.panelInfiniteScrollDisabled,function(n){return o=!n,o&&e?(e=!1,f()):void 0});f=function(){var l,h,c,i,f;return(i=r.children(),f=0,c=r.height(),i!==undefined&&i!==null&&i.length>0&&(f=i[0].offsetHeight,c=f*i.length),l=c-(r.height()+r.scrollTop()),h=l<=f*s,h&&o)?n.$$phase?t.$eval(u.panelInfiniteScroll):t.$apply(u.panelInfiniteScroll):h?e=!0:void 0};r.on("scroll",f);r.on("$destroy",function(){return r.off("scroll",f)});return i(function(){if(u.panelInfiniteScrollImmediateCheck){if(t.$eval(u.panelInfiniteScrollImmediateCheck))return f()}else return f()},0)}}}]);angular.module("ui.bootstrap.stackedMap2",[]).factory("$$stackedMap",function(){return{createNew:function(){var n=[];return{add:function(t,i){n.push({key:t,value:i})},get:function(t){for(var i=0;i<n.length;i++)if(t===n[i].key)return n[i]},keys:function(){for(var i=[],t=0;t<n.length;t++)i.push(n[t].key);return i},top:function(){return n[n.length-1]},remove:function(t){for(var r=-1,i=0;i<n.length;i++)if(t===n[i].key){r=i;break}return n.splice(r,1)[0]},removeTop:function(){return n.pop()},length:function(){return n.length}}}}});angular.module("ui.bootstrap.position2",[]).factory("$uibPosition",["$document","$window",function(n,t){var r,u,f={normal:/(auto|scroll)/,hidden:/(auto|scroll|hidden)/},i={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/},e=/(HTML|BODY)/;return{getRawNode:function(n){return n.nodeName?n:n[0]||n},parseStyle:function(n){return n=parseFloat(n),isFinite(n)?n:0},offsetParent:function(i){function u(n){return(t.getComputedStyle(n).position||"static")==="static"}i=this.getRawNode(i);for(var r=i.offsetParent||n[0].documentElement;r&&r!==n[0].documentElement&&u(r);)r=r.offsetParent;return r||n[0].documentElement},scrollbarWidth:function(i){var e,f;return i?(angular.isUndefined(u)&&(e=n.find("body"),e.addClass("uib-position-body-scrollbar-measure"),u=t.innerWidth-e[0].clientWidth,u=isFinite(u)?u:0,e.removeClass("uib-position-body-scrollbar-measure")),u):(angular.isUndefined(r)&&(f=angular.element('<div class="uib-position-scrollbar-measure"><\/div>'),n.find("body").append(f),r=f[0].offsetWidth-f[0].clientWidth,r=isFinite(r)?r:0,f.remove()),r)},scrollbarPadding:function(n){n=this.getRawNode(n);var u=t.getComputedStyle(n),f=this.parseStyle(u.paddingRight),o=this.parseStyle(u.paddingBottom),i=this.scrollParent(n,!1,!0),r=this.scrollbarWidth(e.test(i.tagName));return{scrollbarWidth:r,widthOverflow:i.scrollWidth>i.clientWidth,right:f+r,originalRight:f,heightOverflow:i.scrollHeight>i.clientHeight,bottom:o+r,originalBottom:o}},isScrollable:function(n,i){n=this.getRawNode(n);var u=i?f.hidden:f.normal,r=t.getComputedStyle(n);return u.test(r.overflow+r.overflowY+r.overflowX)},scrollParent:function(i,r,u){var c,e,s;i=this.getRawNode(i);var l=r?f.hidden:f.normal,h=n[0].documentElement,o=t.getComputedStyle(i);if(u&&l.test(o.overflow+o.overflowY+o.overflowX))return i;if(c=o.position==="absolute",e=i.parentElement||h,e===h||o.position==="fixed")return h;while(e.parentElement&&e!==h){if(s=t.getComputedStyle(e),c&&s.position!=="static"&&(c=!1),!c&&l.test(s.overflow+s.overflowY+s.overflowX))break;e=e.parentElement}return e},position:function(i,r){var u,o,f,e;return i=this.getRawNode(i),u=this.offset(i),r&&(o=t.getComputedStyle(i),u.top-=this.parseStyle(o.marginTop),u.left-=this.parseStyle(o.marginLeft)),f=this.offsetParent(i),e={top:0,left:0},f!==n[0].documentElement&&(e=this.offset(f),e.top+=f.clientTop-f.scrollTop,e.left+=f.clientLeft-f.scrollLeft),{width:Math.round(angular.isNumber(u.width)?u.width:i.offsetWidth),height:Math.round(angular.isNumber(u.height)?u.height:i.offsetHeight),top:Math.round(u.top-e.top),left:Math.round(u.left-e.left)}},offset:function(i){i=this.getRawNode(i);var r=i.getBoundingClientRect();return{width:Math.round(angular.isNumber(r.width)?r.width:i.offsetWidth),height:Math.round(angular.isNumber(r.height)?r.height:i.offsetHeight),top:Math.round(r.top+(t.pageYOffset||n[0].documentElement.scrollTop)),left:Math.round(r.left+(t.pageXOffset||n[0].documentElement.scrollLeft))}},viewportOffset:function(i,r,u){var o;i=this.getRawNode(i);u=u!==!1?!0:!1;var s=i.getBoundingClientRect(),f={top:0,left:0,bottom:0,right:0},e=r?n[0].documentElement:this.scrollParent(i),h=e.getBoundingClientRect();return f.top=h.top+e.clientTop,f.left=h.left+e.clientLeft,e===n[0].documentElement&&(f.top+=t.pageYOffset,f.left+=t.pageXOffset),f.bottom=f.top+e.clientHeight,f.right=f.left+e.clientWidth,u&&(o=t.getComputedStyle(e),f.top+=this.parseStyle(o.paddingTop),f.bottom-=this.parseStyle(o.paddingBottom),f.left+=this.parseStyle(o.paddingLeft),f.right-=this.parseStyle(o.paddingRight)),{top:Math.round(s.top-f.top),bottom:Math.round(f.bottom-s.bottom),left:Math.round(s.left-f.left),right:Math.round(f.right-s.right)}},parsePlacement:function(n){var t=i.auto.test(n);return t&&(n=n.replace(i.auto,"")),n=n.split("-"),n[0]=n[0]||"top",i.primary.test(n[0])||(n[0]="top"),n[1]=n[1]||"center",i.secondary.test(n[1])||(n[1]="center"),n[2]=t?!0:!1,n},positionElements:function(n,r,u,f){var c,l,e,h,v,y;if(n=this.getRawNode(n),r=this.getRawNode(r),c=angular.isDefined(r.offsetWidth)?r.offsetWidth:r.prop("offsetWidth"),l=angular.isDefined(r.offsetHeight)?r.offsetHeight:r.prop("offsetHeight"),u=this.parsePlacement(u),e=f?this.offset(n):this.position(n),h={top:0,left:0,placement:""},u[2]){var o=this.viewportOffset(n,f),a=t.getComputedStyle(r),s={width:c+Math.round(Math.abs(this.parseStyle(a.marginLeft)+this.parseStyle(a.marginRight))),height:l+Math.round(Math.abs(this.parseStyle(a.marginTop)+this.parseStyle(a.marginBottom)))};u[0]=u[0]==="top"&&s.height>o.top&&s.height<=o.bottom?"bottom":u[0]==="bottom"&&s.height>o.bottom&&s.height<=o.top?"top":u[0]==="left"&&s.width>o.left&&s.width<=o.right?"right":u[0]==="right"&&s.width>o.right&&s.width<=o.left?"left":u[0];u[1]=u[1]==="top"&&s.height-e.height>o.bottom&&s.height-e.height<=o.top?"bottom":u[1]==="bottom"&&s.height-e.height>o.top&&s.height-e.height<=o.bottom?"top":u[1]==="left"&&s.width-e.width>o.right&&s.width-e.width<=o.left?"right":u[1]==="right"&&s.width-e.width>o.left&&s.width-e.width<=o.right?"left":u[1];u[1]==="center"&&(i.vertical.test(u[0])?(v=e.width/2-c/2,o.left+v<0&&s.width-e.width<=o.right?u[1]="left":o.right+v<0&&s.width-e.width<=o.left&&(u[1]="right")):(y=e.height/2-s.height/2,o.top+y<0&&s.height-e.height<=o.bottom?u[1]="top":o.bottom+y<0&&s.height-e.height<=o.top&&(u[1]="bottom")))}switch(u[0]){case"top":h.top=e.top-l;break;case"bottom":h.top=e.top+e.height;break;case"left":h.left=e.left-c;break;case"right":h.left=e.left+e.width}switch(u[1]){case"top":h.top=e.top;break;case"bottom":h.top=e.top+e.height-l;break;case"left":h.left=e.left;break;case"right":h.left=e.left+e.width-c;break;case"center":i.vertical.test(u[0])?h.left=e.left+e.width/2-c/2:h.top=e.top+e.height/2-l/2}return h.top=Math.round(h.top),h.left=Math.round(h.left),h.placement=u[1]==="center"?u[0]:u[0]+"-"+u[1],h},adjustTop:function(n,t,i,r){if(n.indexOf("top")!==-1&&i!==r)return{top:t.top-r+"px"}},positionArrow:function(n,r){var o,f,e,u,c;if((n=this.getRawNode(n),o=n.querySelector(".tooltip-inner, .popover-inner"),o)&&(f=angular.element(o).hasClass("tooltip-inner"),e=f?n.querySelector(".tooltip-arrow"):n.querySelector(".arrow"),e)){if(u={top:"",bottom:"",left:"",right:""},r=this.parsePlacement(r),r[1]==="center"){angular.element(e).css(u);return}var l="border-"+r[0]+"-width",s=t.getComputedStyle(e)[l],h="border-";h+=i.vertical.test(r[0])?r[0]+"-"+r[1]:r[1]+"-"+r[0];h+="-radius";c=t.getComputedStyle(f?o:n)[h];switch(r[0]){case"top":u.bottom=f?"0":"-"+s;break;case"bottom":u.top=f?"0":"-"+s;break;case"left":u.right=f?"0":"-"+s;break;case"right":u.left=f?"0":"-"+s}u[r[1]]=c;angular.element(e).css(u)}}}}]);angular.module("ui.bootstrap.tooltip2",["ui.bootstrap.position2","ui.bootstrap.stackedMap2"]).provider("$uibTooltip",function(){function r(n){var t="-";return n.replace(/[A-Z]/g,function(n,i){return(i?t:"")+n.toLowerCase()})}var i={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},n={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},t={};this.options=function(n){angular.extend(t,n)};this.setTriggers=function(t){angular.extend(n,t)};this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(u,f,e,o,s,h,c,l,a){function y(n){if(n.which===27){var t=v.top();t&&(t.value.close(),t=null)}}var v=a.createNew();o.on("keyup",y);return c.$on("$destroy",function(){o.off("keyup",y)}),function(u,c,a,y){function p(t){var i=(t||y.trigger||a).split(" "),r=i.map(function(t){return n[t]||t});return{show:i,hide:r}}y=angular.extend({},i,t,y);var k=r(u),w=h.startSymbol(),b=h.endSymbol(),d="<div "+k+'-popup uib-title="'+w+"title"+b+'" '+(y.useContentExp?'content-exp="contentExp()" ':'content="'+w+"content"+b+'" ')+'origin-scope="origScope" class="uib-position-measure '+c+'" tooltip-animation-class="fade"uib-tooltip-classes ng-class="{ in: isOpen }" ><\/div>';return{compile:function(){var n=f(d);return function(t,i,r){function et(){f.isOpen?ot():vt()}function vt(){(!ii||t.$eval(r[c+"Enable"]))&&(yt(),ui(),f.popupDelay?nt||(nt=e(dt,f.popupDelay,!1)):dt())}function ot(){ct();f.popupCloseDelay?tt||(tt=e(d,f.popupCloseDelay,!1)):d()}function dt(){if(ct(),yt(),!f.content)return angular.noop;ri();f.$evalAsync(function(){f.isOpen=!0;gt(!0);ft()})}function ct(){nt&&(e.cancel(nt),nt=null);k&&(e.cancel(k),k=null)}function d(){f&&f.$evalAsync(function(){f&&(f.isOpen=!1,gt(!1),f.animation?g||(g=e(pt,150,!1)):pt())})}function yt(){tt&&(e.cancel(tt),tt=null);g&&(e.cancel(g),g=null)}function ri(){h||(b=f.$new(),h=n(b,function(n){it?o.find("body").append(n):i.after(n)}),v.add(f,{close:d}),fi())}function pt(){ct();yt();ei();h&&(h.remove(),h=null,st&&e.cancel(st));v.remove(f);b&&(b.$destroy(),b=null)}function ui(){var n,i,e;f.title=r[c+"Title"];f.content=ht?ht(t):r[u];f.popupClass=r[c+"Class"];f.placement=angular.isDefined(r[c+"Placement"])?r[c+"Placement"]:y.placement;n=s.parsePlacement(f.placement);ut=n[1]?n[0]+"-"+n[1]:n[0];i=parseInt(r[c+"PopupDelay"],10);e=parseInt(r[c+"PopupCloseDelay"],10);f.popupDelay=isNaN(i)?y.popupDelay:i;f.popupCloseDelay=isNaN(e)?y.popupCloseDelay:e}function gt(n){rt&&angular.isFunction(rt.assign)&&rt.assign(t,n)}function fi(){a.length=0;ht?(a.push(t.$watch(ht,function(n){f.content=n;!n&&f.isOpen&&d()})),a.push(b.$watch(function(){at||(at=!0,b.$$postDigest(function(){at=!1;f&&f.isOpen&&ft()}))}))):a.push(r.$observe(u,function(n){f.content=n;!n&&f.isOpen?d():ft()}));a.push(r.$observe(c+"Title",function(n){f.title=n;f.isOpen&&ft()}));a.push(r.$observe(c+"Placement",function(n){f.placement=n?n:y.placement;f.isOpen&&ft()}))}function ei(){a.length&&(angular.forEach(a,function(n){n()}),a.length=0)}function ni(n){f&&f.isOpen&&h&&(i[0].contains(n.target)||h[0].contains(n.target)||ot())}function ti(n){n.which===27&&ot()}function oi(){var u=[],f=[],n=t.$eval(r[c+"Trigger"]);wt();angular.isObject(n)?(Object.keys(n).forEach(function(t){u.push(t);f.push(n[t])}),w={show:u,hide:f}):w=p(n);w.show!=="none"&&w.show.forEach(function(n,t){if(n==="outsideClick"){i.on("click",et);o.on("click",ni)}else if(n===w.hide[t])i.on(n,et);else if(n){i.on(n,vt);i.on(w.hide[t],ot)}i.on("keypress",ti)})}var h,b,g,nt,tt,k,st,it=angular.isDefined(y.appendToBody)?y.appendToBody:!1,w=p(undefined),ii=angular.isDefined(r[c+"Enable"]),f=t.$new(!0),at=!1,rt=angular.isDefined(r[c+"IsOpen"])?l(r[c+"IsOpen"]):!1,ht=y.useContentExp?l(r[u]):!1,a=[],ut,ft=function(){h&&h.html()&&(k||(k=e(function(){var n=s.positionElements(i,h,f.placement,it),r=angular.isDefined(h.offsetHeight)?h.offsetHeight:h.prop("offsetHeight"),u=it?s.offset(i):s.position(i),t;h.css({top:n.top+"px",left:n.left+"px"});t=n.placement.split("-");h.hasClass(t[0])||(h.removeClass(ut.split("-")[0]),h.addClass(t[0]));h.hasClass(y.placementClassPrefix+n.placement)||(h.removeClass(y.placementClassPrefix+ut),h.addClass(y.placementClassPrefix+n.placement));st=e(function(){var i=angular.isDefined(h.offsetHeight)?h.offsetHeight:h.prop("offsetHeight"),n=s.adjustTop(t,u,r,i);n&&h.css(n);st=null},0,!1);h.hasClass("uib-position-measure")?(s.positionArrow(h,n.placement),h.removeClass("uib-position-measure")):ut!==n.placement&&s.positionArrow(h,n.placement);ut=n.placement;k=null},0,!1)))},wt,bt,kt,lt;f.origScope=t;f.isOpen=!1;f.contentExp=function(){return f.content};r.$observe("disabled",function(n){n&&ct();n&&f.isOpen&&d()});rt&&t.$watch(rt,function(n){f&&!n===f.isOpen&&et()});wt=function(){w.show.forEach(function(n){n==="outsideClick"?i.off("click",et):(i.off(n,vt),i.off(n,et));i.off("keypress",ti)});w.hide.forEach(function(n){n==="outsideClick"?o.off("click",ni):i.off(n,ot)})};oi();bt=t.$eval(r[c+"Animation"]);f.animation=angular.isDefined(bt)?!!bt:y.animation;lt=c+"AppendToBody";kt=lt in r&&r[lt]===undefined?!0:t.$eval(r[lt]);it=angular.isDefined(kt)?kt:it;t.$on("$destroy",function(){wt();pt();f=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(n,t,i,r){return{link:function(u,f,e){var a=u.$eval(e.tooltipTemplateTranscludeScope),l=0,o,s,h,c=function(){s&&(s.remove(),s=null);o&&(o.$destroy(),o=null);h&&(n.leave(h).then(function(){s=null}),s=h,h=null)};u.$watch(t.parseAsResourceUrl(e.uibTooltipTemplateTransclude),function(t){var e=++l;t?(r(t,!0).then(function(r){if(e===l){var u=a.$new(),s=r,v=i(s)(u,function(t){c();n.enter(t,f)});o=u;h=v;o.$emit("$includeContentLoaded",t)}},function(){e===l&&(c(),u.$emit("$includeContentError",t))}),u.$emit("$includeContentRequested",t)):c()});u.$on("$destroy",c)}}}]).directive("uibTooltipClasses",["$uibPosition",function(n){return{restrict:"A",link:function(t,i,r){if(t.placement){var u=n.parsePlacement(t.placement);i.addClass(u[0])}t.popupClass&&i.addClass(t.popupClass);t.animation&&i.addClass(r.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{restrict:"A",scope:{content:"@"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(n){return n("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{restrict:"A",scope:{contentExp:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(n){return n("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{restrict:"A",scope:{contentExp:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(n){return n("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]);angular.module("ui.bootstrap.popover2",["ui.bootstrap.tooltip2"]).directive("uibPopoverTemplatePopup",function(){return{restrict:"A",scope:{uibTitle:"@",contentExp:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(n){return n("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{restrict:"A",scope:{contentExp:"&",uibTitle:"@"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(n){return n("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{restrict:"A",scope:{uibTitle:"@",content:"@"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(n){return n("uibPopover","popover","click")}]);angular.module("ui.bootstrap.tpls2",["uib/template/accordion/accordion-group.html","uib/template/accordion/accordion.html","uib/template/alert/alert.html","uib/template/carousel/carousel.html","uib/template/carousel/slide.html","uib/template/datepicker/datepicker.html","uib/template/datepicker/day.html","uib/template/datepicker/month.html","uib/template/datepicker/year.html","uib/template/datepickerPopup/popup.html","uib/template/modal/window.html","uib/template/pager/pager.html","uib/template/pagination/pagination.html","uib/template/tooltip/tooltip-html-popup.html","uib/template/tooltip/tooltip-popup.html","uib/template/tooltip/tooltip-template-popup.html","uib/template/popover/popover-html.html","uib/template/popover/popover-template.html","uib/template/popover/popover.html","uib/template/progressbar/bar.html","uib/template/progressbar/progress.html","uib/template/progressbar/progressbar.html","uib/template/rating/rating.html","uib/template/tabs/tab.html","uib/template/tabs/tabset.html","uib/template/timepicker/timepicker.html","uib/template/typeahead/typeahead-match.html","uib/template/typeahead/typeahead-popup.html"]);angular.module("uib/template/accordion/accordion-group.html",[]).run(["$templateCache",function(n){n.put("uib/template/accordion/accordion-group.html",'<div role="tab" id="{{::headingId}}" aria-selected="{{isOpen}}" class="panel-heading" ng-keypress="toggleOpen($event)">\n  <h4 class="panel-title">\n    <a role="button" data-toggle="collapse" href aria-expanded="{{isOpen}}" aria-controls="{{::panelId}}" tabindex="0" class="accordion-toggle" ng-click="toggleOpen()" uib-accordion-transclude="heading" ng-disabled="isDisabled" uib-tabindex-toggle><span uib-accordion-header ng-class="{\'text-muted\': isDisabled}">{{heading}}<\/span><\/a>\n  <\/h4>\n<\/div>\n<div id="{{::panelId}}" aria-labelledby="{{::headingId}}" aria-hidden="{{!isOpen}}" role="tabpanel" class="panel-collapse collapse" uib-collapse="!isOpen">\n  <div class="panel-body" ng-transclude><\/div>\n<\/div>\n')}]);angular.module("uib/template/accordion/accordion.html",[]).run(["$templateCache",function(n){n.put("uib/template/accordion/accordion.html",'<div role="tablist" class="panel-group" ng-transclude><\/div>')}]);angular.module("uib/template/alert/alert.html",[]).run(["$templateCache",function(n){n.put("uib/template/alert/alert.html",'<button ng-show="closeable" type="button" class="close" ng-click="close({$event: $event})">\n  <span aria-hidden="true">&times;<\/span>\n  <span class="sr-only">Close<\/span>\n<\/button>\n<div ng-transclude><\/div>\n')}]);angular.module("uib/template/carousel/carousel.html",[]).run(["$templateCache",function(n){n.put("uib/template/carousel/carousel.html",'<div class="carousel-inner" ng-transclude><\/div>\n<a role="button" href class="left carousel-control" ng-click="prev()" ng-class="{ disabled: isPrevDisabled() }" ng-show="slides.length > 1">\n  <span aria-hidden="true" class="glyphicon glyphicon-chevron-left"><\/span>\n  <span class="sr-only">previous<\/span>\n<\/a>\n<a role="button" href class="right carousel-control" ng-click="next()" ng-class="{ disabled: isNextDisabled() }" ng-show="slides.length > 1">\n  <span aria-hidden="true" class="glyphicon glyphicon-chevron-right"><\/span>\n  <span class="sr-only">next<\/span>\n<\/a>\n<ol class="carousel-indicators" ng-show="slides.length > 1">\n  <li ng-repeat="slide in slides | orderBy:indexOfSlide track by $index" ng-class="{ active: isActive(slide) }" ng-click="select(slide)">\n    <span class="sr-only">slide {{ $index + 1 }} of {{ slides.length }}<span ng-if="isActive(slide)">, currently active<\/span><\/span>\n  <\/li>\n<\/ol>\n')}]);angular.module("uib/template/carousel/slide.html",[]).run(["$templateCache",function(n){n.put("uib/template/carousel/slide.html",'<div class="text-center" ng-transclude><\/div>\n')}]);angular.module("uib/template/datepicker/datepicker.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/datepicker.html",'<div ng-switch="datepickerMode">\n  <div uib-daypicker ng-switch-when="day" tabindex="0" class="uib-daypicker"><\/div>\n  <div uib-monthpicker ng-switch-when="month" tabindex="0" class="uib-monthpicker"><\/div>\n  <div uib-yearpicker ng-switch-when="year" tabindex="0" class="uib-yearpicker"><\/div>\n<\/div>\n')}]);angular.module("uib/template/datepicker/day.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/day.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-left"><\/i><span class="sr-only">previous<\/span><\/button><\/th>\n      <th colspan="{{::5 + showWeeks}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-right"><\/i><span class="sr-only">next<\/span><\/button><\/th>\n    <\/tr>\n    <tr>\n      <th ng-if="showWeeks" class="text-center"><\/th>\n      <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{{::label.full}}">{{::label.abbr}}<\/small><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-weeks" ng-repeat="row in rows track by $index" role="row">\n      <td ng-if="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}<\/em><\/td>\n      <td ng-repeat="dt in row" class="uib-day text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default btn-sm"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/datepicker/month.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/month.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-left"><\/i><span class="sr-only">previous<\/span><\/button><\/th>\n      <th colspan="{{::yearHeaderColspan}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-right"><\/i><span class="sr-only">next<\/span><\/i><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-months" ng-repeat="row in rows track by $index" role="row">\n      <td ng-repeat="dt in row" class="uib-month text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/datepicker/year.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/year.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-left"><\/i><span class="sr-only">previous<\/span><\/button><\/th>\n      <th colspan="{{::columns - 2}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-right"><\/i><span class="sr-only">next<\/span><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-years" ng-repeat="row in rows track by $index" role="row">\n      <td ng-repeat="dt in row" class="uib-year text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/datepickerPopup/popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepickerPopup/popup.html",'<ul role="presentation" class="uib-datepicker-popup dropdown-menu uib-position-measure" dropdown-nested ng-if="isOpen" ng-keydown="keydown($event)" ng-click="$event.stopPropagation()">\n  <li ng-transclude><\/li>\n  <li ng-if="showButtonBar" class="uib-button-bar">\n    <span class="btn-group pull-left">\n      <button type="button" class="btn btn-sm btn-info uib-datepicker-current" ng-click="select(\'today\', $event)" ng-disabled="isDisabled(\'today\')">{{ getText(\'current\') }}<\/button>\n      <button type="button" class="btn btn-sm btn-danger uib-clear" ng-click="select(null, $event)">{{ getText(\'clear\') }}<\/button>\n    <\/span>\n    <button type="button" class="btn btn-sm btn-success pull-right uib-close" ng-click="close($event)">{{ getText(\'close\') }}<\/button>\n  <\/li>\n<\/ul>\n')}]);angular.module("uib/template/modal/window.html",[]).run(["$templateCache",function(n){n.put("uib/template/modal/window.html","<div class=\"modal-dialog {{size ? 'modal-' + size : ''}}\"><div class=\"modal-content\" uib-modal-transclude><\/div><\/div>\n")}]);angular.module("uib/template/pager/pager.html",[]).run(["$templateCache",function(n){n.put("uib/template/pager/pager.html",'<li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)" ng-disabled="noPrevious()||ngDisabled" uib-tabindex-toggle>{{::getText(\'previous\')}}<\/a><\/li>\n<li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)" ng-disabled="noNext()||ngDisabled" uib-tabindex-toggle>{{::getText(\'next\')}}<\/a><\/li>\n')}]);angular.module("uib/template/pagination/pagination.html",[]).run(["$templateCache",function(n){n.put("uib/template/pagination/pagination.html",'<li role="menuitem" ng-if="::boundaryLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-first"><a href ng-click="selectPage(1, $event)" ng-disabled="noPrevious()||ngDisabled" uib-tabindex-toggle>{{::getText(\'first\')}}<\/a><\/li>\n<li role="menuitem" ng-if="::directionLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-prev"><a href ng-click="selectPage(page - 1, $event)" ng-disabled="noPrevious()||ngDisabled" uib-tabindex-toggle>{{::getText(\'previous\')}}<\/a><\/li>\n<li role="menuitem" ng-repeat="page in pages track by $index" ng-class="{active: page.active,disabled: ngDisabled&&!page.active}" class="pagination-page"><a href ng-click="selectPage(page.number, $event)" ng-disabled="ngDisabled&&!page.active" uib-tabindex-toggle>{{page.text}}<\/a><\/li>\n<li role="menuitem" ng-if="::directionLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-next"><a href ng-click="selectPage(page + 1, $event)" ng-disabled="noNext()||ngDisabled" uib-tabindex-toggle>{{::getText(\'next\')}}<\/a><\/li>\n<li role="menuitem" ng-if="::boundaryLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-last"><a href ng-click="selectPage(totalPages, $event)" ng-disabled="noNext()||ngDisabled" uib-tabindex-toggle>{{::getText(\'last\')}}<\/a><\/li>\n')}]);angular.module("uib/template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-html-popup.html",'<div class="tooltip-arrow"><\/div>\n<div class="tooltip-inner" ng-bind-html="contentExp()"><\/div>\n')}]);angular.module("uib/template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-popup.html",'<div class="tooltip-arrow"><\/div>\n<div class="tooltip-inner" ng-bind="content"><\/div>\n')}]);angular.module("uib/template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-template-popup.html",'<div class="tooltip-arrow"><\/div>\n<div class="tooltip-inner"\n  uib-tooltip-template-transclude="contentExp()"\n  tooltip-template-transclude-scope="originScope()"><\/div>\n')}]);angular.module("uib/template/popover/popover-html.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover-html.html",'<div class="arrow"><\/div>\n\n<div class="popover-inner">\n    <h3 class="popover-title" ng-bind="uibTitle" ng-if="uibTitle"><\/h3>\n    <div class="popover-content" ng-bind-html="contentExp()"><\/div>\n<\/div>\n')}]);angular.module("uib/template/popover/popover-template.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover-template.html",'<div class="arrow"><\/div>\n\n<div class="popover-inner">\n    <h3 class="popover-title" ng-bind="uibTitle" ng-if="uibTitle"><\/h3>\n    <div class="popover-content"\n      uib-tooltip-template-transclude="contentExp()"\n      tooltip-template-transclude-scope="originScope()"><\/div>\n<\/div>\n')}]);angular.module("uib/template/popover/popover.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover.html",'<div class="arrow"><\/div>\n\n<div class="popover-inner">\n    <h3 class="popover-title" ng-bind="uibTitle" ng-if="uibTitle"><\/h3>\n    <div class="popover-content" ng-bind="content"><\/div>\n<\/div>\n')}]);angular.module("uib/template/progressbar/bar.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" ng-transclude><\/div>\n')}]);angular.module("uib/template/progressbar/progress.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/progress.html",'<div class="progress" ng-transclude aria-labelledby="{{::title}}"><\/div>')}]);angular.module("uib/template/progressbar/progressbar.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/progressbar.html",'<div class="progress">\n  <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" ng-transclude><\/div>\n<\/div>\n')}]);angular.module("uib/template/rating/rating.html",[]).run(["$templateCache",function(n){n.put("uib/template/rating/rating.html",'<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}" aria-valuetext="{{title}}">\n    <span ng-repeat-start="r in range track by $index" class="sr-only">({{ $index < value ? \'*\' : \' \' }})<\/span>\n    <i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')" ng-attr-title="{{r.title}}"><\/i>\n<\/span>\n')}]);angular.module("uib/template/tabs/tab.html",[]).run(["$templateCache",function(n){n.put("uib/template/tabs/tab.html",'<li ng-class="[{active: active, disabled: disabled}, classes]" class="uib-tab nav-item">\n  <a href ng-click="select($event)" class="nav-link" uib-tab-heading-transclude>{{heading}}<\/a>\n<\/li>\n')}]);angular.module("uib/template/tabs/tabset.html",[]).run(["$templateCache",function(n){n.put("uib/template/tabs/tabset.html",'<div>\n  <ul class="nav nav-{{tabset.type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude><\/ul>\n  <div class="tab-content">\n    <div class="tab-pane"\n         ng-repeat="tab in tabset.tabs"\n         ng-class="{active: tabset.active === tab.index}"\n         uib-tab-content-transclude="tab">\n    <\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/timepicker/timepicker.html",[]).run(["$templateCache",function(n){n.put("uib/template/timepicker/timepicker.html",'<table class="uib-timepicker">\n  <tbody>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td class="uib-increment hours"><a ng-click="incrementHours()" ng-class="{disabled: noIncrementHours()}" class="btn btn-link" ng-disabled="noIncrementHours()" tabindex="-1"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td class="uib-increment minutes"><a ng-click="incrementMinutes()" ng-class="{disabled: noIncrementMinutes()}" class="btn btn-link" ng-disabled="noIncrementMinutes()" tabindex="-1"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td ng-show="showSeconds">&nbsp;<\/td>\n      <td ng-show="showSeconds" class="uib-increment seconds"><a ng-click="incrementSeconds()" ng-class="{disabled: noIncrementSeconds()}" class="btn btn-link" ng-disabled="noIncrementSeconds()" tabindex="-1"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n    <tr>\n      <td class="form-group uib-time hours" ng-class="{\'has-error\': invalidHours}">\n        <input type="text" placeholder="HH" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementHours()" ng-blur="blur()">\n      <\/td>\n      <td class="uib-separator">:<\/td>\n      <td class="form-group uib-time minutes" ng-class="{\'has-error\': invalidMinutes}">\n        <input type="text" placeholder="MM" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementMinutes()" ng-blur="blur()">\n      <\/td>\n      <td ng-show="showSeconds" class="uib-separator">:<\/td>\n      <td class="form-group uib-time seconds" ng-class="{\'has-error\': invalidSeconds}" ng-show="showSeconds">\n        <input type="text" placeholder="SS" ng-model="seconds" ng-change="updateSeconds()" class="form-control text-center" ng-readonly="readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementSeconds()" ng-blur="blur()">\n      <\/td>\n      <td ng-show="showMeridian" class="uib-time am-pm"><button type="button" ng-class="{disabled: noToggleMeridian()}" class="btn btn-default text-center" ng-click="toggleMeridian()" ng-disabled="noToggleMeridian()" tabindex="{{::tabindex}}">{{meridian}}<\/button><\/td>\n    <\/tr>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td class="uib-decrement hours"><a ng-click="decrementHours()" ng-class="{disabled: noDecrementHours()}" class="btn btn-link" ng-disabled="noDecrementHours()" tabindex="-1"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td class="uib-decrement minutes"><a ng-click="decrementMinutes()" ng-class="{disabled: noDecrementMinutes()}" class="btn btn-link" ng-disabled="noDecrementMinutes()" tabindex="-1"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td ng-show="showSeconds">&nbsp;<\/td>\n      <td ng-show="showSeconds" class="uib-decrement seconds"><a ng-click="decrementSeconds()" ng-class="{disabled: noDecrementSeconds()}" class="btn btn-link" ng-disabled="noDecrementSeconds()" tabindex="-1"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(n){n.put("uib/template/typeahead/typeahead-match.html",'<a href\n   tabindex="-1"\n   ng-bind-html="match.label | uibTypeaheadHighlight:query"\n   ng-attr-title="{{match.label}}"><\/a>\n')}]);angular.module("uib/template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/typeahead/typeahead-popup.html",'<ul class="dropdown-menu" ng-show="isOpen() && !moveInProgress" ng-style="{top: position().top+\'px\', left: position().left+\'px\'}" role="listbox" aria-hidden="{{!isOpen()}}">\n    <li class="uib-typeahead-match" ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index, $event)" role="option" id="{{::match.id}}">\n        <div uib-typeahead-match index="$index" match="match" query="query" template-url="templateUrl"><\/div>\n    <\/li>\n<\/ul>\n')}]);angular.module("ui.bootstrap.position2").run(function(){angular.$$csp().noInlineStyle||angular.$$uibPositionCss||angular.element(document).find("head").prepend('<style type="text/css">.uib-position-measure{display:block !important;visibility:hidden !important;position:absolute !important;top:-9999px !important;left:-9999px !important;}.uib-position-scrollbar-measure{position:absolute !important;top:-9999px !important;width:50px !important;height:50px !important;overflow:scroll !important;}.uib-position-body-scrollbar-measure{overflow:scroll !important;}<\/style>');angular.$$uibPositionCss=!0});angular.module("ui.bootstrap.tooltip2").run(function(){angular.$$csp().noInlineStyle||angular.$$uibTooltipCss||angular.element(document).find("head").prepend('<style type="text/css">[uib-tooltip-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-popup].tooltip.right-bottom > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.right-bottom > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.right-bottom > .tooltip-arrow,[uib-popover-popup].popover.top-left > .arrow,[uib-popover-popup].popover.top-right > .arrow,[uib-popover-popup].popover.bottom-left > .arrow,[uib-popover-popup].popover.bottom-right > .arrow,[uib-popover-popup].popover.left-top > .arrow,[uib-popover-popup].popover.left-bottom > .arrow,[uib-popover-popup].popover.right-top > .arrow,[uib-popover-popup].popover.right-bottom > .arrow,[uib-popover-html-popup].popover.top-left > .arrow,[uib-popover-html-popup].popover.top-right > .arrow,[uib-popover-html-popup].popover.bottom-left > .arrow,[uib-popover-html-popup].popover.bottom-right > .arrow,[uib-popover-html-popup].popover.left-top > .arrow,[uib-popover-html-popup].popover.left-bottom > .arrow,[uib-popover-html-popup].popover.right-top > .arrow,[uib-popover-html-popup].popover.right-bottom > .arrow,[uib-popover-template-popup].popover.top-left > .arrow,[uib-popover-template-popup].popover.top-right > .arrow,[uib-popover-template-popup].popover.bottom-left > .arrow,[uib-popover-template-popup].popover.bottom-right > .arrow,[uib-popover-template-popup].popover.left-top > .arrow,[uib-popover-template-popup].popover.left-bottom > .arrow,[uib-popover-template-popup].popover.right-top > .arrow,[uib-popover-template-popup].popover.right-bottom > .arrow{top:auto;bottom:auto;left:auto;right:auto;margin:0;}[uib-popover-popup].popover,[uib-popover-html-popup].popover,[uib-popover-template-popup].popover{display:block !important;}<\/style>');angular.$$uibTooltipCss=!0}),function(){"use strict";angular.module("ui.tree",[]).constant("treeConfig",{treeClass:"angular-ui-tree",emptyTreeClass:"angular-ui-tree-empty",dropzoneClass:"angular-ui-tree-dropzone",hiddenClass:"angular-ui-tree-hidden",nodesClass:"angular-ui-tree-nodes",nodeClass:"angular-ui-tree-node",handleClass:"angular-ui-tree-handle",placeholderClass:"angular-ui-tree-placeholder",dragClass:"angular-ui-tree-drag",dragThreshold:3,defaultCollapsed:!1,appendChildOnHover:!0,dragMoveSensitivity:60})}(),function(){"use strict";angular.module("ui.tree").controller("TreeHandleController",["$scope","$element",function(n,t){this.scope=n;n.$element=t;n.$nodeScope=null;n.$type="uiTreeHandle"}])}(),function(){"use strict";angular.module("ui.tree").controller("TreeNodeController",["$scope","$element",function(n,t){function i(n){if(!n)return 0;var u=0,t=n.childNodes(),f,e,r;if(!t||t.length===0)return 0;for(r=t.length-1;r>=0;r--)f=t[r],e=1+i(f),u=Math.max(u,e);return u}this.scope=n;n.$element=t;n.$modelValue=null;n.$parentNodeScope=null;n.$childNodesScope=null;n.$parentNodesScope=null;n.$treeScope=null;n.$handleScope=null;n.$type="uiTreeNode";n.$$allowNodeDrop=!1;n.collapsed=!1;n.expandOnHover=!1;n.init=function(i){var r=i[0];n.$treeScope=i[1]?i[1].scope:null;n.$parentNodeScope=r.scope.$nodeScope;n.$modelValue=r.scope.$modelValue[n.$index];n.$parentNodesScope=r.scope;r.scope.initSubNode(n);t.on("$destroy",function(){r.scope.destroySubNode(n)})};n.index=function(){return n.$parentNodesScope.$modelValue.indexOf(n.$modelValue)};n.dragEnabled=function(){return!(n.$treeScope&&!n.$treeScope.dragEnabled)};n.isSibling=function(t){return n.$parentNodesScope==t.$parentNodesScope};n.isChild=function(t){var i=n.childNodes();return i&&i.indexOf(t)>-1};n.prev=function(){var t=n.index();return t>0?n.siblings()[t-1]:null};n.siblings=function(){return n.$parentNodesScope.childNodes()};n.childNodesCount=function(){return n.childNodes()?n.childNodes().length:0};n.hasChild=function(){return n.childNodesCount()>0};n.childNodes=function(){return n.$childNodesScope&&n.$childNodesScope.$modelValue?n.$childNodesScope.childNodes():null};n.accept=function(t,i){return n.$childNodesScope&&n.$childNodesScope.$modelValue&&n.$childNodesScope.accept(t,i)};n.remove=function(){return n.$parentNodesScope.removeNode(n)};n.toggle=function(){n.collapsed=!n.collapsed;n.$treeScope.$callbacks.toggle(n.collapsed,n)};n.collapse=function(){n.collapsed=!0};n.expand=function(){n.collapsed=!1};n.depth=function(){var t=n.$parentNodeScope;return t?t.depth()+1:1};n.maxSubDepth=function(){return n.$childNodesScope?i(n.$childNodesScope):0}}])}(),function(){"use strict";angular.module("ui.tree").controller("TreeNodesController",["$scope","$element","$timeout",function(n,t,i){this.scope=n;n.$element=t;n.$modelValue=null;n.$nodeScope=null;n.$treeScope=null;n.$type="uiTreeNodes";n.$nodesMap={};n.nodropEnabled=!1;n.maxDepth=0;n.cloneEnabled=!1;n.initSubNode=function(t){if(!t.$modelValue)return null;n.$nodesMap[t.$modelValue.$$hashKey]=t};n.destroySubNode=function(t){if(!t.$modelValue)return null;n.$nodesMap[t.$modelValue.$$hashKey]=null};n.accept=function(t,i){return n.$treeScope.$callbacks.accept(t,n,i)};n.beforeDrag=function(t){return n.$treeScope.$callbacks.beforeDrag(t)};n.isParent=function(t){return t.$parentNodesScope==n};n.hasChild=function(){return n.$modelValue.length>0};n.removeNode=function(t){var r=n.$modelValue.indexOf(t.$modelValue);return r>-1?(i(function(){n.$modelValue.splice(r,1)[0]}),n.$treeScope.$callbacks.removed(t)):null};n.insertNode=function(t,r){i(function(){n.$modelValue.splice(t,0,r)})};n.childNodes=function(){var t,i=[];if(n.$modelValue)for(t=0;t<n.$modelValue.length;t++)i.push(n.$nodesMap[n.$modelValue[t].$$hashKey]);return i};n.depth=function(){return n.$nodeScope?n.$nodeScope.depth():0};n.outOfDepth=function(t){var i=n.maxDepth||n.$treeScope.maxDepth;return i>0?n.depth()+t.maxSubDepth()+1>i:!1}}])}(),function(){"use strict";angular.module("ui.tree").controller("TreeController",["$scope","$element",function(n,t){this.scope=n;n.$element=t;n.$nodesScope=null;n.$type="uiTree";n.$emptyElm=null;n.$dropzoneElm=null;n.$callbacks=null;n.dragEnabled=!0;n.emptyPlaceholderEnabled=!0;n.maxDepth=0;n.dragDelay=0;n.cloneEnabled=!1;n.nodropEnabled=!1;n.dropzoneEnabled=!1;n.isEmpty=function(){return n.$nodesScope&&n.$nodesScope.$modelValue&&n.$nodesScope.$modelValue.length===0};n.place=function(t){n.$nodesScope.$element.append(t);n.$emptyElm.remove()};this.resetEmptyElement=function(){(!n.$nodesScope.$modelValue||n.$nodesScope.$modelValue.length===0)&&n.emptyPlaceholderEnabled?t.append(n.$emptyElm):n.$emptyElm.remove()};this.resetDropzoneElement=function(){(!n.$nodesScope.$modelValue||n.$nodesScope.$modelValue.length!==0)&&n.dropzoneEnabled?t.append(n.$dropzoneElm):n.$dropzoneElm.remove()};n.resetEmptyElement=this.resetEmptyElement;n.resetDropzoneElement=this.resetDropzoneElement}])}(),function(){"use strict";angular.module("ui.tree").directive("uiTree",["treeConfig","$window",function(n,t){return{restrict:"A",scope:!0,controller:"TreeController",link:function(i,r,u,f){var e={accept:null,beforeDrag:null},o={},h,s,c;angular.extend(o,n);o.treeClass&&r.addClass(o.treeClass);r.prop("tagName").toLowerCase()==="table"?(i.$emptyElm=angular.element(t.document.createElement("tr")),s=r.find("tr"),c=s.length>0?angular.element(s).children().length:1e6,h=angular.element(t.document.createElement("td")).attr("colspan",c),i.$emptyElm.append(h)):(i.$emptyElm=angular.element(t.document.createElement("div")),i.$dropzoneElm=angular.element(t.document.createElement("div")));o.emptyTreeClass&&i.$emptyElm.addClass(o.emptyTreeClass);o.dropzoneClass&&i.$dropzoneElm.addClass(o.dropzoneClass);i.$watch("$nodesScope.$modelValue.length",function(n){angular.isNumber(n)&&(f.resetEmptyElement(),f.resetDropzoneElement())},!0);i.$watch(u.dragEnabled,function(n){typeof n=="boolean"&&(i.dragEnabled=n)});i.$watch(u.emptyPlaceholderEnabled,function(n){typeof n=="boolean"&&(i.emptyPlaceholderEnabled=n,f.resetEmptyElement())});i.$watch(u.nodropEnabled,function(n){typeof n=="boolean"&&(i.nodropEnabled=n)});i.$watch(u.dropzoneEnabled,function(n){typeof n=="boolean"&&(i.dropzoneEnabled=n,f.resetDropzoneElement())});i.$watch(u.cloneEnabled,function(n){typeof n=="boolean"&&(i.cloneEnabled=n)});i.$watch(u.maxDepth,function(n){typeof n=="number"&&(i.maxDepth=n)});i.$watch(u.dragDelay,function(n){typeof n=="number"&&(i.dragDelay=n)});e.accept=function(n,t){return!(t.nodropEnabled||t.$treeScope.nodropEnabled||t.outOfDepth(n))};e.beforeDrag=function(){return!0};e.expandTimeoutStart=function(){};e.expandTimeoutCancel=function(){};e.expandTimeoutEnd=function(){};e.removed=function(){};e.dropped=function(){};e.dragStart=function(){};e.dragMove=function(){};e.dragStop=function(){};e.beforeDrop=function(){};e.toggle=function(){};i.$watch(u.uiTree,function(n){angular.forEach(n,function(n,t){e[t]&&typeof n=="function"&&(e[t]=n)});i.$callbacks=e},!0)}}}])}(),function(){"use strict";angular.module("ui.tree").directive("uiTreeHandle",["treeConfig",function(n){return{require:"^uiTreeNode",restrict:"A",scope:!0,controller:"TreeHandleController",link:function(t,i,r,u){var f={};angular.extend(f,n);f.handleClass&&i.addClass(f.handleClass);t!=u.scope&&(t.$nodeScope=u.scope,u.scope.$handleScope=t)}}}])}(),function(){"use strict";angular.module("ui.tree").directive("uiTreeNode",["treeConfig","UiTreeHelper","$window","$document","$timeout","$q",function(n,t,i,r,u,f){return{require:["^uiTreeNodes","^uiTree"],restrict:"A",controller:"TreeNodeController",link:function(e,o,s,h){var y={},gt="ontouchstart"in window,tt,c,v,a,it,l,w,et,k=null,rt,ut=document.body,d=document.documentElement,g,ot,pt,wt,st,ht,nt,b,ct,lt,ft,bt,kt,at,vt,p,yt,dt;angular.extend(y,n);y.nodeClass&&o.addClass(y.nodeClass);e.init(h);e.collapsed=!!t.getNodeAttribute(e,"collapsed")||n.defaultCollapsed;e.expandOnHover=!!t.getNodeAttribute(e,"expandOnHover");e.scrollContainer=t.getNodeAttribute(e,"scrollContainer")||s.scrollContainer||null;e.sourceOnly=e.nodropEnabled||e.$treeScope.nodropEnabled;e.$watch(s.collapsed,function(n){typeof n=="boolean"&&(e.collapsed=n)});e.$watch("collapsed",function(n){t.setNodeAttribute(e,"collapsed",n);s.$set("collapsed",n)});e.$watch(s.expandOnHover,function(n){(typeof n=="boolean"||typeof n=="number")&&(e.expandOnHover=n)});e.$watch("expandOnHover",function(n){t.setNodeAttribute(e,"expandOnHover",n);s.$set("expandOnHover",n)});s.$observe("scrollContainer",function(n){typeof n=="string"&&(e.scrollContainer=n)});e.$watch("scrollContainer",function(n){t.setNodeAttribute(e,"scrollContainer",n);s.$set("scrollContainer",n);w=document.querySelector(n)});e.$on("angular-ui-tree:collapse-all",function(){e.collapsed=!0});e.$on("angular-ui-tree:expand-all",function(){e.collapsed=!1});pt=function(n){if((gt||n.button!==2&&n.which!==3)&&!n.uiTreeDragging&&(!n.originalEvent||!n.originalEvent.uiTreeDragging)){var u=angular.element(n.target),w,nt,f,s,h,ft,b,k,et;if((w=t.treeNodeHandlerContainerOfElement(u),w&&(u=angular.element(w)),nt=o.clone(),k=t.elementIsTreeNode(u),et=t.elementIsTreeNodeHandle(u),k||et)&&(!k||!t.elementContainsTreeNodeHandler(u))&&(f=u.prop("tagName").toLowerCase(),f!=="input"&&f!=="textarea"&&f!=="button"&&f!=="select")){for(p=angular.element(n.target),yt=p[0].attributes["ui-tree"];p&&p[0]&&p[0]!==o&&!yt;){if(p[0].attributes&&(yt=p[0].attributes["ui-tree"]),t.nodrag(p))return;p=p.parent()}e.beforeDrag(e)&&(n.uiTreeDragging=!0,n.originalEvent&&(n.originalEvent.uiTreeDragging=!0),n.preventDefault(),h=t.eventObj(n),tt=!0,c=t.dragInfo(e),dt=c.source.$treeScope.$id,s=o.prop("tagName"),s.toLowerCase()==="tr"?(a=angular.element(i.document.createElement(s)),ft=angular.element(i.document.createElement("td")).addClass(y.placeholderClass).attr("colspan",o[0].children.length),a.append(ft)):a=angular.element(i.document.createElement(s)).addClass(y.placeholderClass),it=angular.element(i.document.createElement(s)),y.hiddenClass&&it.addClass(y.hiddenClass),v=t.positionStarted(h,o),a.css("height",o.prop("offsetHeight")+"px"),l=angular.element(i.document.createElement(e.$parentNodesScope.$element.prop("tagName"))).addClass(e.$parentNodesScope.$element.attr("class")).addClass(y.dragClass),l.css("width",t.width(o)+"px"),l.css("z-index",9999),b=(o[0].querySelector(".angular-ui-tree-handle")||o[0]).currentStyle,b&&(document.body.setAttribute("ui-tree-cursor",r.find("body").css("cursor")||""),r.find("body").css({cursor:b.cursor+"!important"})),e.sourceOnly&&a.css("display","none"),o.after(a),o.after(it),c.isClone()&&e.sourceOnly?l.append(nt):l.append(o),r.find("body").append(l),l.css({left:h.pageX-v.offsetX+"px",top:h.pageY-v.offsetY+"px"}),rt={placeholder:a,dragging:l},bt(),e.$apply(function(){e.$treeScope.$callbacks.dragStart(c.eventArgs(rt,v))}),g=Math.max(ut.scrollHeight,ut.offsetHeight,d.clientHeight,d.scrollHeight,d.offsetHeight),ot=Math.max(ut.scrollWidth,ut.offsetWidth,d.clientWidth,d.scrollWidth,d.offsetWidth))}}};wt=function(n){var s=t.eventObj(n),h,wt,d,nt,p,b,st,o,ht,ct,bt,r,f,it,ut,ft,kt,lt,gt,ni,at,yt,ti,pt;if(l){if(n.preventDefault(),i.getSelection?i.getSelection().removeAllRanges():i.document.selection&&i.document.selection.empty(),d=s.pageX-v.offsetX,nt=s.pageY-v.offsetY,d<0&&(d=0),nt<0&&(nt=0),nt+10>g&&(nt=g-10),d+10>ot&&(d=ot-10),l.css({left:d+"px",top:nt+"px"}),w?(st=w.getBoundingClientRect(),p=w.scrollTop,b=p+w.clientHeight,st.bottom<s.clientY&&b<w.scrollHeight&&(ut=Math.min(w.scrollHeight-b,10),w.scrollTop+=ut),st.top>s.clientY&&p>0&&(ft=Math.min(p,10),w.scrollTop-=ft)):(p=window.pageYOffset||i.document.documentElement.scrollTop,b=p+(window.innerHeight||i.document.clientHeight||i.document.clientHeight),b<s.pageY&&b<g&&(ut=Math.min(g-b,10),window.scrollBy(0,ut)),p>s.pageY&&(ft=Math.min(p,10),window.scrollBy(0,-ft))),t.positionMoved(n,v,tt),tt){tt=!1;return}if(ht=s.pageX-(i.pageXOffset||i.document.body.scrollLeft||i.document.documentElement.scrollLeft)-(i.document.documentElement.clientLeft||0),ct=s.pageY-(i.pageYOffset||i.document.body.scrollTop||i.document.documentElement.scrollTop)-(i.document.documentElement.clientTop||0),angular.isFunction(l.hide)?l.hide():(bt=l[0].style.display,l[0].style.display="none"),i.document.elementFromPoint(ht,ct),f=angular.element(i.document.elementFromPoint(ht,ct)),vt=t.treeNodeHandlerContainerOfElement(f),vt&&(f=angular.element(vt)),angular.isFunction(l.show)?l.show():l[0].style.display=bt,t.elementIsTree(f)?r=f.controller("uiTree").scope:t.elementIsTreeNodeHandle(f)?r=f.controller("uiTreeHandle").scope:t.elementIsTreeNode(f)?r=f.controller("uiTreeNode").scope:t.elementIsTreeNodes(f)?r=f.controller("uiTreeNodes").scope:t.elementIsPlaceholder(f)?r=f.controller("uiTreeNodes").scope:t.elementIsDropzone(f)?(r=f.controller("uiTree").scope,pt=!0):f.controller("uiTreeNode")&&(r=f.controller("uiTreeNode").scope),gt=r&&r.$treeScope&&r.$treeScope.$id&&r.$treeScope.$id===dt,gt&&v.dirAx)v.distX>0&&(h=c.prev(),h&&!h.collapsed&&h.accept(e,h.childNodesCount())&&((!c.deltaDistX||c.deltaDistX<0)&&(c.deltaDistX=0),c.deltaDistX+=v.distX,c.deltaDistX>y.dragMoveSensitivity&&(h.$childNodesScope.$element.append(a),c.moveTo(h.$childNodesScope,h.childNodes(),h.childNodesCount()),c.deltaDistX=0))),v.distX<0&&(o=c.parentNode(),o&&o.$parentNodesScope.accept(e,o.index()+1)&&((!c.deltaDistX||c.deltaDistX>0)&&(c.deltaDistX=0),c.deltaDistX+=v.distX,c.deltaDistX<-y.dragMoveSensitivity&&(o.$element.after(a),c.moveTo(o.$parentNodesScope,o.siblings(),o.index()+1),c.deltaDistX=0)));else{if(it=!1,!r)return;if(!r.$treeScope||r.$parent.nodropEnabled||r.$treeScope.nodropEnabled||a.css("display",""),r.$type==="uiTree"&&r.dragEnabled&&(it=r.isEmpty()),r.$type==="uiTreeHandle"&&(r=r.$nodeScope),r.$type!=="uiTreeNode"&&!it&&!pt){y.appendChildOnHover&&(wt=c.next(),o&&!wt&&et&&(o=c.parentNode(),o.$element.after(a),c.moveTo(o.$parentNodesScope,o.siblings(),o.index()+1),et=!1));return}k&&a.parent()[0]!=k.$element[0]&&(k.resetEmptyElement(),k.resetDropzoneElement(),k=null);it?(k=r,r.$nodesScope.accept(e,0)&&c.moveTo(r.$nodesScope,r.$nodesScope.childNodes(),0)):pt?(k=r,r.$nodesScope.accept(e,r.$nodesScope.childNodes().length)&&c.moveTo(r.$nodesScope,r.$nodesScope.childNodes(),r.$nodesScope.childNodes().length)):r.dragEnabled()&&(angular.isDefined(e.expandTimeoutOn)&&e.expandTimeoutOn!==r.id&&(u.cancel(e.expandTimeout),delete e.expandTimeout,delete e.expandTimeoutOn,e.$callbacks.expandTimeoutCancel()),r.collapsed&&(e.expandOnHover===!0||angular.isNumber(e.expandOnHover)&&e.expandOnHover===0?(r.collapsed=!1,r.$treeScope.$callbacks.toggle(!1,r)):e.expandOnHover!==!1&&angular.isNumber(e.expandOnHover)&&e.expandOnHover>0&&angular.isUndefined(e.expandTimeoutOn)&&(e.expandTimeoutOn=r.$id,e.$callbacks.expandTimeoutStart(),e.expandTimeout=u(function(){e.$callbacks.expandTimeoutEnd();r.collapsed=!1;r.$treeScope.$callbacks.toggle(!1,r)},e.expandOnHover))),f=r.$element,kt=t.offset(f),at=t.height(f),yt=r.$childNodesScope?r.$childNodesScope.$element:null,ti=yt?t.height(yt):0,at-=ti,ni=y.appendChildOnHover?at*.25:t.height(f)/2,lt=s.pageY<kt.top+ni,r.$parentNodesScope.accept(e,r.index())?lt?(f[0].parentNode.insertBefore(a[0],f[0]),c.moveTo(r.$parentNodesScope,r.siblings(),r.index())):y.appendChildOnHover&&r.accept(e,r.childNodesCount())?(r.$childNodesScope.$element.prepend(a),c.moveTo(r.$childNodesScope,r.childNodes(),0),et=!0):(f.after(a),c.moveTo(r.$parentNodesScope,r.siblings(),r.index()+1)):!lt&&r.accept(e,r.childNodesCount())&&(r.$childNodesScope.$element.append(a),c.moveTo(r.$childNodesScope,r.childNodes(),r.childNodesCount())))}e.$apply(function(){e.$treeScope.$callbacks.dragMove(c.eventArgs(rt,v))})}};st=function(n){var t=c.eventArgs(rt,v);n.preventDefault();kt();u.cancel(e.expandTimeout);e.$treeScope.$apply(function(){f.when(e.$treeScope.$callbacks.beforeDrop(t)).then(function(n){n!==!1&&e.$$allowNodeDrop?(c.apply(),e.$treeScope.$callbacks.dropped(t)):ft()}).catch(function(){ft()}).finally(function(){it.replaceWith(e.$element);a.remove();l&&(l.remove(),l=null);e.$treeScope.$callbacks.dragStop(t);e.$$allowNodeDrop=!1;c=null;var n=document.body.getAttribute("ui-tree-cursor");n!==null&&(r.find("body").css({cursor:n}),document.body.removeAttribute("ui-tree-cursor"))})})};ht=function(n){e.dragEnabled()&&pt(n)};nt=function(n){wt(n)};b=function(n){e.$$allowNodeDrop=!0;st(n)};ct=function(n){st(n)};lt=function(){var n;return{exec:function(t,i){i||(i=0);this.cancel();n=u(t,i)},cancel:function(){u.cancel(n)}}}();at=function(n){n.keyCode===27&&b(n)};ft=function(){o.bind("touchstart mousedown",function(n){e.dragDelay>0?lt.exec(function(){ht(n)},e.dragDelay):ht(n)});o.bind("touchend touchcancel mouseup",function(){e.dragDelay>0&&lt.cancel()})};ft();bt=function(){angular.element(r).bind("touchend",b);angular.element(r).bind("touchcancel",b);angular.element(r).bind("touchmove",nt);angular.element(r).bind("mouseup",b);angular.element(r).bind("mousemove",nt);angular.element(r).bind("mouseleave",ct);angular.element(r).bind("keydown",at)};kt=function(){angular.element(r).unbind("touchend",b);angular.element(r).unbind("touchcancel",b);angular.element(r).unbind("touchmove",nt);angular.element(r).unbind("mouseup",b);angular.element(r).unbind("mousemove",nt);angular.element(r).unbind("mouseleave",ct);angular.element(r).unbind("keydown",at)}}}}])}(),function(){"use strict";angular.module("ui.tree").directive("uiTreeNodes",["treeConfig","$window",function(n){return{require:["ngModel","?^uiTreeNode","^uiTree"],restrict:"A",scope:!0,controller:"TreeNodesController",link:function(t,i,r,u){var f={},e=u[0],o=u[1],s=u[2];angular.extend(f,n);f.nodesClass&&i.addClass(f.nodesClass);o?(o.scope.$childNodesScope=t,t.$nodeScope=o.scope):s.scope.$nodesScope=t;t.$treeScope=s.scope;e&&(e.$render=function(){t.$modelValue=e.$modelValue});t.$watch(function(){return r.maxDepth},function(n){typeof n=="number"&&(t.maxDepth=n)});t.$watch(function(){return r.nodropEnabled},function(n){typeof n!="undefined"&&(t.nodropEnabled=!0)},!0)}}}])}(),function(){"use strict";function n(n,t){if(t===undefined)return null;for(var i=t.parentNode,u=1,r=typeof i.setAttribute=="function"&&i.hasAttribute(n)?i:null;i&&typeof i.setAttribute=="function"&&!i.hasAttribute(n);){if(i=i.parentNode,r=i,i===document.documentElement){r=null;break}u++}return r}angular.module("ui.tree").factory("UiTreeHelper",["$document","$window","treeConfig",function(t,i,r){return{nodesData:{},setNodeAttribute:function(n,t,i){if(!n.$modelValue)return null;var r=this.nodesData[n.$modelValue.$$hashKey];r||(r={},this.nodesData[n.$modelValue.$$hashKey]=r);r[t]=i},getNodeAttribute:function(n,t){if(!n.$modelValue)return null;var i=this.nodesData[n.$modelValue.$$hashKey];return i?i[t]:null},nodrag:function(n){return typeof n.attr("data-nodrag")!="undefined"?n.attr("data-nodrag")!=="false":!1},eventObj:function(n){var t=n;return n.targetTouches!==undefined?t=n.targetTouches.item(0):n.originalEvent!==undefined&&n.originalEvent.targetTouches!==undefined&&(t=n.originalEvent.targetTouches.item(0)),t},dragInfo:function(n){return{source:n,sourceInfo:{cloneModel:n.$treeScope.cloneEnabled===!0?angular.copy(n.$modelValue):undefined,nodeScope:n,index:n.index(),nodesScope:n.$parentNodesScope},index:n.index(),siblings:n.siblings().slice(0),parent:n.$parentNodesScope,resetParent:function(){this.parent=n.$parentNodesScope},moveTo:function(n,t,i){this.parent=n;this.siblings=t.slice(0);var r=this.siblings.indexOf(this.source);r>-1&&(this.siblings.splice(r,1),this.source.index()<i&&i--);this.siblings.splice(i,0,this.source);this.index=i},parentNode:function(){return this.parent.$nodeScope},prev:function(){return this.index>0?this.siblings[this.index-1]:null},next:function(){return this.index<this.siblings.length-1?this.siblings[this.index+1]:null},isClone:function(){return this.source.$treeScope.cloneEnabled===!0},clonedNode:function(n){return angular.copy(n)},isDirty:function(){return this.source.$parentNodesScope!=this.parent||this.source.index()!=this.index},isForeign:function(){return this.source.$treeScope!==this.parent.$treeScope},eventArgs:function(n,t){return{source:this.sourceInfo,dest:{index:this.index,nodesScope:this.parent},elements:n,pos:t}},apply:function(){var n=this.source.$modelValue;this.parent.nodropEnabled||this.parent.$treeScope.nodropEnabled||this.isDirty()&&(this.isClone()&&this.isForeign()?this.parent.insertNode(this.index,this.sourceInfo.cloneModel):(this.source.remove(),this.parent.insertNode(this.index,n)))}}},height:function(n){return n.prop("scrollHeight")},width:function(n){return n.prop("scrollWidth")},offset:function(n){var r=n[0].getBoundingClientRect();return{width:n.prop("offsetWidth"),height:n.prop("offsetHeight"),top:r.top+(i.pageYOffset||t[0].body.scrollTop||t[0].documentElement.scrollTop),left:r.left+(i.pageXOffset||t[0].body.scrollLeft||t[0].documentElement.scrollLeft)}},positionStarted:function(n,t){var i={},r=n.pageX,u=n.pageY;return n.originalEvent&&n.originalEvent.touches&&n.originalEvent.touches.length>0&&(r=n.originalEvent.touches[0].pageX,u=n.originalEvent.touches[0].pageY),i.offsetX=r-this.offset(t).left,i.offsetY=u-this.offset(t).top,i.startX=i.lastX=r,i.startY=i.lastY=u,i.nowX=i.nowY=i.distX=i.distY=i.dirAx=0,i.dirX=i.dirY=i.lastDirX=i.lastDirY=i.distAxX=i.distAxY=0,i},positionMoved:function(n,t,i){var u=n.pageX,f=n.pageY,r;if(n.originalEvent&&n.originalEvent.touches&&n.originalEvent.touches.length>0&&(u=n.originalEvent.touches[0].pageX,f=n.originalEvent.touches[0].pageY),t.lastX=t.nowX,t.lastY=t.nowY,t.nowX=u,t.nowY=f,t.distX=t.nowX-t.lastX,t.distY=t.nowY-t.lastY,t.lastDirX=t.dirX,t.lastDirY=t.dirY,t.dirX=t.distX===0?0:t.distX>0?1:-1,t.dirY=t.distY===0?0:t.distY>0?1:-1,r=Math.abs(t.distX)>Math.abs(t.distY)?1:0,i){t.dirAx=r;t.moving=!0;return}t.dirAx!==r?(t.distAxX=0,t.distAxY=0):(t.distAxX+=Math.abs(t.distX),t.dirX!==0&&t.dirX!==t.lastDirX&&(t.distAxX=0),t.distAxY+=Math.abs(t.distY),t.dirY!==0&&t.dirY!==t.lastDirY&&(t.distAxY=0));t.dirAx=r},elementIsTreeNode:function(n){return typeof n.attr("ui-tree-node")!="undefined"},elementIsTreeNodeHandle:function(n){return typeof n.attr("ui-tree-handle")!="undefined"},elementIsTree:function(n){return typeof n.attr("ui-tree")!="undefined"},elementIsTreeNodes:function(n){return typeof n.attr("ui-tree-nodes")!="undefined"},elementIsPlaceholder:function(n){return n.hasClass(r.placeholderClass)},elementIsDropzone:function(n){return n.hasClass(r.dropzoneClass)},elementContainsTreeNodeHandler:function(n){return n[0].querySelectorAll("[ui-tree-handle]").length>=1},treeNodeHandlerContainerOfElement:function(t){return n("ui-tree-handle",t[0])}}}])}()