function ObjecttoParams(n){var i=[];for(var t in n)n[t]!="emptyIgnoreDoNotAddToObjectParams"&&i.push(t+"="+n[t]);return i.join("&")}function intersect_safe(n,t){for(var i=0,r=0,u=[];i<n.length&&r<t.length;)n[i]<t[r]?i++:n[i]>t[r]?r++:(u.push(n[i]),i++,r++);return u}function getQueryStringValue(n){return decodeURIComponent(window.location.search.replace(new RegExp("^(?:.*[&\\?]"+encodeURIComponent(n).replace(/[\.\+\*]/g,"\\$&")+"(?:\\=([^&]*))?)?.*$","i"),"$1"))}function generateUUID(n,t){return Math.floor(Math.random()*(t-n+1))+n}function stripScripts(n){var r=document.createElement("div"),t,i;for(r.innerHTML=n,t=r.getElementsByTagName("script"),i=t.length;i--;)t[i].parentNode.removeChild(t[i]);return r.innerHTML}function containsObject(n,t){for(var i=0;i<t.length;i++)if(t[i]===n)return!0;return!1}function commaSeparated(n){return this.joinObj(n,"id")}function joinObj(n,t){for(var r=[],i=0;i<n.length;i++)r.push(n[i][t]);return r.join(",")}function getTotal(n){if(n==null)return 0;for(var t=n.toString(),i=/(-?\d+)(\d{3})/;i.test(t);)t=t.replace(i,"$1,$2");return t}function groupBy(n,t){for(var i=0,r,u,e=[],f=[];i<n.length;i++)r=n[i][t],u=e.indexOf(r),u>-1?f[u].push(n[i]):(e.push(r),f.push([n[i]]));return f}function allowAlphaNumericOnlyKeyEvent(n){var t=n.which;return 48<=t&&t<=57?!0:65<=t&&t<=90?!0:97<=t&&t<=122?!0:!1}function readURL(n){if(n){var t=new FileReader;t.onload=function(n){var t=n.target;t.result&&typeof t.result=="string"&&jQuery("#previewImg").attr("src",t.result)};t.readAsDataURL(n)}}function output(n){return n.join("\n\n")}var rangeRepeater,addUrlParam,time,loggingModule,printStackTrace,app;(function(n,t,i){"use strict";function y(n,t){return t=t||Error,function(){var f=2,i=arguments,o=i[0],u="["+(n?n+":":"")+o+"] ",s=i[1],e,r;for(u+=s.replace(/\{\d+\}/g,function(n){var r=+n.slice(1,-1),t=r+f;return t<i.length?es(i[t]):n}),u+="\nhttp://errors.angularjs.org/1.4.3/"+(n?n+"/":"")+o,r=f,e="?";r<i.length;r++,e="&")u+=e+"p"+(r-f)+"="+encodeURIComponent(es(i[r]));return new t(u)}}function ei(n){if(n==null||er(n))return!1;var t="length"in Object(n)&&n.length;return n.nodeType===wt&&t?!0:l(n)||a(n)||t===0||typeof t=="number"&&t>0&&t-1 in n}function r(n,t,i){var u,f,e;if(n)if(c(n))for(u in n)u!="prototype"&&u!="length"&&u!="name"&&(!n.hasOwnProperty||n.hasOwnProperty(u))&&t.call(i,n[u],u,n);else if(a(n)||ei(n))for(e=typeof n!="object",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(lo(n))for(u in n)t.call(i,n[u],u,n);else if(typeof n.hasOwnProperty=="function")for(u in n)n.hasOwnProperty(u)&&t.call(i,n[u],u,n);else for(u in n)tr.call(n,u)&&t.call(i,n[u],u,n);return n}function oo(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 so(n){return function(t,i){n(i,t)}}function eu(){return++ia}function ho(n,t){t?n.$$hashKey=t:delete n.$$hashKey}function cf(n,t,i){for(var f,s,e,l,r,u,v=n.$$hashKey,o=0,y=t.length;o<y;++o)if(f=t[o],h(f)||c(f))for(s=Object.keys(f),e=0,l=s.length;e<l;e++)r=s[e],u=f[r],i&&h(u)?et(u)?n[r]=new Date(u.valueOf()):(h(n[r])||(n[r]=a(u)?[]:{}),cf(n[r],[u],!0)):n[r]=u;return ho(n,v),n}function w(n){return cf(n,fu.call(arguments,1),!1)}function ra(n){return cf(n,fu.call(arguments,1),!0)}function it(n){return parseInt(n,10)}function lf(n,t){return w(Object.create(n),t)}function o(){}function ur(n){return n}function pt(n){return function(){return n}}function co(n){return c(n.toString)&&n.toString!==Object.prototype.toString}function s(n){return typeof n=="undefined"}function e(n){return typeof n!="undefined"}function h(n){return n!==null&&typeof n=="object"}function lo(n){return n!==null&&typeof n=="object"&&!eo(n)}function l(n){return typeof n=="string"}function k(n){return typeof n=="number"}function et(n){return ti.call(n)==="[object Date]"}function c(n){return typeof n=="function"}function fr(n){return ti.call(n)==="[object RegExp]"}function er(n){return n&&n.window===n}function or(n){return n&&n.$evalAsync&&n.$watch}function ua(n){return ti.call(n)==="[object File]"}function fa(n){return ti.call(n)==="[object FormData]"}function ea(n){return ti.call(n)==="[object Blob]"}function sr(n){return typeof n=="boolean"}function ou(n){return n&&c(n.then)}function vo(n){return ao.test(ti.call(n))}function yo(n){return!!(n&&(n.nodeName||n.prop&&n.attr&&n.find))}function oa(n){for(var i={},r=n.split(","),t=0;t<r.length;t++)i[r[t]]=!0;return i}function bt(n){return v(n.nodeName||n[0]&&n[0].nodeName)}function hr(n,t){var i=n.indexOf(t);return i>=0&&n.splice(i,1),i}function ct(n,t,i,u){var o,s,f,e,c;if(er(n)||or(n))throw fi("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");if(vo(t))throw fi("cpta","Can't copy! TypedArray destination cannot be mutated.");if(t){if(n===t)throw fi("cpi","Can't copy! Source and destination are identical.");if(i=i||[],u=u||[],h(n)&&(i.push(n),u.push(t)),a(n))for(t.length=0,e=0;e<n.length;e++)t.push(ct(n[e],null,i,u));else{if(c=t.$$hashKey,a(t)?t.length=0:r(t,function(n,i){delete t[i]}),lo(n))for(f in n)t[f]=ct(n[f],null,i,u);else if(n&&typeof n.hasOwnProperty=="function")for(f in n)n.hasOwnProperty(f)&&(t[f]=ct(n[f],null,i,u));else for(f in n)tr.call(n,f)&&(t[f]=ct(n[f],null,i,u));ho(t,c)}}else if(t=n,h(n)){if(i&&(o=i.indexOf(n))!==-1)return u[o];if(a(n))return ct(n,[],i,u);if(vo(n))t=new n.constructor(n);else if(et(n))t=new Date(n.getTime());else if(fr(n))t=new RegExp(n.source,n.toString().match(/[^\/]*$/)[0]),t.lastIndex=n.lastIndex;else return s=Object.create(eo(n)),ct(n,s,i,u);u&&(i.push(n),u.push(t))}return t}function lt(n,t){var i,u,r;if(a(n))for(t=t||[],i=0,u=n.length;i<u;i++)t[i]=n[i];else if(h(n)){t=t||{};for(r in n)r.charAt(0)==="$"&&r.charAt(1)==="$"||(t[r]=n[r])}return t||n}function st(n,t){if(n===t)return!0;if(n===null||t===null)return!1;if(n!==n&&t!==t)return!0;var f=typeof n,o=typeof t,e,r,u;if(f==o&&f=="object")if(a(n)){if(!a(t))return!1;if((e=n.length)==t.length){for(r=0;r<e;r++)if(!st(n[r],t[r]))return!1;return!0}}else{if(et(n))return et(t)?st(n.getTime(),t.getTime()):!1;if(fr(n))return fr(t)?n.toString()==t.toString():!1;if(or(n)||or(t)||er(n)||er(t)||a(t)||et(t)||fr(t))return!1;u=rt();for(r in n)if(r.charAt(0)!=="$"&&!c(n[r])){if(!st(n[r],t[r]))return!1;u[r]=!0}for(r in t)if(!(r in u)&&r.charAt(0)!=="$"&&t[r]!==i&&!c(t[r]))return!1;return!0}return!1}function lr(n,t,i){return n.concat(fu.call(t,i))}function ar(n,t){return fu.call(n,t||0)}function po(n,t){var i=arguments.length>2?ar(arguments,2):[];return!c(t)||t instanceof RegExp?t:i.length?function(){return arguments.length?t.apply(n,lr(i,arguments,0)):t.apply(n,i)}:function(){return arguments.length?t.apply(n,arguments):t.call(n)}}function wo(n,r){var u=r;return typeof n=="string"&&n.charAt(0)==="$"&&n.charAt(1)==="$"?u=i:er(r)?u="$WINDOW":r&&t===r?u="$DOCUMENT":or(r)&&(u="$SCOPE"),u}function vr(n,t){return typeof n=="undefined"?i:(k(t)||(t=t?2:null),JSON.stringify(n,wo,t))}function bo(n){return l(n)?JSON.parse(n):n}function ko(n,t){var i=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(i)?t:i}function sa(n,t){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+t),n}function vf(n,t,i){i=i?-1:1;var r=ko(t,n.getTimezoneOffset());return sa(n,i*(r-n.getTimezoneOffset()))}function kt(n){n=f(n).clone();try{n.empty()}catch(i){}var t=f("<div>").append(n).html();try{return n[0].nodeType===di?v(t):t.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(n,t){return"<"+v(t)})}catch(i){return v(t)}}function go(n){try{return decodeURIComponent(n)}catch(t){}}function ns(n){var i={},u,t;return r((n||"").split("&"),function(n){if(n&&(u=n.replace(/\+/g,"%20").split("="),t=go(u[0]),e(t))){var r=e(u[1])?go(u[1]):!0;tr.call(i,t)?a(i[t])?i[t].push(r):i[t]=[i[t],r]:i[t]=r}}),i}function yf(n){var t=[];return r(n,function(n,i){a(n)?r(n,function(n){t.push(at(i,!0)+(n===!0?"":"="+at(n,!0)))}):t.push(at(i,!0)+(n===!0?"":"="+at(n,!0)))}),t.length?t.join("&"):""}function su(n){return at(n,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function at(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 ha(n,t){for(var i,u=oi.length,r=0;r<u;++r)if(i=oi[r]+t,l(i=n.getAttribute(i)))return i;return null}function ca(n,t){var i,u,f={};r(oi,function(t){var r=t+"app";!i&&n.hasAttribute&&n.hasAttribute(r)&&(i=n,u=n.getAttribute(r))});r(oi,function(t){var f=t+"app",r;!i&&(r=n.querySelector("["+f.replace(":","\\:")+"]"))&&(i=r,u=r.getAttribute(f))});i&&(f.strictDi=ha(i,"strict-di")!==null,t(i,u?[u]:[],f))}function ts(i,u,e){var o;h(e)||(e={});o={strictDi:!1};e=w(o,e);var s=function(){var r,n;if(i=f(i),i.injector()){r=i[0]===t?"document":kt(i);throw fi("btstrpd","App Already Bootstrapped with this Element '{0}'",r.replace(/</,"&lt;").replace(/>/,"&gt;"));}return u=u||[],u.unshift(["$provide",function(n){n.value("$rootElement",i)}]),e.debugInfoEnabled&&u.push(["$compileProvider",function(n){n.debugInfoEnabled(!0)}]),u.unshift("ng"),n=kr(u,e.strictDi),n.invoke(["$rootScope","$rootElement","$compile","$injector",function(n,t,i,r){n.$apply(function(){t.data("$injector",r);i(t)(n)})}]),n},l=/^NG_ENABLE_DEBUG_INFO!/,a=/^NG_DEFER_BOOTSTRAP!/;if(n&&l.test(n.name)&&(e.debugInfoEnabled=!0,n.name=n.name.replace(l,"")),n&&!a.test(n.name))return s();n.name=n.name.replace(a,"");ft.resumeBootstrap=function(n){return r(n,function(n){u.push(n)}),s()};c(ft.resumeDeferredBootstrap)&&ft.resumeDeferredBootstrap()}function la(){n.name="NG_ENABLE_DEBUG_INFO!"+n.name;n.location.reload()}function aa(n){var t=ft.element(n).injector();if(!t)throw fi("test","no injector found for element argument to getTestability");return t.get("$$testability")}function rs(n,t){return t=t||"_",n.replace(is,function(n,i){return(i?t:"")+n.toLowerCase()})}function va(){var r,t;pf||(t=cr(),ot=n.jQuery,e(t)&&(ot=t===null?i:n[t]),ot&&ot.fn.on?(f=ot,w(ot.fn,{scope:si.scope,isolateScope:si.isolateScope,controller:si.controller,injector:si.injector,inheritedData:si.inheritedData}),r=ot.cleanData,ot.cleanData=function(n){var t,i,u;if(wf)wf=!1;else for(i=0;(u=n[i])!=null;i++)t=ot._data(u,"events"),t&&t.$destroy&&ot(u).triggerHandler("$destroy");r(n)}):f=b,ft.element=f,pf=!0)}function bf(n,t,i){if(!n)throw fi("areq","Argument '{0}' is {1}",t||"?",i||"required");return n}function bi(n,t,i){return i&&a(n)&&(n=n[n.length-1]),bf(c(n),t,"not a function, got "+(n&&typeof n=="object"?n.constructor.name||"Object":typeof n)),n}function ki(n,t){if(n==="hasOwnProperty")throw fi("badname","hasOwnProperty is not a valid {0} name",t);}function us(n,t,i){var r;if(!t)return n;var u=t.split("."),f,e=n,o=u.length;for(r=0;r<o;r++)f=u[r],n&&(n=(e=n)[f]);return!i&&c(n)?po(e,n):n}function hu(n){var t=n[0],r=n[n.length-1],i=[t];do{if(t=t.nextSibling,!t)break;i.push(t)}while(t!==r);return f(i)}function rt(){return Object.create(null)}function pa(n){function t(n,t,i){return n[t]||(n[t]=i())}var r=y("$injector"),u=y("ng"),i=t(n,"angular",Object);return i.$$minErr=i.$$minErr||y,t(i,"module",function(){var n={};return function(i,f,e){var o=function(n,t){if(n==="hasOwnProperty")throw u("badname","hasOwnProperty is not a valid {0} name",t);};return o(i,"module"),f&&n.hasOwnProperty(i)&&(n[i]=null),t(n,i,function(){function o(n,i,r,f){return f||(f=t),function(){return f[r||"push"]([n,i,arguments]),u}}function n(n,r){return function(f,e){return e&&c(e)&&(e.$$moduleName=i),t.push([n,r,arguments]),u}}if(!f)throw r("nomod","Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.",i);var t=[],s=[],h=[],l=o("$injector","invoke","push",s),u={_invokeQueue:t,_configBlocks:s,_runBlocks:h,requires:f,name:i,provider:n("$provide","provider"),factory:n("$provide","factory"),service:n("$provide","service"),value:o("$provide","value"),constant:o("$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 h.push(n),this}};return e&&l(e),u})}})}function wa(n){var t=[];return JSON.stringify(n,function(n,i){if(i=wo(n,i),h(i)){if(t.indexOf(i)>=0)return"<<already seen>>";t.push(i)}return i})}function es(n){return typeof n=="function"?n.toString().replace(/ \{[\s\S]*$/,""):typeof n=="undefined"?"undefined":typeof n!="string"?wa(n):n}function ba(t){w(t,{bootstrap:ts,copy:ct,extend:w,merge:ra,equals:st,element:f,forEach:r,injector:kr,noop:o,bind:po,toJson:vr,fromJson:bo,identity:ur,isUndefined:s,isDefined:e,isString:l,isFunction:c,isObject:h,isNumber:k,isElement:yo,isArray:a,version:os,isDate:et,lowercase:v,uppercase:ir,callbacks:{counter:0},getTestability:aa,$$minErr:y,$$csp:wi,reloadWithDebugInfo:la});rr=pa(n);try{rr("ngLocale")}catch(i){rr("ngLocale",[]).provider("$locale",rp)}rr("ng",["ngLocale"],["$provide",function(n){n.provider({$$sanitizeUri:gp});n.provider("$compile",ks).directive({a:pc,input:ul,textarea:ul,form:nb,script:fd,select:sd,style:cd,option:hd,ngBind:pb,ngBindHtml:bb,ngBindTemplate:wb,ngClass:db,ngClassEven:nk,ngClassOdd:gb,ngCloak:tk,ngController:ik,ngForm:tb,ngHide:gk,ngIf:uk,ngInclude:fk,ngInit:ok,ngNonBindable:vk,ngPluralize:bk,ngRepeat:kk,ngShow:dk,ngStyle:nd,ngSwitch:td,ngSwitchWhen:id,ngSwitchDefault:rd,ngOptions:wk,ngTransclude:ud,ngModel:ck,ngList:sk,ngChange:kb,pattern:yl,ngPattern:yl,required:vl,ngRequired:vl,minlength:wl,ngMinlength:wl,maxlength:pl,ngMaxlength:pl,ngValue:yb,ngModelOptions:ak}).directive({ngInclude:ek}).directive(nu).directive(fl);n.provider({$anchorScroll:kv,$animate:ry,$$animateQueue:iy,$$AnimateRunner:ty,$browser:fy,$cacheFactory:ey,$controller:hy,$document:cy,$exceptionHandler:ly,$filter:fc,$interpolate:tp,$interval:ip,$http:ky,$httpParamSerializer:py,$httpParamSerializerJQLike:wy,$httpBackend:gy,$location:op,$log:sp,$parse:pp,$rootScope:dp,$q:wp,$$q:bp,$sce:iw,$sceDelegate:tw,$sniffer:rw,$templateCache:oy,$templateRequest:uw,$$testability:fw,$timeout:ew,$window:ow,$$rAF:kp,$$jqLite:av,$$HashMap:vv,$$cookieReader:sw})}])}function da(){return++ka}function wr(n){return n.replace(ga,function(n,t,i,r){return r?i.toUpperCase():i}).replace(nv,"Moz$1")}function ne(n){return!rv.test(n)}function ss(n){var t=n.nodeType;return t===wt||!t||t===fs}function ev(n){for(var t in yr[n.ng339])return!0;return!1}function hs(n,t){var i,o,f,u=t.createDocumentFragment(),e=[],s;if(ne(n))e.push(t.createTextNode(n));else{for(i=i||u.appendChild(t.createElement("div")),o=(uv.exec(n)||["",""])[1].toLowerCase(),f=vt[o]||vt._default,i.innerHTML=f[1]+n.replace(fv,"<$1><\/$2>")+f[2],s=f[0];s--;)i=i.lastChild;e=lr(e,i.childNodes);i=u.firstChild;i.textContent=""}return u.textContent="",u.innerHTML="",r(e,function(n){u.appendChild(n)}),u}function ov(n,i){i=i||t;var r;return(r=iv.exec(n))?[i.createElement(r[1])]:(r=hs(n,i))?r.childNodes:[]}function b(n){if(n instanceof b)return n;var t;if(l(n)&&(n=p(n),t=!0),!(this instanceof b)){if(t&&n.charAt(0)!="<")throw gf("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new b(n)}t?re(this,ov(n)):re(this,n)}function te(n){return n.cloneNode(!0)}function lu(n,t){var r,i,u;if(t||au(n),n.querySelectorAll)for(r=n.querySelectorAll("*"),i=0,u=r.length;i<u;i++)au(r[i])}function cs(n,t,i,u){if(e(u))throw gf("offargs","jqLite#off() does not support the `selector` argument");var f=vu(n),o=f&&f.events,s=f&&f.handle;if(s)if(t)r(t.split(" "),function(t){if(e(i)){var r=o[t];if(hr(r||[],i),r&&r.length>0)return}pr(n,t,s);delete o[t]});else for(t in o)t!=="$destroy"&&pr(n,t,s),delete o[t]}function au(n,t){var u=n.ng339,r=u&&yr[u];if(r){if(t){delete r.data[t];return}r.handle&&(r.events.$destroy&&r.handle({},"$destroy"),cs(n));delete yr[u];n.ng339=i}}function vu(n,t){var r=n.ng339,u=r&&yr[r];return t&&!u&&(n.ng339=r=da(),u=yr[r]={events:{},data:{},handle:i}),u}function ie(n,t,i){if(ss(n)){var u=e(i),f=!u&&t&&!h(t),s=!t,o=vu(n,!f),r=o&&o.data;if(u)r[t]=i;else{if(s)return r;if(f)return r&&r[t];w(r,t)}}}function yu(n,t){return n.getAttribute?(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+t+" ")>-1:!1}function pu(n,t){t&&n.setAttribute&&r(t.split(" "),function(t){n.setAttribute("class",p((" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+p(t)+" "," ")))})}function wu(n,t){if(t&&n.setAttribute){var i=(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");r(t.split(" "),function(n){n=p(n);i.indexOf(" "+n+" ")===-1&&(i+=n+" ")});n.setAttribute("class",p(i))}}function re(n,t){var i,r;if(t)if(t.nodeType)n[n.length++]=t;else if(i=t.length,typeof i=="number"&&t.window!==t){if(i)for(r=0;r<i;r++)n[n.length++]=t[r]}else n[n.length++]=t}function ls(n,t){return bu(n,"$"+(t||"ngController")+"Controller")}function bu(n,t,r){var e,u,o;for(n.nodeType==fs&&(n=n.documentElement),e=a(t)?t:[t];n;){for(u=0,o=e.length;u<o;u++)if((r=f.data(n,e[u]))!==i)return r;n=n.parentNode||n.nodeType===df&&n.host}}function as(n){for(lu(n,!0);n.firstChild;)n.removeChild(n.firstChild)}function ue(n,t){t||lu(n);var i=n.parentNode;i&&i.removeChild(n)}function sv(t,i){if(i=i||n,i.document.readyState==="complete")i.setTimeout(t);else f(i).on("load",t)}function vs(n,t){var i=br[t.toLowerCase()];return i&&fe[bt(n)]&&i}function hv(n,t){var i=n.nodeName;return(i==="INPUT"||i==="TEXTAREA")&&ee[t]}function cv(n,t){var i=function(i,r){var u,f,o,e;if(i.isDefaultPrevented=function(){return i.defaultPrevented},u=t[r||i.type],f=u?u.length:0,f)for(s(i.immediatePropagationStopped)&&(o=i.stopImmediatePropagation,i.stopImmediatePropagation=function(){i.immediatePropagationStopped=!0;i.stopPropagation&&i.stopPropagation();o&&o.call(i)}),i.isImmediatePropagationStopped=function(){return i.immediatePropagationStopped===!0},f>1&&(u=lt(u)),e=0;e<f;e++)i.isImmediatePropagationStopped()||u[e].call(n,i)};return i.elem=n,i}function av(){this.$get=function(){return w(b,{hasClass:function(n,t){return n.attr&&(n=n[0]),yu(n,t)},addClass:function(n,t){return n.attr&&(n=n[0]),wu(n,t)},removeClass:function(n,t){return n.attr&&(n=n[0]),pu(n,t)}})}}function hi(n,t){var r=n&&n.$$hashKey,i;return r?(typeof r=="function"&&(r=n.$$hashKey()),r):(i=typeof n,i=="function"||i=="object"&&n!==null?n.$$hashKey=i+":"+(t||eu)():i+":"+n)}function gi(n,t){if(t){var i=0;this.nextUid=function(){return++i}}r(n,this.put,this)}function wv(n){var i=n.toString().replace(ps,""),t=i.match(ys);return t?"function("+(t[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function bv(n,t,i){var u,e,o,f;if(typeof n=="function"){if(!(u=n.$inject)){if(u=[],n.length){if(t){l(i)&&i||(i=n.name||wv(n));throw ci("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",i);}e=n.toString().replace(ps,"");o=e.match(ys);r(o[1].split(yv),function(n){n.replace(pv,function(n,t,i){u.push(i)})})}n.$inject=u}}else a(n)?(f=n.length-1,bi(n[f],"fn"),u=n.slice(0,f)):bi(n,"fn",!0);return u}function kr(n,t){function v(n){return function(t,i){if(h(t))r(t,so(n));else return n(t,i)}}function d(n,t){if(ki(n,"service"),(c(t)||a(t))&&(t=u.instantiate(t)),!t.$get)throw ci("pget","Provider '{0}' must define $get factory method.",n);return o[n+y]=t}function tt(n,t){return function(){var i=f.invoke(t,this);if(s(i))throw ci("undef","Provider '{0}' must return a value from $get factory method.",n);return i}}function b(n,t,i){return d(n,{$get:i!==!1?tt(n,t):t})}function it(n,t){return b(n,["$injector",function(n){return n.instantiate(t)}])}function rt(n,t){return b(n,pt(t),!1)}function ut(n,t){ki(n,"constant");o[n]=t;w[n]=t}function et(n,t){var i=u.get(n+y),r=i.$get;i.$get=function(){var n=f.invoke(r,i);return f.invoke(t,null,{$delegate:n})}}function g(n){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(!k.get(n)){k.put(n,!0);try{l(n)?(i=rr(n),t=t.concat(g(i.requires)).concat(i._runBlocks),f(i._invokeQueue),f(i._configBlocks)):c(n)?t.push(u.invoke(n)):a(n)?t.push(u.invoke(n)):bi(n,"module")}catch(r){a(n)&&(n=n[n.length-1]);r.message&&r.stack&&r.stack.indexOf(r.message)==-1&&(r=r.message+"\n"+r.stack);throw ci("modulerr","Failed to instantiate module {0} due to:\n{1}",n,r.stack||r.message||r);}}}),t}function nt(n,i){function r(t,r){if(n.hasOwnProperty(t)){if(n[t]===p)throw ci("cdep","Circular dependency found: {0}",t+" <- "+e.join(" <- "));return n[t]}try{return e.unshift(t),n[t]=p,n[t]=i(t,r)}catch(u){n[t]===p&&delete n[t];throw u;}finally{e.shift()}}function u(n,i,u,f){typeof u=="string"&&(f=u,u=null);for(var h=[],c=kr.$$annotate(n,t,f),e,o=0,s=c.length;o<s;o++){if(e=c[o],typeof e!="string")throw ci("itkn","Incorrect injection token! Expected service name as string, got {0}",e);h.push(u&&u.hasOwnProperty(e)?u[e]:r(e,f))}return a(n)&&(n=n[s]),n.apply(i,h)}function f(n,t,i){var f=Object.create((a(n)?n[n.length-1]:n).prototype||null),r=u(n,f,t,i);return h(r)||c(r)?r:f}return{invoke:u,instantiate:f,get:r,annotate:kr.$$annotate,has:function(t){return o.hasOwnProperty(t+y)||n.hasOwnProperty(t)}}}t=t===!0;var p={},y="Provider",e=[],k=new gi([],!0),o={$provide:{provider:v(d),factory:v(b),service:v(it),value:v(rt),constant:v(ut),decorator:et}},u=o.$injector=nt(o,function(n,t){ft.isString(t)&&e.push(t);throw ci("unpr","Unknown provider: {0}",e.join(" <- "));}),w={},f=w.$injector=nt(w,function(n,t){var r=u.get(n+y,t);return f.invoke(r.$get,r,i,n)});return r(g(n),function(n){n&&f.invoke(n)}),f}function kv(){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(bt(n)==="a")return t=n,!0}),t}function s(){var n=f.yOffset,i,r;return c(n)?n=n():yo(n)?(i=n[0],r=t.getComputedStyle(i),n=r.position!=="fixed"?0:i.getBoundingClientRect().bottom):k(n)||(n=0),n}function u(n){var i,r;n?(n.scrollIntoView(),i=s(),i&&(r=n.getBoundingClientRect().top,t.scrollBy(0,r-i))):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):n==="top"&&u(null):u(null)}var e=t.document;return n&&r.$watch(function(){return i.hash()},function(n,t){(n!==t||n!=="")&&sv(function(){r.$evalAsync(f)})}),f}]}function dr(n,t){return!n&&!t?"":n?t?(a(n)&&(n=n.join(" ")),a(t)&&(t=t.join(" ")),n+" "+t):n:t}function gv(n){for(var i,t=0;t<n.length;t++)if(i=n[t],i.nodeType===dv)return i}function ny(n){l(n)&&(n=n.split(" "));var t=rt();return r(n,function(n){n.length&&(t[n]=!0)}),t}function li(n){return h(n)?n:{}}function uy(n,t,i,u){function k(n){try{n.apply(null,ar(arguments,1))}finally{if(l--,l===0)while(w.length)try{w.pop()()}catch(t){i.error(t)}}}function et(n){var t=n.indexOf("#");return t===-1?"":n.substr(t)}function tt(){it();rt()}function ht(){try{return y.state}catch(n){}}function it(){h=ht();h=s(h)?null:h;st(h,b)&&(h=b);b=h}function rt(){(v!==e.url()||a!==h)&&(v=e.url(),a=h,r(g,function(n){n(e.url(),h)}))}var e=this,ct=t[0],c=n.location,y=n.history,ut=n.setTimeout,ft=n.clearTimeout,p={},l,w,g,nt,b;e.isMock=!1;l=0;w=[];e.$$completeOutstandingRequest=k;e.$$incOutstandingRequestCount=function(){l++};e.notifyWhenNoOutstandingRequests=function(n){l===0?n():w.push(n)};var h,a,v=c.href,ot=t.find("base"),d=null;it();a=h;e.url=function(t,i,r){var o,f;return s(r)&&(r=null),c!==n.location&&(c=n.location),y!==n.history&&(y=n.history),t?(o=a===r,v===t&&(!u.history||o))?e:(f=v&&ai(v)===ai(t),v=t,a=r,!u.history||f&&o?((!f||d)&&(d=t),i?c.replace(t):f?c.hash=et(t):c.href=t):(y[i?"replaceState":"pushState"](r,"",t),it(),a=h),e):d||c.href.replace(/%27/g,"'")};e.state=function(){return h};g=[];nt=!1;b=null;e.onUrlChange=function(t){if(!nt){if(u.history)f(n).on("popstate",tt);f(n).on("hashchange",tt);nt=!0}return g.push(t),t};e.$$applicationDestroyed=function(){f(n).off("hashchange popstate",tt)};e.$$checkUrlChange=rt;e.baseHref=function(){var n=ot.attr("href");return n?n.replace(/^(https?\:)?\/\/[^\/]*/,""):""};e.defer=function(n,t){var i;return l++,i=ut(function(){delete p[i];k(n)},t||0),p[i]=!0,i};e.defer.cancel=function(n){return p[n]?(delete p[n],ft(n),k(o),!0):!1}}function fy(){this.$get=["$window","$log","$sniffer","$document",function(n,t,i,r){return new uy(n,r,t,i)}]}function ey(){this.$get=function(){function t(t,i){function a(n){n!=f&&(r?r==n&&(r=n.n):r=n,c(n.n,n.p),c(n,f),f=n,f.n=null)}function c(n,t){n!=t&&(n&&(n.p=t),t&&(t.n=n))}if(t in n)throw y("$cacheFactory")("iid","CacheId '{0}' is already taken!",t);var o=0,l=w({},i,{id:t}),e={},h=i&&i.capacity||Number.MAX_VALUE,u={},f=null,r=null;return n[t]={put:function(n,t){if(!s(t)){if(h<Number.MAX_VALUE){var i=u[n]||(u[n]={key:n});a(i)}return n in e||o++,e[n]=t,o>h&&this.remove(r.key),t}},get:function(n){if(h<Number.MAX_VALUE){var t=u[n];if(!t)return;a(t)}return e[n]},remove:function(n){if(h<Number.MAX_VALUE){var t=u[n];if(!t)return;t==f&&(f=t.p);t==r&&(r=t.n);c(t.n,t.p);delete u[n]}delete e[n];o--},removeAll:function(){e={};o=0;u={};f=r=null},destroy:function(){e=null;l=null;u=null;delete n[t]},info:function(){return w({},l,{size:o})}}}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 oy(){this.$get=["$cacheFactory",function(n){return n("templates")}]}function ks(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 nt("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",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 ft(n,t){var i={isolateScope:null,bindToController:null},r,u;if(h(n.scope)&&(n.bindToController===!0?(i.bindToController=k(n.scope,t,!0),i.isolateScope={}):i.isolateScope=k(n.scope,t,!1)),h(n.bindToController)&&(i.bindToController=k(n.bindToController,t,!0)),h(i.bindToController))if(r=n.controller,u=n.controllerAs,r){if(!sy(r,u))throw nt("noident","Cannot bind to controller without identifier for directive '{0}'.",t);}else throw nt("noctrl","Cannot bind to controller without directive '{0}'s controller.",t);return i}function et(n){var t=n.charAt(0);if(!t||t!==v(t))throw nt("baddir","Directive name '{0}' is invalid. The first character must be a lowercase letter",n);if(n!==n.trim())throw nt("baddir","Directive name '{0}' is invalid. The name should not contain leading or trailing whitespaces",n);}var y={},b="Directive",d=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,g=/(([\w\-]+)(?:\:([^;]+))?;?)/,tt=oa("ngSrc,ngSrcset,src,srcset"),it=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,ut=/^(on[a-z]+|formaction)$/,s;this.directive=function ht(t,i){return ki(t,"directive"),l(t)?(et(t),bf(i,"directiveFactory"),y.hasOwnProperty(t)||(y[t]=[],n.factory(t+b,["$injector","$exceptionHandler",function(n,i){var u=[];return r(y[t],function(r,f){var e,o;try{e=n.invoke(r);c(e)?e={compile:pt(e)}:!e.compile&&e.link&&(e.compile=pt(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";o=e.$$bindings=ft(e,e.name);h(o.isolateScope)&&(e.$$isolateBindings=o.isolateScope);e.$$moduleName=r.$$moduleName;u.push(e)}catch(s){i(s)}}),u}])),y[t].push(i)):r(t,so(ht)),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()};s=!0;this.debugInfoEnabled=function(n){return e(n)?(s=n,this):s};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(n,u,e,k,ft,et,ht,ct,lt,at,vt){function gt(n,t){try{n.addClass(t)}catch(i){}}function yt(n,t,i,u,e){var s,o;return n instanceof f||(n=f(n)),r(n,function(t,i){t.nodeType==di&&t.nodeValue.match(/\S+/)&&(n[i]=f(t).wrap("<span><\/span>").parent()[0])}),s=ui(n,t,n,i,u,e),yt.$$addScopeClass(n),o=null,function(t,i,r){var u,c;bf(t,"scope");r=r||{};var e=r.parentBoundTranscludeFn,h=r.transcludeControllers,l=r.futureParentElement;if(e&&e.$$boundTransclude&&(e=e.$$boundTransclude),o||(o=ir(l)),u=o!=="html"?f(ei(o,f("<div>").append(n).html())):i?si.clone.call(n):n,h)for(c in h)u.data("$"+c+"Controller",h[c].instance);return yt.$$addScopeInfo(u,t),i&&i(u,t),s&&s(t,u,u,e),u}}function ir(n){var t=n&&n[0];return t?bt(t)!=="foreignobject"&&t.toString().match(/SVG/)?"svg":"html":"html"}function ui(n,t,r,u,e,o){function b(n,r,u,e){var o,l,a,c,s,b,y,k,v,d,w;if(p)for(d=r.length,v=new Array(d),s=0;s<h.length;s+=3)y=h[s],v[y]=r[y];else v=r;for(s=0,b=h.length;s<b;)a=v[h[s++]],o=h[s++],l=h[s++],o?(o.scope?(c=n.$new(),yt.$$addScopeInfo(f(a),c),w=o.$$destroyBindings,w&&(o.$$destroyBindings=null,c.$on("$destroyed",w))):c=n,k=o.transcludeOnThisElement?ni(n,o.transclude,e):!o.templateOnThisElement&&e?e:!e&&t?ni(n,t):null,o(l,c,a,u,k,o)):l&&l(n,a.childNodes,i,e)}for(var h=[],l,a,s,v,y,w,p,c=0;c<n.length;c++)l=new ri,a=fi(n[c],[],l,c===0?u:i,e),s=a.length?yi(a,n[c],l,t,r,null,[],[],o):null,s&&s.scope&&yt.$$addScopeClass(l.$$element),y=s&&s.terminal||!(v=n[c].childNodes)||!v.length?null:ui(v,s?(s.transcludeOnThisElement||!s.templateOnThisElement)&&s.transclude:t),(s||y)&&(h.push(c,s,y),w=!0,p=p||s),o=null;return w?b:null}function ni(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 fi(n,t,i,r,u){var it=n.nodeType,rt=i.$attr,o,s,k,nt,tt;switch(it){case wt:ti(t,dt(bt(n)),"E",r,u);for(var a,e,f,c,v,y,w=n.attributes,b=0,ut=w&&w.length;b<ut;b++)k=!1,nt=!1,a=w[b],e=a.name,v=p(a.value),c=dt(e),(y=nr.test(c))&&(e=e.replace(oe,"").substr(8).replace(/_(.)/g,function(n,t){return t.toUpperCase()})),tt=c.replace(/(Start|End)$/,""),rr(tt)&&c===tt+"Start"&&(k=e,nt=e.substr(0,e.length-5)+"end",e=e.substr(0,e.length-6)),f=dt(e.toLowerCase()),rt[f]=e,(y||!i.hasOwnProperty(f))&&(i[f]=v,vs(n,f)&&(i[f]=!0)),lr(n,t,v,f,y),ti(t,f,"A",r,u,k,nt);if(s=n.className,h(s)&&(s=s.animVal),l(s)&&s!=="")while(o=g.exec(s))f=dt(o[2]),ti(t,f,"C",r,u)&&(i[f]=p(o[3])),s=s.substr(o.index+o[0].length);break;case di:if(pi===11)while(n.parentNode&&n.nextSibling&&n.nextSibling.nodeType===di)n.nodeValue=n.nodeValue+n.nextSibling.nodeValue,n.parentNode.removeChild(n.nextSibling);sr(t,n.nodeValue);break;case kf:try{o=d.exec(n.nodeValue);o&&(f=dt(o[1]),ti(t,f,"M",r,u)&&(i[f]=p(o[2])))}catch(ft){}}return t.sort(er),t}function ai(n,t,i){var r=[],u=0;if(t&&n.hasAttribute&&n.hasAttribute(t)){do{if(!n)throw nt("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",t,i);n.nodeType==wt&&(n.hasAttribute(t)&&u++,n.hasAttribute(i)&&u--);r.push(n);n=n.nextSibling}while(u>0)}else r.push(n);return f(r)}function vi(n,t,i){return function(r,u,f,e,o){return u=ai(u[0],t,i),n(r,u,f,e,o)}}function yi(n,r,u,o,s,v,y,w,b){function nr(n,t,i,r){n&&(i&&(n=vi(n,i,r)),n.require=k.require,n.directiveName=ut,(d===k||k.$$isolateScope)&&(n=ki(n,{isolateScope:!0})),y.push(n));t&&(i&&(t=vi(t,i,r)),t.require=k.require,t.directiveName=ut,(d===k||k.$$isolateScope)&&(t=ki(t,{isolateScope:!0})),w.push(t))}function yi(n,t,i,r){var u,s,f,c;if(l(t)){var e=t.match(it),o=t.substring(e[0].length),h=e[1]||e[3],v=e[2]==="?";if(h==="^^"?i=i.parent():(u=r&&r[o],u=u&&u.instance),u||(s="$"+o+"Controller",u=h?i.inheritedData(s):i.data(s)),!u&&!v)throw nt("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,n);}else if(a(t))for(u=[],f=0,c=t.length;f<c;f++)u[f]=yi(n,t[f],i,r);return u||null}function rr(n,t,i,r,u,f){var h=rt(),c,s;for(c in r){var e=r[c],l={$scope:e===d||e.$$isolateScope?u:f,$element:n,$attrs:t,$transclude:i},o=e.controller;o=="@"&&(o=t[e.name]);s=et(o,l,!0,e.controllerAs);h[e.name]=s;bt||n.data("$"+e.name+"Controller",s.instance)}return h}function lt(n,t,e,o,s,h){function et(n,t,r){var u;return or(n)||(r=t,t=n,n=i),bt&&(u=b),r||(r=bt?c.parent():c),s(n,t,u,r,rt)}var a,ut,l,v,p,b,nt,c,k,g,it,ft,tt,rt;if(r===e?(k=u,c=u.$$element):(c=f(e),k=new ri(c,u)),d&&(p=t.$new(!0)),s&&(nt=et,nt.$$boundTransclude=s),ct&&(b=rr(c,k,nt,ct,p,t)),d&&(yt.$$addScopeInfo(c,p,!0,!(st&&(st===d||st===d.$$originalDirective))),yt.$$addScopeClass(c,!0),p.$$isolateBindings=d.$$isolateBindings,oi(t,k,p,p.$$isolateBindings,d,p)),b){g=d||ot;g&&b[g.name]&&(it=g.$$bindings.bindToController,v=b[g.name],v&&v.identifier&&it&&(ft=v,h.$$destroyBindings=oi(t,k,v.instance,it,g)));for(a in b)v=b[a],tt=v(),tt!==v.instance&&(v.instance=tt,c.data("$"+a+"Controller",tt),v===ft&&(h.$$destroyBindings(),h.$$destroyBindings=oi(t,k,tt,it,g)))}for(a=0,ut=y.length;a<ut;a++)l=y[a],gi(l,l.isolateScope?p:t,c,k,l.require&&yi(l.directiveName,l.require,c,b),nt);for(rt=t,d&&(d.template||d.templateUrl===null)&&(rt=p),n&&n(rt,e.childNodes,i,s),a=w.length-1;a>=0;a--)l=w[a],gi(l,l.isolateScope?p:t,c,k,l.require&&yi(l.directiveName,l.require,c,b),nt)}var ht,ui,gt,si;b=b||{};var vt=-Number.MAX_VALUE,ot=b.newScopeDirective,ct=b.controllerDirectives,d=b.newIsolateScopeDirective,st=b.templateDirective,ni=b.nonTlbTranscludeDirective,hi=!1,ci=!1,bt=b.hasElementTranscludeDirective,g=u.$$element=f(r),k,ut,ft,ti=v,dt=o,at,tt;for(ht=0,ui=n.length;ht<ui;ht++){if(k=n[ht],gt=k.$$start,si=k.$$end,gt&&(g=ai(r,gt,si)),ft=i,vt>k.priority)break;if((tt=k.scope)&&(k.templateUrl||(h(tt)?(pt("new/isolated scope",d||ot,k,g),d=k):pt("new/isolated scope",d,k,g)),ot=ot||k),ut=k.name,!k.templateUrl&&k.controller&&(tt=k.controller,ct=ct||rt(),pt("'"+ut+"' controller",ct[ut],k,g),ct[ut]=k),(tt=k.transclude)&&(hi=!0,k.$$tlb||(pt("transclusion",ni,k,g),ni=k),tt=="element"?(bt=!0,vt=k.priority,ft=g,g=u.$$element=f(t.createComment(" "+ut+": "+u[ut]+" ")),r=g[0],ii(s,ar(ft),r),dt=yt(ft,o,vt,ti&&ti.name,{nonTlbTranscludeDirective:ni})):(ft=f(te(r)).contents(),g.empty(),dt=yt(ft,o))),k.template)if(ci=!0,pt("template",st,k,g),st=k,tt=c(k.template)?k.template(g,u):k.template,tt=li(tt),k.replace){if(ti=k,ft=ne(tt)?[]:gs(ei(k.templateNamespace,p(tt))),r=ft[0],ft.length!=1||r.nodeType!==wt)throw nt("tplrt","Template for directive '{0}' must have exactly one root element. {1}",ut,"");ii(s,g,r);var pi={$attr:{}},di=fi(r,[],pi),tr=n.splice(ht+1,n.length-(ht+1));d&&wi(di);n=n.concat(di).concat(tr);bi(u,pi);ui=n.length}else g.html(tt);if(k.templateUrl)ci=!0,pt("template",st,k,g),st=k,k.replace&&(ti=k),lt=fr(n.splice(ht,n.length-ht),g,u,s,hi&&dt,y,w,{controllerDirectives:ct,newScopeDirective:ot!==k&&ot,newIsolateScopeDirective:d,templateDirective:st,nonTlbTranscludeDirective:ni}),ui=n.length;else if(k.compile)try{at=k.compile(g,u,dt);c(at)?nr(null,at,gt,si):at&&nr(at.pre,at.post,gt,si)}catch(ir){e(ir,kt(g))}k.terminal&&(lt.terminal=!0,vt=Math.max(vt,k.priority))}return lt.scope=ot&&ot.scope===!0,lt.transcludeOnThisElement=hi,lt.templateOnThisElement=ci,lt.transclude=dt,b.hasElementTranscludeDirective=bt,lt}function wi(n){for(var t=0,i=n.length;t<i;t++)n[t]=lf(n[t],{$$isolateScope:!0})}function ti(t,r,u,f,o,s,h){var l;if(r===o)return null;if(l=null,y.hasOwnProperty(r))for(var c,v=n.get(r+b),a=0,p=v.length;a<p;a++)try{c=v[a];(f===i||f>c.priority)&&c.restrict.indexOf(u)!=-1&&(s&&(c=lf(c,{$$start:s,$$end:h})),t.push(c),l=c)}catch(w){e(w)}return l}function rr(t){if(y.hasOwnProperty(t))for(var r,u=n.get(t+b),i=0,f=u.length;i<f;i++)if(r=u[i],r.multiElement)return!0;return!1}function bi(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+=(r==="style"?";":" ")+t[r]),n.$set(r,i,!0,u[r]))});r(t,function(t,r){r=="class"?(gt(i,t),n["class"]=(n["class"]?n["class"]+" ":"")+t):r=="style"?(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 fr(n,t,i,u,e,o,s,l){var y=[],v,w,b=t[0],a=n.shift(),g=lf(a,{templateUrl:null,transclude:null,replace:null,$$originalDirective:a}),d=c(a.templateUrl)?a.templateUrl(t,i):a.templateUrl,tt=a.templateNamespace;return t.empty(),k(d).then(function(c){var k,rt,ut,st,ft,ct;if(c=li(c),a.replace){if(ut=ne(c)?[]:gs(ei(tt,p(c))),k=ut[0],ut.length!=1||k.nodeType!==wt)throw nt("tplrt","Template for directive '{0}' must have exactly one root element. {1}",a.name,d);rt={$attr:{}};ii(u,t,k);ft=fi(k,[],rt);h(a.scope)&&wi(ft);n=ft.concat(n);bi(i,rt)}else k=b,t.html(c);for(n.unshift(g),v=yi(n,k,i,e,t,a,o,s,l),r(u,function(n,i){n==k&&(u[i]=t[0])}),w=ui(t[0].childNodes,e);y.length;){var et=y.shift(),ot=y.shift(),lt=y.shift(),ht=y.shift(),it=t[0];et.$$destroyed||(ot!==b&&(ct=ot.className,l.hasElementTranscludeDirective&&a.replace||(it=te(k)),ii(lt,f(ot),it),gt(f(it),ct)),st=v.transcludeOnThisElement?ni(et,v.transclude,ht):ht,v(w,et,it,u,st,v))}y=null}),function(n,t,i,r,u){var f=u;t.$$destroyed||(y?y.push(t,i,r,f):(v.transcludeOnThisElement&&(f=ni(t,v.transclude,u)),v(w,t,i,r,f,v)))}}function er(n,t){var i=t.priority-n.priority;return i!==0?i:n.name!==t.name?n.name<t.name?-1:1:n.index-t.index}function pt(n,t,i,r){function u(n){return n?" (module: "+n+")":""}if(t)throw nt("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",t.name,u(t.$$moduleName),i.name,u(i.$$moduleName),n,kt(r));}function sr(n,t){var i=u(t,!0);i&&n.push({priority:0,compile:function(n){var t=n.parent(),r=!!t.length;return r&&yt.$$addBindingClass(t),function(n,t){var u=t.parent();r||yt.$$addBindingClass(u);yt.$$addBindingInfo(u,i.expressions);n.$watch(i,function(n){t[0].nodeValue=n})}}})}function ei(n,i){n=v(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 cr(n,t){if(t=="srcdoc")return lt.HTML;var i=bt(n);if(t=="xlinkHref"||i=="form"&&t=="action"||i!="img"&&(t=="src"||t=="ngSrc"))return lt.RESOURCE_URL}function lr(n,t,i,r,f){var o=cr(n,r),e;if(f=tt[r]||f,e=u(i,!0,o,f),e){if(r==="multiple"&&bt(n)==="select")throw nt("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",kt(n));t.push({priority:100,compile:function(){return{pre:function(n,t,s){var c=s.$$observers||(s.$$observers={}),h;if(ut.test(r))throw nt("nodomevents","Interpolations for HTML DOM event attributes are disallowed.  Please use the ng- versions (such as ng-click instead of onclick) instead.");(h=s[r],h!==i&&(e=h&&u(h,!0,o,f),i=h),e)&&(s[r]=e(n),(c[r]||(c[r]=[])).$$inter=!0,(s.$$observers&&s.$$observers[r].$$scope||n).$watch(e,function(n,t){r==="class"&&n!=t?s.$updateClass(n,t):s.$set(r,n)}))}}}})}}function ii(n,i,r){var u=i[0],a=i.length,v=u.parentNode,e,y,c,s,w,l;if(n)for(e=0,y=n.length;e<y;e++)if(n[e]==u){n[e++]=r;for(var o=e,h=o+a-1,p=n.length;o<p;o++,h++)h<p?n[o]=n[h]:delete n[o];n.length-=a-1;n.context===u&&(n.context=r);break}for(v&&v.replaceChild(r,u),c=t.createDocumentFragment(),c.appendChild(u),f.hasData(u)&&(f(r).data(f(u).data()),ot?(wf=!0,ot.cleanData([u])):delete f.cache[u[f.expando]]),s=1,w=i.length;s<w;s++)l=i[s],f(l).remove(),c.appendChild(l),delete i[s];i[0]=r;i.length=1}function ki(n,t){return w(function(){return n.apply(null,arguments)},n,t)}function gi(n,t,i,r,u,f){try{n(t,i,r,u,f)}catch(o){e(o,kt(i))}}function oi(n,t,f,e,s,h){var c,l;return(r(e,function(r,e){var h=r.attrName,y=r.optional,k=r.mode,a,l,w,p,v,b;tr.call(t,h)||(t[h]=i);switch(k){case"@":t[h]||y||(f[e]=i);t.$observe(h,function(n){f[e]=n});t.$$observers[h].$$scope=n;t[h]&&(f[e]=u(t[h])(n));break;case"=":if(y&&!t[h])return;l=ft(t[h]);p=l.literal?st:function(n,t){return n===t||n!==n&&t!==t};w=l.assign||function(){a=f[e]=l(n);throw nt("nonassign","Expression '{0}' used with directive '{1}' is non-assignable!",t[h],s.name);};a=f[e]=l(n);v=function(t){return p(t,f[e])||(p(t,a)?w(n,t=f[e]):f[e]=t),a=t};v.$stateful=!0;b=r.collection?n.$watchCollection(t[h],v):n.$watch(ft(t[h],v),null,l.literal);c=c||[];c.push(b);break;case"&":if(l=ft(t[h]),l===o&&y)break;f[e]=function(t){return l(n,t)}}}),l=c?function(){for(var n=0,t=c.length;n<t;++n)c[n]()}:o,h&&l!==o)?(h.$on("$destroy",l),o):l}var ri=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};ri.prototype={$normalize:dt,$addClass:function(n){n&&n.length>0&&at.addClass(this.$$element,n)},$removeClass:function(n){n&&n.length>0&&at.removeClass(this.$$element,n)},$updateClass:function(n,t){var r=ds(n,t),i;r&&r.length&&at.addClass(this.$$element,r);i=ds(t,n);i&&i.length&&at.removeClass(this.$$element,i)},$set:function(n,t,u,f){var w=this.$$element[0],b=vs(w,n),a=hv(w,n),k=n,h,s,v,l,y;if(b?(this.$$element.prop(n,t),f=b):a&&(this[a]=t,k=a),this[n]=t,f?this.$attr[n]=f:(f=this.$attr[n],f||(this.$attr[n]=f=rs(n,"-"))),h=bt(this.$$element),h==="a"&&n==="href"||h==="img"&&n==="src")this[n]=t=vt(t,n==="src");else if(h==="img"&&n==="srcset"){var o="",d=p(t),g=/\s/.test(d)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,c=d.split(g),nt=Math.floor(c.length/2);for(s=0;s<nt;s++)v=s*2,o+=vt(p(c[v]),!0),o+=" "+p(c[v+1]);l=p(c[s*2]).split(/\s/);o+=vt(p(l[0]),!0);l.length===2&&(o+=" "+p(l[1]));this[n]=t=o}u!==!1&&(t===null||t===i?this.$$element.removeAttr(f):this.$$element.attr(f,t));y=this.$$observers;y&&r(y[k],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),ht.$evalAsync(function(){!r.$$inter&&i.hasOwnProperty(n)&&t(i[n])}),function(){hr(r,t)}}};var hi=u.startSymbol(),ci=u.endSymbol(),li=hi=="{{"||ci=="}}"?ur:function(n){return n.replace(/\{\{/g,hi).replace(/}}/g,ci)},nr=/^ngAttr[A-Z]/;return yt.$$addBindingInfo=s?function(n,t){var i=n.data("$binding")||[];a(t)?i=i.concat(t):i.push(t);n.data("$binding",i)}:o,yt.$$addBindingClass=s?function(n){gt(n,"ng-binding")}:o,yt.$$addScopeInfo=s?function(n,t,i,r){var u=i?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope";n.data(u,t)}:o,yt.$$addScopeClass=s?function(n,t){gt(n,t?"ng-isolate-scope":"ng-scope")}:o,yt}]}function dt(n){return wr(n.replace(oe,""))}function ds(n,t){var u="",e=n.split(/\s+/),o=t.split(/\s+/),i,f,r;n:for(i=0;i<e.length;i++){for(f=e[i],r=0;r<o.length;r++)if(f==o[r])continue n;u+=(u.length>0?" ":"")+f}return u}function gs(n){var t,i;if(n=f(n),t=n.length,t<=1)return n;while(t--)i=n[t],i.nodeType===kf&&na.call(n,t,1);return n}function sy(n,t){if(t&&l(t))return t;if(l(n)){var i=se.exec(n);if(i)return i[3]}}function hy(){var n={},t=!1;this.register=function(t,i){ki(t,"controller");h(t)?w(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&&h(n.$scope)))throw y("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,t);n.$scope[t]=i}return function(e,o,s,v){var y,k,p,b,d;if(s=s===!0,v&&l(v)&&(b=v),l(e)){if(k=e.match(se),!k)throw nh("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",e);p=k[1];b=b||k[3];e=n.hasOwnProperty(p)?n[p]:us(o.$scope,p,!0)||(t?us(u,p,!0):i);bi(e,p,!0)}return s?(d=(a(e)?e[e.length-1]:e).prototype,y=Object.create(d||null),b&&f(o,b,y,p||e.name),w(function(){var n=r.invoke(e,y,o,p);return n!==y&&(h(n)||c(n))&&(y=n,b&&f(o,b,y,p||e.name)),y},{instance:y,identifier:b})):(y=r.instantiate(e,o,p),b&&f(o,b,y,p||e.name),y)}}]}function cy(){this.$get=["$window",function(n){return f(n.document)}]}function ly(){this.$get=["$log",function(n){return function(){n.error.apply(n,arguments)}}]}function ce(n){return h(n)?et(n)?n.toISOString():vr(n):n}function py(){this.$get=function(){return function(n){if(!n)return"";var t=[];return oo(n,function(n,i){n===null||s(n)||(a(n)?r(n,function(n){t.push(at(i)+"="+at(ce(n)))}):t.push(at(i)+"="+at(ce(n))))}),t.join("&")}}}function wy(){this.$get=function(){return function(n){function t(n,u,f){n===null||s(n)||(a(n)?r(n,function(n){t(n,u+"[]")}):h(n)&&!et(n)?oo(n,function(n,i){t(n,u+(f?"":"[")+i+(f?"":"]"))}):i.push(at(u)+"="+at(ce(n))))}if(!n)return"";var i=[];return t(n,"",!0),i.join("&")}}}function le(n,t){var i,r;return l(n)&&(i=n.replace(yy,"").trim(),i&&(r=t("Content-Type"),(r&&r.indexOf(th)===0||by(i))&&(n=bo(i)))),n}function by(n){var t=n.match(ay);return t&&vy[t[0]].test(n)}function ih(n){function u(n,i){n&&(t[n]=t[n]?t[n]+", "+i:i)}var t=rt(),i;return l(n)?r(n.split("\n"),function(n){i=n.indexOf(":");u(v(p(n.substr(0,i))),p(n.substr(i+1)))}):h(n)&&r(n,function(n,t){u(v(t),p(n))}),t}function rh(n){var t;return function(i){if(t||(t=ih(n)),i){var r=t[v(i)];return r===void 0&&(r=null),r}return t}}function uh(n,t,i,u){return c(u)?u(n,t,i):(r(u,function(r){n=r(n,t,i)}),n)}function ae(n){return 200<=n&&n<300}function ky(){var n=this.defaults={transformResponse:[le],transformRequest:[function(n){return h(n)&&!ua(n)&&!ea(n)&&!fa(n)?vr(n):n}],headers:{common:{Accept:"application/json, text/plain, */*"},post:lt(he),put:lt(he),patch:lt(he)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},t=!1,u;this.useApplyAsync=function(n){return e(n)?(t=!!n,this):t};u=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(f,o,p,b,k,d){function g(t){function a(n){var t=w({},n);return t.data=n.data?uh(n.data,n.headers,n.status,u.transformResponse):n.data,ae(n.status)?t:k.reject(t)}function b(n,t){var i,u={};return r(n,function(n,r){c(n)?(i=n(t),i!=null&&(u[r]=i)):u[r]=n}),u}function g(t){var i=n.headers,u=w({},t.headers),r,f,e;i=w({},i.common,i[v(t.method)]);n:for(r in i){f=v(r);for(e in u)if(v(e)===f)continue n;u[r]=i[r]}return b(u,lt(t))}var u,o,h;if(!ft.isObject(t))throw y("$http")("badreq","Http request configuration must be an object.  Received: {0}",t);u=w({method:"get",transformRequest:n.transformRequest,transformResponse:n.transformResponse,paramSerializer:n.paramSerializer},t);u.headers=g(t);u.method=ir(u.method);u.paramSerializer=l(u.paramSerializer)?d.get(u.paramSerializer):u.paramSerializer;var p=function(t){var u=t.headers,f=uh(t.data,rh(u),i,t.transformRequest);return s(f)&&r(u,function(n,t){v(t)==="content-type"&&delete u[t]}),s(t.withCredentials)&&!s(n.withCredentials)&&(t.withCredentials=n.withCredentials),ut(t,f).then(a,a)},e=[p,i],f=k.when(u);for(r(nt,function(n){(n.request||n.requestError)&&e.unshift(n.request,n.requestError);(n.response||n.responseError)&&e.push(n.response,n.responseError)});e.length;)o=e.shift(),h=e.shift(),f=f.then(o,h);return f.success=function(n){return bi(n,"fn"),f.then(function(t){n(t.data,t.status,t.headers,u)}),f},f.error=function(n){return bi(n,"fn"),f.then(null,function(t){n(t.data,t.status,t.headers,u)}),f},f}function it(){r(arguments,function(n){g[n]=function(t,i){return g(w({},i||{},{method:n,url:t}))}})}function rt(){r(arguments,function(n){g[n]=function(t,i,r){return g(w({},r||{},{method:n,url:t,data:i}))}})}function ut(r,u){function ut(n,i,r,u){function f(){y(i,n,r,u)}l&&(ae(n)?l.put(v,[n,i,ih(r),u]):l.remove(v));t?b.$applyAsync(f):(f(),b.$$phase||b.$apply())}function y(n,t,i,u){t=Math.max(t,0);(ae(t)?p.resolve:p.reject)({data:n,status:t,headers:rh(i),config:r,statusText:u})}function it(n){y(n.data,n.status,lt(n.headers()),n.statusText)}function rt(){var n=g.pendingRequests.indexOf(r);n!==-1&&g.pendingRequests.splice(n,1)}var p=k.defer(),w=p.promise,l,c,nt=r.headers,v=et(r.url,r.paramSerializer(r.params)),d;return g.pendingRequests.push(r),w.then(rt,rt),(r.cache||n.cache)&&r.cache!==!1&&(r.method==="GET"||r.method==="JSONP")&&(l=h(r.cache)?r.cache:h(n.cache)?n.cache:tt),l&&(c=l.get(v),e(c)?ou(c)?c.then(it,it):a(c)?y(c[1],c[0],lt(c[2]),c[3]):y(c,200,{},"OK"):l.put(v,w)),s(c)&&(d=rc(r.url)?o()[r.xsrfCookieName||n.xsrfCookieName]:i,d&&(nt[r.xsrfHeaderName||n.xsrfHeaderName]=d),f(r.method,v,u,ut,nt,r.timeout,r.withCredentials,r.responseType)),w}function et(n,t){return t.length>0&&(n+=(n.indexOf("?")==-1?"?":"&")+t),n}var tt=p("$http"),nt;return n.paramSerializer=l(n.paramSerializer)?d.get(n.paramSerializer):n.paramSerializer,nt=[],r(u,function(n){nt.unshift(l(n)?d.get(n):d.invoke(n))}),g.pendingRequests=[],it("get","delete","head","jsonp"),rt("post","put","patch"),g.defaults=n,g}]}function dy(){return new n.XMLHttpRequest}function gy(){this.$get=["$browser","$window","$document",function(n,t,i){return np(n,dy,n.defer,t.angular.callbacks,i[0])}]}function np(n,t,u,f,s){function h(n,t,i){var r=s.createElement("script"),u=null;return r.type="text/javascript",r.src=n,r.async=!0,u=function(n){pr(r,"load",u);pr(r,"error",u);s.body.removeChild(r);r=null;var e=-1,o="unknown";n&&(n.type!=="load"||f[t].called||(n={type:"error"}),o=n.type,e=n.type==="error"?404:200);i&&i(e,o)},cu(r,"load",u),cu(r,"error",u),s.body.appendChild(r),u}return function(s,c,l,a,y,p,w,b){function rt(){g&&g();k&&k.abort()}function it(t,r,f,e,s){tt!==i&&u.cancel(tt);g=k=null;t(r,f,e,s);n.$$completeOutstandingRequest(o)}var d,g,k,nt,tt;if(n.$$incOutstandingRequestCount(),c=c||n.url(),v(s)=="jsonp")d="_"+(f.counter++).toString(36),f[d]=function(n){f[d].data=n;f[d].called=!0},g=h(c.replace("JSON_CALLBACK","angular.callbacks."+d),d,function(n,t){it(a,n,f[d].data,"",t);f[d]=o});else{if(k=t(),k.open(s,c,!0),r(y,function(n,t){e(n)&&k.setRequestHeader(t,n)}),k.onload=function(){var i=k.statusText||"",t="response"in k?k.response:k.responseText,n=k.status===1223?204:k.status;n===0&&(n=t?200:ui(c).protocol=="file"?404:0);it(a,n,t,k.getAllResponseHeaders(),i)},nt=function(){it(a,-1,null,null,"")},k.onerror=nt,k.onabort=nt,w&&(k.withCredentials=!0),b)try{k.responseType=b}catch(ut){if(b!=="json")throw ut;}k.send(l)}p>0?tt=u(rt,p):ou(p)&&p.then(rt)}}function tp(){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 h(n){return"\\\\\\"+n}function l(i){return i.replace(v,n).replace(y,t)}function p(n){if(n==null)return"";switch(typeof n){case"string":break;case"number":n=""+n;break;default:n=vr(n)}return n}function f(f,h,v,y){function ot(n){try{return n=et(n),y&&!e(n)?n:p(n)}catch(t){r(ii.interr(f,t))}}var rt,et;y=!!y;for(var d,nt,b=0,g=[],tt=[],ut=f.length,it,k=[],ft=[];b<ut;)if((d=f.indexOf(n,b))!=-1&&(nt=f.indexOf(t,d+o))!=-1)b!==d&&k.push(l(f.substring(b,d))),it=f.substring(d+o,nt),g.push(it),tt.push(i(it,ot)),b=nt+a,ft.push(k.length),k.push("");else{b!==ut&&k.push(l(f.substring(b)));break}return v&&k.length>1&&ii.throwNoconcat(f),!h||g.length?(rt=function(n){for(var t=0,i=g.length;t<i;t++){if(y&&s(n[t]))return;k[ft[t]]=n[t]}return k.join("")},et=function(n){return v?u.getTrusted(v,n):u.valueOf(n)},w(function(n){var t=0,i=g.length,u=new Array(i);try{for(;t<i;t++)u[t]=tt[t](n);return rt(u)}catch(e){r(ii.interr(f,e))}},{exp:f,expressions:g,$$watchDelegate:function(n,t){var i;return n.$watchGroup(tt,function(r,u){var f=rt(r);c(t)&&t.call(this,f,r!==u?i:f,n);i=f})}})):void 0}var o=n.length,a=t.length,v=new RegExp(n.replace(/./g,h),"g"),y=new RegExp(t.replace(/./g,h),"g");return f.startSymbol=function(){return n},f.endSymbol=function(){return t},f}]}function ip(){this.$get=["$rootScope","$window","$q","$$q",function(n,t,i,r){function f(f,o,s,h){var v=arguments.length>4,p=v?ar(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++);s>0&&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 rp(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"¤",posSuf:"",negPre:"(¤",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a",short:"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a",ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"]},pluralCat:function(n){return n===1?"one":"other"}}}}function ve(n){for(var t=n.split("/"),i=t.length;i--;)t[i]=su(t[i]);return t.join("/")}function fh(n,t){var i=ui(n);t.$$protocol=i.protocol;t.$$host=i.hostname;t.$$port=it(i.port)||fp[i.protocol]||null}function eh(n,t){var r=n.charAt(0)!=="/",i;r&&(n="/"+n);i=ui(n);t.$$path=decodeURIComponent(r&&i.pathname.charAt(0)==="/"?i.pathname.substring(1):i.pathname);t.$$search=ns(i.search);t.$$hash=decodeURIComponent(i.hash);t.$$path&&t.$$path.charAt(0)!="/"&&(t.$$path="/"+t.$$path)}function gt(n,t){if(t.indexOf(n)===0)return t.substr(n.length)}function ai(n){var t=n.indexOf("#");return t==-1?n:n.substr(0,t)}function du(n){return n.replace(/(#.+)|#$/,"$1")}function ye(n){return n.substr(0,ai(n).lastIndexOf("/")+1)}function ep(n){return n.substring(0,n.indexOf("/",n.indexOf("//")+2))}function pe(n,t){this.$$html5=!0;t=t||"";var r=ye(n);fh(n,this);this.$$parse=function(n){var t=gt(r,n);if(!l(t))throw ku("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',n,r);eh(t,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var n=yf(this.$$search),t=this.$$hash?"#"+su(this.$$hash):"";this.$$url=ve(this.$$path)+(n?"?"+n:"")+t;this.$$absUrl=r+this.$$url.substr(1)};this.$$parseLinkUrl=function(u,f){if(f&&f[0]==="#")return this.hash(f.slice(1)),!0;var e,s,o;return(e=gt(n,u))!==i?(s=e,o=(e=gt(t,e))!==i?r+(gt("/",e)||e):n+s):(e=gt(r,u))!==i?o=r+e:r==u+"/"&&(o=r),o&&this.$$parse(o),!!o}}function we(n,t){var i=ye(n);fh(n,this);this.$$parse=function(r){function e(n,t,i){var u=/^\/[A-Z]:(\/.*)/,r;return(t.indexOf(i)===0&&(t=t.replace(i,"")),u.exec(t))?n:(r=u.exec(n),r?r[1]:n)}var f=gt(n,r)||gt(i,r),u;s(f)||f.charAt(0)!=="#"?this.$$html5?u=f:(u="",s(f)&&(n=r,this.replace())):(u=gt(t,f),s(u)&&(u=f));eh(u,this);this.$$path=e(this.$$path,u,n);this.$$compose()};this.$$compose=function(){var i=yf(this.$$search),r=this.$$hash?"#"+su(this.$$hash):"";this.$$url=ve(this.$$path)+(i?"?"+i:"")+r;this.$$absUrl=n+(this.$$url?t+this.$$url:"")};this.$$parseLinkUrl=function(t){return ai(n)==ai(t)?(this.$$parse(t),!0):!1}}function oh(n,t){this.$$html5=!0;we.apply(this,arguments);var i=ye(n);this.$$parseLinkUrl=function(r,u){if(u&&u[0]==="#")return this.hash(u.slice(1)),!0;var f,e;return n==ai(r)?f=r:(e=gt(i,r))?f=n+t+e:i===r+"/"&&(f=i),f&&this.$$parse(f),!!f};this.$$compose=function(){var i=yf(this.$$search),r=this.$$hash?"#"+su(this.$$hash):"";this.$$url=ve(this.$$path)+(i?"?"+i:"")+r;this.$$absUrl=n+t+this.$$url}}function gu(n){return function(){return this[n]}}function hh(n,t){return function(i){return s(i)?this[n]:(this[n]=t(i),this.$$compose(),this)}}function op(){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):h(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=s.url(),f=s.$$state;try{r.url(n,t,i);s.$$state=r.state()}catch(e){s.url(u);s.$$state=f;throw e;}}function b(n,t){i.$broadcast("$locationChangeSuccess",s.absUrl(),n,s.$$state,t)}var s,a,y=r.baseHref(),c=r.url(),v,p,l;if(n.enabled){if(!y&&n.requireBase)throw ku("nobase","$location in HTML5 mode requires a <base> tag to be present!");v=ep(c)+(y||"/");a=u.history?pe:oh}else v=ai(c),a=we;s=new a(v,"#"+t);s.$$parseLinkUrl(c,c);s.$$state=r.state();p=/^\s*(javascript|mailto):/i;e.on("click",function(t){var u,c,l;if(n.rewriteLinks&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&t.which!=2&&t.button!=2){for(u=f(t.target);bt(u[0])!=="a";)if(u[0]===e[0]||!(u=u.parent())[0])return;(c=u.prop("href"),l=u.attr("href")||u.attr("xlink:href"),h(c)&&c.toString()==="[object SVGAnimatedString]"&&(c=ui(c.animVal).href),p.test(c))||!c||u.attr("target")||t.isDefaultPrevented()||s.$$parseLinkUrl(c,l)&&(t.preventDefault(),s.absUrl()!=r.url()&&(i.$apply(),o.angular["ff-684208-preventDefault"]=!0))}});du(s.absUrl())!=du(c)&&r.url(s.absUrl(),!0);l=!0;r.onUrlChange(function(n,t){i.$evalAsync(function(){var r=s.absUrl(),u=s.$$state,f;(s.$$parse(n),s.$$state=t,f=i.$broadcast("$locationChangeStart",n,r,t,u).defaultPrevented,s.absUrl()===n)&&(f?(s.$$parse(r),s.$$state=u,w(r,!1,u)):(l=!1,b(r,u)))});i.$$phase||i.$digest()});return i.$watch(function(){var t=du(r.url()),e=du(s.absUrl()),n=r.state(),o=s.$$replace,f=t!==e||s.$$html5&&u.history&&n!==s.$$state;(l||f)&&(l=!1,i.$evalAsync(function(){var r=s.absUrl(),u=i.$broadcast("$locationChangeStart",r,t,s.$$state,n).defaultPrevented;s.absUrl()===r&&(u?(s.$$parse(t),s.$$state=n):(f&&w(r,o,n===s.$$state?null:s.$$state),b(t,n)))}));s.$$replace=!1}),s}]}function sp(){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&&n.stack.indexOf(n.message)===-1?"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,e=!1;try{e=!!u.apply}catch(s){}return e?function(){var n=[];return r(arguments,function(t){n.push(f(t))}),u.apply(t,n)}:function(n,t){u(n,t==null?"":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 ri(n,t){if(n==="__defineGetter__"||n==="__defineSetter__"||n==="__lookupGetter__"||n==="__lookupSetter__"||n==="__proto__")throw ut("isecfld","Attempting to access a disallowed field in Angular expressions! Expression: {0}",t);return n}function yt(n,t){if(n)if(n.constructor===n)throw ut("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",t);else if(n.window===n)throw ut("isecwindow","Referencing the Window in Angular expressions is disallowed! Expression: {0}",t);else if(n.children&&(n.nodeName||n.prop&&n.attr&&n.find))throw ut("isecdom","Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}",t);else if(n===Object)throw ut("isecobj","Referencing Object in Angular expressions is disallowed! Expression: {0}",t);return n}function ch(n,t){if(n)if(n.constructor===n)throw ut("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",t);else if(n===hp||n===cp||n===lp)throw ut("isecff","Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}",t);}function ap(n,t){return typeof n!="undefined"?n:t}function ah(n,t){return typeof n=="undefined"?t:typeof t=="undefined"?n:n+t}function vh(n,t){var i=n(t);return!i.$stateful}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?vh(t,n.callee.name):!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&&vh(t,n.callee.name)?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 yh(n){if(n.length==1){var r=n[0].expression,t=r.toWatch;return t.length!==1?t:t[0]!==r?t:i}}function ph(n){return n.type===u.Identifier||n.type===u.MemberExpression}function wh(n){if(n.body.length===1&&ph(n.body[0].expression))return{type:u.AssignmentExpression,left:n.body[0].expression,right:{type:u.NGValueParameter},operator:"="}}function bh(n){return n.body.length===0||n.body.length===1&&(n.body[0].expression.type===u.Literal||n.body[0].expression.type===u.ArrayExpression||n.body[0].expression.type===u.ObjectExpression)}function kh(n){return n.constant}function dh(n,t){this.astBuilder=n;this.$filter=t}function gh(n,t){this.astBuilder=n;this.$filter=t}function rf(n,t,i,r){var e,u,o,f;for(yt(n,r),e=t.split("."),o=0;e.length>1;o++)u=ri(e.shift(),r),f=yt(n[u],r),f||(f={},n[u]=f),n=f;return u=ri(e.shift(),r),yt(n[u],r),n[u]=i,i}function uf(n){return n=="constructor"}function be(n){return c(n.valueOf)?n.valueOf():nc.call(n)}function pp(){var n=rt(),t=rt();this.$get=["$filter","$sniffer",function(u,f){function s(n,t){return n==null||t==null?n===t:typeof n=="object"&&(n=be(n),typeof n=="object")?!1:n===t||n!==n&&t!==t}function h(n,t,r,u,f){var e=u.inputs,h,a,c,l,o,v;if(e.length===1)return a=s,e=e[0],n.$watch(function(n){var t=e(n);return s(t,a)||(h=u(n,i,i,[t]),a=t&&be(t)),h},t,r,f);for(c=[],l=[],o=0,v=e.length;o<v;o++)c[o]=s,l[o]=null;return n.$watch(function(n){for(var r,f=!1,t=0,o=e.length;t<o;t++)r=e[t](n),(f||(f=!s(r,c[t])))&&(l[t]=r,c[t]=r&&be(r));return f&&(h=u(n,i,i,l)),h},t,r,f)}function l(n,t,i,r){var u,f;return u=n.$watch(function(n){return r(n)},function(n,i,r){f=n;c(t)&&t.apply(this,arguments);e(n)&&r.$$postDigest(function(){e(f)&&u()})},i)}function a(n,t,i,u){function s(n){var t=!0;return r(n,function(n){e(n)||(t=!1)}),t}var f,o;return f=n.$watch(function(n){return u(n)},function(n,i,r){o=n;c(t)&&t.call(this,n,i,r);s(n)&&r.$$postDigest(function(){s(o)&&f()})},i)}function w(n,t,i,r){var u;return u=n.$watch(function(n){return r(n)},function(){c(t)&&t.apply(this,arguments);u()},i)}function v(n,t){if(!t)return n;var r=n.$$watchDelegate,u=r!==a&&r!==l,i=u?function(i,r,u,f){var e=n(i,r,u,f);return t(e,i,r)}:function(i,r,u,f){var o=n(i,r,u,f),s=t(o,i,r);return e(o)?s:o};return n.$$watchDelegate&&n.$$watchDelegate!==h?i.$$watchDelegate=n.$$watchDelegate:t.$stateful||(i.$$watchDelegate=h,i.inputs=n.inputs?n.inputs:[n]),i}var y={csp:f.csp,expensiveChecks:!1},p={csp:f.csp,expensiveChecks:!0};return function(i,r,f){var e,b,s,c;switch(typeof i){case"string":if(i=i.trim(),s=i,c=f?t:n,e=c[s],!e){i.charAt(0)===":"&&i.charAt(1)===":"&&(b=!0,i=i.substring(2));var k=f?p:y,d=new nf(k),g=new tf(d,u,k);e=g.parse(i);e.constant?e.$$watchDelegate=w:b?e.$$watchDelegate=e.literal?a:l:e.inputs&&(e.$$watchDelegate=h);c[s]=e}return v(e,r);case"function":return v(i,r);default:return o}}}]}function wp(){this.$get=["$rootScope","$exceptionHandler",function(n,t){return tc(function(t){n.$evalAsync(t)},t)}]}function bp(){this.$get=["$browser","$exceptionHandler",function(n,t){return tc(function(t){n.defer(t)},t)}]}function tc(n,t){function k(n,t,i){function u(t){return function(i){r||(r=!0,t.call(n,i))}}var r=!1;return[u(t),u(i)]}function p(){this.$$state={status:0}}function o(n,t){return function(i){t.call(n,i)}}function g(n){var e,r,f,u,o;for(f=n.pending,n.processScheduled=!1,n.pending=i,u=0,o=f.length;u<o;++u){r=f[u][0];e=f[u][n.status];try{c(e)?r.resolve(e(n.value)):n.status===1?r.resolve(n.value):r.reject(n.value)}catch(s){r.reject(s);t(s)}}}function s(t){!t.processScheduled&&t.pending&&(t.processScheduled=!0,n(function(){g(t)}))}function u(){this.promise=new p;this.resolve=o(this,this.resolve);this.reject=o(this,this.reject);this.notify=o(this,this.notify)}function it(n){var i=new u,f=0,t=a(n)?[]:{};return r(n,function(n,r){f++;l(n).then(function(n){t.hasOwnProperty(r)||(t[r]=n,--f||i.resolve(t))},function(n){t.hasOwnProperty(r)||i.reject(n)})}),f===0&&i.resolve(t),i.promise}var v=y("$q",TypeError),d=function(){return new u},f;p.prototype={then:function(n,t,i){var r=new u;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,n,t,i]),this.$$state.status>0&&s(this.$$state),r.promise},"catch":function(n){return this.then(null,n)},"finally":function(n,t){return this.then(function(t){return w(t,!0,n)},function(t){return w(t,!1,n)},t)}};u.prototype={resolve:function(n){this.promise.$$state.status||(n===this.promise?this.$$reject(v("qcycle","Expected promise to be resolved with value other than itself '{0}'",n)):this.$$resolve(n))},$$resolve:function(n){var i,r=k(this,this.$$resolve,this.$$reject);try{(h(n)||c(n))&&(i=n&&n.then);c(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,s(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;s(this.promise.$$state)},notify:function(i){var r=this.promise.$$state.pending;this.promise.$$state.status<=0&&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(c(u)?u(i):i)}catch(o){t(o)}}})}};var nt=function(n){var t=new u;return t.reject(n),t.promise},e=function(n,t){var i=new u;return t?i.resolve(n):i.reject(n),i.promise},w=function(n,t,i){var r=null;try{c(i)&&(r=i())}catch(u){return e(u,!1)}return ou(r)?r.then(function(){return e(n,t)},function(n){return e(n,!1)}):e(n,t)},l=function(n,t,i,r){var f=new u;return f.resolve(n),f.promise.then(t,i,r)},tt=l;return f=function b(n){function i(n){t.resolve(n)}function r(n){t.reject(n)}if(!c(n))throw v("norslvr","Expected resolverFn, got '{0}'",n);if(!(this instanceof b))return new b(n);var t=new u;return n(i,r),t.promise},f.defer=d,f.reject=nt,f.when=l,f.resolve=tt,f.all=it,f}function kp(){this.$get=["$window","$timeout",function(n,t){function c(){for(var t,n=0;n<i.length;n++)t=i[n],t&&(i[n]=null,t());u=i.length=0}function o(n){var t=i.length;return u++,i.push(n),t===0&&(r=h(c)),function(){t>=0&&(i[t]=null,t=null,--u==0&&r&&(r(),r=null,i.length=0))}}var f=n.requestAnimationFrame||n.webkitRequestAnimationFrame,s=n.cancelAnimationFrame||n.webkitCancelAnimationFrame||n.webkitCancelRequestAnimationFrame,e=!!f,h=e?function(n){var t=f(n);return function(){s(t)}}:function(n){var i=t(n,16.66,!1);return function(){t.cancel(i)}},r,u,i;return o.supported=e,u=0,i=[],o}]}function dp(){function f(n){function t(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=eu();this.$$ChildScope=null}return t.prototype=n,t}var i=10,u=y("$rootScope"),n=null,t=null;this.digestTtl=function(n){return arguments.length&&(i=n),i};this.$get=["$injector","$exceptionHandler","$parse","$browser",function(e,l,a,v){function ut(n){n.currentScope.$$destroyed=!0}function w(){this.$id=eu();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 nt(n){if(y.$$phase)throw u("inprog","{0} already in progress",y.$$phase);y.$$phase=n}function d(){y.$$phase=null}function g(n,t){do n.$$watchersCount+=t;while(n=n.$parent)}function tt(n,t,i){do n.$$listenerCount[i]-=t,n.$$listenerCount[i]===0&&delete n.$$listenerCount[i];while(n=n.$parent)}function it(){}function rt(){while(k.length)try{k.shift()()}catch(n){l(n)}t=null}function ft(){t===null&&(t=v.defer(function(){y.$apply(rt)}))}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=f(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",ut),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,h={fn:i,last:it,get:f,exp:u||t,eq:!!r};return n=null,c(i)||(h.fn=o),e||(e=s.$$watchers=[]),e.unshift(h),g(this,1),function(){hr(e,h)>=0&&g(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=new Array(n.length),i=new Array(n.length),e=[],u=this,o=!1,h=!0,s;return n.length?n.length===1?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(){while(e.length)e.shift()()}):(s=!0,u.$evalAsync(function(){s&&t(i,i,u)}),function(){s=!1})},$watchCollection:function(n,t){function y(n){var a,e,y,t,o,v;if(i=n,!s(i)){if(h(i))if(ei(i))for(r!==c&&(r=c,f=r.length=0,u++),a=i.length,f!==a&&(u++,r.length=f=a),v=0;v<a;v++)o=r[v],t=i[v],y=o!==o&&t!==t,y||o===t||(u++,r[v]=t);else{r!==l&&(r=l={},f=0,u++);a=0;for(e in i)i.hasOwnProperty(e)&&(a++,t=i[e],o=r[e],e in r?(y=o!==o&&t!==t,y||o===t||(u++,r[e]=t)):(f++,r[e]=t,u++));if(f>a){u++;for(e in r)i.hasOwnProperty(e)||(f--,delete r[e])}}else r!==i&&(r=i,u++);return u}}function b(){var n,r;if(v?(v=!1,t(i,i,o)):t(i,e,o),p)if(h(i))if(ei(i))for(e=new Array(i.length),n=0;n<i.length;n++)e[n]=i[n];else{e={};for(r in i)tr.call(i,r)&&(e[r]=i[r])}else e=i}y.$stateful=!0;var o=this,i,r,e,p=t.length>1,u=0,w=a(n,y),c=[],l={},v=!0,f=0;return this.$watch(w,b)},$digest:function(){var r,e,o,k,g,s,tt=i,ut,f,ft=this,h=[],a,w;nt("$digest");v.$$checkUrlChange();this===y&&t!==null&&(v.defer.cancel(t),rt());n=null;do{for(s=!1,f=ft;p.length;){try{w=p.shift();w.scope.$eval(w.expression,w.locals)}catch(et){l(et)}n=null}n:do{if(k=f.$$watchers)for(g=k.length;g--;)try{if(r=k[g],r)if((e=r.get(f))===(o=r.last)||(r.eq?st(e,o):typeof e=="number"&&typeof o=="number"&&isNaN(e)&&isNaN(o))){if(r===n){s=!1;break n}}else s=!0,n=r,r.last=r.eq?ct(e,null):e,r.fn(e,o===it?e:o,f),tt<5&&(a=4-tt,h[a]||(h[a]=[]),h[a].push({msg:c(r.exp)?"fn: "+(r.exp.name||r.exp.toString()):r.exp,newVal:e,oldVal:o}))}catch(et){l(et)}if(!(ut=f.$$watchersCount&&f.$$childHead||f!==ft&&f.$$nextSibling))while(f!==ft&&!(ut=f.$$nextSibling))f=f.$parent}while(f=ut);if((s||p.length)&&!tt--){d();throw u("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",i,h);}}while(s||p.length);for(d();b.length;)try{b.shift()()}catch(et){l(et)}},$destroy:function(){var n,t;if(!this.$$destroyed){n=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===y&&v.$$applicationDestroyed();g(this,-this.$$watchersCount);for(t in this.$$listenerCount)tt(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){b.push(n)},$apply:function(n){try{return nt("$apply"),this.$eval(n)}catch(t){l(t)}finally{d();try{y.$digest()}catch(t){l(t);throw t;}}},$applyAsync:function(n){function i(){t.$eval(n)}var t=this;n&&k.push(i);ft()},$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);i!==-1&&(r[i]=null,tt(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=lr([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]){u.splice(i,1);i--;f--;continue}try{u[i].apply(null,s)}catch(h){l(h)}}if(e)return t.currentScope=null,t;r=r.$parent}while(r);return t.currentScope=null,t},$broadcast:function(n){var r=this,t=r,e=r,u={name:n,targetScope:r,preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},s,f,i,o;if(!r.$$listenerCount[n])return u;for(s=lr([u],arguments,1);t=e;){for(u.currentScope=t,f=t.$$listeners[n]||[],i=0,o=f.length;i<o;i++){if(!f[i]){f.splice(i,1);i--;o--;continue}try{f[i].apply(null,s)}catch(h){l(h)}}if(!(e=t.$$listenerCount[n]&&t.$$childHead||t!==r&&t.$$nextSibling))while(t!==r&&!(e=t.$$nextSibling))t=t.$parent}return u.currentScope=null,u}};var y=new w,p=y.$$asyncQueue=[],b=y.$$postDigestQueue=[],k=y.$$applyAsyncQueue=[];return y}]}function gp(){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=ui(i).href,u!==""&&!u.match(f))?"unsafe:"+u:i}}}function nw(n){if(n==="self")return n;if(l(n)){if(n.indexOf("***")>-1)throw ni("iwcard","Illegal sequence *** in string matcher.  String: {0}",n);return n=af(n).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+n+"$")}if(fr(n))return new RegExp("^"+n.source+"$");throw ni("imatcher",'Matchers may only be "self", string patterns or RegExp objects');}function ic(n){var t=[];return e(n)&&r(n,function(n){t.push(nw(n))}),t}function tw(){this.SCE_CONTEXTS=ht;var n=["self"],t=[];this.resourceUrlWhitelist=function(t){return arguments.length&&(n=ic(t)),n};this.resourceUrlBlacklist=function(n){return arguments.length&&(t=ic(n)),t};this.$get=["$injector",function(r){function s(n,t){return n==="self"?rc(t):!!n.exec(t.href)}function h(i){for(var e=ui(i.toString()),f=!1,r=0,u=n.length;r<u;r++)if(s(n[r],e)){f=!0;break}if(f)for(r=0,u=t.length;r<u;r++)if(s(t[r],e)){f=!1;break}return f}function f(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}function c(n,t){var r=u.hasOwnProperty(n)?u[n]:null;if(!r)throw ni("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",n,t);if(t===null||t===i||t==="")return t;if(typeof t!="string")throw ni("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",n);return new r(t)}function l(n){return n instanceof e?n.$$unwrapTrustedValue():n}function a(n,t){if(t===null||t===i||t==="")return t;var r=u.hasOwnProperty(n)?u[n]:null;if(r&&t instanceof r)return t.$$unwrapTrustedValue();if(n===ht.RESOURCE_URL){if(h(t))return t;throw ni("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy.  URL: {0}",t.toString());}else if(n===ht.HTML)return o(t);throw ni("unsafe","Attempting to use an unsafe value in a safe context.");}var o=function(){throw ni("unsafe","Attempting to use an unsafe value in a safe context.");},e,u;return r.has("$sanitize")&&(o=r.get("$sanitize")),e=f(),u={},u[ht.HTML]=f(e),u[ht.CSS]=f(e),u[ht.URL]=f(e),u[ht.JS]=f(e),u[ht.RESOURCE_URL]=f(u[ht.URL]),{trustAs:c,getTrusted:a,valueOf:l}}]}function iw(){var n=!0;this.enabled=function(t){return arguments.length&&(n=!!t),n};this.$get=["$parse","$sceDelegate",function(t,i){var u;if(n&&pi<8)throw ni("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode.  You can fix this by adding the text <!doctype html> to the top of your HTML document.  See http://docs.angularjs.org/api/ng.$sce for more information.");u=lt(ht);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=ur);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(ht,function(n,t){var i=v(t);u[wr("parse_as_"+i)]=function(t){return f(n,t)};u[wr("get_trusted_"+i)]=function(t){return e(n,t)};u[wr("trust_as_"+i)]=function(t){return o(n,t)}}),u}]}function rw(){this.$get=["$window","$document",function(n,t){var e={},o=it((/android (\d+)/.exec(v((n.navigator||{}).userAgent))||[])[1]),y=/Boxee/i.test((n.navigator||{}).userAgent),h=t[0]||{},i,r=h.body&&h.body.style,u=!1,f=!1,c,a;if(r){for(a in r)if(c=/^(Moz|webkit|ms)(?=[A-Z])/.exec(a)){i=c[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);f=!!("animation"in r||i+"Animation"in r);!o||u&&f||(u=l(r.webkitTransition),f=l(r.webkitAnimation))}return{history:!!(n.history&&n.history.pushState&&!(o<4)&&!y),hasEvent:function(n){if(n==="input"&&pi<=11)return!1;if(s(e[n])){var t=h.createElement("div");e[n]="on"+n in t}return e[n]},csp:wi(),vendorPrefix:i,transitions:u,animations:f,android:o}}]}function uw(){this.$get=["$templateCache","$http","$q","$sce",function(n,t,i,r){function u(f,e){function h(n){if(!e)throw nt("tpload","Failed to load template: {0} (HTTP status: {1} {2})",f,n.status,n.statusText);return i.reject(n)}var o,s;return u.totalPendingRequests++,l(f)&&n.get(f)||(f=r.getTrustedResourceUrl(f)),o=t.defaults&&t.defaults.transformResponse,a(o)?o=o.filter(function(n){return n!==le}):o===le&&(o=null),s={cache:n,transformResponse:o},t.get(f,s)["finally"](function(){u.totalPendingRequests--}).then(function(t){return n.put(f,t.data),t.data},h)}return u.totalPendingRequests=0,u}]}function fw(){this.$get=["$rootScope","$browser","$location",function(n,t,i){var u={};return u.findBindings=function(n,t,i){var f=n.getElementsByClassName("ng-binding"),u=[];return r(f,function(n){var f=ft.element(n).data("$binding");f&&r(f,function(r){if(i){var f=new RegExp("(^|\\s)"+af(t)+"(\\s|\\||$)");f.test(r)&&u.push(n)}else r.indexOf(t)!=-1&&u.push(n)})}),u},u.findModels=function(n,t,i){for(var u=["ng-","data-ng-","ng\\:"],r=0;r<u.length;++r){var e=i?"=":"*=",o="["+u[r]+"model"+e+'"'+t+'"]',f=n.querySelectorAll(o);if(f.length)return f}},u.getLocation=function(){return i.url()},u.setLocation=function(t){t!==i.url()&&(i.url(t),n.$digest())},u.whenStable=function(n){t.notifyWhenNoOutstandingRequests(n)},u}]}function ew(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(n,t,i,r,u){function s(s,h,l){c(s)||(l=h,h=s,s=o);var w=ar(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()},h),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 ui(n){var t=n;return pi&&(g.setAttribute("href",t),t=g.href),g.setAttribute("href",t),{href:g.href,protocol:g.protocol?g.protocol.replace(/:$/,""):"",host:g.host,search:g.search?g.search.replace(/^\?/,""):"",hash:g.hash?g.hash.replace(/^#/,""):"",hostname:g.hostname,port:g.port,pathname:g.pathname.charAt(0)==="/"?g.pathname:"/"+g.pathname}}function rc(n){var t=l(n)?ui(n):n;return t.protocol===ke.protocol&&t.host===ke.host}function ow(){this.$get=pt(n)}function uc(n){function u(n){try{return decodeURIComponent(n)}catch(t){return n}}var f=n[0]||{},t={},r="";return function(){var s,n,e,o,h,c=f.cookie||"";if(c!==r)for(r=c,s=r.split("; "),t={},e=0;e<s.length;e++)n=s[e],o=n.indexOf("="),o>0&&(h=u(n.substring(0,o)),t[h]===i&&(t[h]=u(n.substring(o+1))));return t}}function sw(){this.$get=uc}function fc(n){function t(u,f){if(h(u)){var e={};return r(u,function(n,i){e[i]=t(i,n)}),e}return n.factory(u+i,f)}var i="Filter";this.register=t;this.$get=["$injector",function(n){return function(t){return n.get(t+i)}}];t("currency",ec);t("date",lc);t("filter",hw);t("json",kw);t("limitTo",dw);t("lowercase",ac);t("number",oc);t("orderBy",yc);t("uppercase",vc)}function hw(){return function(n,t,i){if(!ei(n)){if(n==null)return n;throw y("filter")("notarray","Expected array but received: {0}",n);}var f=de(t),r,u;switch(f){case"function":r=t;break;case"boolean":case"null":case"number":case"string":u=!0;case"object":r=cw(t,i,u);break;default:return n}return Array.prototype.filter.call(n,r)}}function cw(n,t,i){var r=h(n)&&"$"in n;return t===!0?t=st:c(t)||(t=function(n,t){return s(n)?!1:n===null||t===null?n===t:h(t)||h(n)&&!co(n)?!1:(n=v(""+n),t=v(""+t),n.indexOf(t)!==-1)}),function(u){return r&&!h(u)?vi(u,n.$,t,!1):vi(u,n,t,i)}}function vi(n,t,i,r,u){var v=de(n),h=de(t),f,e,o,l;if(h==="string"&&t.charAt(0)==="!")return!vi(n,t.substring(1),i,r);if(a(n))return n.some(function(n){return vi(n,t,i,r)});switch(v){case"object":if(r){for(f in n)if(f.charAt(0)!=="$"&&vi(n[f],t,i,!0))return!0;return u?!1:vi(n,t,i,!1)}if(h==="object"){for(f in t)if((e=t[f],!c(e)&&!s(e))&&(o=f==="$",l=o?n:n[f],!vi(l,e,i,o,o)))return!1;return!0}return i(n,t);case"function":return!1;default:return i(n,t)}}function de(n){return n===null?"null":typeof n}function ec(n){var t=n.NUMBER_FORMATS;return function(n,i,r){return s(i)&&(i=t.CURRENCY_SYM),s(r)&&(r=t.PATTERNS[1].maxFrac),n==null?n:sc(n,t.PATTERNS[1],t.GROUP_SEP,t.DECIMAL_SEP,r).replace(/\u00A4/g,i)}}function oc(n){var t=n.NUMBER_FORMATS;return function(n,i){return n==null?n:sc(n,t.PATTERNS[0],t.GROUP_SEP,t.DECIMAL_SEP,i)}}function sc(n,t,i,r,u){var a,l,y,d,o,c;if(h(n)||(a=n<0,n=Math.abs(n),l=n===Infinity,!l&&!isFinite(n)))return"";var v=n+"",e="",b=!1,k=[];if(l&&(e="∞"),l||v.indexOf("e")===-1||(y=v.match(/([\d\.]+)e(-?)(\d+)/),y&&y[2]=="-"&&y[3]>u+1?n=0:(e=v,b=!0)),l||b)u>0&&n<1&&(e=n.toFixed(u),n=parseFloat(e));else{d=(v.split(ge)[1]||"").length;s(u)&&(u=Math.min(Math.max(t.minFrac,d),t.maxFrac));n=+(Math.round(+(n.toString()+"e"+u)).toString()+"e"+-u);o=(""+n).split(ge);c=o[0];o=o[1]||"";var f,p=0,w=t.lgSize,g=t.gSize;if(c.length>=w+g)for(p=c.length-w,f=0;f<p;f++)(p-f)%g==0&&f!==0&&(e+=i),e+=c.charAt(f);for(f=p;f<c.length;f++)(c.length-f)%w==0&&f!==0&&(e+=i),e+=c.charAt(f);while(o.length<u)o+="0";u&&u!=="0"&&(e+=r+o.substr(0,u))}return n===0&&(a=!1),k.push(a?t.negPre:t.posPre,e,a?t.negSuf:t.posSuf),k.join("")}function ff(n,t,i){var r="";for(n<0&&(r="-",n=-n),n=""+n;n.length<t;)n="0"+n;return i&&(n=n.substr(n.length-t)),r+n}function tt(n,t,i,r){return i=i||0,function(u){var f=u["get"+n]();return(i>0||f>-i)&&(f+=i),f===0&&i==-12&&(f=12),ff(f,t,r)}}function ef(n,t){return function(i,r){var u=i["get"+n](),f=ir(t?"SHORT"+n:n);return r[f][u]}}function lw(n,t,i){var r=-1*i,u=r>=0?"+":"";return u+(ff(Math[r>0?"floor":"ceil"](r/60),2)+ff(Math.abs(r%60),2))}function hc(n){var t=new Date(n,0,1).getDay();return new Date(n,0,(t<=4?5:12)-t)}function aw(n){return new Date(n.getFullYear(),n.getMonth(),n.getDate()+(4-n.getDay()))}function cc(n){return function(t){var i=hc(t.getFullYear()),r=aw(t),u=+r-+i,f=1+Math.round(u/6048e5);return ff(f,n)}}function vw(n,t){return n.getHours()<12?t.AMPMS[0]:t.AMPMS[1]}function no(n,t){return n.getFullYear()<=0?t.ERAS[0]:t.ERAS[1]}function yw(n,t){return n.getFullYear()<=0?t.ERANAMES[0]:t.ERANAMES[1]}function lc(n){function i(n){var i;if(i=n.match(t)){var r=new Date(0),u=0,f=0,e=i[8]?r.setUTCFullYear:r.setFullYear,o=i[8]?r.setUTCHours:r.setHours;i[9]&&(u=it(i[9]+i[10]),f=it(i[9]+i[11]));e.call(r,it(i[1]),it(i[2])-1,it(i[3]));var s=it(i[4]||0)-u,h=it(i[5]||0)-f,c=it(i[6]||0),l=Math.round(parseFloat("0."+(i[7]||0))*1e3);return o.call(r,s,h,c,l),r}return n}var t=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(t,u,f){var c="",e=[],o,s,h;if(u=u||"mediumDate",u=n.DATETIME_FORMATS[u]||u,l(t)&&(t=bw.test(t)?it(t):i(t)),k(t)&&(t=new Date(t)),!et(t)||!isFinite(t.getTime()))return t;while(u)s=ww.exec(u),s?(e=lr(e,s,1),u=e.pop()):(e.push(u),u=null);return h=t.getTimezoneOffset(),f&&(h=ko(f,t.getTimezoneOffset()),t=vf(t,f,!0)),r(e,function(i){o=pw[i];c+=o?o(t,n.DATETIME_FORMATS,h):i.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),c}}function kw(){return function(n,t){return s(t)&&(t=2),vr(n,t)}}function dw(){return function(n,t,i){return(t=Math.abs(Number(t))===Infinity?Number(t):it(t),isNaN(t))?n:(k(n)&&(n=n.toString()),!a(n)&&!l(n))?n:(i=!i||isNaN(i)?0:it(i),i=i<0&&i>=-n.length?n.length+i:i,t>=0?n.slice(i,i+t):i===0?n.slice(t,n.length):n.slice(Math.max(0,i+t),i))}}function yc(n){function i(t,i){return i=i?-1:1,t.map(function(t){var u=1,r=ur,f;return c(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}}function r(n,i){return typeof n.valueOf=="function"&&(n=n.valueOf(),t(n))?n:co(n)&&(n=n.toString(),t(n))?n:i}function u(n,t){var i=typeof n;return n===null?(i="string",n="null"):i==="string"?n=n.toLowerCase():i==="object"&&(n=r(n,t)),{value:n,type:i}}function f(n,t){var i=0;return n.type===t.type?n.value!==t.value&&(i=n.value<t.value?-1:1):i=n.type<t.type?-1:1,i}return function(n,t,r){function s(n,t){return{value:n,predicateValues:e.map(function(i){return u(i.get(n),t)})}}function h(n,t){for(var r=0,i=0,u=e.length;i<u;++i)if(r=f(n.predicateValues[i],t.predicateValues[i])*e[i].descending,r)break;return r}if(!ei(n))return n;a(t)||(t=[t]);t.length===0&&(t=["+"]);var e=i(t,r),o=Array.prototype.map.call(n,s);return o.sort(h),o.map(function(n){return n.value})}}function yi(n){return c(n)&&(n={link:n}),n.restrict=n.restrict||"AC",pt(n)}function gw(n,t){n.$name=t}function wc(n,t,u,f,e){var o=this,s=[],h=o.$$parentForm=n.parent().controller("form")||tu;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;h.$addControl(o);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)};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)};hl({ctrl:this,$element:n,set:function(n,t,i){var r=n[t],u;r?(u=r.indexOf(i),u===-1&&r.push(i)):n[t]=[i]},unset:function(n,t,i){var r=n[t];r&&(hr(r,i),r.length===0&&delete n[t])},parentForm:h,$animate:f});o.$setDirty=function(){f.removeClass(n,nr);f.addClass(n,sf);o.$dirty=!0;o.$pristine=!1;h.$setDirty()};o.$setPristine=function(){f.setClass(n,nr,sf+" "+to);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,to);o.$submitted=!0;h.$setSubmitted()}}function ro(n){n.$formatters.push(function(t){return n.$isEmpty(t)?t:t.toString()})}function eb(n,t,i,r,u,f){iu(n,t,i,r,u,f);ro(r)}function iu(n,t,i,r,u,f){var c=v(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(),o=n&&n.type;c==="password"||i.ngTrim&&i.ngTrim==="false"||(u=p(u));(r.$viewValue!==u||u===""&&r.$$hasNativeValidators)&&r.$setViewValue(u,o)}},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;t===91||15<t&&t<19||37<=t&&t<=40||h(n,this,this.value)});if(u.hasEvent("paste"))t.on("paste cut",h)}t.on("change",o);r.$render=function(){t.val(r.$isEmpty(r.$viewValue)?"":r.$viewValue)}}function ob(n,t){var i;if(et(n))return n;if(l(n)&&(io.lastIndex=0,i=io.exec(n),i)){var r=+i[1],s=+i[2],u=0,f=0,e=0,o=0,h=hc(r),c=(s-1)*7;return t&&(u=t.getHours(),f=t.getMinutes(),e=t.getSeconds(),o=t.getMilliseconds()),new Date(r,0,h.getDate()+c,u,f,e,o)}return NaN}function of(n,t){return function(i,u){var e,f;if(et(i))return i;if(l(i)){if(i.charAt(0)=='"'&&i.charAt(i.length-1)=='"'&&(i=i.substring(1,i.length-1)),ib.test(i))return new Date(i);if(n.lastIndex=0,e=n.exec(i),e)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,f.sss*1e3||0)}return NaN}}function ru(n,t,r,u){return function(f,o,h,c,l,a,v){function k(n){return n&&!(n.getTime&&n.getTime()!==n.getTime())}function d(n){return e(n)?et(n)?n:r(n):i}var y,p,w,b;il(f,o,h,c);iu(f,o,h,c,l,a);y=c&&c.$options&&c.$options.timezone;c.$$parserName=n;c.$parsers.push(function(n){if(c.$isEmpty(n))return null;if(t.test(n)){var u=r(n,p);return y&&(u=vf(u,y)),u}return i});c.$formatters.push(function(n){if(n&&!et(n))throw hf("datefmt","Expected `{0}` to be a date",n);return k(n)?(p=n,p&&y&&(p=vf(p,y,!0)),v("date")(n,u,y)):(p=null,"")});(e(h.min)||h.ngMin)&&(c.$validators.min=function(n){return!k(n)||s(w)||r(n)>=w},h.$observe("min",function(n){w=d(n);c.$validate()}));(e(h.max)||h.ngMax)&&(c.$validators.max=function(n){return!k(n)||s(b)||r(n)<=b},h.$observe("max",function(n){b=d(n);c.$validate()}))}}function il(n,t,r,u){var f=t[0],e=u.$$hasNativeValidators=h(f.validity);e&&u.$parsers.push(function(n){var r=t.prop(kl)||{};return r.badInput&&!r.typeMismatch?i:n})}function sb(n,t,r,u,f,o){var h,c;il(n,t,r,u);iu(n,t,r,u,f,o);u.$$parserName="number";u.$parsers.push(function(n){return u.$isEmpty(n)?null:fb.test(n)?parseFloat(n):i});u.$formatters.push(function(n){if(!u.$isEmpty(n)){if(!k(n))throw hf("numfmt","Expected `{0}` to be a number",n);n=n.toString()}return n});(e(r.min)||r.ngMin)&&(u.$validators.min=function(n){return u.$isEmpty(n)||s(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)||s(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()}))}function hb(n,t,i,r,u,f){iu(n,t,i,r,u,f);ro(r);r.$$parserName="url";r.$validators.url=function(n,t){var i=n||t;return r.$isEmpty(i)||rb.test(i)}}function cb(n,t,i,r,u,f){iu(n,t,i,r,u,f);ro(r);r.$$parserName="email";r.$validators.email=function(n,t){var i=n||t;return r.$isEmpty(i)||ub.test(i)}}function lb(n,t,i,r){s(i.name)&&t.attr("name",eu());var u=function(n){t[0].checked&&r.$setViewValue(i.value,n&&n.type)};t.on("click",u);r.$render=function(){var n=i.value;t[0].checked=n==r.$viewValue};i.$observe("value",r.$render)}function rl(n,t,i,r,u){var f;if(e(r)){if(f=n(r),!f.constant)throw y("ngModel")("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",i,r);return f(t)}return u}function ab(n,t,i,r,u,f,e,o){var s=rl(o,n,"ngTrueValue",i.ngTrueValue,!0),h=rl(o,n,"ngFalseValue",i.ngFalseValue,!1),c=function(n){r.$setViewValue(t[0].checked,n&&n.type)};t.on("click",c);r.$render=function(){t[0].checked=r.$viewValue};r.$isEmpty=function(n){return n===!1};r.$formatters.push(function(n){return st(n,s)});r.$parsers.push(function(n){return n?s:h})}function uo(n,t){return n="ngClass"+n,["$animate",function(i){function f(n,t){var f=[],i,u,r;n:for(i=0;i<n.length;i++){for(u=n[i],r=0;r<t.length;r++)if(u==t[r])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(" "):h(n)?(r(n,function(n,i){n&&(t=t.concat(i.split(" ")))}),t):n}return{restrict:"AC",link:function(e,o,s){function l(n){var t=c(n,1);s.$addClass(t)}function v(n){var t=c(n,-1);s.$removeClass(t)}function c(n,t){var i=o.data("$classCounts")||rt(),u=[];return r(n,function(n){(t>0||i[n])&&(i[n]=(i[n]||0)+t,i[n]===+(t>0)&&u.push(n))}),o.data("$classCounts",i),u.join(" ")}function y(n,t){var r=f(t,n),u=f(n,t);r=c(r,1);u=c(u,-1);r&&r.length&&i.addClass(o,r);u&&u.length&&i.removeClass(o,u)}function a(n){var i,r;(t===!0||e.$index%2===t)&&(i=u(n||[]),h?st(n,h)||(r=u(h),y(r,i)):l(i));h=lt(n)}var h;e.$watch(s[n],a,!0);s.$observe("class",function(){a(e.$eval(s[n]))});n!=="ngClass"&&e.$watch("$index",function(i,r){var o=i&1,f;o!==(r&1)&&(f=u(e.$eval(s[n])),o===t?l(f):v(f))})}}}]}function hl(n){function l(n,r,e){r===i?a("$pending",n,e):v("$pending",n,e);sr(r)?r?(u(t.$error,n,e),o(t.$$success,n,e)):(o(t.$error,n,e),u(t.$$success,n,e)):(u(t.$error,n,e),u(t.$$success,n,e));t.$pending?(f(sl,!0),t.$valid=t.$invalid=i,s("",null)):(f(sl,!1),t.$valid=cl(t.$error),t.$invalid=!t.$valid,s("",t.$valid));var h;h=t.$pending&&t.$pending[n]?i:t.$error[n]?!1:t.$$success[n]?!0:null;s(n,h);c.$setValidity(n,h,t)}function a(n,i,r){t[n]||(t[n]={});o(t[n],i,r)}function v(n,r,f){t[n]&&u(t[n],r,f);cl(t[n])&&(t[n]=i)}function f(n,t){t&&!r[n]?(h.addClass(e,n),r[n]=!0):!t&&r[n]&&(h.removeClass(e,n),r[n]=!1)}function s(n,t){n=n?"-"+rs(n,"-"):"";f(uu+n,t===!0);f(el+n,t===!1)}var t=n.ctrl,e=n.$element,r={},o=n.set,u=n.unset,c=n.parentForm,h=n.$animate;r[el]=!(r[uu]=e.hasClass(uu));t.$setValidity=l}function cl(n){if(n)for(var t in n)if(n.hasOwnProperty(t))return!1;return!0}var bl=/^\/(.+)\/([a-z]*)$/,kl="validity",v=function(n){return l(n)?n.toLowerCase():n},tr=Object.prototype.hasOwnProperty,ir=function(n){return l(n)?n.toUpperCase():n},dl=function(n){return l(n)?n.replace(/[A-Z]/g,function(n){return String.fromCharCode(n.charCodeAt(0)|32)}):n},gl=function(n){return l(n)?n.replace(/[a-z]/g,function(n){return String.fromCharCode(n.charCodeAt(0)&-33)}):n},a,ao,p,af,wi,cr,oi,is,pf,wf,os,si,br,fe,ee,oe,nh,se,ii,sh,ut,gr,lh,nf,u,tf,vp,yp,nc,ni,ht,nt,g,ke,ge,ac,vc,pc,nu,tu,to;"i"!=="I".toLowerCase()&&(v=dl,ir=gl);var pi,f,ot,fu=[].slice,na=[].splice,ta=[].push,ti=Object.prototype.toString,eo=Object.getPrototypeOf,fi=y("ng"),ft=n.angular||(n.angular={}),rr,ia=0;pi=t.documentMode;o.$inject=[];ur.$inject=[];a=Array.isArray;ao=/^\[object (Uint8(Clamped)?)|(Uint16)|(Uint32)|(Int8)|(Int16)|(Int32)|(Float(32)|(64))Array\]$/;p=function(n){return l(n)?n.trim():n};af=function(n){return n.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};wi=function(){if(e(wi.isActive_))return wi.isActive_;var n=!!(t.querySelector("[ng-csp]")||t.querySelector("[data-ng-csp]"));if(!n)try{new Function("")}catch(i){n=!0}return wi.isActive_=n};cr=function(){if(e(cr.name_))return cr.name_;for(var r,f=oi.length,i,u,n=0;n<f;++n)if(i=oi[n],r=t.querySelector("["+i.replace(":","\\:")+"jq]")){u=r.getAttribute(i+"jq");break}return cr.name_=u};oi=["ng-","data-ng-","ng:","x-ng-"];is=/[A-Z]/g;pf=!1;var wt=1,ya=2,di=3,kf=8,fs=9,df=11;os={full:"1.4.3",major:1,minor:4,dot:3,codeName:"foam-acceleration"};b.expando="ng339";var yr=b.cache={},ka=1,cu=function(n,t,i){n.addEventListener(t,i,!1)},pr=function(n,t,i){n.removeEventListener(t,i,!1)};b._data=function(n){return this.cache[n[this.expando]]||{}};var ga=/([\:\-\_]+(.))/g,nv=/^moz([A-Z])/,tv={mouseleave:"mouseout",mouseenter:"mouseover"},gf=y("jqLite");var iv=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,rv=/<|&#?\w+;/,uv=/<([\w:]+)/,fv=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt={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,"",""]};vt.optgroup=vt.option;vt.tbody=vt.tfoot=vt.colgroup=vt.caption=vt.thead;vt.th=vt.td;si=b.prototype={ready:function(i){function r(){u||(u=!0,i())}var u=!1;if(t.readyState==="complete")setTimeout(r);else{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 n>=0?f(this[n]):f(this[this.length+n])},length:0,push:ta,sort:[].sort,splice:[].splice};br={};r("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(n){br[v(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:ie,removeData:au,hasData:ev},function(n,t){b[t]=n});r({data:ie,inheritedData:bu,scope:function(n){return f.data(n,"$scope")||bu(n.parentNode||n,["$isolateScope","$scope"])},isolateScope:function(n){return f.data(n,"$isolateScope")||f.data(n,"$isolateScopeNoTemplate")},controller:ls,injector:function(n){return bu(n,"$injector")},removeAttr:function(n,t){n.removeAttribute(t)},hasClass:yu,css:function(n,t,i){if(t=wr(t),e(i))n.style[t]=i;else return n.style[t]},attr:function(n,t,r){var f=n.nodeType,u,s;if(f!==di&&f!==ya&&f!==kf)if(u=v(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 s=n.getAttribute(t,2),s===null?i:s},prop:function(n,t,i){if(e(i))n[t]=i;else return n[t]},text:function(){function n(n,t){if(s(t)){var i=n.nodeType;return i===wt||i===di?n.textContent:""}n.textContent=t}return n.$dv="",n}(),val:function(n,t){if(s(t)){if(n.multiple&&bt(n)==="select"){var i=[];return r(n.options,function(n){n.selected&&i.push(n.value||n.text)}),i.length===0?null:i}return n.value}n.value=t},html:function(n,t){if(s(t))return n.innerHTML;lu(n,!0);n.innerHTML=t},empty:as},function(n,t){b.prototype[t]=function(t,r){var u,s,e=this.length,f,l,o,c;if(n!==as&&(n.length==2&&n!==yu&&n!==ls?t:r)===i){if(h(t)){for(u=0;u<e;u++)if(n===ie)n(this[u],t);else for(s in t)n(this[u],s,t[s]);return this}for(f=n.$dv,l=f===i?Math.min(e,1):e,o=0;o<l;o++)c=n(this[o],t,r),f=f?f+c:c;return f}for(u=0;u<e;u++)n(this[u],t,r);return this}});r({removeData:au,on:function lv(n,t,i,r){var h,c,o;if(e(r))throw gf("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(ss(n)){var s=vu(n,!0),u=s.events,f=s.handle;for(f||(f=s.handle=cv(n,u)),h=t.indexOf(" ")>=0?t.split(" "):[t],c=h.length;c--;)t=h[c],o=u[t],o||(u[t]=[],t==="mouseenter"||t==="mouseleave"?lv(n,tv[t],function(n){var r=this,i=n.relatedTarget;i&&(i===r||r.contains(i))||f(n,t)}):t!=="$destroy"&&cu(n,t,f),o=u[t]),o.push(i)}},off:cs,one:function(n,t,i){n=f(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;lu(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 r=n.nodeType,i,u,f;if(r===wt||r===df)for(t=new b(t),i=0,u=t.length;i<u;i++)f=t[i],n.appendChild(f)},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=f(t).eq(0).clone()[0];var i=n.parentNode;i&&i.replaceChild(t,n);t.appendChild(n)},remove:ue,detach:function(n){ue(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:wu,removeClass:pu,toggleClass:function(n,t,i){t&&r(t.split(" "),function(t){var r=i;s(r)&&(r=!yu(n,t));(r?wu:pu)(n,t)})},parent:function(n){var t=n.parentNode;return t&&t.nodeType!==df?t:null},next:function(n){return n.nextElementSibling},find:function(n,t){return n.getElementsByTagName?n.getElementsByTagName(t):[]},clone:te,triggerHandler:function(n,t,i){var u,f,e,s=t.type||t,h=vu(n),c=h&&h.events,l=c&&c[s];l&&(u={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return this.defaultPrevented===!0},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return this.immediatePropagationStopped===!0},stopPropagation:o,type:s,target:n},t.type&&(u=w(u,t)),f=lt(l),e=i?[u].concat(i):[u],r(f,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++)s(u)?(u=n(this[o],t,i,r),e(u)&&(u=f(u))):re(u,n(this[o],t,i,r));return e(u)?u:this};b.prototype.bind=b.prototype.on;b.prototype.unbind=b.prototype.off});gi.prototype={put:function(n,t){this[hi(n,this.nextUid)]=t},get:function(n){return this[hi(n,this.nextUid)]},remove:function(n){var t=this[n=hi(n,this.nextUid)];return delete this[n],t}};var vv=[function(){this.$get=[function(){return gi}]}],ys=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,yv=/,/,pv=/^\s*(_?)(\S+?)\1\s*$/,ps=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,ci=y("$injector");kr.$$annotate=bv;var ws=y("$animate"),dv=1,bs="ng-animate";var ty=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}]},iy=function(){var n=new gi,t=[];this.$get=["$$AnimateRunner","$rootScope",function(i,u){function f(i,f,e){var o=n.get(i);(o||(n.put(i,o={}),t.push(i)),f&&r(f.split(" "),function(n){n&&(o[n]=!0)}),e&&r(e.split(" "),function(n){n&&(o[n]=!1)}),t.length>1)||u.$$postDigest(function(){r(t,function(t){var f=n.get(t);if(f){var e=ny(t.attr("class")),i="",u="";r(f,function(n,t){var r=!!e[t];n!==r&&(n?i+=(i.length?" ":"")+t:u+=(u.length?" ":"")+t)});r(t,function(n){i&&wu(n,i);u&&pu(n,u)});n.remove(t)}});t.length=0})}return{enabled:o,on:o,off:o,pin:o,push:function(n,t,r,u){return u&&u(),r=r||{},r.from&&n.css(r.from),r.to&&n.css(r.to),(r.addClass||r.removeClass)&&f(n,r.addClass,r.removeClass),new i}}}]},ry=["$provide",function(n){var t=this;this.$$registeredAnimations=Object.create(null);this.register=function(i,r){if(i&&i.charAt(0)!==".")throw ws("notcsel","Expecting class selector starting with '.' got '{0}'.",i);var u=i+"-animation";t.$$registeredAnimations[i.substr(1)]=u;n.factory(u,r)};this.classNameFilter=function(n){if(arguments.length===1&&(this.$$classNameFilter=n instanceof RegExp?n:null,this.$$classNameFilter)){var t=new RegExp("(\\s+|\\/)"+bs+"(\\s+|\\/)");if(t.test(this.$$classNameFilter.toString()))throw ws("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',bs);}return this.$$classNameFilter};this.$get=["$$animateQueue",function(n){function t(n,t,i){if(i){var r=gv(i);!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,e){return r=r&&f(r),u=u&&f(u),r=r||u.parent(),t(i,r,u),n.push(i,"enter",li(e))},move:function(i,r,u,e){return r=r&&f(r),u=u&&f(u),r=r||u.parent(),t(i,r,u),n.push(i,"move",li(e))},leave:function(t,i){return n.push(t,"leave",li(i),function(){t.remove()})},addClass:function(t,i,r){return r=li(r),r.addClass=dr(r.addclass,i),n.push(t,"addClass",r)},removeClass:function(t,i,r){return r=li(r),r.removeClass=dr(r.removeClass,i),n.push(t,"removeClass",r)},setClass:function(t,i,r,u){return u=li(u),u.addClass=dr(u.addClass,i),u.removeClass=dr(u.removeClass,r),n.push(t,"setClass",u)},animate:function(t,i,r,u,f){return f=li(f),f.from=f.from?w(f.from,i):i,f.to=f.to?w(f.to,r):r,u=u||"ng-inline-animate",f.tempClasses=dr(f.tempClasses,u),n.push(t,"animate",f)}}}]}];nt=y("$compile");ks.$inject=["$provide","$$sanitizeUriProvider"];oe=/^((?:x|data)[\:\-_])/i;nh=y("$controller");se=/^(\S+)(\s+as\s+(\w+))?$/;var th="application/json",he={"Content-Type":th+";charset=utf-8"},ay=/^\[|^\{(?!\{)/,vy={"[":/]$/,"{":/}$/},yy=/^\)\]\}',?\n/;ii=ft.$interpolateMinErr=y("$interpolate");ii.throwNoconcat=function(n){throw ii("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required.  See http://docs.angularjs.org/api/ng.$sce",n);};ii.interr=function(n,t){return ii("interr","Can't interpolate: {0}\n{1}",n,t.toString())};var up=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,fp={http:80,https:443,ftp:21},ku=y("$location");sh={$$html5:!1,$$replace:!1,absUrl:gu("$$absUrl"),url:function(n){if(s(n))return this.$$url;var t=up.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:gu("$$protocol"),host:gu("$$host"),port:gu("$$port"),path:hh("$$path",function(n){return n=n!==null?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=ns(n);else if(h(n))n=ct(n,{}),r(n,function(t,i){t==null&&delete n[i]}),this.$$search=n;else throw ku("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");break;default:s(t)||t===null?delete this.$$search[n]:this.$$search[n]=t}return this.$$compose(),this},hash:hh("$$hash",function(n){return n!==null?n.toString():""}),replace:function(){return this.$$replace=!0,this}};r([oh,we,pe],function(n){n.prototype=Object.create(sh);n.prototype.state=function(t){if(!arguments.length)return this.$$state;if(n!==pe||!this.$$html5)throw ku("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=s(t)?null:t,this}});ut=y("$parse");var hp=Function.prototype.call,cp=Function.prototype.apply,lp=Function.prototype.bind;gr=rt();r("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(n){gr[n]=!0});lh={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'};nf=function(n){this.options=n};nf.prototype={constructor:nf,lex:function(n){var t,r;for(this.text=n,this.index=0,this.tokens=[];this.index<this.text.length;)if(t=this.text.charAt(this.index),t==='"'||t==="'")this.readString(t);else if(this.isNumber(t)||t==="."&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(t))this.readIdent();else if(this.is(t,"(){}[].,;:?"))this.tokens.push({index:this.index,text:t}),this.index++;else if(this.isWhitespace(t))this.index++;else{var i=t+this.peek(),u=i+this.peek(2),o=gr[t],f=gr[i],e=gr[u];o||f||e?(r=e?u:f?i:t,this.tokens.push({index:this.index,text:r,operator:!0}),this.index+=r.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(n,t){return t.indexOf(n)!==-1},peek:function(n){var t=n||1;return this.index+t<this.text.length?this.text.charAt(this.index+t):!1},isNumber:function(n){return"0"<=n&&n<="9"&&typeof n=="string"},isWhitespace:function(n){return n===" "||n==="\r"||n==="\t"||n==="\n"||n==='\v'||n===" "},isIdent:function(n){return"a"<=n&&n<="z"||"A"<=n&&n<="Z"||"_"===n||n==="$"},isExpOperator:function(n){return n==="-"||n==="+"||this.isNumber(n)},throwError:function(n,t,i){i=i||this.index;var r=e(t)?"s "+t+"-"+this.index+" ["+this.text.substring(t,i)+"]":" "+i;throw ut("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",n,r,this.text);},readNumber:function(){for(var n="",r=this.index,t,i;this.index<this.text.length;){if(t=v(this.text.charAt(this.index)),t=="."||this.isNumber(t))n+=t;else if(i=this.peek(),t=="e"&&this.isExpOperator(i))n+=t;else if(this.isExpOperator(t)&&i&&this.isNumber(i)&&n.charAt(n.length-1)=="e")n+=t;else if(!this.isExpOperator(t)||i&&this.isNumber(i)||n.charAt(n.length-1)!="e")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=this.index,n;this.index<this.text.length;){if(n=this.text.charAt(this.index),!(this.isIdent(n)||this.isNumber(n)))break;this.index++}this.tokens.push({index:t,text:this.text.slice(t,this.index),identifier:!0})},readString:function(n){var f=this.index,t,r,o;this.index++;for(var i="",e=n,u=!1;this.index<this.text.length;){if(t=this.text.charAt(this.index),e+=t,u)t==="u"?(r=this.text.substring(this.index+1,this.index+5),r.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+r+"]"),this.index+=4,i+=String.fromCharCode(parseInt(r,16))):(o=lh[t],i=i+(o||t)),u=!1;else if(t==="\\")u=!0;else{if(t===n){this.index++;this.tokens.push({index:f,text:e,constant:!0,value:i});return}i+=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){this.text=n;this.tokens=this.lexer.lex(n);var t=this.program();return this.tokens.length!==0&&this.throwError("is an unexpected token",this.tokens[0]),t},program:function(){for(var n=[];;)if(this.tokens.length>0&&!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(),t;t=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=ct(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){for(var t=[n],i={type:u.CallExpression,callee:this.identifier(),arguments:t,filter:!0};this.expect(":");)t.push(this.expression());return i},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 ut("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",t.text,n,t.index+1,this.text,this.text.substring(t.index));},consume:function(n){if(this.tokens.length===0)throw ut("ueoe","Unexpected end of expression: {0}",this.text);var t=this.expect(n);return t||this.throwError("is unexpected, expecting ["+n+"]",this.peek()),t},peekToken:function(){if(this.tokens.length===0)throw ut("ueoe","Unexpected end of expression: {0}",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){var e=this.tokens[n],f=e.text;if(f===t||f===i||f===r||f===u||!t&&!i&&!r&&!u)return e}return!1},expect:function(n,t,i,r){var u=this.peek(n,t,i,r);return u?(this.tokens.shift(),u):!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}}};dh.prototype={compile:function(n,t){var u=this,f=this.astBuilder.ast(n),o,s,h,c,l,e;return this.state={nextId:0,filters:{},expensiveChecks:t,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},d(f,u.$filter),o="",this.stage="assign",(s=wh(f))&&(this.state.computing="assign",h=this.nextId(),this.recurse(s,h),o="fn.assign="+this.generateFunction("assign","s,v,l")),c=yh(f.body),u.stage="inputs",r(c,function(n,t){var i="fn"+t,r;u.state[i]={vars:[],body:[],own:{}};u.state.computing=i;r=u.nextId();u.recurse(n,r);u.return_(r);u.state.inputs.push(i);n.watchId=t}),this.state.computing="fn",this.stage="main",this.recurse(f),l='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+o+this.watchFns()+"return fn;",e=new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","ifDefined","plus","text",l)(this.$filter,ri,yt,ch,ap,ah,n),this.state=this.stage=i,e.literal=bh(f),e.constant=kh(f),e},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));return}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=l.stage==="inputs"?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",n.name)+"?l:s"),f.computed=!1,f.name=n.name);ri(n.name);l.if_(l.stage==="inputs"||l.not(l.getHasOwnProperty("l",n.name)),function(){l.if_(l.stage==="inputs"||"s",function(){h&&h!==1&&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||uf(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&&h!==1&&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)):(ri(n.property.name),h&&h!==1&&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||uf(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={},!ph(n.left))throw ut("lval","Trying to assing a value to a non l-value");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(n===!0)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(n===!0)return"true";if(n===!1)return"false";if(n===null)return"null";if(typeof n=="undefined")return"undefined";throw ut("esc","IMPOSSIBLE");},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]}};gh.prototype={compile:function(n,t){var o=this,i=this.astBuilder.ast(n),c,s,h,f,e,u;return this.expression=n,this.expensiveChecks=t,d(i,o.$filter),(c=wh(i))&&(s=this.recurse(c)),h=yh(i.body),h&&(f=[],r(h,function(n,t){var i=o.recurse(n);n.input=i;f.push(i);n.watchId=t})),e=[],r(i.body,function(n){e.push(o.recurse(n.expression))}),u=i.body.length===0?function(){}:i.body.length===1?e[0]:function(n,t){var i;return r(e,function(r){i=r(n,t)}),i},s&&(u.assign=function(n,t,i){return s(n,i,t)}),f&&(u.inputs=f),u.literal=bh(i),u.constant=kh(i),u},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 ri(n.name,o.expression),o.identifier(n.name,o.expensiveChecks||uf(n.name),t,f,o.expression);case u.MemberExpression:return h=this.recurse(n.object,!1,!!f),n.computed||(ri(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,c=[],o=0;o<s.length;++o)c.push(s[o](n,r,u,f));return h=e.apply(i,c,f),t?{context:i,name:i,value:h}:h}:function(n,i,r,u){var f=e(n,i,r,u),c,l,h;if(f.value!=null){for(yt(f.context,o.expression),ch(f.value,o.expression),l=[],h=0;h<s.length;++h)l.push(yt(s[h](n,i,r,u),o.expression));c=yt(f.value.apply(f.context,l),o.expression)}return t?{value:c}:c};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),s=e(n,i,r,u);return yt(f.value,o.expression),f.context[f.name]=s,t?{value:s}:s};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){var o=n(i,r,u,f);return o=e(o)?+o:0,t?{value:o}:o}},"unary-":function(n,t){return function(i,r,u,f){var o=n(i,r,u,f);return o=e(o)?-o:0,t?{value:o}:o}},"unary!":function(n,t){return function(i,r,u,f){var e=!n(i,r,u,f);return t?{value:e}:e}},"binary+":function(n,t,i){return function(r,u,f,e){var s=n(r,u,f,e),h=t(r,u,f,e),o=ah(s,h);return i?{value:o}:o}},"binary-":function(n,t,i){return function(r,u,f,o){var s=n(r,u,f,o),h=t(r,u,f,o),c=(e(s)?s:0)-(e(h)?h:0);return i?{value:c}:c}},"binary*":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)*t(r,u,f,e);return i?{value:o}:o}},"binary/":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)/t(r,u,f,e);return i?{value:o}:o}},"binary%":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)%t(r,u,f,e);return i?{value:o}:o}},"binary===":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)===t(r,u,f,e);return i?{value:o}:o}},"binary!==":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)!==t(r,u,f,e);return i?{value:o}:o}},"binary==":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)==t(r,u,f,e);return i?{value:o}:o}},"binary!=":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)!=t(r,u,f,e);return i?{value:o}:o}},"binary<":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)<t(r,u,f,e);return i?{value:o}:o}},"binary>":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)>t(r,u,f,e);return i?{value:o}:o}},"binary<=":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)<=t(r,u,f,e);return i?{value:o}:o}},"binary>=":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)>=t(r,u,f,e);return i?{value:o}:o}},"binary&&":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)&&t(r,u,f,e);return i?{value:o}:o}},"binary||":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e)||t(r,u,f,e);return i?{value:o}:o}},"ternary?:":function(n,t,i,r){return function(u,f,e,o){var s=n(u,f,e,o)?t(u,f,e,o):i(u,f,e,o);return r?{value:s}:s}},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){var s=o&&n in o?o:e,h;return u&&u!==1&&s&&!s[n]&&(s[n]={}),h=s?s[n]:i,t&&yt(h,f),r?{context:s,name:n,value:h}:h}},computedMember:function(n,t,i,r,u){return function(f,e,o,s){var h=n(f,e,o,s),c,l;return h!=null&&(c=t(f,e,o,s),ri(c,u),r&&r!==1&&h&&!h[c]&&(h[c]={}),l=h[c],yt(l,u)),i?{context:h,name:c,value:l}:l}},nonComputedMember:function(n,t,r,u,f,e){return function(o,s,h,c){var l=n(o,s,h,c),a;return f&&f!==1&&l&&!l[t]&&(l[t]={}),a=l!=null?l[t]:i,(r||uf(t))&&yt(a,e),u?{context:l,name:t,value:a}:a}},inputs:function(n,t){return function(i,r,u,f){return f?f[t]:n(i,r,u)}}};tf=function(n,t,i){this.lexer=n;this.$filter=t;this.options=i;this.ast=new u(this.lexer);this.astCompiler=i.csp?new gh(this.ast,t):new dh(this.ast,t)};tf.prototype={constructor:tf,parse:function(n){return this.astCompiler.compile(n,this.options.expensiveChecks)}};vp=rt();yp=rt();nc=Object.prototype.valueOf;ni=y("$sce");ht={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"};nt=y("$compile");g=t.createElement("a");ke=ui(n.location.href);uc.$inject=["$document"];fc.$inject=["$provide"];ec.$inject=["$locale"];oc.$inject=["$locale"];ge=".";var pw={yyyy:tt("FullYear",4),yy:tt("FullYear",2,0,!0),y:tt("FullYear",1),MMMM:ef("Month"),MMM:ef("Month",!0),MM:tt("Month",2,1),M:tt("Month",1,1),dd:tt("Date",2),d:tt("Date",1),HH:tt("Hours",2),H:tt("Hours",1),hh:tt("Hours",2,-12),h:tt("Hours",1,-12),mm:tt("Minutes",2),m:tt("Minutes",1),ss:tt("Seconds",2),s:tt("Seconds",1),sss:tt("Milliseconds",3),EEEE:ef("Day"),EEE:ef("Day",!0),a:vw,Z:lw,ww:cc(2),w:cc(1),G:no,GG:no,GGG:no,GGGG:yw},ww=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,bw=/^\-?\d+$/;lc.$inject=["$locale"];ac=pt(v);vc=pt(ir);yc.$inject=["$parse"];pc=pt({restrict:"E",compile:function(n,t){if(!t.href&&!t.xlinkHref)return function(n,t){if(t[0].nodeName.toLowerCase()==="a"){var i=ti.call(t.prop("href"))==="[object SVGAnimatedString]"?"xlink:href":"href";t.on("click",function(n){t.attr(i)||n.preventDefault()})}}}});nu={};r(br,function(n,t){function r(n,r,u){n.$watch(u[i],function(n){u.$set(t,!!n)})}if(n!="multiple"){var i=dt("ng-"+t),u=r;n==="checked"&&(u=function(n,t,u){u.ngModel!==u[i]&&r(n,t,u)});nu[i]=function(){return{restrict:"A",priority:100,link:u}}}});r(ee,function(n,t){nu[t]=function(){return{priority:100,link:function(n,i,r){if(t==="ngPattern"&&r.ngPattern.charAt(0)=="/"){var u=r.ngPattern.match(bl);if(u){r.$set("ngPattern",new RegExp(u[1],u[2]));return}}n.$watch(r[t],function(n){r.$set(t,n)})}}}});r(["src","srcset","href"],function(n){var t=dt("ng-"+n);nu[t]=function(){return{priority:99,link:function(i,r,u){var e=n,f=n;n==="href"&&ti.call(r.prop("href"))==="[object SVGAnimatedString]"&&(f="xlinkHref",u.$attr[f]="xlink:href",e=null);u.$observe(t,function(t){if(!t){n==="href"&&u.$set(f,null);return}u.$set(f,t);pi&&e&&r.prop(e,u[f])})}}}});tu={$addControl:o,$$renameControl:gw,$removeControl:o,$setValidity:o,$setDirty:o,$setPristine:o,$setSubmitted:o};to="ng-submitted";wc.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var bc=function(n){return["$timeout",function(t){return{name:"form",restrict:n?"EAC":"E",controller:wc,compile:function(r,u){r.addClass(nr).addClass(uu);var f=u.name?"name":n&&u.ngForm?"ngForm":!1;return{pre:function(n,r,u,e){var o,s;if(!("action"in u)){o=function(t){n.$apply(function(){e.$commitViewValue();e.$setSubmitted()});t.preventDefault()};cu(r[0],"submit",o);r.on("$destroy",function(){t(function(){pr(r[0],"submit",o)},0,!1)})}s=e.$$parentForm;f&&(rf(n,e.$name,e,e.$name),u.$observe(f,function(t){e.$name!==t&&(rf(n,e.$name,i,e.$name),s.$$renameControl(e,t),rf(n,e.$name,e,e.$name))}));r.on("$destroy",function(){s.$removeControl(e);f&&rf(n,u[f],i,e.$name);w(e,tu)})}}}}}]},nb=bc(),tb=bc(!0),ib=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,rb=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,ub=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,fb=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,kc=/^(\d{4})-(\d{2})-(\d{2})$/,dc=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,io=/^(\d{4})-W(\d\d)$/,gc=/^(\d{4})-(\d\d)$/,nl=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,tl={text:eb,date:ru("date",kc,of(kc,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":ru("datetimelocal",dc,of(dc,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:ru("time",nl,of(nl,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:ru("week",io,ob,"yyyy-Www"),month:ru("month",gc,of(gc,["yyyy","MM"]),"yyyy-MM"),number:sb,url:hb,email:cb,radio:lb,checkbox:ab,hidden:o,button:o,submit:o,reset:o,file:o};var ul=["$browser","$sniffer","$filter","$parse",function(n,t,i,r){return{restrict:"E",require:["?ngModel"],link:{pre:function(u,f,e,o){o[0]&&(tl[v(e.type)]||tl.text)(u,f,e,o[0],t,n,i,r)}}}}],vb=/^(true|false|\d+)$/,yb=function(){return{restrict:"A",priority:100,compile:function(n,t){return vb.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)})}}}},pb=["$compile",function(n){return{restrict:"AC",compile:function(t){return n.$$addBindingClass(t),function(t,r,u){n.$$addBindingInfo(r,u.ngBind);r=r[0];t.$watch(u.ngBind,function(n){r.textContent=n===i?"":n})}}}}],wb=["$interpolate","$compile",function(n,t){return{compile:function(r){return t.$$addBindingClass(r),function(r,u,f){var e=n(u.attr(f.$attr.ngBindTemplate));t.$$addBindingInfo(u,e.expressions);u=u[0];f.$observe("ngBindTemplate",function(n){u.textContent=n===i?"":n})}}}}],bb=["$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))||"")})}}}}],kb=pt({restrict:"A",require:"ngModel",link:function(n,t,i,r){r.$viewChangeListeners.push(function(){n.$eval(i.ngChange)})}});var db=uo("",!0),gb=uo("Odd",0),nk=uo("Even",1),tk=yi({compile:function(n,t){t.$set("ngCloak",i);n.removeClass("ng-cloak")}}),ik=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],fl={},rk={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);fl[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})};rk[n]&&r.$$phase?t.$evalAsync(u):t.$apply(u)})}}}}]});var uk=["$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=hu(h.clone),n.leave(o).then(function(){o=null}),h=null))})}}}],fk=["$templateRequest","$anchorScroll","$animate",function(n,t,i){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ft.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){var t,f;h===p&&(t=r.$new(),c.template=n,f=l(t,function(n){w();i.enter(n,null,u).then(v)}),a=t,y=f,a.$emit("$includeContentLoaded",o),r.$eval(s))},function(){h===p&&(w(),r.$emit("$includeContentError",o))}),r.$emit("$includeContentRequested",o)):(w(),c.template=null)})}}}}],ek=["$compile",function(n){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(i,r,u,f){if(/SVG/.test(r[0].toString())){r.empty();n(hs(f.template,t).childNodes)(i,function(n){r.append(n)},{futureParentElement:r});return}r.html(f.template);n(r.contents())(i)}}}],ok=yi({priority:450,compile:function(){return{pre:function(n,t,i){n.$eval(i.ngInit)}}}}),sk=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(n,t,u,f){var e=t.attr(u.$attr.ngList)||", ",o=u.ngTrim!=="false",h=o?p(e):e,c=function(n){if(!s(n)){var t=[];return n&&r(n.split(h),function(n){n&&t.push(o?p(n):n)}),t}};f.$parsers.push(c);f.$formatters.push(function(n){return a(n)?n.join(e):i});f.$isEmpty=function(n){return!n||!n.length}}}},uu="ng-valid",el="ng-invalid",nr="ng-pristine",sf="ng-dirty",fo="ng-untouched",ol="ng-touched",sl="ng-pending",hf=new y("ngModel"),hk=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(n,t,u,f,h,l,a,v,y,p){var it,g;this.$viewValue=Number.NaN;this.$modelValue=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);var d=h(u.ngModel),rt=d.assign,tt=d,ut=rt,nt=null,b,w=this;this.$$setOptions=function(n){if(w.$options=n,n&&n.getterSetter){var t=h(u.ngModel+"()"),i=h(u.ngModel+"($$$p)");tt=function(n){var i=d(n);return c(i)&&(i=t(n)),i};ut=function(n){c(d(n))?i(n,{$$$p:w.$modelValue}):rt(n,w.$modelValue)}}else if(!d.assign)throw hf("nonassign","Expression '{0}' is non-assignable. Element: {1}",u.ngModel,kt(f));};this.$render=o;this.$isEmpty=function(n){return s(n)||n===""||n===null||n!==n};it=f.inheritedData("$formController")||tu;g=0;hl({ctrl:this,$element:f,set:function(n,t){n[t]=!0},unset:function(n,t){delete n[t]},parentForm:it,$animate:l});this.$setPristine=function(){w.$dirty=!1;w.$pristine=!0;l.removeClass(f,sf);l.addClass(f,nr)};this.$setDirty=function(){w.$dirty=!0;w.$pristine=!1;l.removeClass(f,nr);l.addClass(f,sf);it.$setDirty()};this.$setUntouched=function(){w.$touched=!1;w.$untouched=!0;l.setClass(f,fo,ol)};this.$setTouched=function(){w.$touched=!0;w.$untouched=!1;l.setClass(f,ol,fo)};this.$rollbackViewValue=function(){a.cancel(nt);w.$viewValue=w.$$lastCommittedViewValue;w.$render()};this.$validate=function(){if(!k(w.$modelValue)||!isNaN(w.$modelValue)){var t=w.$$lastCommittedViewValue,n=w.$$rawModelValue,r=w.$valid,u=w.$modelValue,f=w.$options&&w.$options.allowInvalid;w.$$runValidators(n,t,function(t){f||r===t||(w.$modelValue=t?n:i,w.$modelValue!==u&&w.$$writeModelToScope())})}};this.$$runValidators=function(n,t,u){function h(){var n=w.$$parserName||"parse";if(b===i)f(n,null);else return b||(r(w.$validators,function(n,t){f(t,null)}),r(w.$asyncValidators,function(n,t){f(t,null)})),f(n,b),b;return!0}function c(){var i=!0;return(r(w.$validators,function(r,u){var e=r(n,t);i=i&&e;f(u,e)}),!i)?(r(w.$asyncValidators,function(n,t){f(t,null)}),!1):!0}function l(){var u=[],s=!0;r(w.$asyncValidators,function(r,e){var o=r(n,t);if(!ou(o))throw hf("$asyncValidators","Expected asynchronous validator to return a promise but got '{0}' instead.",o);f(e,i);u.push(o.then(function(){f(e,!0)},function(){s=!1;f(e,!1)}))});u.length?y.all(u).then(function(){e(s)},o):e(!0)}function f(n,t){s===g&&w.$setValidity(n,t)}function e(n){s===g&&u(n)}g++;var s=g;if(!h()){e(!1);return}if(!c()){e(!1);return}l()};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(){function e(){w.$modelValue!==f&&w.$$writeModelToScope()}var o=w.$$lastCommittedViewValue,t=o,r,f,u;if(b=s(t)?i:!0,b)for(r=0;r<w.$parsers.length;r++)if(t=w.$parsers[r](t),s(t)){b=!1;break}k(w.$modelValue)&&isNaN(w.$modelValue)&&(w.$modelValue=tt(n));f=w.$modelValue;u=w.$options&&w.$options.allowInvalid;w.$$rawModelValue=t;u&&(w.$modelValue=t,e());w.$$runValidators(t,w.$$lastCommittedViewValue,function(n){u||(w.$modelValue=n?t:i,e())})};this.$$writeModelToScope=function(){ut(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,u=w.$options,i;u&&e(u.debounce)&&(i=u.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})}],ck=["$rootScope",function(n){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:hk,priority:1,compile:function(t){return t.addClass(nr).addClass(fo).addClass(uu),{pre:function(n,t,i,r){var u=r[0],f=r[1]||tu;u.$$setOptions(r[2]&&r[2].$options);f.$addControl(u);i.$observe("name",function(n){u.$name!==n&&f.$$renameControl(u,n)});n.$on("$destroy",function(){f.$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))})}}}}}],lk=/(\s+|^)default(\s+|$)/,ak=function(){return{restrict:"A",controller:["$scope","$attrs",function(n,t){var r=this;this.$options=ct(n.$eval(t.ngModelOptions));this.$options.updateOn!==i?(this.$options.updateOnDefault=!1,this.$options.updateOn=p(this.$options.updateOn.replace(lk,function(){return r.$options.updateOnDefault=!0," "}))):this.$options.updateOnDefault=!0}]}};var vk=yi({terminal:!0,priority:1e3}),yk=y("ngOptions"),pk=/^\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]+?))?$/,wk=["$compile","$parse",function(n,i){function e(n,t,r){function tt(n,t,i,r,u){this.selectValue=n;this.viewValue=t;this.label=i;this.group=r;this.disabled=u}function w(n){var t,i;if(!s&&ei(n))t=n;else{t=[];for(i in n)n.hasOwnProperty(i)&&i.charAt(0)!=="$"&&t.push(i)}return t}var u=n.match(pk);if(!u)throw yk("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",n,kt(t));var o=u[5]||u[7],s=u[6],l=/ as /.test(u[0])&&u[1],f=u[9],b=i(u[2]?u[1]:o),k=l&&i(l),d=k||b,g=f&&i(f),h=f?function(n,t){return g(r,t)}:function(n){return hi(n)},a=function(n,t){return h(n,c(n,t))},v=i(u[2]||u[1]),nt=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 i=[],f,s,t,l,a;for(n=n||[],f=w(n),s=f.length,t=0;t<s;t++){var e=n===f?t:f[t],b=n[e],o=c(n[e],e),p=h(n[e],o);i.push(p);(u[2]||u[1])&&(l=v(r,o),i.push(l));u[4]&&(a=y(r,o),i.push(a))}return i}),getOptions:function(){for(var o=[],i={},u=p(r)||[],e=w(u),g=e.length,t=0;t<g;t++){var s=u===e?t:e[t],it=u[s],n=c(it,s),l=d(r,n),b=h(l,n),rt=v(r,n),ut=nt(r,n),et=y(r,n),k=new tt(b,l,rt,ut,et);o.push(k);i[b]=k}return{items:o,selectValueMap:i,getOptionFromViewValue:function(n){return i[a(n)]},getViewValueFromOption:function(n){return f?ft.copy(n.viewValue):n.viewValue}}}}}var u=t.createElement("option"),o=t.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","?ngModel"],link:function(t,i,s,h){function ut(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 it(n,t,i,r){var u;return t&&v(t.nodeName)===i?u=t:(u=r.cloneNode(!1),t?n.insertBefore(u,t):n.appendChild(u)),u}function ft(n){for(var t;n;)t=n.nextSibling,ue(n),n=t}function lt(n){var t=c&&c[0],i=p&&p[0];if(t||i)while(n&&(n===t||n===i))n=n.nextSibling;return n}function et(){var f=y&&w.readValue(),t,n,r;y=b.getOptions();t={};n=i[0].firstChild;k&&i.prepend(c);n=lt(n);y.items.forEach(function(r){var f,s,e;r.group?(f=t[r.group],f||(s=it(i[0],n,"optgroup",o),n=s.nextSibling,s.label=r.group,f=t[r.group]={groupElement:s,currentOptionElement:s.firstChild}),e=it(f.groupElement,f.currentOptionElement,"option",u),ut(r,e),f.currentOptionElement=e.nextSibling):(e=it(i[0],n,"option",u),ut(r,e),n=e.nextSibling)});Object.keys(t).forEach(function(n){ft(t[n].currentOptionElement)});ft(n);l.$render();l.$isEmpty(f)||(r=w.readValue(),(b.trackBy?st(f,r):f===r)||(l.$setViewValue(r),l.$render()))}var l=h[1],w,rt,c,k,p;if(l){w=h[0];rt=s.multiple;for(var d=0,g=i.children(),ot=g.length;d<ot;d++)if(g[d].value===""){c=g.eq(d);break}k=!!c;p=f(u.cloneNode(!1));p.val("?");var y,b=e(s.ngOptions,i,t),ht=function(){k||i.prepend(c);i.val("");c.prop("selected",!0);c.attr("selected",!0)},nt=function(){k||c.remove()},ct=function(){i.prepend(p);i.val("?");p.prop("selected",!0);p.attr("selected",!0)},tt=function(){p.remove()};rt?(l.$isEmpty=function(n){return!n||n.length===0},w.writeValue=function(n){y.items.forEach(function(n){n.element.selected=!1});n&&n.forEach(function(n){var t=y.getOptionFromViewValue(n);t&&!t.disabled&&(t.element.selected=!0)})},w.readValue=function(){var t=i.val()||[],n=[];return r(t,function(t){var i=y.selectValueMap[t];i.disabled||n.push(y.getViewValueFromOption(i))}),n},b.trackBy&&t.$watchCollection(function(){if(a(l.$viewValue))return l.$viewValue.map(function(n){return b.getTrackByValue(n)})},function(){l.$render()})):(w.writeValue=function(n){var t=y.getOptionFromViewValue(n);t&&!t.disabled?i[0].value!==t.selectValue&&(tt(),nt(),i[0].value=t.selectValue,t.element.selected=!0,t.element.setAttribute("selected","selected")):n===null||k?(tt(),ht()):(nt(),ct())},w.readValue=function(){var n=y.selectValueMap[i.val()];return n&&!n.disabled?(nt(),tt(),y.getViewValueFromOption(n)):null},b.trackBy&&t.$watch(function(){return b.getTrackByValue(l.$viewValue)},function(){l.$render()}));k?(c.remove(),n(c)(t),c.removeClass("ng-scope")):c=f(u.cloneNode(!1));et();t.$watchCollection(b.getWatchables,et)}}}}],bk=["$locale","$interpolate","$log",function(n,t,i){var u=/{}/g,f=/^when(Minus)?(.+)$/;return{link:function(e,h,c){function g(n){h.text(n||"")}var p=c.count,w=c.$attr.when&&h.attr(c.$attr.when),b=c.offset||0,a=e.$eval(w)||{},d={},nt=t.startSymbol(),tt=t.endSymbol(),it=nt+p+"-"+b+tt,y=ft.noop,l;r(c,function(n,t){var i=f.exec(t),r;i&&(r=(i[1]?"-":"")+v(i[2]),a[r]=h.attr(c.$attr[t]))});r(a,function(n,i){d[i]=t(n.replace(u,it))});e.$watch(p,function(t){var r=parseFloat(t),f=isNaN(r),u;f||r in a||(r=n.pluralCat(r-b));r===l||f&&k(l)&&isNaN(l)||(y(),u=d[r],s(u)?(t!=null&&i.debug("ngPluralize: no rule defined for '"+r+"' in "+w),y=o,g()):y=e.$watch(u,g),l=r)})}}}],kk=["$parse","$animate",function(n,u){var o="$$NG_REMOVED",e=y("ngRepeat"),s=function(n,t,i,r,u,f,e){n[i]=r;u&&(n[u]=f);n.$index=t;n.$first=t===0;n.$last=t===e-1;n.$middle=!(n.$first||n.$last);n.$odd=!(n.$even=(t&1)==0)},h=function(n){return n.clone[0]},c=function(n){return n.clone[n.clone.length-1]};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(l,a){var b=a.ngRepeat,ft=t.createComment(" end ngRepeat: "+b+" "),v=b.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/),k,p,d,g,it,ut,w;if(!v)throw e("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",b);var nt=v[1],et=v[2],y=v[3],tt=v[4];if(v=nt.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/),!v)throw e("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",nt);if(k=v[3]||v[1],p=v[2],y&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(y)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(y)))throw e("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",y);return w={$id:hi},tt?d=n(tt):(it=function(n,t){return hi(t)},ut=function(n){return n}),function(n,t,l,a,v){d&&(g=function(t,i,r){return p&&(w[p]=t),w[k]=i,w.$index=r,d(n,w)});var nt=rt();n.$watchCollection(et,function(l){var a,wt,ct=t[0],ot,lt=rt(),st,et,ht,d,pt,tt,w,at,vt,yt,bt;if(y&&(n[y]=l),ei(l))tt=l,pt=g||it;else{pt=g||ut;tt=[];for(yt in l)l.hasOwnProperty(yt)&&yt.charAt(0)!=="$"&&tt.push(yt)}for(st=tt.length,at=new Array(st),a=0;a<st;a++)if(et=l===tt?a:tt[a],ht=l[et],d=pt(et,ht,a),nt[d])w=nt[d],delete nt[d],lt[d]=w,at[a]=w;else if(lt[d]){r(at,function(n){n&&n.scope&&(nt[n.id]=n)});throw e("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",b,d,ht);}else at[a]={id:d,scope:i,clone:i},lt[d]=!0;for(bt in nt){if(w=nt[bt],vt=hu(w.clone),u.leave(vt),vt[0].parentNode)for(a=0,wt=vt.length;a<wt;a++)vt[a][o]=!0;w.scope.$destroy()}for(a=0;a<st;a++)if(et=l===tt?a:tt[a],ht=l[et],w=at[a],w.scope){ot=ct;do ot=ot.nextSibling;while(ot&&ot[o]);h(w)!=ot&&u.move(hu(w.clone),null,f(ct));ct=c(w);s(w.scope,a,k,ht,p,et,st)}else v(function(n,t){w.scope=t;var i=ft.cloneNode(!1);n[n.length++]=i;u.enter(n,null,f(ct));ct=i;w.clone=n;lt[w.id]=w;s(w.scope,a,k,ht,p,et,st)});nt=lt})}}}}],ll="ng-hide",al="ng-hide-animate",dk=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngShow,function(t){n[t?"removeClass":"addClass"](i,ll,{tempClasses:al})})}}}],gk=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngHide,function(t){n[t?"addClass":"removeClass"](i,ll,{tempClasses:al})})}}}],nd=yi(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)}),td=["$animate",function(n){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(i,u,f,e){var l=f.ngSwitch||f.on,c=[],h=[],o=[],s=[],a=function(n,t){return function(){n.splice(t,1)}};i.$watch(l,function(i){for(var l,v,u=0,f=o.length;u<f;++u)n.cancel(o[u]);for(o.length=0,u=0,f=s.length;u<f;++u)l=hu(h[u].clone),s[u].$destroy(),v=o[u]=n.leave(l),v.then(a(o,u));h.length=0;s.length=0;(c=e.cases["!"+i]||e.cases["?"])&&r(c,function(i){i.transclude(function(r,u){var f,e;s.push(u);f=i.element;r[r.length++]=t.createComment(" end ngSwitchWhen: ");e={clone:r};h.push(e);n.enter(r,f.parent(),f)})})})}}}],id=yi({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})}}),rd=yi({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})}}),ud=yi({restrict:"EAC",link:function(n,t,i,r,u){if(!u)throw y("ngTransclude")("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",kt(t));u(function(n){t.empty();t.append(n)})}}),fd=["$templateCache",function(n){return{restrict:"E",terminal:!0,compile:function(t,i){if(i.type=="text/ng-template"){var r=i.id,u=t[0].text;n.put(r,u)}}}}],ed={$setViewValue:o,$render:o},od=["$element","$scope","$attrs",function(n,r){var u=this,e=new gi;u.ngModelCtrl=ed;u.unknownOption=f(t.createElement("option"));u.renderUnknownOption=function(t){var i="? "+hi(t)+" ?";u.unknownOption.val(i);n.prepend(u.unknownOption);n.val(i)};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)):t==null&&u.emptyOption?(u.removeUnknownOption(),n.val("")):u.renderUnknownOption(t)};u.addOption=function(n,t){ki(n,'"option value"');n===""&&(u.emptyOption=t);var i=e.get(n)||0;e.put(n,i+1)};u.removeOption=function(n){var t=e.get(n);t&&(t===1?(e.remove(n),n===""&&(u.emptyOption=i)):e.put(n,t-1))};u.hasOption=function(n){return!!e.get(n)}}],sd=function(){return{restrict:"E",require:["select","?ngModel"],controller:od,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 gi(n);r(t.find("option"),function(n){n.selected=e(i.get(n.value))})},s=NaN,n.$watch(function(){s!==f.$viewValue||st(h,f.$viewValue)||(h=lt(f.$viewValue),f.$render());s=f.$viewValue}),f.$isEmpty=function(n){return!n||n.length===0})}}}},hd=["$interpolate",function(n){function t(n){n[0].hasAttribute("selected")&&(n[0].selected=!0)}return{restrict:"E",priority:100,compile:function(i,r){if(s(r.value)){var u=n(i.text(),!0);u||r.$set("value",i.text())}return function(n,i,r){var e="$selectController",o=i.parent(),f=o.data(e)||o.parent().data(e);if(f&&f.ngModelCtrl){u?n.$watch(u,function(n,u){r.$set("value",n);u!==n&&f.removeOption(u);f.addOption(n,i);f.ngModelCtrl.$render();t(i)}):(f.addOption(r.value,i),f.ngModelCtrl.$render(),t(i));i.on("$destroy",function(){f.removeOption(r.value);f.ngModelCtrl.$render()})}}}}}],cd=pt({restrict:"E",terminal:!1}),vl=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()}))}}},yl=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,r,u){if(u){var f,e=r.ngPattern||r.pattern;r.$observe("pattern",function(n){if(l(n)&&n.length>0&&(n=new RegExp("^"+n+"$")),n&&!n.test)throw y("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",e,n,kt(t));f=n||i;u.$validate()});u.$validators.pattern=function(n){return u.$isEmpty(n)||s(f)||f.test(n)}}}}},pl=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=-1;i.$observe("maxlength",function(n){var t=it(n);u=isNaN(t)?-1:t;r.$validate()});r.$validators.maxlength=function(n,t){return u<0||r.$isEmpty(t)||t.length<=u}}}}},wl=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=0;i.$observe("minlength",function(n){u=it(n)||0;r.$validate()});r.$validators.minlength=function(n,t){return r.$isEmpty(t)||t.length>=u}}}}};if(n.angular.bootstrap){console.log("WARNING: Tried to load angular more than once.");return}va();ba(ft);f(t).ready(function(){ca(t,ts)})})(window,document);window.angular.$$csp()||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>'),function(n,t,i){"use strict";function wt(n,t,i){if(!n)throw ngMinErr("areq","Argument '{0}' is {1}",t||"?",i||"required");return n}function bt(n,t){return!n&&!t?"":n?t?(h(n)&&(n=n.join(" ")),h(t)&&(t=t.join(" ")),n+" "+t):n:t}function ci(n){var t={};return n&&(n.to||n.from)&&(t.to=n.to,t.from=n.from),t}function l(n,t,i){var u="";return n=h(n)?n:n&&w(n)&&n.length?n.split(/\s+/):[],r(n,function(n,r){n&&n.length>0&&(u+=r>0?" ":"",u+=i?t+n:n+t)}),u}function li(n,t){var i=n.indexOf(t);t>=0&&n.splice(i,1)}function ai(n){if(n instanceof s)switch(n.length){case 0:return[];case 1:if(n[0].nodeType===c)return n;break;default:return s(ut(n))}if(n.nodeType===c)return s(n)}function ut(n){var t,i;if(!n[0])return n;for(t=0;t<n.length;t++)if(i=n[t],i.nodeType==c)return i}function vi(n,t,i){r(t,function(t){n.addClass(t,i)})}function yi(n,t,i){r(t,function(t){n.removeClass(t,i)})}function b(n){return function(t,i){i.addClass&&(vi(n,t,i.addClass),i.addClass=null);i.removeClass&&(yi(n,t,i.removeClass),i.removeClass=null)}}function k(n){if(n=n||{},!n.$$prepared){var t=n.domOperation||o;n.domOperation=function(){n.$$domOperationFired=!0;t();t=o};n.$$prepared=!0}return n}function a(n,t){kt(n,t);dt(n,t)}function kt(n,t){t.from&&(n.css(t.from),t.from=null)}function dt(n,t){t.to&&(n.css(t.to),t.to=null)}function d(n,t,i){var u=(t.addClass||"")+" "+(i.addClass||""),f=(t.removeClass||"")+" "+(i.removeClass||""),r=pi(n.attr("class"),u,f);return vt(t,i),t.addClass=r.addClass?r.addClass:null,t.removeClass=r.removeClass?r.removeClass:null,t}function pi(n,t,i){function o(n){w(n)&&(n=n.split(" "));var t={};return r(n,function(n){n.length&&(t[n]=!0)}),t}var e=1,s=-1,f={},u;return n=o(n),t=o(t),r(t,function(n,t){f[t]=e}),i=o(i),r(i,function(n,t){f[t]=f[t]===e?null:s}),u={addClass:"",removeClass:""},r(f,function(t,i){var r,f;t===e?(r="addClass",f=!n[i]):t===s&&(r="removeClass",f=n[i]);f&&(u[r].length&&(u[r]+=" "),u[r]+=i)}),u}function u(n){return n instanceof t.element?n[0]:n}function ui(n,t,i){var u=Object.create(null),f=n.getComputedStyle(t)||{};return r(i,function(n,t){var i=f[n],r;i&&(r=i.charAt(0),(r==="-"||r==="+"||r>=0)&&(i=rr(i)),i===0&&(i=null),u[t]=i)}),u}function rr(n){var t=0,i=n.split(/\s*,\s*/);return r(i,function(n){n.charAt(n.length-1)=="s"&&(n=n.substring(0,n.length-1));n=parseFloat(n)||0;t=t?Math.max(n,t):n}),t}function ct(n){return n===0||n!=null}function fi(n,t){var i=f,r=n+"s";return t?i+=ot:r+=" linear all",[i,r]}function ur(n){return[ht,n+"s"]}function ei(n,t){var i=t?st:y;return[i,n+"s"]}function g(n,t){var i=t?"-"+t+"s":"";return p(n,[y,i]),[y,i]}function lt(n,t){var i=t?"paused":"",r=e+ki;return p(n,[r,i]),[r,i]}function p(n,t){var i=t[0],r=t[1];n.style[i]=r}function oi(){var n=Object.create(null);return{flush:function(){n=Object.create(null)},count:function(t){var i=n[t];return i?i.total:0},get:function(t){var i=n[t];return i&&i.value},put:function(t,i){n[t]?n[t].total++:n[t]={total:1,value:i}}}}var o=t.noop,vt=t.extend,s=t.element,r=t.forEach,h=t.isArray,w=t.isString,tt=t.isObject,si=t.isUndefined,hi=t.isDefined,yt=t.isFunction,it=t.isElement,c=1,pt="ng-animate",rt="$$ngAnimateChildren",vr=function(n){return n&&n.then?!0:!1},wi=["$$rAF",function(n){function u(n){i.push([].concat(n));r()}function r(){var o,u,e;if(i.length){for(o=[],u=0;u<i.length;u++)e=i[u],f(e),e.length&&o.push(e);i=o;t||n(function(){t||r()})}}function f(n){var t=n.shift();t()}var i=[],t;return u.waitUntilQuiet=function(i){t&&t();t=n(function(){t=null;i();r()})},u}],bi=[function(){return function(n,i,r){var u=r.ngAnimateChildren;t.isString(u)&&u.length===0?i.data(rt,!0):r.$observe("ngAnimateChildren",function(n){n=n==="on"||n==="true";i.data(rt,n)})}}],gt="",f,ft,e,et;n.ontransitionend===i&&n.onwebkittransitionend!==i?(gt="-webkit-",f="WebkitTransition",ft="webkitTransitionEnd transitionend"):(f="transition",ft="transitionend");n.onanimationend===i&&n.onwebkitanimationend!==i?(gt="-webkit-",e="WebkitAnimation",et="webkitAnimationEnd animationend"):(e="animation",et="animationend");var ot="Duration",ni="Property",ti="Delay",ii="TimingFunction",ki="PlayState",di=3,gi=1.5,v=1e3,nr=9999,st=e+ti,ht=e+ot,y=f+ti,ri=f+ot,tr={transitionDuration:ri,transitionDelay:y,transitionProperty:f+ni,animationDuration:ht,animationDelay:st,animationIterationCount:e+"IterationCount"},ir={transitionDuration:ri,transitionDelay:y,animationDuration:ht,animationDelay:st};var fr=["$animateProvider",function(){var n=oi(),t=oi();this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$document","$sniffer","$$rAFScheduler",function(i,o,s,c,y,w,d){function it(n,t){var i="$$ngAnimateParentKey",r=n.parentNode,u=r[i]||(r[i]=++ut);return u+"-"+n.getAttribute("class")+"-"+t}function ot(t,r,u,f){var e=n.get(u);return e||(e=ui(i,t,f),e.animationIterationCount==="infinite"&&(e.animationIterationCount=1)),n.put(u,e),e}function st(r,u,f,e){var s,h;return n.count(f)>0&&(s=t.get(f),s||(h=l(u,"-stagger"),o.addClass(r,h),s=ui(i,r,e),s.animationDuration=Math.max(s.animationDuration,0),s.transitionDuration=Math.max(s.transitionDuration,0),o.removeClass(r,h),t.put(f,s))),s||{}}function at(i){nt.push(i);d.waitUntilQuiet(function(){var r,i;for(n.flush(),t.flush(),r=ht.offsetWidth+1,i=0;i<nt.length;i++)nt[i](r);nt.length=0})}function rt(n,t,i){var r=ot(n,t,i,tr),u=r.animationDelay,f=r.transitionDelay;return r.maxDelay=u&&f?Math.max(u,f):u||f,r.maxDuration=Math.max(r.animationDuration*r.animationIterationCount,r.transitionDuration),r}function vt(t,i){function yi(){yt()}function lr(){yt(!0)}function yt(n){ti||wi&&pt||(ti=!0,pt=!1,o.removeClass(t,wt),o.removeClass(t,hr),lt(b,!1),g(b,!1),r(ut,function(n){b.style[n[0]]=""}),tt(t,i),a(t,i),i.onDone&&i.onDone(),bt&&bt.complete(!n))}function ar(n){y.blockTransition&&g(b,n);y.blockKeyframeAnimation&&lt(b,!!n)}function pi(){return bt=new s({end:yi,cancel:lr}),yt(),{$$willAnimate:!1,start:function(){return bt},end:yi}}function wr(){function l(){var s,h,l;if(!ti){if(ar(!1),r(ut,function(n){var t=n[0],i=n[1];b.style[t]=i}),tt(t,i),o.addClass(t,hr),y.recalculateTimingStyles){if(ui=b.className+" "+wt,gt=it(b,ui),d=rt(b,ui,gt),ot=d.maxDelay,ri=Math.max(ot,0),nt=d.maxDuration,nt===0){yt();return}y.hasTransitions=d.transitionDuration>0;y.hasAnimations=d.animationDuration>0}(y.applyTransitionDelay||y.applyAnimationDelay)&&(ot=typeof i.delay!="boolean"&&ct(i.delay)?parseFloat(i.delay):ot,ri=Math.max(ot,0),y.applyTransitionDelay&&(d.transitionDelay=ot,s=ei(ot),ut.push(s),b.style[s[0]]=s[1]),y.applyAnimationDelay&&(d.animationDelay=ot,s=ei(ot,!0),ut.push(s),b.style[s[0]]=s[1]));si=ri*v;bi=nt*v;i.easing&&(l=i.easing,y.hasTransitions&&(h=f+ii,ut.push([h,l]),b.style[h]=l),y.hasAnimations&&(h=e+ii,ut.push([h,l]),b.style[h]=l));d.transitionDuration&&n.push(ft);d.animationDuration&&n.push(et);u=Date.now();t.on(n.join(" "),p);c(a,si+gi*bi);dt(t,i)}}function a(){yt()}function p(n){n.stopPropagation();var t=n.originalEvent||n,i=t.$manualTimeStamp||t.timeStamp||Date.now(),r=parseFloat(t.elapsedTime.toFixed(di));Math.max(i-u,0)>=si&&r>=nt&&(wi=!0,yt())}if(!ti){if(!b.parentNode){yt();return}var u,n=[],s=function(n){if(wi)pt&&n&&(pt=!1,yt());else if(pt=!n,d.animationDuration){var t=lt(b,pt);pt?ut.push(t):li(ut,t)}},h=vi>0&&(d.transitionDuration&&ht.transitionDuration===0||d.animationDuration&&ht.animationDuration===0)&&Math.max(ht.animationDelay,ht.transitionDelay);h?c(l,Math.floor(h*vi*v),!1):l();oi.resume=function(){s(!0)};oi.pause=function(){s(!1)}}}var b=u(t),gt,ht,tr,ai,rr,fr,er,vi,or,d,ot,y;if(!b||!b.parentNode)return pi();i=k(i);var ut=[],vr=t.attr("class"),sr=ci(i),ti,pt,wi,bt,oi,ri,si,nt,bi;if(i.duration===0||!w.animations&&!w.transitions)return pi();var hi=i.event&&h(i.event)?i.event.join(" "):i.event,yr=hi&&i.structural,ki="",vt="";yr?ki=l(hi,"ng-",!0):hi&&(ki=hi);i.addClass&&(vt+=l(i.addClass,"-add"));i.removeClass&&(vt.length&&(vt+=" "),vt+=l(i.removeClass,"-remove"));i.applyClassesEarly&&vt.length&&(tt(t,i),vt="");var wt=[ki,vt].join(" ").trim(),ui=vr+" "+wt,hr=l(wt,"-active"),cr=sr.to&&Object.keys(sr.to).length>0,pr=(i.keyframeStyle||"").length>0;return!pr&&!cr&&!wt?pi():(i.stagger>0?(tr=parseFloat(i.stagger),ht={transitionDelay:tr,animationDelay:tr,transitionDuration:0,animationDuration:0}):(gt=it(b,ui),ht=st(b,wt,gt,ir)),o.addClass(t,wt),i.transitionStyle&&(rr=[f,i.transitionStyle],p(b,rr),ut.push(rr)),i.duration>=0&&(ai=b.style[f].length>0,fr=fi(i.duration,ai),p(b,fr),ut.push(fr)),i.keyframeStyle&&(er=[e,i.keyframeStyle],p(b,er),ut.push(er)),vi=ht?i.staggerIndex>=0?i.staggerIndex:n.count(gt):0,or=vi===0,or&&g(b,nr),d=rt(b,ui,gt),ot=d.maxDelay,ri=Math.max(ot,0),nt=d.maxDuration,y={},y.hasTransitions=d.transitionDuration>0,y.hasAnimations=d.animationDuration>0,y.hasTransitionAll=y.hasTransitions&&d.transitionProperty=="all",y.applyTransitionDuration=cr&&(y.hasTransitions&&!y.hasTransitionAll||y.hasAnimations&&!y.hasTransitions),y.applyAnimationDuration=i.duration&&y.hasAnimations,y.applyTransitionDelay=ct(i.delay)&&(y.applyTransitionDuration||y.hasTransitions),y.applyAnimationDelay=ct(i.delay)&&y.hasAnimations,y.recalculateTimingStyles=vt.length>0,(y.applyTransitionDuration||y.applyAnimationDuration)&&(nt=i.duration?parseFloat(i.duration):nt,y.applyTransitionDuration&&(y.hasTransitions=!0,d.transitionDuration=nt,ai=b.style[f+ni].length>0,ut.push(fi(nt,ai))),y.applyAnimationDuration&&(y.hasAnimations=!0,d.animationDuration=nt,ut.push(ur(nt)))),nt===0&&!y.recalculateTimingStyles)?pi():(i.duration==null&&d.transitionDuration>0&&(y.recalculateTimingStyles=y.recalculateTimingStyles||or),si=ri*v,bi=nt*v,i.skipBlocking||(y.blockTransition=d.transitionDuration>0,y.blockKeyframeAnimation=d.animationDuration>0&&ht.animationDelay>0&&ht.animationDuration===0),kt(t,i),y.blockTransition||g(b,!1),ar(nt),{$$willAnimate:!0,end:yi,start:function(){if(!ti)return oi={end:yi,cancel:lr,resume:null,pause:null},bt=new s(oi),at(wr),bt}})}var tt=b(o),ut=0,ht=u(y).body,nt=[];return vt}]}],er=["$$animationProvider",function(n){n.drivers.push("$$animateCssDriver");var t="ng-animate-shim",f="ng-anchor",i="ng-anchor-out",e="ng-anchor-in";this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$document","$sniffer",function(n,h,c,l,a,v){function k(n){return n.replace(/\bng-\S+\b/g,"")}function d(n,t){return w(n)&&(n=n.split(" ")),w(t)&&(t=t.split(" ")),n.filter(function(n){return t.indexOf(n)===-1}).join(" ")}function nt(o,h,l){function tt(n){var t={},i=u(n).getBoundingClientRect();return r(["width","height","top","left"],function(n){var r=i[n];switch(n){case"top":r+=y.scrollTop;break;case"left":r+=y.scrollLeft}t[n]=Math.floor(r)+"px"}),t}function ut(){var t=n(v,{addClass:i,delay:!0,from:tt(h)});return t.$$willAnimate?t:null}function it(n){return n.attr("class")||""}function rt(){var t=k(it(l)),u=d(t,b),f=d(b,t),r=n(v,{to:tt(l),addClass:e+" "+u,removeClass:i+" "+f,delay:!0});return r.$$willAnimate?r:null}function w(){v.remove();h.removeClass(t);l.removeClass(t)}var v=s(u(h).cloneNode(!0)),b=k(it(v)),a,p,nt;return(h.addClass(t),l.addClass(t),v.addClass(f),g.append(v),p=ut(),!p&&(a=rt(),!a))?w():(nt=p||a,{start:function(){function i(){n&&n.end()}var t,n=nt.start();return n.done(function(){if(n=null,!a&&(a=rt(),a))return n=a.start(),n.done(function(){n=null;w();t.complete()}),n;w();t.complete()}),t=new c({end:i,cancel:i})}})}function tt(n,t,i,u){var f=p(n),e=p(t),o=[];if(r(u,function(n){var r=n.out,u=n["in"],t=nt(i,r,u);t&&o.push(t)}),f||e||o.length!==0)return{start:function(){function i(){r(n,function(n){n.end()})}var n=[],t;return f&&n.push(f.start()),e&&n.push(e.start()),r(o,function(t){n.push(t.start())}),t=new c({end:i,cancel:i}),c.all(n,function(n){t.complete(n)}),t}}}function p(t){var u=t.element,i=t.options||{},r;return t.structural?(i.structural=i.applyClassesEarly=!0,i.event=t.event,i.event==="leave"&&(i.onDone=i.domOperation)):i.event=null,r=n(u,i),r.$$willAnimate?r:null}if(!v.animations&&!v.transitions)return o;var y=u(a).body,b=u(l),g=s(y.parentNode===b?y:b);return function(n){return n.from&&n.to?tt(n.from,n.to,n.classes,n.anchors):p(n)}}]}],or=["$animateProvider",function(n){this.$get=["$injector","$$AnimateRunner","$$rAFMutex","$$jqLite",function(t,i,u,f){function s(i){var f,e,r,u,o;for(i=h(i)?i:i.split(" "),f=[],e={},r=0;r<i.length;r++)u=i[r],o=n.$$registeredAnimations[u],o&&!e[u]&&(f.push(t.get(o)),e[u]=!0);return f}var e=b(f);return function(n,t,u,f){function w(){f.domOperation();e(n,f)}function nt(n,t,r,u,f){var s,e;switch(r){case"animate":s=[t,u.from,u.to,f];break;case"setClass":s=[t,b,d,f];break;case"addClass":s=[t,b,f];break;case"removeClass":s=[t,d,f];break;default:s=[t,f]}if(s.push(u),e=n.apply(n,s),e)if(yt(e.start)&&(e=e.start()),e instanceof i)e.done(f);else if(yt(e))return e;return o}function h(n,t,u,f,e){var s=[];return r(f,function(r){var f=r[e];f&&s.push(function(){var r,s,h=!1,e=function(n){h||(h=!0,(s||o)(n),r.complete(!n))};return r=new i({end:function(){e()},cancel:function(){e(!0)}}),s=nt(f,n,t,u,function(n){var t=n===!1;e(t)}),r})}),s}function g(n,t,u,f,e){var o=h(n,t,u,f,e),s,c;if(o.length===0&&(e==="beforeSetClass"?(s=h(n,"removeClass",u,f,"beforeRemoveClass"),c=h(n,"addClass",u,f,"beforeAddClass")):e==="setClass"&&(s=h(n,"removeClass",u,f,"removeClass"),c=h(n,"addClass",u,f,"addClass")),s&&(o=o.concat(s)),c&&(o=o.concat(c))),o.length!==0)return function(n){var t=[];return o.length&&r(o,function(n){t.push(n())}),t.length?i.all(t,n):n(),function(n){r(t,function(t){n?t.cancel():t.end()})}}}var y,p;arguments.length===3&&tt(u)&&(f=u,u=null);f=k(f);u||(u=n.attr("class")||"",f.addClass&&(u+=" "+f.addClass),f.removeClass&&(u+=" "+f.removeClass));var b=f.addClass,d=f.removeClass,v=s(u),c,l;if(v.length&&(t=="leave"?(p="leave",y="afterLeave"):(p="before"+t.charAt(0).toUpperCase()+t.substr(1),y=t),t!=="enter"&&t!=="move"&&(c=g(n,t,f,v,p)),l=g(n,t,f,v,y)),c||l)return{start:function(){function s(t){u=!0;w();a(n,f);e.complete(t)}function h(n){u||((r||o)(n),s(n))}var r,t=[],u,e;return c&&t.push(function(n){r=c(n)}),t.length?t.push(function(n){w();n(!0)}):w(),l&&t.push(function(n){r=l(n)}),u=!1,e=new i({end:function(){h()},cancel:function(){h(!0)}}),i.chain(t,s),e}}}}]}],sr=["$$animationProvider",function(n){n.drivers.push("$$animateJsDriver");this.$get=["$$animateJs","$$AnimateRunner",function(n,t){function i(t){var i=t.element,r=t.event,u=t.options,f=t.classes;return n(i,r,f,u)}return function(n){if(n.from&&n.to){var u=i(n.from),f=i(n.to);return!u&&!f?void 0:{start:function(){function e(){return function(){r(n,function(n){n.end()})}}function o(n){i.complete(n)}var n=[],i;return u&&n.push(u.start()),f&&n.push(f.start()),t.all(n,o),i=new t({end:e(),cancel:e()})}}}return i(n)}}]}],nt="data-ng-animate",at="$ngAnimatePin",hr=["$animateProvider",function(n){function o(n,i,r,u){return t[n].some(function(n){return n(i,r,u)})}function f(n,t){n=n||{};var i=(n.addClass||"").length>0,r=(n.removeClass||"").length>0;return t?i&&r:i||r}var e=1,i=2,t=this.rules={skip:[],cancel:[],join:[]};t.join.push(function(n,t){return!t.structural&&f(t.options)});t.skip.push(function(n,t){return!t.structural&&!f(t.options)});t.skip.push(function(n,t,i){return i.event=="leave"&&t.structural});t.skip.push(function(n,t,i){return i.structural&&!t.structural});t.cancel.push(function(n,t,i){return i.structural&&t.structural});t.cancel.push(function(n,t,r){return r.state===i&&t.structural});t.cancel.push(function(n,t,i){var r=t.options,u=i.options;return r.addClass&&r.addClass===u.removeClass||r.removeClass&&r.removeClass===u.addClass});this.$get=["$$rAF","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$jqLite",function(t,l,v,y,p,w,g,ft,et){function kt(n,t){return d(n,t,{})}function ri(n,t){var e=u(n),i=[],f=st[t];return f&&r(f,function(n){n.node.contains(e)&&i.push(n.callback)}),i}function ui(n,i,u,f){t(function(){r(ri(i,n),function(n){n(i,u,f)})})}function fi(n,t,r){function yt(t,i,r,u){ui(i,n,r,u);t.progress(i,r,u)}function p(t){bt(n,r);a(n,r);r.domOperation();c.complete(!t)}var y,ut,c,ft,v,st,at,vt,it,rt;if((n=ai(n),n&&(y=u(n),ut=n.parent()),r=k(r),c=new g,!y)||(h(r.addClass)&&(r.addClass=r.addClass.join(" ")),h(r.removeClass)&&(r.removeClass=r.removeClass.join(" ")),r.from&&!tt(r.from)&&(r.from=null),r.to&&!tt(r.to)&&(r.to=null),ft=[y.className,r.addClass,r.removeClass].join(" "),!ii(ft)))return p(),c;var b=["enter","move","leave"].indexOf(t)>=0,nt=!ct||ht.get(y),s=!nt&&ot.get(y)||{},et=!!s.state;if(nt||et&&s.state==e||(nt=!oi(n,ut,t)),nt)return p(),c;if(b&&ei(n),v={structural:b,element:n,event:t,close:p,options:r,runner:c},et){if(st=o("skip",n,v,s),st)return s.state===i?(p(),c):(d(n,s.options,r),s.runner);if(at=o("cancel",n,v,s),at)s.state===i?s.runner.end():s.structural?s.close():d(n,v.options,s.options);else if(vt=o("join",n,v,s),vt)if(s.state===i)kt(n,r);else return t=v.event=s.event,r=d(n,s.options,v.options),c}else kt(n,r);return(it=v.structural,it||(it=v.event==="animate"&&Object.keys(v.options.to||{}).length>0||f(v.options)),!it)?(p(),lt(n),c):(b&&dt(ut),rt=(s.counter||0)+1,v.counter=rt,gt(n,e,v),l.$$postDigest(function(){var e=ot.get(y),o=!e,s,h,l;if(e=e||{},s=n.parent()||[],h=s.length>0&&(e.event==="animate"||e.structural||f(e.options)),o||e.counter!==rt||!h){o&&(bt(n,r),a(n,r));(o||b&&e.event!==t)&&(r.domOperation(),c.end());h||lt(n);return}t=!e.structural&&f(e.options,!0)?"setClass":e.event;e.structural&&dt(s);gt(n,i);l=w(n,t,e.options);l.done(function(i){p(!i);var r=ot.get(y);r&&r.counter===rt&&lt(u(n));yt(c,t,"close",{})});c.setHost(l);yt(c,t,"start",{})}),c)}function ei(n){var t=u(n),f=t.querySelectorAll("["+nt+"]");r(f,function(n){var r=parseInt(n.getAttribute(nt)),t=ot.get(n);switch(r){case i:t.runner.end();case e:t&&ot.remove(n)}})}function lt(n){var t=u(n);t.removeAttribute(nt);ot.remove(t)}function yt(n,t){return u(n)===u(t)}function dt(n){function e(n,t){!t.structural&&f(t.options)&&(t.state===i&&t.runner.end(),lt(n))}var t=u(n),r;do{if(!t||t.nodeType!==c)break;r=ot.get(t);r&&e(t,r);t=t.parentNode}while(1)}function oi(n,t){var o=!1,i=!1,f=!1,r,u=n.data(at),e,h,s,l;for(u&&(t=u);t&&t.length;){if(i||(i=yt(t,v)),e=t[0],e.nodeType!==c)break;if(h=ot.get(e)||{},f||(f=h.structural||ht.get(e)),(si(r)||r===!0)&&(s=t.data(rt),hi(s)&&(r=s)),f&&r===!1)break;i||(i=yt(t,v),i||(u=t.data(at),u&&(t=u)));o||(o=yt(t,ti));t=t.parent()}return l=!f||r,l&&i&&o}function gt(n,t,i){var r,f,e;i=i||{};i.state=t;r=u(n);r.setAttribute(nt,t);f=ot.get(r);e=f?vt(f,i):i;ot.put(r,e)}var ot=new p,ht=new p,ct=null,ni=l.$watch(function(){return ft.totalPendingRequests===0},function(n){n&&(ni(),l.$$postDigest(function(){l.$$postDigest(function(){ct===null&&(ct=!0)})}))}),ti=s(y[0].body),st={},pt=n.classNameFilter(),ii=pt?function(n){return pt.test(n)}:function(){return!0},bt=b(et);return{on:function(n,t,i){var r=ut(t);st[n]=st[n]||[];st[n].push({node:r,callback:i})},off:function(n,t,i){function u(n,t,i){var r=ut(t);return n.filter(function(n){var t=n.node===r&&(!i||n.callback===i);return!t})}var r=st[n];r&&(st[n]=arguments.length===1?null:u(r,t,i))},pin:function(n,t){wt(it(n),"element","not an element");wt(it(t),"parentElement","not an element");n.data(at,t)},push:function(n,t,i,r){return i=i||{},i.domOperation=r,fi(n,t,i)},enabled:function(n,t){var f=arguments.length,e,i,r;return f===0?t=!!ct:(e=it(n),e?(i=u(n),r=ht.get(i),f===1?t=!r:(t=!!t,t?r&&ht.remove(i):ht.put(i,!0))):t=ct=!!n),t}}}]}],cr=["$$rAF",function(n){return function(){var t=!1;return n(function(){t=!0}),function(i){t?i():n(i)}}}],lr=["$q","$$rAFMutex",function(n,t){function i(n){this.setHost(n);this._doneCallbacks=[];this._runInAnimationFrame=t();this._state=0}var f=0,e=1,u=2;return i.chain=function(n,t){function r(){if(i===n.length){t(!0);return}n[i](function(n){if(n===!1){t(!1);return}i++;r()})}var i=0;r()},i.all=function(n,t){function f(r){i=i&&r;++u===n.length&&t(i)}var u=0,i=!0;r(n,function(n){n.done(f)})},i.prototype={setHost:function(n){this.host=n||{}},done:function(n){this._state===u?n():this._doneCallbacks.push(n)},progress:o,getPromise:function(){if(!this.promise){var t=this;this.promise=n(function(n,i){t.done(function(t){t===!1?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;t._state===f&&(t._state=e,t._runInAnimationFrame(function(){t._resolve(n)}))},_resolve:function(n){this._state!==u&&(r(this._doneCallbacks,function(t){t(n)}),this._doneCallbacks.length=0,this._state=u)}},i}],ar=["$animateProvider",function(){function e(n,t){n.data(f,t)}function o(n){n.removeData(f)}function t(n){return n.data(f)}var n="ng-animate-ref",i=this.drivers=[],f="$$animationRunner";this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$rAFScheduler",function(f,h,c,l,v){var p=[],g=b(f),w=0,d=0,y=[];return function(b,nt,tt){function ht(t){var u="["+n+"]",f=t.hasAttribute(n)?[t]:t.querySelectorAll(u),i=[];return r(f,function(t){var r=t.getAttribute(n);r&&r.length&&i.push(t)}),i}function ct(t){var i=[],f={},o,e;return r(t,function(t,e){var c=t.element,l=u(c),a=t.event,v=["enter","move"].indexOf(a)>=0,o=t.structural?ht(l):[],h;o.length?(h=v?"to":"from",r(o,function(t){var i=t.getAttribute(n);f[i]=f[i]||{};f[i][h]={animationID:e,element:s(t)}})):i.push(t)}),o={},e={},r(f,function(n){var r=n.from,s=n.to,h,c,a;if(!r||!s){h=r?r.animationID:s.animationID;c=h.toString();o[c]||(o[c]=!0,i.push(t[h]));return}var u=t[r.animationID],f=t[s.animationID],l=r.animationID.toString();e[l]||(a=e[l]={structural:!0,beforeStart:function(){u.beforeStart();f.beforeStart()},close:function(){u.close();f.close()},classes:lt(u.classes,f.classes),from:u,to:f,anchors:[]},a.classes.length?i.push(a):(i.push(u),i.push(f)));e[l].anchors.push({out:r.element,"in":s.element})}),i}function lt(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],r.substring(0,3)!=="ng-")for(u=0;u<t.length;u++)if(r===t[u]){f.push(r);break}return f.join(" ")}function at(n){for(var r,f,u,t=i.length-1;t>=0;t--)if((r=i[t],c.has(r))&&(f=c.get(r),u=f(n),u))return u}function vt(){b.addClass(pt);it&&f.addClass(b,it)}function yt(n,i){function r(n){t(n).setHost(i)}n.from&&n.to?(r(n.from.element),r(n.to.element)):r(n.element)}function st(){var n=t(b);n&&(nt!=="leave"||!tt.$$domOperationFired)&&n.end()}function ut(n){b.off("$destroy",st);o(b);g(b,tt);a(b,tt);tt.domOperation();it&&f.removeClass(b,it);b.removeClass(pt);rt.complete(!n)}var ft,rt,et,it,ot;if(tt=k(tt),ft=["enter","move","leave"].indexOf(nt)>=0,rt=new l({end:function(){ut()},cancel:function(){ut(!0)}}),!i.length)return ut(),rt;e(b,rt);et=bt(b.attr("class"),bt(tt.addClass,tt.removeClass));it=tt.tempClasses;it&&(et+=" "+it,tt.tempClasses=null);ft||(ot=w,w+=1);p.push({element:b,classes:et,event:nt,classBasedIndex:ot,structural:ft,options:tt,beforeStart:vt,close:ut});b.on("$destroy",st);return p.length>1?rt:(h.$$postDigest(function(){d=w;w=0;y.length=0;var n=[];r(p,function(i){t(i.element)&&n.push(i)});p.length=0;r(ct(n),function(n){function i(){var i,r,f,e,o;n.beforeStart();r=n.close;f=n.anchors?n.from.element||n.to.element:n.element;t(f)&&u(f).parentNode&&(e=at(n),e&&(i=e.start));i?(o=i(),o.done(function(n){r(!n)}),yt(n,o)):r()}n.structural?i():(y.push({node:u(n.element),fn:i}),n.classBasedIndex===d-1&&(y=y.sort(function(n,t){return t.node.contains(n.node)}).map(function(n){return n.fn}),v(y)))})}),rt)}}]}];t.module("ngAnimate",[]).directive("ngAnimateChildren",bi).factory("$$rAFMutex",cr).factory("$$rAFScheduler",wi).factory("$$AnimateRunner",lr).provider("$$animateQueue",hr).provider("$$animation",ar).provider("$animateCss",fr).provider("$$animateCssDriver",er).provider("$$animateJs",or).provider("$$animateJsDriver",sr)}(window,window.angular);angular.module("vr.directives.slider",["ngTouch"]).directive("slider",["$timeout","$document","$interpolate","$swipe",function(n,t,i,r){"use strict";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||i===0)&&(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 nt(n,t){return n>0&&!isNaN(t)?Math.ceil(t/n)*n:t}function u(n){return d+" "+n+" "+g}var k=3,d=i.startSymbol(),g=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 ht(n){n||(n=i);var t=[];return angular.forEach(n.children(),function(n){t.push(o(n))}),t}function ct(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 at=w.showSteps,it=w.stepWidth?"stepWidth":"step",rt=!!w.ngModelRange,d={},g="ngModel",tt="ngModelRange",ft="selectBar",ut=["floor","ceiling","stickiness",g],et,st,ot,lt;if(d=function(){for(var n,i=ht(),r=[],t=0,u=i.length;t<u;t++)n=i[t],n=o(n),n.css({"white-space":"nowrap",position:"absolute",display:"block","z-index":1,cursor:"pointer"}),r.push(n);return r}(),d=ct(d,!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)"),d.fullBar.css({left:0,right:0}),AngularSlider.inputtypes.range?(et={position:"absolute",margin:0,padding:0,opacity:0,height:"100%"},d.minInput.attr("step",u("inputSteps()")),d.minInput.attr("min",u("floor")),d.minInput.css(et),d.minInput.css("left",0),rt?(d.minInput.attr("max",u("ngModelRange - (buffer / 2)")),d.maxInput.attr("step",u("inputSteps()")),d.maxInput.attr("min",u("ngModel + (buffer / 2)")),d.maxInput.attr("max",u("ceiling")),d.maxInput.css(et),d.selInput.attr("step",u("inputSteps()")),d.selInput.attr("min",u("ngModel")),d.selInput.attr("max",u("ngModelRange")),d.selInput.css(et)):(d.minInput.attr("max",u("ceiling")),d.minInput.css({width:"100%"}),d.maxInput.remove(),d.selInput.remove())):(d.minInput.remove(),d.maxInput.remove(),d.selInput.remove()),l(d.stepBubs.children().eq(0),u("translation(step)")),l(d.ceilBub,u("translation(ceiling)")),l(d.flrBub,u("translation(floor)")),l(d.selBub,u("rangeTranslation("+g+","+tt+")")),l(d.lowBub,u("translation("+g+")")),l(d.highBub,u("translation("+tt+")")),l(d.cmbBub,u("combinedTranslation("+g+","+tt+")")),rt)ut.push(tt),ut.unshift("buffer");else for(st=[d.selBar,d.unSelBarLow,d.unSelBarHigh,d.maxPtr,d.selBub,d.highBub,d.cmbBub],ot=0,lt=st.length;ot<lt;ot++)i=st[ot],i.remove();return ut.unshift("precision",it),at||d.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===g||n===tt?i[n]=v(i[n],i.precision,i[it],i.floor,i.ceiling):n==="buffer"?i.buffer=!i.buffer||isNaN(i.buffer)||i.buffer<0?0:nt(i[it],i.buffer):n==="precision"?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)):n==="stickiness"&&(isNaN(i.stickiness)?i.stickiness=k:i.stickiness<1&&(i.stickiness=1));i.decodedValues[n]=i.decodeRef(n)});rt&&(i[tt]<i[g]&&(n=i[tt],i[tt]=i[g],i[g]=n),t=v(i[tt]-i[g],i.precision,i[it]),i.buffer>0&&t<i.buffer&&(r=i.encode((i.decodedValues[g]+i.decodedValues[tt])/2),i[g]=v(r-i.buffer/2,i.precision,i[it],i.floor,i.ceiling),i[tt]=i[g]+i.buffer,i[tt]>i.ceiling&&(i[tt]=i.ceiling,i[g]=i.ceiling-i.buffer)));dt=a(d.fullBar);vt=c(d.minPtr);ot=e(d.fullBar);gt=ot+dt-a(d.minPtr);wt=gt-ot;yt=i.floor;lt=i.decodedValues.floor;pt=i.ceiling;ni=i.decodedValues.ceiling;ti=pt-yt;at=ni-lt;ii=b(at,i.decodedValues[it])}function bt(){function nt(n){return(n-ot)/wt*100}function vi(n){return nt(n)/100*at+lt}function fi(n){return i.encode(vi(n))}function ei(n){var t=n-lt;return ti===at?t=b(t,i.decodedValues[it])/ii:t/=at,t*100}function l(n){return ei(i.decode(n))}function n(n){return p(n*wt/100)}function li(n){return Math.min(Math.max(n,ot),gt)}function ct(t){return f(t,n(nt(li(e(t)))))}function bt(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(n/t*2),1),i.stickiness)*t/2}function oi(){var u=ei(i.decodedValues[g]),b=l(i[g]+i[it])-u,k=u-l(i[g]-i[it]),a=l(i[g]+i.buffer)-u,o=nt(vt+ot),t=u+bt(et,et>0?b:k);if(f(d.minPtr,n(t)),f(d.lowBub,n(nt(e(d.minPtr)-c(d.lowBub)+vt))),rt){var s=ei(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+bt(st,st>0?ut:ft);if(t>s-v&&(t=u+bt(et,a,!0),f(d.minPtr,n(t)),f(d.lowBub,n(nt(e(d.minPtr)-c(d.lowBub)+vt)))),r<u+a&&(r=s+bt(st,v,!0)),f(d.maxPtr,n(r)),f(d.highBub,n(nt(e(d.maxPtr)-c(d.highBub)+vt))),f(d.selBar,n(t+o)),d.selBar.css({width:n(r-t)}),f(d.selBub,n((t+r)/2-nt(c(d.selBub)+ot)+o)),f(d.cmbBub,n((t+r)/2-nt(c(d.cmbBub)+ot)+o)),d.unSelBarLow.css({left:0,width:n(t+o)}),f(d.unSelBarHigh,n(r+o)),d.unSelBarHigh.css({right:0}),AngularSlider.inputtypes.range){var h=o*2,y=t+a/2,ht=100-y;y+=h;var ct=r-v/2,p=t+h,w=r-t-h;r<=t+h&&(p=t,w=r+h-t);d.minInput.css({width:n(ct)});d.maxInput.css({left:n(y),width:n(ht)});d.selInput.css({left:n(p),width:n(w)})}}}function si(){var n=d.lowBub;ct(d.lowBub);rt&&(ct(d.highBub),ct(d.selBub),y(d.lowBub,d.highBub)<10?(s(d.lowBub),s(d.highBub),h(d.cmbBub),ct(d.cmbBub),n=d.cmbBub):(h(d.lowBub),h(d.highBub),s(d.cmbBub),n=d.highBub));y(d.flrBub,d.lowBub)<5?s(d.flrBub):rt?y(d.flrBub,n)<5?s(d.flrBub):h(d.flrBub):h(d.flrBub);y(d.lowBub,d.ceilBub)<5?s(d.ceilBub):rt?y(n,d.ceilBub)<5?s(d.ceilBub):h(d.ceilBub):h(d.ceilBub)}function kt(){et=0;st=0;ut&&(oi(),si(),ut.removeClass("active"));ut=null;k=null;ni=!1}function ht(n){ut&&i.$apply(function(){var s=n.clientX||n.x,r,f,h,a,o;if(ni)r=fi(s)-hi,f=fi(s)+ci,r<yt?(f+=yt-r,r=yt):f>pt&&(r-=f-pt,f=pt),h=l(r),a=l(f),et=h,st=a,i[g]=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=et-l(r),st=st-l(f);else{var p=li(s+ot-e(u)-c(ut)),y=nt(p),t=i.encode(lt+at*y/100);et=y;rt&&(i.buffer>0?k===g?t>i[tt]-i.buffer&&(t=i[tt]-i.buffer):t<i[g]+i.buffer&&(t=i[g]+i.buffer):k===g?t>i[tt]&&(i[g]=i[tt],i.decodedValues[g]=i.decodeRef(g),k=tt,o=d.minPtr,d.minPtr=d.maxPtr,d.maxPtr=o,d.maxPtr.removeClass("active").removeClass("high").addClass("low"),d.minPtr.addClass("active").removeClass("low").addClass("high")):t<i[g]&&(i[tt]=i[g],i.decodedValues[tt]=i.decodeRef(tt),k=g,o=d.minPtr,d.minPtr=d.maxPtr,d.maxPtr=o,d.minPtr.removeClass("active").removeClass("low").addClass("high"),d.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===g?(et=et-l(t),st=0):(st=et-l(t),et=0)}i.ngChange&&i.ngChange();w.$setViewValue(i[g]);oi();si()})}function ai(n,t,r){var f,u;i.ngDisabled&&i.ngDisabled===!0||(n.preventDefault(),f=n.clientX||n.x,ut=t,k=r,ut.addClass("active"),k===ft&&(ni=!0,u=fi(f),hi=u-i[g],ci=i[tt]-u),ht(n))}function pi(){var i,n,u;AngularSlider.inputtypes.range?(i=function(n,t,i){function u(n,r){ai(r,t,i)}function f(n,t){ht(t);kt()}n=o(n);r.bind(n,{start:u,move:function(n,t){ht(t)},end:f,cancel:function(n,t){kt(t)}})},i(d.minInput,d.minPtr,g),rt&&(i(d.maxInput,d.maxPtr,tt),i(d.selInput,d.selBar,ft))):(n=function(n,t,i){n=o(n);i=angular.isUndefined(i)?n:o(i);r.bind(n,{start:function(n,r){ai(r,i,t)}})},u=function(n){n=o(n);r.bind(n,{move:function(n,t){ht(t)},end:function(n,t){ht(t);kt()},cancel:function(n,t){kt(t)}})},u(t),n(d.minPtr,g),n(d.lowBub,g),n(d.flrBub,g,d.minPtr),rt?(n(d.maxPtr,tt),n(d.highBub,tt),n(d.ceilBub,tt,d.maxPtr),n(d.selBar,ft),n(d.selBub,ft,d.selBar),n(d.unSelBarLow,g,d.minPtr),n(d.unSelBarHigh,tt,d.maxPtr)):(n(d.ceilBub,g,d.minPtr),n(d.fullBar,g,d.minPtr)))}var ni,hi,ci,ut,k;ui();f(d.flrBub,0);f(d.ceilBub,p(dt-a(d.ceilBub)));oi();si();ri||(pi(),ri=!0)}var d=ct(ht(u),rt,AngularSlider.inputtypes.range),kt;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})};(Math.round(i.encode(i.decode(1)))!==1||Math.round(i.encode(i.decode(100)))!==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,i.precision*-1)};var dt=0,vt=0,ot=0,gt=0,wt=0,yt=0,lt=0,pt=0,ni=0,ti=0,at=0,ii=1,et=0,st=0,ri=!1;for(kt=0;kt<ut.length;kt++)i.$watch(ut[kt],bt);o(window).bind("resize",bt);i.$on("refreshSlider",function(){n(bt)});n(bt)}}}}}]),function(n,t){"use strict";function e(){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){var f=r==="?"?r:null,e=r==="*"?r:null;return u.push({name:i,optional:!!f}),t=t||"",""+(f?"":t)+"(?:"+(f?t:"")+(e&&"(.+?)"||"([^/]+)")+(f||"")+")"+(f||"")}).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 typeof n=="string"&&(n={redirectTo:n}),this.when(null,n),this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(r,u,e,o,s,h,c){function k(n,t){var s=t.keys,e={},r,i,o,u,f;if(!t.regexp||(r=t.regexp.exec(n),!r))return null;for(i=1,o=r.length;i<o;++i)u=s[i-1],f=r[i],u&&f&&(e[u.name]=f);return e}function p(n){var i=a.current;l=d();y=l&&i&&l.$$route===i.$$route&&t.equals(l.pathParams,i.pathParams)&&!l.reloadOnSearch&&!v;!y&&(i||l)&&r.$broadcast("$routeChangeStart",l,i).defaultPrevented&&n&&n.preventDefault()}function w(){var i=a.current,n=l;y?(i.params=n.params,t.copy(i.params,e),r.$broadcast("$routeUpdate",i)):(n||i)&&(v=!1,a.current=n,n&&n.redirectTo&&(t.isString(n.redirectTo)?u.path(b(n.redirectTo,n.params)).search(n.params).replace():u.url(n.redirectTo(n.pathParams,u.path(),u.search())).replace()),o.when(n).then(function(){if(n){var u=t.extend({},n.resolve),r,i;return t.forEach(u,function(n,i){u[i]=t.isString(n)?s.get(n):s.invoke(n,null,null,i)}),t.isDefined(r=n.template)?t.isFunction(r)&&(r=r(n.params)):t.isDefined(i=n.templateUrl)&&(t.isFunction(i)&&(i=i(n.params)),i=c.getTrustedResourceUrl(i),t.isDefined(i)&&(n.loadedTemplateUrl=i,r=h(i))),t.isDefined(r)&&(u.$template=r),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 d(){var f,r;return t.forEach(n,function(n){!r&&(f=k(u.path(),n))&&(r=i(n,{params:t.extend({},u.search(),f),pathParams:f}),r.$$route=n)}),r||n[null]&&i(n[null],{params:{},pathParams:{}})}function b(n,i){var r=[];return t.forEach((n||"").split(":"),function(n,t){if(t===0)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,y,a={routes:n,reload:function(){v=!0;r.$evalAsync(function(){p();w()})},updateParams:function(n){if(this.current&&this.current.$$route)n=t.extend({},this.current.params,n),u.path(b(this.current.$$route.originalPath,n)),u.search(n);else throw f("norout","Tried updating route when with no current route");}};return r.$on("$locationChangeStart",p),r.$on("$locationChangeSuccess",w),a}]}function o(){this.$get=function(){return{}}}function r(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,c=e&&e.$template;if(t.isDefined(c)){var o=u.$new(),y=n.current,w=s(o,function(n){r.enter(n,null,l||f).then(function(){t.isDefined(a)&&(!a||u.$eval(a))&&i()});v()});l=w;h=y.scope=o;h.$emit("$viewContentLoaded");h.$eval(p)}else v()}var h,l,c,a=e.autoscroll,p=e.onload||"";u.$on("$routeChangeSuccess",y);y()}}}function u(n,t,i){return{restrict:"ECA",priority:-400,link:function(r,u){var f=i.current,o=f.locals,s,e;u.html(o.$template);s=n(u.contents());f.controller&&(o.$scope=r,e=t(f.controller,o),f.controllerAs&&(r[f.controllerAs]=e),u.data("$ngControllerController",e),u.children().data("$ngControllerController",e));s(r)}}}var i=t.module("ngRoute",["ng"]).provider("$route",e),f=t.$$minErr("ngRoute");i.provider("$routeParams",o);i.directive("ngView",r);i.directive("ngView",u);r.$inject=["$route","$anchorScroll","$animate"];u.$inject=["$compile","$controller","$route"]}(window,window.angular),function(n,t,i){"use strict";function e(n){return n!=null&&n!==""&&n!=="hasOwnProperty"&&f.test("."+n)}function o(n,t){var f,u,o,s;if(!e(t))throw r("badmember",'Dotted member path "@{0}" is invalid.',t);for(f=t.split("."),u=0,o=f.length;u<o&&n!==i;u++)s=f[u],n=n!==null?n[s]:i;return n}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"]).factory("$resource",["$http","$q",function(n,f){function p(n){return w(n,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function w(n,t){return encodeURIComponent(n).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,t?"%20":"+")}function l(n,t){this.template=n;this.defaults=t||{};this.urlParams={}}function a(p,w,b){function g(n,t){var i={};return t=h({},w,t),e(t,function(t,r){s(t)&&(t=t());i[r]=t&&t.charAt&&t.charAt(0)=="@"?o(n,t.substr(1)):t}),i}function nt(n){return n.resource}function k(n){u(n||{},this)}var d=new l(p);return b=h({},v,b),e(b,function(o,l){var a=/^(POST|PUT|PATCH)$/i.test(o.method);k[l]=function(l,v,p,w){var et={},tt,it,ut,rt;switch(arguments.length){case 4:ut=w;it=p;case 3:case 2:if(s(v)){if(s(l)){it=l;ut=v;break}it=v;ut=p}else{et=l;tt=v;it=p;break}case 1:s(l)?it=l:a?tt=l:et=l;break;case 0:break;default:throw r("badargs","Expected up to 4 arguments [params, data, success, error], got {0} arguments",arguments.length);}var ot=this instanceof k,b=ot?tt:o.isArray?[]:new k(tt),ft={},st=o.interceptor&&o.interceptor.response||nt,ht=o.interceptor&&o.interceptor.responseError||i;return(e(o,function(n,t){t!="params"&&t!="isArray"&&t!="interceptor"&&(ft[t]=y(n))}),a&&(ft.data=tt),d.setUrlParams(ft,h({},g(tt,o.params||{}),et),o.url),rt=n(ft).then(function(n){var i=n.data,f=b.$promise;if(i){if(t.isArray(i)!==!!o.isArray)throw r("badcfg","Error in resource configuration. Expected response to contain an {0} but got an {1}",o.isArray?"array":"object",t.isArray(i)?"array":"object");o.isArray?(b.length=0,e(i,function(n){b.push(new k(n))})):(u(i,b),b.$promise=f)}return b.$resolved=!0,n.resource=b,n},function(n){return b.$resolved=!0,(ut||c)(n),f.reject(n)}),rt=rt.then(function(n){var t=st(n);return(it||c)(t,n.headers),t},ht),!ot)?(b.$promise=rt,b.$resolved=!1,b):rt};k.prototype["$"+l]=function(n,t,i){s(n)&&(i=t,t=n,n={});var r=k[l].call(this,n,this,t,i);return r.$promise||r}}),k.bind=function(n){return a(p,h({},w,n),b)},k}var v={get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}},c=t.noop,e=t.forEach,h=t.extend,y=t.copy,s=t.isFunction;return l.prototype={setUrlParams:function(n,i,u){var o=this,f=u||o.template,s,h,c=o.urlParams={};e(f.split(/\W/),function(n){if(n==="hasOwnProperty")throw r("badname","hasOwnProperty is not a valid parameter name.");!new RegExp("^\\d+$").test(n)&&n&&new RegExp("(^|[^\\\\]):"+n+"(\\W|$)").test(f)&&(c[n]=!0)});f=f.replace(/\\:/g,":");i=i||{};e(o.urlParams,function(n,r){s=i.hasOwnProperty(r)?i[r]:o.defaults[r];t.isDefined(s)&&s!==null?(h=p(s),f=f.replace(new RegExp(":"+r+"(\\W|$)","g"),function(n,t){return h+t})):f=f.replace(new RegExp("(/?):"+r+"(\\W|$)","g"),function(n,t,i){return i.charAt(0)=="/"?i:t+i})});f=f.replace(/\/+$/,"")||"/";f=f.replace(/\/\.(?=\w+($|\?))/,".");n.url=f.replace(/\/\\\./,"/.");e(i,function(t,i){o.urlParams[i]||(n.params=n.params||{},n.params[i]=t)})}},a}])}(window,window.angular);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 f(arguments,function(t){t!==n&&f(t,function(t,i){n.hasOwnProperty(i)||(n[i]=t)})}),n}function bt(n,t){var r=[];for(var 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 i=[];return t.forEach(n,function(n,t){i.push(t)}),i}function h(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=[],s,e;for(s in o)if(o[s].params&&(f=p(o[s].params),f.length))for(e in f)h(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 f(n,function(n){i[n]=t[n]}),i}function b(n){var i={},r=Array.prototype.concat.apply(Array.prototype,Array.prototype.slice.call(arguments,1));for(var t in n)h(r,t)==-1&&(i[t]=n[t]);return i}function nt(n,t){var r=l(n),i=r?[]:{};return f(n,function(n,u){t(n,u)&&(i[r?i.length:u]=n)}),i}function y(n,t){var i=l(n)?[]:{};return f(n,function(n,r){i[r]=t(n,r)}),i}function rt(n,t){var s=1,c=2,o={},l=[],a=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]===s){d.splice(0,h(d,i));throw new Error("Cyclic dependency: "+d.join(" -> "));}if(g[i]=s,e(n))w.push(i,[function(){return t.get(n)}],l);else{var r=t.annotate(n);f(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 v(n)&&n.then&&n.$$promises}if(!v(o))throw new Error("'invocables' must be an object");var nt=p(o||{}),w=[],d=[],g={};return f(o,tt),o=d=g=null,function(e,o,s){function d(){--ft||(rt||k(c,o.$$values),h.$$values=c,h.$$promises=h.$$promises||!0,delete h.$$inheritedValues,g.resolve(c))}function tt(n){h.$$failure=n;g.reject(n)}function et(i,r,o){function v(n){l.reject(n);tt(n)}function y(){if(!u(h.$$failure))try{l.resolve(t.invoke(r,s,c));l.promise.then(function(n){c[i]=n;d()},v)}catch(n){v(n)}}var l=n.defer(),a=0;f(o,function(n){p.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(a++,p[n].then(function(t){c[n]=t;--a||y()},v))});a||y();p[i]=l.promise}var l,ut;if(it(e)&&s===i&&(s=o,o=e,e=null),e){if(!v(e))throw new Error("'locals' must be an object");}else e=a;if(o){if(!it(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()");}else o=y;var g=n.defer(),h=g.promise,p=h.$$promises={},c=r({},e),ft=1+w.length/3,rt=!1;if(u(o.$$failure))return tt(o.$$failure),h;for(o.$$inheritedValues&&k(c,b(o.$$inheritedValues,nt)),r(p,o.$$promises),o.$$values?(rt=k(c,b(o.$$values,nt)),h.$$inheritedValues=b(o.$$values,nt),d()):(o.$$inheritedValues&&(h.$$inheritedValues=b(o.$$inheritedValues,nt)),o.then(d,tt)),l=0,ut=w.length;l<ut;l+=3)e.hasOwnProperty(w[l])?d():et(w[l],w[l+1],w[l+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 o(n)?n(t):n};this.fromUrl=function(i,r){return o(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 nt(t,i,r,u){if(g.push(t),d[t])return d[t];if(!/^\w+(-+\w+)*(?:\[\])?$/.test(t))throw new Error("Invalid parameter name '"+t+"' in pattern '"+n+"'");if(b[t])throw new Error("Duplicate parameter name '"+t+"' in pattern '"+n+"'");return b[t]=new c.Param(t,i,r,u),b[t]}function tt(n,t,i){var r=["",""],u=n.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!t)return u;switch(i){case!1:r=["(",")"];break;case!0:r=["?(",")?"];break;default:r=["("+i+"|",")?"]}return u+r[0]+t+r[1]}function it(i,r){var f,u,e,s,h;return f=i[2]||i[3],h=t.params[f],e=n.substring(o,i.index),u=r?i[4]:i[4]||(i[1]=="*"?".*":null),s=c.type(u||"string")||w(c.type("string"),{pattern:new RegExp(u)}),{id:f,regexp:u,segment:e,type:s,cfg:h}}var f,l,e,s,k;t=r({params:{}},v(t)?t:{});var a=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,rt=/([:]?)([\w\[\]-]+)|\{([\w\[\]-]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,y="^",o=0,h,p=this.segments=[],d=u?u.params:{},b=this.params=u?u.params.$$new():new c.ParamSet,g=[];for(this.source=n;h=a.exec(n);){if(f=it(h,!1),f.segment.indexOf("?")>=0)break;l=nt(f.id,f.type,f.cfg,"path");y+=tt(f.segment,l.type.pattern.source,l.squash);p.push(f.segment);o=a.lastIndex}if(e=n.substring(o),s=e.indexOf("?"),s>=0){if(k=this.sourceSearch=e.substring(s),e=e.substring(0,s),this.sourcePath=n.substring(0,o+s),k.length>0)for(o=0;h=rt.exec(k);)f=it(h,!0),l=nt(f.id,f.type,f.cfg,"search"),o=a.lastIndex}else this.sourcePath=n,this.sourceSearch="";y+=tt(e)+(t.strict===!1?"/?":"")+"$";p.push(e);this.regexp=new RegExp(y,t.caseInsensitive?"i":i);this.prefix=p[0];this.$$paramNames=g}function s(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(n){return this.pattern.test(n)}function lt(){return{strict:g,caseInsensitive:d}}function ot(n){return o(n)||l(n)&&o(n[n.length-1])}function st(){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;var n={},ut=!0,it=[],b,et={string:{encode:rt,decode:ht,is:ct,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,is:t.identity,equals:t.equals,pattern:/.*/}};ft.$$getDefaultValue=function(n){if(!ot(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&&!e(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(lt(),t))};this.isMatcher=function(n){if(!v(n))return!1;var t=!0;return f(a.prototype,function(i,r){o(i)&&(t=t&&u(n[r])&&o(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 s(r({name:t},i)),f&&(it.push({name:t,def:f}),ut||st()),this};f(et,function(t,i){n[i]=new s(r({name:i},t))});n=w(n,{});this.$get=["$injector",function(t){return b=t,ut=!1,st(),f(et,function(t,i){n[i]||(n[i]=new s(t))}),this}];this.Param=function(t,f,o,c){function it(n){var t=v(n)?p(n):[],i=h(t,"value")===-1&&h(t,"type")===-1&&h(t,"squash")===-1&&h(t,"array")===-1;return i&&(n={value:n}),n.$$fn=ot(n.value)?n.value:function(){return n.value},n}function rt(i,r,u){if(i.type&&r)throw new Error("Param '"+t+"' has two type configurations.");return r?r:i.type?i.type instanceof s?i.type:new s(i.type):u==="config"?n.any:n.string}function ut(){var n={array:c==="search"?"auto":!1},i=t.match(/\[\]$/)?{array:!0}:{};return r(n,i,o).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||e(i))return i;throw new Error("Invalid squash policy: '"+i+"'. Valid policies: false, true, or arbitrary string");}function et(n,t,r,u){var f,o,s=[{from:"",to:r||t?i:""},{from:null,to:r||t?i:""}];return f=l(n.replace)?n.replace:[],e(u)&&f.push({from:u,to:i}),o=y(f,function(n){return n.from}),nt(s,function(n){return h(o,n.from)===-1}).concat(f)}function st(){if(!b)throw new Error("Injectable functions cannot be called at configuration time");return b.invoke(o.$$fn)}function ht(n){function t(n){return function(t){return t.from===n}}function i(n){var i=y(nt(d.replace,t(n)),function(n){return n.to});return i.length?i[0]:n}return n=i(n),u(n)?d.type.decode(n):st()}function ct(){return"{Param:"+t+" "+f+" squash: '"+k+"' optional: "+w+"}"}var d=this,a;o=it(o);f=rt(o,f,c);a=ut();f=a?f.$asArray(a,c==="search"):f;f.name!=="string"||a||c!=="path"||o.value!==i||(o.value="");var w=o.value!==i,k=ft(o,w),g=et(o,a,w,k);r(this,{id:t,type:f,location:c,array:a,squash:k,replace:g,isOptional:w,value:ht,dynamic:i,config:o,toString:ct})};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(),f(i,function(n){f(p(n),function(n){h(t,n)===-1&&h(r,n)===-1&&t.push(n)})}),t},$$values:function(n){var t={},i=this;return f(i.$$keys(),function(r){t[r]=i[r].value(n&&n[r])}),t},$$equals:function(n,t){var i=!0,r=this;return f(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){var t=!0,u,i,r,e=this;return f(this.$$keys(),function(f){r=e[f];i=n[f];u=!i&&r.isOptional;t=t&&(u||!!r.type.is(i))}),t},$$parent:i};this.ParamSet=k}function et(n,f){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 v(n,t,i){if(!i)return!1;var r=n.invoke(t,t,{$match:i});return u(r)?r:!0}function y(r,u,f,o){function b(n,t,i){return v==="/"?n:t?v.slice(0,-1)+n:i?v.slice(1)+n:n}function p(n){function o(n){var t=n(f,r);return t?(e(t)&&r.replace().url(t),!0):!1}var u,c,t;if(!n||!n.defaultPrevented){if(u=l&&r.url()===l,l=i,u)return!0;for(c=s.length,t=0;t<c;t++)if(o(s[t]))return;h&&o(h)}}function w(){return c=c||u.$on("$locationChangeSuccess",p)}var v=o.baseHref(),y=r.url(),l;return a||w(),{sync:function(){p()},listen:function(){return w()},update:function(n){if(n){y=r.url();return}r.url()!==y&&(r.url(y),r.replace())},push:function(n,t,u){r.url(n.format(t||{}));l=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=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 s=[],h=null,a=!1,c;this.rule=function(n){if(!o(n))throw new Error("'rule' must be a function");return s.push(n),this};this.otherwise=function(n){if(e(n)){var t=n;n=function(){return t}}else if(!o(n))throw new Error("'rule' must be a function");return h=n,this};this.when=function(n,t){var i,u=e(t),c,s,h;if(e(n)&&(n=f.compile(n)),!u&&!o(t)&&!l(t))throw new Error("invalid 'handler' in when()");c={matcher:function(n,t){return u&&(i=f.compile(t),t=["$match",function(n){return i.format(n)}]),r(function(i,r){return v(i,t,n.exec(r.path(),r.search()))},{prefix:e(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 v(i,t,n.exec(r.path()))},{prefix:p(n)})}};s={matcher:f.isMatcher(n),regex:n instanceof RegExp};for(h in s)if(s[h])return this.rule(c[h](n,t));throw new Error("invalid 'what' in when()");};this.deferIntercept=function(n){n===i&&(n=!0);a=n};this.$get=y;y.$inject=["$location","$rootScope","$injector","$browser"]}function ot(n,s){function ot(n){return n.indexOf(".")===0||n.indexOf("^")===0}function k(n,t){var s;if(!n)return i;var h=e(n),u=h?n:n.name,c=ot(u);if(c){if(!t)throw new Error("No reference point given for path '"+u+"'");t=k(t);for(var r=u.split("."),f=0,l=r.length,o=t;f<l;f++){if(r[f]===""&&f===0){o=t;continue}if(r[f]==="^"){if(!o.parent)throw new Error("Path '"+u+"' not valid for state '"+t.name+"'");o=o.parent;continue}break}r=r.slice(f).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,!e(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(".")):e(t.parent)?t.parent:v(t.parent)&&e(t.parent.name)?t.parent.name:"",u&&!tt[u])return st(u,t.self);for(r in b)o(b[r])&&(t[r]=b[r](t,b.$delegates[r]));return tt[i]=t,!t[ft]&&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){var t=n.split("."),i=a.$current.name.split("."),r,u;if(t[0]==="**"&&(i=i.slice(h(i,t[1])),i.unshift("**")),t[t.length-1]==="**"&&(i.splice(h(i,t[t.length-2])+1,Number.MAX_VALUE),i.push("**")),t.length!=i.length)return!1;for(r=0,u=t.length;r<u;r++)t[r]==="*"&&(i[r]="*");return i.join("")===t.join("")}function at(n,t){return e(n)&&!u(t)?b[n]:!o(t)||!e(n)?this:(b[n]&&!b.$delegates[n]&&(b.$delegates[n]=b[n]),b[n]=t,this)}function vt(n,t){return v(n)?t=n:t.name=n,ut(t),this}function et(n,s,h,c,v,b,rt){function ht(t,i,r,u){var e=n.$broadcast("$stateNotFound",t,i,r),f;return e.defaultPrevented?(rt.update(),et):e.retry?u.$retry?(rt.update(),ot):(f=a.transition=s.when(e.retry),f.then(function(){return f!==a.transition?ut:(t.options.$retry=!0,a.transitionTo(t.to,t.toParams,t.options))},function(){return et}),rt.update(),f):null}function at(n,i,r,u,e,a){var w=r?i:g(n.params.$$keys(),i),y={$stateParams:w},p;return e.resolve=v.resolve(n.resolve,y,e.resolve,n),p=[e.resolve.then(function(n){e.globals=n})],u&&p.push(u),f(n.views,function(i,r){var u=i.resolve&&i.resolve!==n.resolve?i.resolve:{};u.$template=[function(){return h.load(r,{view:i,locals:y,params:w,notify:a.notify})||""}];p.push(v.resolve(u,y,e.resolve,n).then(function(f){if(o(i.controllerProvider)||l(i.controllerProvider)){var s=t.extend({},u,y);f.$$controller=c.invoke(i.controllerProvider,null,s)}else f.$$controller=i.controller;f.$$state=n;f.$$controllerAs=i.controllerAs;e[r]=f}))}),s.all(p).then(function(){return e})}var ut=s.reject(new Error("transition superseded")),st=s.reject(new Error("transition prevented")),et=s.reject(new Error("transition aborted")),ot=s.reject(new Error("transition failed"));return nt.locals={resolve:null,globals:{$stateParams:{}}},a={params:{},current:nt.self,$current:nt,transition:null},a.reload=function(){return a.transitionTo(a.current,b,{reload:!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,f){var d,vt,et,tt,ct;i=i||{};f=r({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},f||{});var l=a.$current,p=a.params,lt=l.path,bt,e=k(t,f.relative);if(!u(e)){if(d={to:t,toParams:i,options:f},vt=ht(d,l.self,p,f),vt)return vt;if(t=d.to,i=d.toParams,f=d.options,e=k(t,f.relative),!u(e)){if(!f.relative)throw new Error("No such state '"+t+"'");throw new Error("Could not resolve '"+t+"' from state '"+f.relative+"'");}}if(e[ft])throw new Error("Cannot transition to abstract state '"+t+"'");if(f.inherit&&(i=it(b,i||{},a.$current,e)),!e.params.$$validates(i))return ot;i=e.params.$$values(i);t=e;var v=t.path,o=0,h=v[o],y=nt.locals,pt=[];if(!f.reload)while(h&&h===lt[o]&&h.ownParams.$$equals(i,p))y=pt[o]=h.locals,o++,h=v[o];if(yt(t,l,y,f))return t.self.reloadOnSearch!==!1&&rt.update(),a.transition=null,s.when(a.current);if(i=g(t.params.$$keys(),i||{}),f.notify&&n.$broadcast("$stateChangeStart",t.self,i,l.self,p).defaultPrevented)return rt.update(),st;for(et=s.when(y),tt=o;tt<v.length;tt++,h=v[tt])y=pt[tt]=w(y),et=at(h,i,h===t,et,y,f);return ct=a.transition=et.then(function(){var r,u,e;if(a.transition!==ct)return ut;for(r=lt.length-1;r>=o;r--)e=lt[r],e.self.onExit&&c.invoke(e.self.onExit,e.self,e.locals.globals),e.locals=null;for(r=o;r<v.length;r++)u=v[r],u.locals=pt[r],u.self.onEnter&&c.invoke(u.self.onEnter,u.self,u.locals.globals);return a.transition!==ct?ut:(a.$current=t,a.current=t.self,a.params=i,wt(a.params,b),a.transition=null,f.location&&t.navigable&&rt.push(t.navigable.url,t.navigable.locals.globals.$stateParams,{$$avoidResync:!0,replace:f.location==="replace"}),f.notify&&n.$broadcast("$stateChangeSuccess",t.self,i,l.self,p),rt.update(!0),a.current)},function(r){return a.transition!==ct?ut:(a.transition=null,bt=n.$broadcast("$stateChangeError",t.self,i,l.self,p,r),bt.defaultPrevented||rt.update(),s.reject(r))})},a.is=function(n,t,f){f=r({relative:a.$current},f||{});var e=k(n,f.relative);return u(e)?a.$current!==e?!1:t?d(e.params.$$values(t),b):!0:i},a.includes=function(n,t,f){if(f=r({relative:a.$current},f||{}),e(n)&&ct(n)){if(!lt(n))return!1;n=a.$current.name}var o=k(n,f.relative);return u(o)?u(a.$current.includes[o.name])?t?d(o.params.$$values(t),b,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=k(n,f.relative),!u(e))?null:(f.inherit&&(t=it(b,t||{},a.$current,e)),o=e&&f.lossy?e.navigable:e,!o||o.url===i||o.url===null)?null:rt.href(o.url,g(e.params.$$keys(),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=k(n,t||a.$current);return i&&i.self?i.self:null},a}function yt(n,t,i,r){if(n===t&&(i===t.locals&&!r.reload||n.self.reloadOnSearch===!1))return!0}var nt,tt={},a,rt={},ft="abstract",b={parent:function(n){if(u(n.parent)&&n.parent)return k(n.parent);var t=/^(.+)\.[^.]+$/.exec(n.name);return t?k(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(e(t))return t.charAt(0)=="^"?s.compile(t.substring(1),i):(n.parent.navigable||nt).url.concat(t,i);if(!t||s.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 f(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 f(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=et;et.$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 kt(){var n=!1;this.useAnchorScroll=function(){n=!0};this.$get=["$anchorScroll","$timeout",function(t,i){return n?t:function(n){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 b(){c&&(c.remove(),c=null);s&&(s.$destroy(),s=null);l&&(p.leave(l,function(){c=null}),c=l,l=null)}function v(h){var c,v=lt(i,o,f,u),d=v&&n.$current&&n.$current.locals[v],k;(h||d!==y)&&(c=i.$new(),y=n.$current.locals[v],k=e(c,function(n){p.enter(n,f,function(){s&&s.$emit("$viewContentAnimationEnded");(t.isDefined(a)&&!a||i.$eval(a))&&r(n)});b()}),l=k,s=c,s.$emit("$viewContentLoaded"),s.$eval(w))}var c,l,s,y,w=o.onload||"",a=o.autoscroll,p=h(o,i);i.$on("$stateChangeSuccess",function(){v(!1)});i.$on("$viewContentLoading",function(){v(!1)});v(!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,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 dt(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"];return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(u,f,e,o){var s=dt(e.uiSref,n.current.name),h=null,w=at(f)||n.$current,c=null,b=f.prop("tagName")==="A",v=f[0].nodeName==="FORM",k=v?"action":"href",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.$$setStateInfo(s.state,h),c===null)return y=!1,!1;e.$set(k,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=b&&!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 s(){h()?r.addClass(o):r.removeClass(o)}function h(){return typeof u.uiSrefActiveEq!="undefined"?f&&n.is(f.name,e):f&&n.includes(f.name,e)}var f,e,o;o=i(u.uiSrefActiveEq||u.uiSrefActive||"",!1)(t);this.$$setStateInfo=function(t,i){f=n.get(t,at(r));e=i;s()};t.$on("$stateChangeSuccess",s)}]}}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,o=t.isFunction,e=t.isString,v=t.isObject,l=t.isArray,f=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 a(n){function t(n){return n.split("").reverse().join("")}function i(n){return n.replace(/\\-/,"-")}var r=t(n).split(/-(?!\\)/),u=y(r,t);return y(u,i).reverse()}var o=this.regexp.exec(n),f,u;if(!o)return null;t=t||{};var s=this.parameters(),l=s.length,c=this.segments.length-1,h={},i,e,r;if(c!==o.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");for(i=0;i<c;i++){for(r=s[i],f=this.params[r],u=o[i+1],e=0;e<f.replace;e++)f.replace[e].from===u&&(u=f.replace[e].to);u&&f.array===!0&&(u=a(u));h[r]=f.value(u)}for(;i<l;i++)r=s[i],h[r]=this.params[r].value(t[r]);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 g(n){return encodeURIComponent(n).replace(/-/g,function(n){return"%5C%"+n.charCodeAt(0).toString(16).toUpperCase()})}var s,w;n=n||{};var h=this.segments,c=this.parameters(),b=this.params;if(!this.validates(n))return null;for(var a=!1,k=h.length-1,d=c.length,i=h[0],r=0;r<d;r++){var nt=r<k,o=c[r],u=b[o],v=u.value(n[o]),p=u.isOptional&&u.type.equals(u.value(),v),f=p?u.squash:!1,t=u.type.encode(v);if(nt)s=h[r+1],f===!1?(t!=null&&(i+=l(t)?y(t,g).join("-"):encodeURIComponent(t)),i+=s):f===!0?(w=i.match(/\/$/)?/\/?(.*)/:/(.*)/,i+=s.match(w)[1]):e(f)&&(i+=f+s);else{if(t==null||p&&f!==!1)continue;l(t)||(t=[t]);t=y(t,encodeURIComponent).join("&"+o+"=");i+=(a?"&":"?")+(o+"="+t);a=!0}}return i};s.prototype.is=function(){return!0};s.prototype.encode=function(n){return n};s.prototype.decode=function(n){return n};s.prototype.equals=function(n,t){return n==t};s.prototype.$subPattern=function(){var n=this.pattern.toString();return n.substr(1,n.length-2)};s.prototype.pattern=/.*/;s.prototype.toString=function(){return"{Type:"+this.name+"}"};s.prototype.$asArray=function(n,t){function r(n,t){function r(n,t){return function(){return n[t].apply(n,arguments)}}function f(n){return l(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 e(n,t){return function(i){i=f(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=f(t),e=f(i),r;if(u.length!==e.length)return!1;for(r=0;r<u.length;r++)if(!n(u[r],e[r]))return!1;return!0}}this.encode=e(r(n,"encode"));this.decode=e(r(n,"decode"));this.is=e(r(n,"is"),!0);this.equals=h(r(n,"equals"));this.pattern=n.pattern;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",kt);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(n,t){"use strict";function g(){this.$get=["$$sanitizeUri",function(n){return function(t){var i=[];return at(t,k(i,function(t,i){return!/^unsafe/.test(n(t,i))})),i.join("")}}]}function nt(n){var i=[],r=k(i,t.noop);return r.chars(n),i.join("")}function i(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 at(n,i){function g(n,u,f,e){if(u=t.lowercase(u),l[u])while(s.last()&&a[s.last()])w("",s.last());c[u]&&s.last()==u&&w("",u);e=o[u]||!!e;e||s.push(u);var h={};f.replace(tt,function(n,t,i,u,f){var e=i||u||f||"";h[t]=r(e)});i.start&&i.start(u,h,e)}function w(n,r){var u=0,f;if(r=t.lowercase(r),r)for(u=s.length-1;u>=0;u--)if(s[u]==r)break;if(u>=0){for(f=s.length-1;f>=u;f--)i.end&&i.end(s[f]);s.length=u}}typeof n!="string"&&(n=n===null||typeof n=="undefined"?"":""+n);var y,p,h,s=[],k=n,b;for(s.last=function(){return s[s.length-1]};n;){if(b="",p=!0,s.last()&&v[s.last()]?(n=n.replace(new RegExp("([\\W\\w]*)<\\s*\\/\\s*"+s.last()+"[^>]*>","i"),function(n,t){return t=t.replace(ut,"$1").replace(ft,"$1"),i.chars&&i.chars(r(t)),""}),w("",s.last())):(n.indexOf("<!--")===0?(y=n.indexOf("--",4),y>=0&&n.lastIndexOf("-->",y)===y&&(i.comment&&i.comment(n.substring(4,y)),n=n.substring(y+3),p=!1)):e.test(n)?(h=n.match(e),h&&(n=n.replace(h[0],""),p=!1)):rt.test(n)?(h=n.match(f),h&&(n=n.substring(h[0].length),h[0].replace(f,w),p=!1)):it.test(n)&&(h=n.match(u),h?(h[4]&&(n=n.substring(h[0].length),h[0].replace(u,g)),p=!1):(b+="<",n=n.substring(1))),p&&(y=n.indexOf("<"),b+=y<0?n:n.substring(0,y),n=y<0?"":n.substring(y),i.chars&&i.chars(r(b)))),n==k)throw d("badparse","The sanitizer was unable to parse the following block of html: {0}",n);k=n}w()}function r(n){return n?(w.innerHTML=n.replace(/</g,"&lt;"),w.textContent):""}function b(n){return n.replace(/&/g,"&amp;").replace(et,function(n){var t=n.charCodeAt(0),i=n.charCodeAt(1);return"&#"+((t-55296)*1024+(i-56320)+65536)+";"}).replace(ot,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function k(n,i){var u=!1,r=t.bind(n,n.push);return{start:function(n,f,e){n=t.lowercase(n);!u&&v[n]&&(u=n);u||y[n]!==!0||(r("<"),r(n),t.forEach(f,function(u,f){var e=t.lowercase(f),o=n==="img"&&e==="src"||e==="background";lt[e]===!0&&(p[e]!==!0||i(u,o))&&(r(" "),r(f),r('="'),r(b(u)),r('"'))}),r(e?"/>":">"))},end:function(n){n=t.lowercase(n);u||y[n]!==!0||(r("<\/"),r(n),r(">"));n==u&&(u=!1)},chars:function(n){u||r(b(n))}}}var d=t.$$minErr("$sanitize"),u=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,f=/^<\/\s*([\w:-]+)[^>]*>/,tt=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,it=/^</,rt=/^<\//,ut=/<!--(.*?)-->/g,e=/<!DOCTYPE([^>]*?)>/i,ft=/<!\[CDATA\[(.*?)]]>/g,et=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ot=/([^\#-~| |!])/g,o=i("area,br,col,hr,img,wbr"),s=i("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),h=i("rp,rt"),c=t.extend({},h,s),l=t.extend({},s,i("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")),a=t.extend({},h,i("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")),st=i("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"),v=i("script,style"),y=t.extend({},o,l,a,c,st),p=i("background,cite,href,longdesc,src,usemap,xlink:href"),ht=i("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"),ct=i("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),lt=t.extend({},p,ct,ht),w=document.createElement("pre");t.module("ngSanitize",[]).provider("$sanitize",g);t.module("ngSanitize").filter("linky",["$sanitize",function(n){var i=/((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"â€â€™]/i,r=/^mailto:/i;return function(u,f){function l(n){n&&o.push(nt(n))}function a(n,i){o.push("<a ");t.isDefined(f)&&o.push('target="',f,'" ');o.push('href="',n.replace(/"/g,"&quot;"),'">');l(i);o.push("<\/a>")}if(!u)return u;for(var e,s=u,o=[],h,c;e=s.match(i);)h=e[0],e[2]||e[4]||(h=(e[3]?"http://":"mailto:")+h),c=e.index,l(s.substr(0,c)),a(h,e[0].replace(r,"")),s=s.substring(c+e[0].length);return l(s),n(o.join(""))}}])}(window,window.angular),function(n,t){"use strict";function i(n,i,u,f){r.directive(n,["$parse","swipe",function(r,e){var s=75,h=.3,o=30;return function(c,l,a){function p(n,t){do{var i=n.getAttribute("class");if(i&&i.match(t)!==null)return!0;n=n.parentElement}while(n!==null);return!1}function k(n){if(!v||!y)return!1;var t=(n.y-v.y)*i,r=(n.x-v.x)*i;return u===null?Math.abs(t)<o&&Math.abs(r)<o:u===!1?Math.abs(t)<s&&r>0&&r>o&&Math.abs(t)/r<h:Math.abs(r)<s&&t>0&&t>o&&Math.abs(r)/t<h}var b=r(a[n]),v,y,w=["touch"];t.isDefined(a.ngSwipeDisableMouse)||w.push("mouse");e.bind(l,{start:function(n,t){u&&!p(t.target,"noPreventDefault")&&t.preventDefault();v=n;y=!p(t.target,"noStartDrag")},cancel:function(){y=!1},end:function(n,t){k(n)&&c.$apply(function(){l.triggerHandler(f);b(c,{$event:t})})}},w)}}])}var r=t.module("swipe",[]);r.factory("swipe",[function(){function i(n){var t=n.originalEvent||n,r=t.touches&&t.touches.length?t.touches:[t],i=t.changedTouches&&t.changedTouches[0]||r[0];return{x:i.clientX,y:i.clientY}}function n(n,i){var r=[];return t.forEach(n,function(n){var t=f[n][i];t&&r.push(t)}),r.join(" ")}var r=40,u=.3,f={mouse:{start:"mousedown",move:"mousemove",end:"mouseup"},touch:{start:"touchstart",move:"touchmove",end:"touchend",cancel:"touchcancel"}};return{bind:function(t,f,e){var l,a,o,c,s=!1,v=!1,h=!0;e=e||["mouse","touch"];t.on(n(e,"start"),function(n){o=i(n);s=!0;l=0;a=0;v=!1;h=!0;c=o;f.start&&f.start(o,n)});t.on(n(e,"cancel"),function(n){s=!1;f.cancel&&f.cancel(n)});t.on(n(e,"move"),function(n){var t,e,y,p;s&&o&&((t=i(n),l+=Math.abs(t.x-c.x),a+=Math.abs(t.y-c.y),c=t,l<r&&a<r)||(v||(e=Math.abs(t.x-o.x),y=Math.abs(t.y-o.y),p=y/e,p<u?(n.preventDefault(),h=!1):h=!0,v=!0),n.isVertical=h,f.move&&f.move(t,n)))});t.on(n(e,"end"),function(n){s&&(n.isVertical=h,s=!1,f.end&&f.end(i(n),n))})}}}]);try{t.module("ngTouch")}catch(u){i("ngSwipeLeft",-1,!1,"swipeleft");i("ngSwipeRight",1,!1,"swiperight")}i("ngSwipeUp",-1,!0,"swipeup");i("ngSwipeDown",1,!0,"swipedown");i("ngTap",1,null,"tap")}(window,window.angular);!function(){"use strict";angular.module("angular-carousel-3d",["swipe"])}(),function(){"use strict";function n(){function n(n,t,i,r){n.carousel3d=r}return{require:"^carousel3d",restrict:"AE",template:'<div class="slide-3d" ng-click="carousel3d.slideClicked($index)" ng-swipe-left="carousel3d.goPrev()" ng-swipe-right="carousel3d.goNext()" ng-transclude><\/div>',replace:!0,transclude:!0,link:n}}angular.module("angular-carousel-3d").directive("carousel3dSlide",n);n.$inject=[]}(),function(){"use strict";function n(n,t,i,r,u,f,e,o){function k(){o.build(h.model,h.options).then(function(n){s=n;h.slides=s.slides;h.controls=s.controls;h.isLoading=!1;h.isSuccessful=!0;var i=s.getOuterHeight(),u=s.getOuterWidth();t.css({height:i+"px"});r(function(){(b=angular.element(t[0].querySelector(".carousel-3d"))).css({width:u+"px",height:i+"px"});l=b.children();y()})},function(n){t.css({height:n.getOuterHeight()+"px"});h.isLoading=!1;h.isSuccessful=!1},function(n){h.percentLoaded=n.percent})}function y(n,t){var l,v;s.setSlides();var f=s.getOuterHeight(),e=s.getOuterWidth(),o="auto"===s.topSpace?0:f/2-f/2,y=s.width/2-e/2,r=t?t/1e3:s.animationSpeed/1e3,i=999;(angular.forEach(s.slides,function(t,i){var u={position:"absolute",opacity:0,visibility:"hidden",overflow:"hidden",top:o+"px","border-width":s.border+"px",width:e+"px",height:f+"px"};n&&angular.extend(u,{"-webkit-transition":"all "+r+"s ","-moz-transition":"all "+r+"s ","-o-transition":"all "+r+"s ","-ms-transition":"all "+r+"s ",transition:"all "+r+"s "});c(i).css(u)}),c(s.currentIndex).addClass("current").css({zIndex:i,opacity:1,visibility:"visible","-webkit-transform":"none","-moz-transform":"none","-o-transform":"none","-ms-transform":"none",transform:"none",left:y+"px",top:o+"px",width:e+"px",height:f+"px"}),angular.forEach(s.rightSlides,function(n,t){var r=a(t,i,!0);i-=t+1;c(n).css(r).css({opacity:1,visibility:"visible",zIndex:i})}),angular.forEach(s.leftSlides,function(n,t){var r=a(t,i);i-=t+1;c(n).css(r).css({opacity:1,visibility:"visible",zIndex:i})}),s.total>s.visible)&&(l=a(s.rightSlides.length-1,s.rightSlides.length-1,!0),v=a(s.leftSlides.length-1,s.leftSlides.length-1),c(s.rightOutSlide).css(l),c(s.leftOutSlide).css(v));s.autoRotationSpeed>0&&(h.autoRotation=u(function(){h.autoRotationLocked||("rtl"===h.dir?h.goPrev():h.goNext())},s.autoRotationSpeed));h.isRendered=!0}function a(n,t,i){var u="auto"==s.space?parseInt((n+1)*(s.width/1.5)):parseInt((n+1)*s.space),r=i?"translateX("+u+"px) translateZ(-"+(s.inverseScaling+100*(n+1))+"px) rotateY(-"+s.perspective+"deg)":"translateX(-"+u+"px) translateZ(-"+(s.inverseScaling+100*(n+1))+"px) rotateY("+s.perspective+"deg)";return{"-webkit-transform":r,"-moz-transform":r,"-o-transform":r,"-ms-transform":r,transform:r,left:"0%",top:"auto"===s.topSpace?"none":parseInt((n+1)*s.space),width:"none",height:"none",zIndex:t,overflow:"visible"}}function v(n,t,i){return angular.isFunction(h.onBeforeChange)&&h.onBeforeChange({index:s.currentIndex}),s.setCurrentIndex(n<0||n>s.total-1?0:n),s.isLastSlide()&&angular.isFunction(h.onLastSlide)&&h.onLastSlide({index:s.currentIndex}),angular.forEach(l,function(n,t){angular.element(l[t]).removeClass("current")}),s.setLock(!0),y(!0,s.animationSpeed),r(function(){g()},s.animationSpeed),i}function p(n){return!(!(n=n||!1)&&s.getLock()||!s.loop&&s.isLastSlide())&&(s.isLastSlide()?v(0,!1,n):v(s.currentIndex+1,!1,n),!1)}function w(n){return!(!(n=n||!1)&&s.getLock()||!s.loop&&s.isFirstSlide())&&(s.isFirstSlide()?v(s.total-1,!1,n):v(s.currentIndex-1,!1,n),!1)}function d(n){var t=n===s.total-1&&s.isFirstSlide()?-1:n-s.currentIndex;s.isLastSlide()&&0===n&&(t=1);for(var i=t<0?-t:t,u=0,f=0;f<i;f++)r(function(){t<0?w(i):p(i)},1===i?0:u),u+=s.animationSpeed/i}function g(){s.setLock(!1);h.onSlideChange&&h.onSlideChange({index:s.currentIndex})}function c(n){return n>=0?angular.element(l[n]):angular.element(l[s.total+n])}function nt(n){if(u.cancel(h.autoRotation),s.currentIndex!=n){if(!s.clicking)return!1;d(n)}else h.onSelectedClick&&h.onSelectedClick({index:s.currentIndex})}var h=this;h.isLoading=!0;h.isSuccessful=!1;h.isRendered=!1;h.percentLoaded=0;h.autoRotation=null;h.slideClicked=nt;h.goPrev=w;h.goNext=p;var b=null,l=[],s={};n.$watch("[vm.model, vm.options]",k,!0)}angular.module("angular-carousel-3d").controller("Carousel3dController",n);n.$inject=["$scope","$element","$attrs","$timeout","$interval","$log","$window","Carousel3dService"]}(),function(){"use strict";function n(){return{restrict:"AE",template:'<div class="carousel-3d-container" ng-switch="vm.isLoading" ng-mouseenter="vm.autoRotationLocked=true" ng-mouseleave="vm.autoRotationLocked=false">   <div class="carousel-3d-loader" ng-switch-when="true">       <div class="carousel-3d-loader-circle" style="-webkit-transform:scale(0.75)"><div><div><\/div><div><\/div><\/div><\/div>       <div class="carousel-3d-loader-percentage">{{ vm.percentLoaded }}<\/div>   <\/div>   <div ng-switch-when="false" ng-switch="vm.isSuccessful">       <div class="carousel-3d" ng-switch-when="true" ng-show="vm.isRendered" ng-transclude>       <\/div>       <p ng-switch-when="false" class="carousel-3d-loader-error">There was a problem during load<\/p>       <div ng-if="vm.controls" class="carousel-3d-controls">           <div class="carousel-3d-next arrow-left" ng-click="vm.goPrev()"><\/div>           <div class="carousel-3d-prev arrow-right" ng-click="vm.goNext()"><\/div>       <\/div>   <\/div><\/div>',replace:!0,scope:{model:"=ngModel",options:"=",onSelectedClick:"&",onSlideChange:"&",onLastSlide:"&",onBeforeChange:"&"},controller:"Carousel3dController as vm",bindToController:!0,transclude:!0}}angular.module("angular-carousel-3d").directive("carousel3d",n);n.$inject=["$timeout"]}(),function(){"use strict";function n(n,t,i){function r(n,i){this.slides=n||[];this.leftSlides=[];this.rightSlides=[];this.leftOutSlide="";this.rightOutSlide="";this.loadCount=0;this.errorCount=0;this.states={PENDING:1,LOADING:2,RESOLVED:3,REJECTED:4};this.total=this.slides.length;this.currentIndex=0;this.lock=!1;this.loop=i.loop||!1;this.clicking=i.clicking||!1;this.sourceProp=i.sourceProp||"";this.visible=i.visible||5;this.perspective=i.perspective||35;this.animationSpeed=i.animationSpeed||500;this.dir=i.dir||"ltr";this.width=i.width||360;this.height=i.height||270;this.border=i.border||0;this.space=i.space||"auto";this.topSpace=i.topSpace||"auto";this.controls=i.controls||!1;this.startSlide=i.startSlide||0;this.inverseScaling=i.inverseScaling||300;this.autoRotationSpeed=i.autoRotationSpeed||0;this.state=this.states.PENDING;this.deferred=t.defer();this.promise=this.deferred.promise}function u(){return this.state!==this.states.PENDING}function f(){return this.state===this.states.REJECTED}function e(){return this.state===this.states.RESOLVED}function o(){if(this.isInitiated())return this;if(this.state=this.states.LOADING,this.sourceProp)for(var n=0;n<this.total;n++)this.loadImageLocation(this.slides[n]);else this.deferred.resolve(this);return this}function s(){this.errorCount++;this.isRejected()||(this.state=this.states.REJECTED,this.deferred.reject(this))}function h(n){this.loadCount++;this.isRejected()||(this.deferred.notify({percent:Math.ceil(this.loadCount/this.total*100),imageLocation:n}),this.loadCount===this.total&&(this.state=this.states.RESOLVED,this.deferred.resolve(this)))}function c(t){var r=this,i=new Image;i.onload=function(t){n.$apply(function(){r.handleImageLoad(t.target.src);i=t=null})};i.onerror=function(t){n.$apply(function(){r.handleImageError(t.target.src);i=t=null})};i.src=t[this.sourceProp]}function l(){return this.total}function a(n){this.startSlide=n<0||n>this.total?0:n}function v(n){return this.currentIndex=n}function y(){return parseInt(this.width+this.border)}function p(){return parseInt(this.height+this.border,10)}function w(n){return this.lock=n}function b(){return this.lock}function k(){return this.slides}function d(){var t=Math.floor(this.visible/2)+1,n,i,r,u,f;for(this.leftSlides=[],this.rightSlides=[],n=1;n<t;n++)i="ltr"===this.dir?(this.currentIndex+n)%this.total:(this.currentIndex-n)%this.total,r="ltr"===this.dir?(this.currentIndex-n)%this.total:(this.currentIndex+n)%this.total,this.leftSlides.push(i),this.rightSlides.push(r);return u=this.leftOutSlide=this.currentIndex-t,f=this.rightOutSlide=this.total-this.currentIndex-t<=0?-parseInt(this.total-this.currentIndex-t):this.currentIndex+t,"ltr"===this.dir&&(this.leftOutSlide=u,this.rightOutSlide=f),this.slides}function g(){return this.currentIndex===this.total-1}function nt(){return 0===this.currentIndex}function tt(){return this.sourceProp}r.build=function(n,t){var u=new r(n,t||{});return u.load().promise.then(function(){u.visible=u.visible>u.total?u.total:u.visible;u.currentIndex=u.startSlide>u.total-1?u.total-1:t.startSlide;try{2!==u.visible&&(u.visible=u.visible%2?u.visible:u.visible-1)}catch(n){i.error(n)}return u})};var it={constructor:r,isInitiated:u,isRejected:f,isResolved:e,load:o,handleImageError:s,handleImageLoad:h,loadImageLocation:c,getTotalNumber:l,setStartSlide:a,getSlides:k,setSlides:d,setCurrentIndex:v,getOuterWidth:y,getOuterHeight:p,setLock:w,getLock:b,isLastSlide:g,isFirstSlide:nt,getSourceProp:tt};return angular.extend(r.prototype,it),r}angular.module("angular-carousel-3d").factory("Carousel3dService",n);n.$inject=["$rootScope","$q","$log"]}(),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={};for(var 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);!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("tinycolor2")):"function"==typeof define&&define.amd?define(["tinycolor2"],t):n.AngularjsColorPicker=t(n.tinycolor)}(this,function(n){"use strict";function f(){return{restrict:"E",require:["^ngModel"],scope:{ngModel:"=",options:"=?",api:"=?",eventApi:"=?"},bindToController:!0,templateUrl:"template/color-picker/directive.html",controller:r,controllerAs:"AngularColorPickerController",link:function(n,t,i,r){n.control=r;n.init()}}}function t(n){n.put("template/color-picker/directive.html",'<div class="color-picker-wrapper" ng-class="{\'color-picker-disabled\': AngularColorPickerController.options.disabled,\'color-picker-swatch-only\': AngularColorPickerController.options.swatchOnly,\'color-picker-open\': AngularColorPickerController.is_open,\'color-picker-closed\': !AngularColorPickerController.is_open,}"><div class="color-picker-input-wrapper" ng-class="{\'input-group\': AngularColorPickerController.options.swatchBootstrap && AngularColorPickerController.options.swatch}"><span ng-if="AngularColorPickerController.options.swatchPos === \'left\'" class="color-picker-swatch" ng-click="AngularColorPickerController.onSwatchClick($event)" ng-show="AngularColorPickerController.options.swatch" ng-class="{\'color-picker-swatch-left\': AngularColorPickerController.options.swatchPos !== \'right\', \'color-picker-swatch-right\': AngularColorPickerController.options.swatchPos === \'right\', \'input-group-addon\': AngularColorPickerController.options.swatchBootstrap}"><\/span><input ng-attr-id="{{AngularColorPickerController.options.id}}" ng-attr-name="{{AngularColorPickerController.options.name}}" class="color-picker-input {{AngularColorPickerController.options.inputClass}}" type="text" ng-model="AngularColorPickerController.ngModel" ng-readonly="AngularColorPickerController.options.swatchOnly" ng-disabled="AngularColorPickerController.options.disabled" ng-change="AngularColorPickerController.onChange($event)" size="7" ng-class="{\'color-picker-input-swatch\': AngularColorPickerController.options.swatch && !AngularColorPickerController.options.swatchOnly && AngularColorPickerController.options.swatchPos === \'left\'}" placeholder="{{AngularColorPickerController.options.placeholder}}" ng-required="AngularColorPickerController.options.required"><span ng-if="AngularColorPickerController.options.swatchPos === \'right\'" class="color-picker-swatch" ng-click="AngularColorPickerController.onSwatchClick($event)" ng-show="AngularColorPickerController.options.swatch" ng-class="{\'color-picker-swatch-left\': AngularColorPickerController.options.swatchPos !== \'right\', \'color-picker-swatch-right\': AngularColorPickerController.options.swatchPos === \'right\', \'input-group-addon\': AngularColorPickerController.options.swatchBootstrap}"><\/span><\/div><div class="color-picker-panel" ng-class="{\'color-picker-panel-top color-picker-panel-right\': AngularColorPickerController.options.pos === \'top right\',\'color-picker-panel-top color-picker-panel-left\': AngularColorPickerController.options.pos === \'top left\',\'color-picker-panel-bottom color-picker-panel-right\': AngularColorPickerController.options.pos === \'bottom right\',\'color-picker-panel-bottom color-picker-panel-left\': AngularColorPickerController.options.pos === \'bottom left\',\'color-picker-panel-round\': AngularColorPickerController.options.round,\'color-picker-show-hue\': AngularColorPickerController.options.hue,\'color-picker-show-saturation\': AngularColorPickerController.options.saturation,\'color-picker-show-lightness\': AngularColorPickerController.options.lightness,\'color-picker-show-alpha\': AngularColorPickerController.options.alpha && AngularColorPickerController.options.format !== \'hex\',\'color-picker-show-inline\': AngularColorPickerController.options.inline,}"><div class="color-picker-grid-wrapper"><div class="color-picker-row"><div class="color-picker-grid"><div class="color-picker-overlay"><\/div><div class="color-picker-grid-inner"><\/div><div class="color-picker-picker"><div><\/div><\/div><\/div><div class="color-picker-hue" ng-show="AngularColorPickerController.options.hue"><div class="color-picker-overlay"><\/div><div class="color-picker-slider"><\/div><\/div><div class="color-picker-saturation" ng-show="AngularColorPickerController.options.saturation"><div class="color-picker-overlay"><\/div><div class="color-picker-slider"><\/div><\/div><div class="color-picker-lightness" ng-show="AngularColorPickerController.options.lightness"><div class="color-picker-overlay"><\/div><div class="color-picker-slider"><\/div><\/div><div class="color-picker-opacity" ng-show="AngularColorPickerController.options.alpha && AngularColorPickerController.options.format !== \'hex\'"><div class="color-picker-overlay"><\/div><div class="color-picker-slider"><\/div><\/div><\/div><\/div><div class="color-picker-actions"><button type="button"class="color-picker-action color-picker-action-clear"tabindex="-1"ng-class="AngularColorPickerController.options.clear.class"ng-show="AngularColorPickerController.options.clear.show"ng-click="AngularColorPickerController.api.clear($event)">{{AngularColorPickerController.options.clear.label}}<\/button><button type="button"class="color-picker-action color-picker-action-reset"tabindex="-1"ng-class="AngularColorPickerController.options.reset.class"ng-show="AngularColorPickerController.options.reset.show"ng-click="AngularColorPickerController.api.reset($event)">{{AngularColorPickerController.options.reset.label}}<\/button><button type="button"class="color-picker-action color-picker-action-close"tabindex="-1"ng-class="AngularColorPickerController.options.close.class"ng-show="AngularColorPickerController.options.close.show"ng-click="AngularColorPickerController.api.close($event)">{{AngularColorPickerController.options.close.label}}<\/button><\/div><\/div><\/div>')}var u;n="default"in n?n.default:n;var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},i=function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");},o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=function(){function t(n,r,u,f,e){i(this,t);this.$scope=n;this.$element=r;this.$document=u;this.$timeout=f;this.ColorPickerOptions=e;this.$scope.init=this.init.bind(this);this.hue=0;this.saturation=void 0;this.lightness=void 0;this.opacity=void 0;this.pickerDimensions={width:150,height:150};this.sliderDimensions={width:20,height:150}}return o(t,[{key:"watchNgModel",value:function(t,i){var e=this,u,f,r;(void 0===t||void 0===i||this.hasOwnProperty("initialNgModel")||(this.initialNgModel=t),this.checkDirty(t),this.colorMouse)||(void 0!==t&&null!==t?(u=n(t),f=this.isColorValid(u),f&&(this.options.round?(r=u.toHsl(),this.lightness=100*r.l):(r=u.toHsv(),this.lightness=100*r.v),this.hue=r.h,this.saturation=100*r.s,this.updateModel=!1,this.options.alpha&&(this.opacity=100*r.a),this.$timeout(function(){e.updateModel=!0})),this.$scope.control[0].$setValidity("color",f)):(null!==t&&""!==t||(this.hue=0,this.saturation=void 0,this.lightness=void 0,this.opacity=void 0),this.swatchColor=""))}},{key:"watchSwatchPos",value:function(n){var t=this;void 0!==n&&(this.initConfig(),this.$timeout(function(){t.updateSwatchBackground()}))}},{key:"setupApi",value:function(){var n=this;this.api||(this.api={});this.api.open=function(t){if(n.is_open)return!0;n.is_open=!0;n.hueMouse=!1;n.opacityMouse=!1;n.colorMouse=!1;n.$scope.$applyAsync();n.hueUpdate();n.saturationUpdate();n.lightnessUpdate();n.opacityUpdate();n.eventApiDispatch("onOpen",[t])};this.api.close=function(t){n.options.inline||!n.is_open&&null===n.$element[0].querySelector(".color-picker-panel").offsetParent||(n.is_open=!1,n.$scope.$applyAsync(),n.eventApiDispatch("onClose",[t]))};this.api.clear=function(t){""!==n.ngModel&&(n.ngModel="",n.eventApiDispatch("onClear",[t]))};this.api.reset=function(t){n.ngModel!==n.initialNgModel&&(n.ngModel=n.initialNgModel,n.eventApiDispatch("onReset",[t]))};this.api.getElement=function(){return n.$element};this.api.getScope=function(){return n.$scope}}},{key:"reInit",value:function(n){void 0!==n&&this.initConfig()}},{key:"reInitAndUpdate",value:function(n){void 0!==n&&(this.initConfig(),this.update())}},{key:"init",value:function(){this.chrome=Boolean(window.chrome);var n=window.navigator.userAgent.match(/Android\s([0-9\.]*)/i);this.android_version=n&&n.length>1?parseFloat(n[1]):NaN;this.updateModel=!0;this.initWatchers();this.initConfig();this.initMouseEvents()}},{key:"initWatchers",value:function(){this.$scope.$watch("AngularColorPickerController.ngModel",this.watchNgModel.bind(this));this.$scope.$watch("AngularColorPickerController.options.swatchPos",this.watchSwatchPos.bind(this));this.$scope.$watchGroup(["AngularColorPickerController.options.format","AngularColorPickerController.options.alpha","AngularColorPickerController.options.case","AngularColorPickerController.options.round","AngularColorPickerController.options.restrictToFormat","AngularColorPickerController.options.allowEmpty"],this.reInitAndUpdate.bind(this));this.$scope.$watchGroup(["AngularColorPickerController.options.disabled","AngularColorPickerController.options.swatchBootstrap","AngularColorPickerController.options.swatchOnly","AngularColorPickerController.options.swatch","AngularColorPickerController.options.pos","AngularColorPickerController.options.inline","AngularColorPickerController.options.placeholder"],this.reInit.bind(this));this.$scope.$watch("AngularColorPickerController.api",this.setupApi.bind(this));this.$scope.$watch("AngularColorPickerController.swatchColor",this.updateSwatchBackground.bind(this));this.$scope.$watch("AngularColorPickerController.hue",this.hueUpdate.bind(this));this.$scope.$watch("AngularColorPickerController.saturation",this.saturationUpdate.bind(this));this.$scope.$watch("AngularColorPickerController.lightness",this.lightnessUpdate.bind(this));this.$scope.$watch("AngularColorPickerController.opacity",this.opacityUpdate.bind(this))}},{key:"initMouseEvents",value:function(){var t=this,n={mouseDown:this.onMouseDown.bind(this),mouseUp:this.onMouseUp.bind(this),mouseMove:this.onMouseMove.bind(this),keyUp:this.onKeyUp.bind(this)};this.$document.on("mousedown",n.mouseDown);this.$document.on("mouseup",n.mouseUp);this.$document.on("mousemove",n.mouseMove);this.$document.on("touchstart",n.mouseDown);this.$document.on("touchend",n.mouseUp);this.$document.on("touchmove",n.mouseMove);this.$document.on("keyup",n.keyUp);this.find(".color-picker-grid").on("click",this.onColorClick.bind(this));this.find(".color-picker-grid").on("touchend",this.onColorClick.bind(this));this.find(".color-picker-hue").on("click",this.onHueClick.bind(this));this.find(".color-picker-hue").on("touchend",this.onHueClick.bind(this));this.find(".color-picker-saturation").on("click",this.onSaturationClick.bind(this));this.find(".color-picker-saturation").on("touchend",this.onSaturationClick.bind(this));this.find(".color-picker-lightness").on("click",this.onLightnessClick.bind(this));this.find(".color-picker-lightness").on("touchend",this.onLightnessClick.bind(this));this.find(".color-picker-opacity").on("click",this.onOpacityClick.bind(this));this.find(".color-picker-opacity").on("touchend",this.onOpacityClick.bind(this));this.find(".color-picker-input").on("focusin",this.onFocus.bind(this));this.find(".color-picker-input").on("focusout",this.onBlur.bind(this));this.$scope.$on("$destroy",function(){t.$document.off("mousedown",n.mouseDown);t.$document.off("mouseup",n.mouseUp);t.$document.off("mousemove",n.mouseMove);t.$document.off("touchstart",n.mouseDown);t.$document.off("touchend",n.mouseUp);t.$document.off("touchmove",n.mouseMove);t.$document.off("keyup",n.keyUp);t.eventApiDispatch("onDestroy")})}},{key:"onMouseDown",value:function(n){if(this.has_moused_moved=!1,this.options.disabled||0===this.find(n.target).length)return!0;n.target.classList.contains("color-picker-grid-inner")||n.target.classList.contains("color-picker-picker")||n.target.parentNode.classList.contains("color-picker-picker")?(this.colorDown(n),this.$scope.$apply()):n.target.classList.contains("color-picker-hue")||n.target.parentNode.classList.contains("color-picker-hue")?(this.hueDown(n),this.$scope.$apply()):n.target.classList.contains("color-picker-saturation")||n.target.parentNode.classList.contains("color-picker-saturation")?(this.saturationDown(n),this.$scope.$apply()):n.target.classList.contains("color-picker-lightness")||n.target.parentNode.classList.contains("color-picker-lightness")?(this.lightnessDown(n),this.$scope.$apply()):(n.target.classList.contains("color-picker-opacity")||n.target.parentNode.classList.contains("color-picker-opacity"))&&(this.opacityDown(n),this.$scope.$apply())}},{key:"onMouseUp",value:function(n){this.colorMouse||this.hueMouse||this.opacityMouse||0!==this.find(n.target).length?this.colorMouse&&this.has_moused_moved?(this.colorUp(n),this.$scope.$apply(),this.onChange(n)):this.hueMouse&&this.has_moused_moved?(this.hueUp(n),this.$scope.$apply(),this.onChange(n)):this.saturationMouse&&this.has_moused_moved?(this.saturationUp(n),this.$scope.$apply(),this.onChange(n)):this.lightnessMouse&&this.has_moused_moved?(this.lightnessUp(n),this.$scope.$apply(),this.onChange(n)):this.opacityMouse&&this.has_moused_moved&&(this.opacityUp(n),this.$scope.$apply(),this.onChange(n)):(this.setupApi(),this.options.hide.click&&this.api.close(n),this.$scope.$apply())}},{key:"onMouseMove",value:function(n){this.colorMouse?(this.has_moused_moved=!0,this.colorChange(n),this.$scope.$apply()):this.hueMouse?(this.has_moused_moved=!0,this.hueChange(n),this.$scope.$apply()):this.saturationMouse?(this.has_moused_moved=!0,this.saturationChange(n),this.$scope.$apply()):this.lightnessMouse?(this.has_moused_moved=!0,this.lightnessChange(n),this.$scope.$apply()):this.opacityMouse&&(this.has_moused_moved=!0,this.opacityChange(n),this.$scope.$apply())}},{key:"onKeyUp",value:function(n){this.options.hide.escape&&27===n.keyCode&&this.api.close(n)}},{key:"onColorClick",value:function(n){this.options.disabled||this.has_moused_moved||(this.colorChange(n),this.colorUp(n),this.$scope.$apply(),this.onChange(n))}},{key:"onHueClick",value:function(n){this.options.disabled||this.has_moused_moved||(this.hueChange(n),this.hueUp(n),this.$scope.$apply(),this.onChange(n))}},{key:"onSaturationClick",value:function(n){this.options.disabled||this.has_moused_moved||(this.saturationChange(n),this.saturationUp(n),this.$scope.$apply(),this.onChange(n))}},{key:"onLightnessClick",value:function(n){this.options.disabled||this.has_moused_moved||(this.lightnessChange(n),this.lightnessUp(n),this.$scope.$apply(),this.onChange(n))}},{key:"onOpacityClick",value:function(n){this.options.disabled||this.has_moused_moved||(this.opacityChange(n),this.opacityUp(n),this.$scope.$apply(),this.onChange(n))}},{key:"onChange",value:function(n){this.ngModel!==this.onChangeValue&&(this.onChangeValue=this.ngModel,this.eventApiDispatch("onChange",[n]))}},{key:"onBlur",value:function(n){this.ngModel!==this.onChangeValue&&(this.updateModel=!0,this.update());this.$scope.control[0].$setTouched();this.eventApiDispatch("onBlur",[n]);this.options.hide.blur&&0===this.find(n.relatedTarget).length&&this.api.close(n)}},{key:"initConfig",value:function(){this.options||(this.options={});this.mergeOptions(this.options,this.ColorPickerOptions);this.is_open=this.options.inline;this.options.inline&&(this.options.close.show=!1)}},{key:"mergeOptions",value:function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n&&n.hasOwnProperty(i)?"object"===e(t[i])&&this.mergeOptions(n[i],t[i]):n[i]=t[i])}},{key:"onSwatchClick",value:function(n){this.options.show.swatch&&this.api.open(n)}},{key:"onFocus",value:function(n){this.options.show.focus&&this.api.open(n)}},{key:"update",value:function(){if(void 0===this.hue||void 0===this.saturation||void 0===this.lightness)return!1;var t;if(t=n(this.options.round?{h:this.hue,s:this.saturation+"%",l:this.lightness+"%"}:{h:this.hue,s:this.saturation+"%",v:this.lightness+"%"}),this.options.alpha&&t.setAlpha(this.opacity/100),this.swatchColor=t.toHslString(),this.updateGridBackground(t),this.updateHueBackground(t),this.updateSaturationBackground(t),this.updateLightnessBackground(t),this.updateAlphaBackground(t),this.updateModel)switch(this.options.format){case"rgb":this.ngModel=t.toRgbString();break;case"hex":this.ngModel="lower"===this.options.case?t.toHex().toLowerCase():t.toHex().toUpperCase();break;case"hex8":this.ngModel="lower"===this.options.case?t.toHex8().toLowerCase():t.toHex8().toUpperCase();break;case"hexString":this.ngModel="lower"===this.options.case?t.toHexString().toLowerCase():t.toHexString().toUpperCase();break;case"hex8String":this.ngModel="lower"===this.options.case?t.toHex8String().toLowerCase():t.toHex8String().toUpperCase();break;case"hsv":this.ngModel=t.toHsvString();break;case"raw":this.ngModel=t.clone();break;default:this.ngModel=t.toHslString()}}},{key:"updateSwatchBackground",value:function(){angular.element(this.$element[0].querySelector(".color-picker-swatch")).css({"background-color":this.swatchColor})}},{key:"huePosUpdate",value:function(){angular.element(this.$element[0].querySelector(".color-picker-hue .color-picker-slider")).css({top:this.sliderDimensions.height*this.huePos/100+"px"})}},{key:"saturationPosUpdate",value:function(){var n;this.options.round||(n=angular.element(this.$element[0].querySelector(".color-picker-grid .color-picker-picker")),n.css({left:this.pickerDimensions.width*this.saturationPos/100+"px"}));n=angular.element(this.$element[0].querySelector(".color-picker-saturation .color-picker-slider"));n.css({top:this.sliderDimensions.height*(100-this.saturationPos)/100+"px"})}},{key:"lightnessPosUpdate",value:function(){var n;this.options.round||(n=angular.element(this.$element[0].querySelector(".color-picker-grid .color-picker-picker")),n.css({top:this.pickerDimensions.height*this.lightnessPos/100+"px"}));n=angular.element(this.$element[0].querySelector(".color-picker-lightness .color-picker-slider"));n.css({top:this.sliderDimensions.height*this.lightnessPos/100+"px"})}},{key:"opacityPosUpdate",value:function(){angular.element(this.$element[0].querySelector(".color-picker-opacity .color-picker-slider")).css({top:this.sliderDimensions.height*this.opacityPos/100+"px"})}},{key:"hueDown",value:function(n){this.stopEvent(n);this.hueMouse=!0}},{key:"hueUp",value:function(n){this.stopEvent(n);this.hueMouse=!1}},{key:"hueChange",value:function(n){this.stopEvent(n);var t=this.find(".color-picker-hue"),i=this.getEventPos(n);this.hue=Math.round(360*(1-(i.pageY-this.offset(t).top)/t.prop("offsetHeight")));this.hue>360?this.hue=360:this.hue<0&&(this.hue=0)}},{key:"hueUpdate",value:function(){void 0!==this.hue&&(this.huePos=100*(1-this.hue/360),this.huePos<0?this.huePos=0:this.huePos>100&&(this.huePos=100),this.options.round&&(this.getRoundPos(),this.updateRoundPos()),this.huePosUpdate(),this.update())}},{key:"saturationDown",value:function(n){this.stopEvent(n);this.saturationMouse=!0}},{key:"saturationUp",value:function(n){this.stopEvent(n);this.saturationMouse=!1}},{key:"saturationChange",value:function(n){this.stopEvent(n);var t=this.find(".color-picker-saturation"),i=this.getEventPos(n);this.saturation=Math.round(100*(1-(i.pageY-this.offset(t).top)/t.prop("offsetHeight")));this.saturation>100?this.saturation=100:this.saturation<0&&(this.saturation=0)}},{key:"saturationUpdate",value:function(){void 0!==this.saturation&&(this.options.round&&(this.getRoundPos(),this.updateRoundPos()),this.saturationPos=this.saturation,this.saturationPos<0?this.saturationPos=0:this.saturationPos>100&&(this.saturationPos=100),this.saturationPosUpdate(),this.update())}},{key:"updateGridBackground",value:function(t){var i=this.find(".color-picker-grid .color-picker-overlay"),r,u;this.options.round?(r=n({h:this.hue,s:0,l:this.lightness}),i.css({"background-color":r.toRgbString()})):(u=n({h:this.hue,s:1,v:1,a:1}),i.css({"background-color":u.toRgbString()}));i.css({opacity:t.getAlpha()});this.find(".color-picker-grid .color-picker-grid-inner").css({opacity:t.getAlpha()})}},{key:"updateHueBackground",value:function(){var s=this.find(".color-picker-hue .color-picker-overlay"),t=this.getCurrentColorValue(),i=this.getCurrentColorValue(),r=this.getCurrentColorValue(),u=this.getCurrentColorValue(),f=this.getCurrentColorValue(),e=this.getCurrentColorValue(),o=this.getCurrentColorValue();t.h=0;i.h=60;r.h=120;u.h=180;f.h=240;e.h=300;o.h=359;s.css({background:"linear-gradient(to top, "+n(t).toRgbString()+" 0%, "+n(i).toRgbString()+" 17%, "+n(r).toRgbString()+" 33%, "+n(u).toRgbString()+" 50%, "+n(f).toRgbString()+" 67%, "+n(e).toRgbString()+" 83%, "+n(o).toRgbString()+" 100%)"})}},{key:"updateSaturationBackground",value:function(){var r=this.find(".color-picker-saturation .color-picker-overlay"),t=this.getCurrentColorValue(),i=this.getCurrentColorValue();t.s=100;i.s=0;r.css({background:"linear-gradient(to bottom, "+n(t).toRgbString()+" 0%, "+n(i).toRgbString()+" 100%)"})}},{key:"updateLightnessBackground",value:function(){var u=this.find(".color-picker-lightness .color-picker-overlay"),t=this.getCurrentColorValue(),i=this.getCurrentColorValue(),r=this.getCurrentColorValue();this.options.round?(t.l=100,i.l=50,r.l=0):(t.v=100,i.v=50,r.v=0);u.css({background:"linear-gradient(to bottom, "+n(t).toRgbString()+" 0%, "+n(i).toRgbString()+" 50%, "+n(r).toRgbString()+" 100%)"})}},{key:"updateAlphaBackground",value:function(){var r=this.find(".color-picker-opacity .color-picker-overlay"),t=this.getCurrentColorValue(),i=this.getCurrentColorValue();t.a=1;i.a=0;r.css({background:"linear-gradient(to bottom, "+n(t).toRgbString()+" 0%, "+n(i).toRgbString()+" 100%)"})}},{key:"lightnessDown",value:function(n){this.stopEvent(n);this.lightnessMouse=!0}},{key:"lightnessUp",value:function(n){this.stopEvent(n);this.lightnessMouse=!1}},{key:"lightnessChange",value:function(n){this.stopEvent(n);var t=this.find(".color-picker-lightness"),i=this.getEventPos(n);this.lightness=Math.round(100*(1-(i.pageY-this.offset(t).top)/t.prop("offsetHeight")));this.lightness>100?this.lightness=100:this.lightness<0&&(this.lightness=0)}},{key:"lightnessUpdate",value:function(){void 0!==this.lightness&&(this.lightnessPos=100-this.lightness,this.lightnessPos<0?this.lightnessPos=0:this.lightnessPos>100&&(this.lightnessPos=100),this.lightnessPosUpdate(),this.update())}},{key:"opacityDown",value:function(n){this.stopEvent(n);this.opacityMouse=!0}},{key:"opacityUp",value:function(n){this.stopEvent(n);this.opacityMouse=!1}},{key:"opacityChange",value:function(n){this.stopEvent(n);var t=this.find(".color-picker-opacity"),i=this.getEventPos(n);this.opacity=100*(1-(i.pageY-this.offset(t).top)/t.prop("offsetHeight"));this.opacity>100?this.opacity=100:this.opacity<0&&(this.opacity=0)}},{key:"opacityUpdate",value:function(){void 0!==this.opacity&&(this.opacityPos=100*(1-this.opacity/100),this.opacityPos<0?this.opacityPos=0:this.opacityPos>100&&(this.opacityPos=100),this.opacityPosUpdate(),this.update())}},{key:"colorDown",value:function(n){this.stopEvent(n);this.colorMouse=!0}},{key:"colorUp",value:function(n){this.stopEvent(n);this.colorMouse=!1}},{key:"colorChange",value:function(n){var t;this.stopEvent(n);var i=this.find(".color-picker-grid-inner"),r=this.getEventPos(n),u=this.offset(i);if(this.options.round){var f=2*(r.pageX-u.left)/i.prop("offsetWidth")-1,e=-2*(r.pageY-u.top)/i.prop("offsetHeight")+1,s=Math.atan2(e,f),o=Math.round(57.29577951308233*s);o<0&&(o+=360);this.hue=o;t=Math.sqrt(f*f+e*e);t>1?t=1:t<0&&(t=0);this.saturation=100*t;void 0===this.lightness&&(this.lightness=50)}else this.saturation=(r.pageX-u.left)/i.prop("offsetWidth")*100,this.lightness=100*(1-(r.pageY-u.top)/i.prop("offsetHeight")),this.saturation>100?this.saturation=100:this.saturation<0&&(this.saturation=0),this.lightness>100?this.lightness=100:this.lightness<0&&(this.lightness=0)}},{key:"isColorValid",value:function(n){var t=n.isValid(),i;return(t&&this.options.restrictToFormat&&(t=n.getFormat()===this.options.format),!t&&this.options.allowEmpty)&&(i=n.getOriginalInput(),void 0!==i&&null!==i&&""!==i||(t=!0)),t}},{key:"getCurrentColorValue",value:function(){return this.options.round?{h:this.hue,s:this.saturation,l:this.lightness}:{h:this.hue,s:this.saturation,v:this.lightness}}},{key:"checkDirty",value:function(n){this.hasOwnProperty("initialNgModel")&&(n===this.initialNgModel?"function"==typeof this.$scope.control[0].$setPristine&&this.$scope.control[0].$setPristine():"function"==typeof this.$scope.control[0].$setDirty&&this.$scope.control[0].$setDirty())}},{key:"stopEvent",value:function(n){n.stopPropagation();n.preventDefault()}},{key:"getRoundPos",value:function(){var t=.01745329251994*this.hue,i=Math.cos(t)*this.saturation,r=-Math.sin(t)*this.saturation,n;this.xPos=.5*(i+100);this.yPos=.5*(r+100);Math.pow(50-this.xPos,2)+Math.pow(50-this.yPos,2)>Math.pow(50,2)&&(n=Math.atan2(this.yPos-50,this.xPos-50),this.xPos=50*Math.cos(n)+50,this.yPos=50*Math.sin(n)+50)}},{key:"updateRoundPos",value:function(){angular.element(this.$element[0].querySelector(".color-picker-grid .color-picker-picker")).css({left:this.pickerDimensions.width*this.xPos/100+"px",top:this.pickerDimensions.height*this.yPos/100+"px"})}},{key:"getEventPos",value:function(n){if(0===n.type.search("touch")){if(n.originalEvent&&n.originalEvent.changedTouches)return n.originalEvent.changedTouches[0];if(n.changedTouches)return n.changedTouches[0]}return n}},{key:"eventApiDispatch",value:function(n,t){this.eventApi&&"function"==typeof this.eventApi[n]&&(t||(t=[]),t.unshift(this.ngModel),t.unshift(this.api),this.eventApi[n].apply(this,t))}},{key:"find",value:function(n){var r,i=this.wrapper?this.wrapper[0]:this.$element[0],t=[];if(!n)return t;if("string"==typeof n){if(1!==(r=i.nodeType)&&9!==r)return[];t=i.querySelectorAll(n)}else i.contains(n)&&t.push(n);return angular.element(t)}},{key:"offset",value:function(n){var r,f,t,i,u=n[0];if(u)return u.getClientRects().length?(t=u.getBoundingClientRect(),t.width||t.height?(i=u.ownerDocument,f=null!==i&&i===i.window?i:9===i.nodeType&&i.defaultView,r=i.documentElement,this.chrome&&this.android_version<6&&screen.width<=768?{top:t.top-r.clientTop,left:t.left-r.clientLeft}:{top:t.top+f.pageYOffset-r.clientTop,left:t.left+f.pageXOffset-r.clientLeft}):t):{top:0,left:0}}}]),t}();return r.$inject=["$scope","$element","$document","$timeout","ColorPickerOptions"],t.$inject=["$templateCache"],u=function n(){return i(this,n),{id:void 0,name:void 0,required:!1,disabled:!1,placeholder:"",inputClass:"",restrictToFormat:!1,allowEmpty:!1,format:"hsl","case":"upper",hue:!0,saturation:!1,lightness:!1,alpha:!0,round:!1,pos:"bottom left",inline:!1,swatch:!0,swatchOnly:!1,swatchPos:"left",swatchBootstrap:!0,show:{swatch:!0,focus:!0},hide:{blur:!0,escape:!0,click:!0},close:{show:!1,label:"Close","class":""},clear:{show:!1,label:"Clear","class":""},reset:{show:!1,label:"Reset","class":""}}},angular.module("color.picker",[]).service("ColorPickerOptions",u).directive("colorPicker",f).run(t)}),function(){var n=angular.module("app.Common.WebServicesModule",[])}(),function(n){var t;(function(t){var i;(function(t){var i=function(){function t(t,i,r){var u=this;this.$timeout=r;this.ObjecttoParams=function(n){var t="";for(var i in n)t!=""&&(t+="&"),t+=i+"="+encodeURIComponent(n[i]);return t};this.uploadFileToUrl=function(n,t,i){var r=new FormData;return r.append(i,n,n.name),u.httpService.post(t,r,{transformRequest:angular.identity,headers:{"Content-Type":undefined}})};this.httpService=t;this.qService=i;this.handlerUrl=n.Common.WebServicesModule.Constants.baseWebApiUrl;this.securedHandlerUrl=this.handlerUrl.replace("http://","https://")}return t.prototype.useGet=function(t,i){this.handlerUrl=n.Common.WebServicesModule.Constants.baseWebApiUrl;location.protocol==="https:"&&(this.handlerUrl=this.handlerUrl.replace("http://","https://"));var r=this.handlerUrl+t;return i&&i!=""&&(r=r+"?"+this.ObjecttoParams(i)),this.httpService.get(r).then(function(n){return n.data.ReturnCode==2?n.data.ReturnObject:(console.log("Exception error code: "+n.data.ReturnCode),null)})},t.prototype.useExternalGet=function(n){return this.httpService.get(n).then(function(n){return n})},t.prototype.useSimpleGet=function(t,i){this.handlerUrl=n.Common.WebServicesModule.Constants.baseWebApiUrl;location.protocol==="https:"&&(this.handlerUrl=this.handlerUrl.replace("http://","https://"));var r=this.handlerUrl+t;return i&&i!=""&&(r=r+"?"+this.ObjecttoParams(i)),this.httpService.get(r).then(function(n){return n.data})},t.prototype.useJsonGet=function(n,t){var i=n+(t!=null?"&"+this.ObjecttoParams(t):"");return this.httpService.get(i).then(function(n){return n.data})},t.prototype.useJsonGetFromText=function(n){var t=n;return this.httpService.get(t).then(function(n){return n.data})},t.prototype.usePost=function(t,i){this.handlerUrl=n.Common.WebServicesModule.Constants.baseWebApiUrl;location.protocol==="https:"&&(this.handlerUrl=this.handlerUrl.replace("http://","https://"));t.indexOf("ActionResultReportWidgetUse")>-1&&this.handlerUrl.indexOf("localhost")===-1&&(this.handlerUrl=this.handlerUrl.replace("http://","https://"));try{var r=this.handlerUrl+t;return this.httpService.post(r,i,{headers:{"Content-Type":"application/json; charset=UTF-8"}}).then(function(n){return n.data.ReturnObject})}catch(u){return null}},t.prototype.useExternalPost=function(n,t){return this.httpService.post(n,t,{headers:{"Content-Type":"application/json; charset=UTF-8"}}).then(function(n){return n})},t.prototype.useSecuredPost=function(n,t,i){i===void 0&&(i=!1);var r;return r=location.protocol==="https:"?this.securedHandlerUrl+n:this.handlerUrl+n,this.httpService.post(r,t,{headers:{"Content-Type":"application/json; charset=UTF-8"}}).then(function(n){return n.data.ReturnObject})},t.prototype.useSimplePost=function(n,t){location.protocol==="https:"&&(this.handlerUrl=this.handlerUrl.replace("http://","https://"));var i=this.handlerUrl+n;return this.httpService.post(i,t,{headers:{"content-type":"application/json; charset=UTF-8"}})},t.prototype.usePostFormData=function(n,t){var i=this.handlerUrl+n;return this.httpService.post(i,t)},t.$inject=["$http","$q","$timeout","$log"],t}();t.WebServices=i})(i=t.WebServicesModule||(t.WebServicesModule={}))})(t=n.Common||(n.Common={}))}(app||(app={}));angular.module("app.Common.WebServicesModule",[]).service("app.Common.WebServicesModule.WebServices",app.Common.WebServicesModule.WebServices),function(n){var t;(function(n){var t;(function(n){var t;(function(n){function t(){return typeof baseDomainUrl!="undefined"&&baseDomainUrl?n.baseWebApiUrl=baseDomainUrl+"/api":typeof isDebug!="undefined"&&(n.baseWebApiUrl=isDebug.toLowerCase()==="true"||window.location.hostname==="localhost"?"https://localhost:44361/api":"https://www1.nobexpartners.com/api"),n.baseWebApiUrl}n.baseWebApiUrl=t();n.YoutubeSearch="https://www.googleapis.com/youtube/v3/search?key=AIzaSyB_g8lT5TS0wCg8R4LzSkisTCm0VLTxPpU";n.getToastAudioUsers="https://api.toastaudio.com/api/general/GetUsers?coupon=";n.generateFormsTemplates="/MyFQS/GetTypes/";n.getExistingTypes="/MyFQS/GetFromMongo/";n.getRequests="/MyFQS/GetNewResults/";n.filterUser="/MyFQS/FilterUser/";n.downloadRequests="/MyFQS/Export/";n.upsertForm="/MyFQS/upsertForm/";n.removeForm="/MyFQS/removeForm/";n.addTileToHomepage="/HomePage/ActionResultUpdateOneCustomTileFormDefinition";n.jsonForms="/ngApps/Features/Forms/assets/forms.json";n.faIcons="/ngApps/Features/Forms/assets/fa-icons.txt";n.getWidgets="/HomePage/GetDef/";n.setRows="/HomePage/SetRows";n.isAccountAvailable="/HomePage/ActionResultGetSocialStatus";n.isAccountAvailableTest="/ngApps/Features/MyApps/assets/isAvailableTest.json";n.updateWidgets="/HomePage/UpdateDef/";n.verifyAccount="/HomePage/UpdateSocial/privatecollection";n.addPrivateCollectionToHomepage="/HomePage/ActionResultUpdateOneCustomTilePrivateCollection";n.updateLastModified="/OnDemand/UpdateLastModified";n.getPlaylist="/Playlist/ActionResultGetPlaylist";n.RemoveAlbumCover="/Playlist/RemoveAlbumCover";n.getDownloadButtons="/Widgets/ActionResultGetDownloadButton";n.getListenAgainList="/Widgets/ActionResultGetListenAgainItems";n.getNewsArticles="/Widgets/ActionResultGetArticles";n.getExistingSocialFeeds="/HomePage/ActionResultGetExistingSocialFeeds";n.getStationId="/HomePage/ActionResultGetStationId";n.saveNobexPlayerCss="/Widgets/ActionResultSaveNobexPlayerCss";n.reportWidgetUsage="/Utils/ActionResultReportWidgetUse";n.getOnDemand="/OnDemand/ActionResultGetOnDemand/";n.changeMode="/OnDemand/SetMode";n.insertOnDemand="/OnDemand/ActionResultCreate/";n.exportVideo="/OnDemand/ExportVideo";n.uploadExportImage="/api/OnDemand/UploadExportImage/";n.uploadOnDemand="/OnDemand/ActionResultUpload/";n.removeOnDemand="/OnDemand/ActionResultRemove/";n.getList="/OnDemand/ActionResultGetUserLists";n.addListByItem="/OnDemand/ActionResultAddListByItemId";n.removeListFromItem="/OnDemand/ActionResultRemoveListByItemId";n.removeItems="/OnDemand/remove";n.deactivateItems="/OnDemand/deactivate";n.addToListBySearch="/OnDemand/ActionResultAddListBySearch";n.removeFromListBySearch="/OnDemand/ActionResultRemoveListBySearch";n.getListFeedData="/OnDemand/ActionResultGetOnDemandList";n.saveFeedData="/OnDemand/ActionResultCreateList";n.getRssPreroll="/OnDemand/GetRssPreRoll";n.forceSocial="/OnDemand/ForceSmn";n.getAchievements="/Achievement/ActionResultGetAchievements";n.GetSongDetails="/Playlist/ActionResultGetSongDetails";n.FindNewImages="/Playlist/ActionResultFindNewImages";n.SelectImage="/Playlist/ActionResultSelectImage";n.SelectVideo="/Playlist/ActionResultSelectVideo";n.UploadCover="/OwnCoverUpload.ashx?id=";n.getAds="/MyAds/ActionResultGetAds";n.updateAds="/MyAds/ActionResultUpdateAds";n.removeAd="/MyAds/ActionResultRemoveAd";n.uploadAdFile="/MyAds/ActionResultUploadFiles";n.getWebsiteSetup="/WebsiteSetup/GetWebsiteSetup";n.updateWebsiteSetup="/WebsiteSetup/UpdateWebsiteSetup";n.activateWebsiteSetup="/WebsiteSetup/ActivateWebsiteSetup";n.requestFeature="/WebsiteSetup/RequestFeature";n.getShoutouts="/Shoutouts/get";n.removeShoutouts="/Shoutouts/remove";n.getSubmissions="/TrackSubmissions/GetSubmissions";n.postActivity="/TrackSubmissions/PostActivity";n.getSubscription="/Subscription/GetSubscription";n.subscribeToPlan="/Subscription/SubscribeToPlan";n.cancelSubscription="/Subscription/CancelSubscription";n.downloadInvoice="/Subscription/DownloadInvoice";n.getFeaturesList="/ngApps/Features/Subscription/assets/features.json";n.updateBillingInfo="/Subscription/UpdateBillingInfo";n.paymentRequest="/Subscription/SubscribeToPlan";n.getAlerts="/HomePage/GetAlerts";n.getListeningTime="/Stats/Get/StreamingMinutes";n.getStreamingSessions="/Stats/Get/StreamingSessions";n.getRegistrations="/Stats/Get/CustomRegistrations";n.getDashboardData="/Aggregator/get_dashboard_data";n.getGrowthData="/Aggregator/get_growth_data";n.getBehavioalData="/Aggregator/get_behavioral_data";n.getTooltips="/ngApps/Features/Gadgets/assets/tooltips.json";n.getDiscountCode="/AppWizard/GetDiscountCoupon";n.getWizard="/AppWizard/GetWizard";n.getCalendar="/AppWizard/GetCalendar";n.getCountries="ngApps/Features/TrialWizard/assets/countries.json";n.getLocations="/ngApps/Features/AppWizard/assets/locations.json";n.getGenres="/ngApps/Features/AppWizard/assets/genres.json";n.upsertWizard="/AppWizard/UpsertWizard";n.upsertTrialWizard="/AppWizard/UpsertTrialWizard";n.uploadLogo="/api/AppWizard/UploadLogo";n.checkStream="/AppWizard/AnalyzeStream";n.prepareDemoApp="/AppWizard/Build";n.isColorSelectionOk="/AppWizard/isColorSelectionOk";n.wizardPurchase="/AppWizard/WizardPurchase";n.finishWizard="/AppWizard/FinishWizard";n.updateSocial="/HomePage/UpdateSocial";n.getPollSession="/PollSession/getPollSession";n.getExternalPoll="/PollSession/getExternalPoll";n.getPollSessions="/PollSession/getPollSessions";n.getSessionResults="/PollSession/GetSessionResults";n.upsertPollSession="/PollSession/upsertPollSession";n.finishPollSession="/PollSession/finishPollSession";n.finishPollItem="/PollSession/finishPollItem";n.setLiveItem="/PollSession/setLiveItem";n.upsertPollVote="/PollSession/upsertPollVote";n.getGraphData="/PollSession/getGraphData";n.addAsTile="/PollSession/addAsTile";n.uploadPollImg="/api/PollSession/UploadImage";n.getCurrentLivePollItem="/PollSession/getCurrentLivePollItem";n.getNewsItem="/News/GetNewsItem";n.getNewsItems="/News/GetNews";n.upsertNewsItem="/News/UpsertNewsItem";n.removeNewsItem="/News/RemoveNewsItem";n.searchNewsItems="/News/SearchNewsItems";n.addNewsItemAsTile="/News/AddNewsItemAsTile";n.uploadNewsCover="/api/News/UploadImage";n.getBroadcaster="/Broadcasters/GetBroadcaster";n.getBroadcasters="/Broadcasters/GetBroadcasters";n.upsertBroadcaster="/Broadcasters/UpsertBroadcasters";n.removeBroadcaster="/Broadcasters/RemoveBroadcaster";n.getPushNotifications="/Push/getPushNotifications";n.sendPushNotification="/Push/sendPush";n.getReportsRssFeeds="/Reports/GetRssFeeds";n.getReportsRssAds="/Reports/GetRssAds";n.getRssFeedReport="/Reports/GenerateReport";n.getFinalUrl=t})(t=n.Constants||(n.Constants={}))})(t=n.WebServicesModule||(n.WebServicesModule={}))})(t=n.Common||(n.Common={}))}(app||(app={}));rangeRepeater=function(n){return new Array(n)};addUrlParam=function(n,t,i){var u=t+"="+i,r="?"+u;return n&&(r=n.replace(new RegExp("([?&])"+t+"[^&]*"),"$1"+u),r===n&&(r+="&"+u)),r};time=function(n){var t=n.split(":");this.hour=parseInt(t[0]);this.minutes=parseInt(t[1]);this.isBiggerThan=function(n){return this.hour>n.hour||this.hour===n.hour&&this.minutes>n.minutes}};var allowHebrewOnly=function(n){return n.charCode==0||n.charCode==32||n.charCode==39||n.charCode==45||n.charCode>=1488&&n.charCode<=1514},allowEnglishOnly=function(n){return n.charCode==0||n.charCode==32||n.charCode==39||n.charCode==45||n.charCode>=65&&n.charCode<=90||n.charCode>=97&&n.charCode<=122},allowDigitsOnly=function(n){return n.charCode==0||n.charCode==13||n.charCode>=48&&n.charCode<=57},isNullOrEmptyOrUndefined=function(n){return typeof n=="undefined"||n===null||n===""};Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(n){var i,u,f,t,r;if(this==null)throw new TypeError('"this" is null or not defined');if(i=Object(this),u=i.length>>>0,typeof n!="function")throw new TypeError("predicate must be a function");for(f=arguments[1],t=0;t<u;){if(r=i[t],n.call(f,r,t,i))return r;t++}return undefined}});loggingModule=angular.module("app.Common.LoggingModule",[]);printStackTrace=function(){var i=[],o=!1,t,n,f,s,r,e,h;try{n.dont.exist+=0}catch(u){if(u.stack){for(t=u.stack.split("\n"),n=0,f=t.length;n<f;n++)i.push(t[n]);i.shift();o=!0}else if(window.opera&&u.message){for(t=u.message.split("\n"),n=0,f=t.length;n<f;n++)t[n].match(/^\s*[A-Za-z0-9\-_\$]+\(/)&&(s=t[n],t[n+1]&&(s+=" at "+t[n+1],n++),i.push(s));i.shift();o=!0}}if(!o)for(r=arguments.callee.caller;r;)e=r.toString(),h=e.substring(e.indexOf("function")+8,e.indexOf(""))||"anonymous",i.push(h),r=r.caller;output(i)};loggingModule.factory("traceService",function(){return{print:printStackTrace}});loggingModule.provider("$exceptionHandler",{$get:["exceptionLoggingService",function(n){return n}]});loggingModule.factory("exceptionLoggingService",["$log","$window","traceService",function(n,t){function i(i,r){n.error.apply(n,arguments);try{var u=i.toString(),f=i.stack;$.ajax({type:"POST",url:"/api/Utils/ActionResultReportClientError",contentType:"application/json",data:angular.toJson({url:t.location.href,message:u,type:"exception",stackTrace:f,cause:r||""})})}catch(e){n.warn("Error server-side logging failed");n.log(e)}}return i}]);loggingModule.factory("applicationLoggingService",["$log","$window",function(n,t){return{error:function(i){n.error.apply(n,arguments);$.ajax({type:"POST",url:"/api/Utils/ActionResultReportClientError",contentType:"application/json",data:angular.toJson({url:t.location.href,message:i,type:"error"})})},debug:function(i){n.log.apply(n,arguments);$.ajax({type:"POST",url:"/api/Utils/ActionResultReportClientError",contentType:"application/json",data:angular.toJson({url:t.location.href,message:i,type:"debug"})})}}}]),function(){var n=angular.module("app.NobexPartners.Widgets",["ngSanitize","ngAnimate","app.Common.LoggingModule","ngSanitize","app.Common.WebServicesModule","ui.router","angular-carousel-3d","color.picker"]);n.config(["$locationProvider","$stateProvider","$urlRouterProvider",function(n,t,i){return new app.NobexPartners.Widgets.RoutesConfig(n,t,i)}])}();angular.module("app.NobexPartners.Widgets").config(["$httpProvider",function(n){n.interceptors.push(["$rootScope","$q","$injector","$location","applicationLoggingService",function(n,t,i,r,u){return function(n){return n.then(function(n){return n},function(n){if(n.status===null||n.status===500){var i={method:n.config.method,url:n.config.url,message:n.data,status:n.status};u.error(JSON.stringify(i))}return t.reject(n)})}}])}]),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i){this.$locationProvider=n;this.$stateProvider=t;this.$urlRouterProvider=i;this.init()}return n.prototype.init=function(){this.$stateProvider.state("playlist",{url:"/playlist/:stationId/:viewMode/:dir/:bgcolor/:arrowscolor/:usage",templateUrl:"/ngApps/Features/Widgets/html/playlist.tpl.html",params:{viewMode:{squash:!0,value:null},dir:{squash:!0,value:null},stationId:{squash:!0,value:null},bgcolor:{squash:!0,value:null},arrowscolor:{squash:!0,value:null},usage:{squash:!0,value:null}}});this.$stateProvider.state("waze",{url:"/waze/:height/:width/:lang/:long/:lat/:zoomLevel/:stationId/:usage",templateUrl:"/ngApps/Features/Widgets/html/waze.tpl.html",params:{height:{squash:!0,value:null},width:{squash:!0,value:null},lang:{squash:!0,value:null},long:{squash:!0,value:null},lat:{squash:!0,value:null},zoomLevel:{squash:!0,value:null},stationId:{squash:!0,value:null},usage:{squash:!0,value:null}}});this.$stateProvider.state("webPlayer",{url:"/webPlayer/:stationId/:usage",templateUrl:"/ngApps/Features/Widgets/html/webPlayer.tpl.html",params:{stationId:{squash:!0,value:null},usage:{squash:!0,value:null}}});this.$stateProvider.state("activitymap",{url:"/activitymap/:usage",templateUrl:"/ngApps/Features/Widgets/html/activitymap.tpl.html"});this.$stateProvider.state("genericactivitymap",{url:"/genericactivitymap/:usage",templateUrl:"/ngApps/Features/Widgets/html/activitymap.generic.tpl.html"});this.$urlRouterProvider.otherwise("/")},n}();n.RoutesConfig=t})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(t){var i;(function(t){var i=function(){function t(t){var i=this;this.webServices=t;this.getPlaylist=function(t){var r={stationId:t};return i.webServices.useSecuredPost(n.Common.WebServicesModule.Constants.getPlaylist,r,!1).then(function(n){return n})};this.getDownloadButtons=function(){return i.webServices.useGet(n.Common.WebServicesModule.Constants.getDownloadButtons,null,!1).then(function(n){return n})};this.getForms=function(){return i.webServices.useSimpleGet(n.Common.WebServicesModule.Constants.getExistingTypes,null,!1).then(function(n){return n})};this.saveNobexPlayerCss=function(t,r,u){var f={borderColor:t,controlsColor:r,backgroundColor:u};return i.webServices.useGet(n.Common.WebServicesModule.Constants.saveNobexPlayerCss,f,!1).then(function(n){return n})};this.reportUsage=function(t,r){var u={stationId:r,widgetType:t};return i.webServices.usePost(n.Common.WebServicesModule.Constants.reportWidgetUsage,u,!1).then(function(n){return n})};this.clearAlbumCover=function(t){var r={fileUrl:t};return i.webServices.usePost(n.Common.WebServicesModule.Constants.RemoveAlbumCover,r,!1).then(function(n){return n})}}return t.$inject=["app.Common.WebServicesModule.WebServices"],t}();t.Service=i;angular.module("app.NobexPartners.Widgets").service("app.NobexPartners.Widgets.Service",i)})(i=t.Widgets||(t.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(n){var t;(function(n){var i=function(){function i(i,r,u){var f=this;this.service=i;this.$stateParams=r;this.$sce=u;this.initParams=function(){f.colorPickerOptions={format:"hex"};f.isPodcast=isPodcast&&isPodcast=="yes"?!0:!1};this.setWidget=function(i){f.widgetSettings=new t;f.widgetSettings.selectedType=i;f.widgetSettings.wizardMode="edit";f.widgetResponse=null;i==="playlist"?(f.widgetSettings.viewMode="carousel",f.widgetSettings.direction="ltr",f.widgetSettings.bgColor="fff",f.widgetSettings.arrowsColor="ab2b98"):i==="downloadBtns"?f.service.getDownloadButtons().then(function(n){f.widgetResponse=n}):i==="forms"?f.service.getForms().then(function(n){f.widgetResponse=JSON.parse(n)}):i==="waze"?f.wazeConfigurations=new n.WazeConfiguration:i==="webPlayer"?f.nobexPlayerConfigurations=new n.NobexPlayerConfigurations:i==="activitymap"&&(f.widgetSettings.viewMode="code",f.generateFinalCode())};this.trustSrc=function(n){return f.$sce.trustAsResourceUrl(n)};this.getCode=function(n){n==-1?f.widgetSettings.wizardMode="edit":(f.generateFinalCode(),f.widgetSettings.wizardMode="code")};this.isShowGetCodeBtn=function(){return f.widgetSettings&&f.widgetSettings.selectedType=="webPlayer"&&f.isPodcast?!1:!0};this.generateFinalCode=function(){var i=baseUrl+"/Widgets.aspx#/{0}",t,n;i=i.replace("{0}",f.widgetSettings.selectedType);t="";n="";f.widgetSettings.selectedType==="playlist"?(n=i+"/{1}/{2}/{3}/{4}/{5}",t=f.widgetSettings.viewMode==="carousel"?"300":"380",f.widgetSettings.height=t,n=n.replace("{1}",stationId),n=n.replace("{2}",f.widgetSettings.viewMode),n=n.replace("{3}",f.widgetSettings.direction),n=n.replace("{4}",f.widgetSettings.bgColor),n=n.replace("{5}",f.widgetSettings.arrowsColor),f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode='<iframe id="nobexWidget_'+f.widgetSettings.selectedType+'"  scrolling="no" height="'+t+'" src="'+n+'/1" marginheight= "0" marginwidth= "0" style="border:none" > <\/iframe>'):f.widgetSettings.selectedType==="downloadBtns"?(f.widgetSettings.downloadBtn==="iosBtn"&&(f.widgetSettings.finalCode=f.widgetResponse.IOS,f.widgetSettings.isDownloadBtnOk=f.widgetResponse.isIos),f.widgetSettings.downloadBtn==="googleBtn"&&(f.widgetSettings.finalCode=f.widgetResponse.Google,f.widgetSettings.isDownloadBtnOk=f.widgetResponse.isGoogle),f.widgetSettings.downloadBtn==="bbwBtn"&&(f.widgetSettings.finalCode=f.widgetResponse.BBW,f.widgetSettings.isDownloadBtnOk=f.widgetResponse.isBbw)):f.widgetSettings.selectedType==="activitymap"?(t="290",f.widgetSettings.height=t,n=i+"/1?sid="+stationId,f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode='<iframe id="nobexWidget_'+f.widgetSettings.selectedType+'"  scrolling="no" height="'+t+'" src="'+n+'" marginheight= "0" marginwidth= "0" style="border:none" > <\/iframe>'):f.widgetSettings.selectedType==="forms"?(t="380",f.widgetSettings.height=t,n=baseUrl+"/LandingForm.aspx?ID="+f.pickedForm.stringId,f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode='<iframe id="nobexWidget_'+f.widgetSettings.selectedType+'"  scrolling="no" height="'+t+'" src="'+n+'" marginheight= "0" marginwidth= "0" style="border:none" > <\/iframe>'):f.widgetSettings.selectedType==="waze"?(n=i+"/{1}/{2}/{3}/{4}/{5}/{6}/{7}",n=n.replace("{1}",f.wazeConfigurations.height),n=n.replace("{2}",f.wazeConfigurations.width),n=n.replace("{3}",f.wazeConfigurations.lang),n=n.replace("{4}",f.wazeConfigurations.long),n=n.replace("{5}",f.wazeConfigurations.lat),n=n.replace("{6}",f.wazeConfigurations.zoomLevel),n=n.replace("{7}",stationId),setTimeout(function(){angular.element("#nobexWidget_waze").attr("src",n+"/ru0")},1e3),f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode='<iframe id="nobexWidget_'+f.widgetSettings.selectedType+'"  scrolling="no" height="'+f.wazeConfigurations.height+'" width="'+f.wazeConfigurations.width+'" src="'+n+'/ru1" marginheight= "0" marginwidth= "0" style="border:none"> <\/iframe>'):f.widgetSettings.selectedType==="webPlayer"?(n=i+"/{1}/{2}",n=n.replace("{1}",stationId),n=n.replace("{2}","0"),f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode="<script type=\"text/javascript\">window.nobexPlayer || (function (d) {var o = nobexPlayer = function (config) { o.config = config; }, h = d.getElementsByTagName('head')[0];var c = d.createElement('script'); o.api = new Array(); c.async = true; c.type = 'text/javascript';c.charset = 'utf-8'; c.src = 'https://www1.nobexpartners.com/Scripts/nobex-player/scripts/nobexplayer.min.js'; h.appendChild(c);})(document);nobexPlayer({stationId:'"+stationId+"'});<\/script>"):f.widgetSettings.selectedType==="schedule"&&(t="380",f.widgetSettings.height=t,n=baseUrl+"/ScheduleWidget.aspx?ID="+stationId,f.widgetSettings.iframeSrc=n,f.widgetSettings.finalCode='<iframe id="nobexWidget_'+f.widgetSettings.selectedType+'"  scrolling="no" height="'+t+'" src="'+n+'" marginheight= "0" marginwidth= "0" style="border:none" > <\/iframe>')};this.pickForm=function(n){f.pickedForm=n};this.saveNobexPlayerSettings=function(){f.service.saveNobexPlayerCss(f.nobexPlayerConfigurations.borderColor,f.nobexPlayerConfigurations.controlsColor,f.nobexPlayerConfigurations.backgroundColor).then(function(){f.nobexPlayerConfigurations.isSavedSettings=!0})};this.getWazeSrc=function(){return f.widgetSettings.viewMode=="code"?f.widgetSettings.iframeSrc:""};this.initParams();baseUrl=baseUrl.replace("http://","https://")}return i.$inject=["app.NobexPartners.Widgets.Service","$stateParams","$sce"],i}(),t;n.MyWidgetsController=i;t=function(){function n(){}return n}();n.WidgetSettings=t;angular.module("app.NobexPartners.Widgets").controller("app.NobexPartners.Widgets.myWidgetsController",i)})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i,r,u){var f=this;this.service=n;this.$stateParams=t;this.$scope=i;this.$interval=r;this.$timeout=u;this.initParams=function(){var n,t;f.branding=!f.isRemoveBranding();f.isFirstRun=!0;f.viewMode="list";f.direction="ltr";f.bgColor="fff";f.arrowsColor="AB2B98";try{f.stationId=f.$stateParams.stationId;f.viewMode=f.$stateParams.viewMode;f.direction=f.$stateParams.dir;f.bgColor=f.$stateParams.bgcolor;f.usage=f.$stateParams.usage;f.arrowsColor=f.$stateParams.arrowscolor;f.viewMode==="carousel"&&(angular.element(".panel-container").css("background-color","#"+f.bgColor),n="<style>.widgets-page .playlist-widget .carousel-group .arrow-left:before{border-right-color:#"+f.arrowsColor+" !important}.widgets-page .playlist-widget .carousel-group .arrow-right:before{border-left-color:#"+f.arrowsColor+" !important}<\/style>",angular.element("body").append(n));f.usage!=null&&f.usage!="0"&&(f.reportUsage(),f.execInterval())}catch(i){}t=f.$interval(function(){document.hidden||this.initPlaylistData()}.bind(f),15e3);f.$scope.$on("$destroy",function(){f.$interval.cancel(t)});f.initPlaylistData()};this.execInterval=function(){var n=1,t=0,i=30;f.$interval(function(){n+=1;n==i?(f.showAdNow=!1,console.log("now hiding ad: "+n)):n==120+t&&(console.log("now showing ad: "+n),n=0,t=i,f.showAdNow=!0,console.log("i : "+n))},1e3)};this.init3DSlide=function(){f.carouselOptions={clicking:!0,sourceProp:"imageLink",visible:3,perspective:35,startSlide:0,border:1,dir:f.direction,width:200,height:200,space:100,autoRotationSpeed:0,loop:!0,controls:!0}};this.initPlaylistData=function(){f.service.getPlaylist(f.stationId).then(function(n){var i;if(f.isFirstRun)f.playlistData=n,f.init3DSlide(),f.isFirstRun=!1;else{var r=JSON.parse(JSON.stringify(n)),u=JSON.parse(angular.toJson(f.playlistData)),t=f.getDiff(u,r);if(t&&t.length>0)for(i=0;i<=t.length-1;i++)f.playlistData.unshift(t[i]),f.playlistData.splice(f.playlistData.length-1,1)}})};this.getDiff=function(n,t){for(var u,r,f=[],i=0;i<t.length;i++){for(u=!1,r=0;r!=n.length;++r)n[r].imageLink==t[i].imageLink&&(u=!0);u||f.push(t[i])}return f};this.truncate=function(n,t){return n.length>t?n.substring(0,t)+"...":n};this.reportUsage=function(){f.service.reportUsage("playlist",f.stationId)};this.clearCache=function(n){n&&n.imageLink&&f.service.clearAlbumCover(n.imageLink).then(function(){var t=n.imageLink.split("?")[0];n.imageLink=t+"?_cb="+Date.now()},function(){})};this.initParams()}return n.prototype.isRemoveBranding=function(){return window.location.href.includes("branding=no")},n.$inject=["app.NobexPartners.Widgets.Service","$stateParams","$scope","$interval","$timeout"],n}();n.PlaylistController=t;angular.module("app.NobexPartners.Widgets").controller("app.NobexPartners.Widgets.playlistController",t)})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(n){var t;(function(n){var i=function(){function n(n,i,r,u){var f=this;this.service=n;this.$stateParams=i;this.$scope=r;this.$sce=u;this.initParams=function(){f.wazeConfiguration=new t};this.getIframeSrc=function(){return f.$sce.trustAsResourceUrl("https://embed.waze.com/"+f.wazeConfiguration.lang+"/iframe?zoom=12&lat="+f.wazeConfiguration.lat+"&lon="+f.wazeConfiguration.long+"&zoom="+f.wazeConfiguration.zoomLevel)};this.reportUsage=function(){f.service.reportUsage("waze",f.stationId)};this.initParams();try{this.stationId=this.$stateParams.stationId;this.wazeConfiguration.height=this.$stateParams.height;this.wazeConfiguration.width=this.$stateParams.width;this.wazeConfiguration.lang=this.$stateParams.lang;this.wazeConfiguration.long=this.$stateParams.long;this.wazeConfiguration.lat=this.$stateParams.lat;this.wazeConfiguration.zoomLevel=this.$stateParams.zoomLevel;this.isUsage=this.$stateParams.usage==null?"ru0":this.$stateParams.usage}catch(e){}this.isUsage=="ru1"&&this.reportUsage()}return n.$inject=["app.NobexPartners.Widgets.Service","$stateParams","$scope","$sce"],n}(),t;n.WazeController=i;t=function(){function n(){this.lang="en";this.long="-0.118092";this.lat="51.509865";this.zoomLevel="11"}return n}();n.WazeConfiguration=t;angular.module("app.NobexPartners.Widgets").controller("app.NobexPartners.Widgets.wazeController",i)})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i,r){var u=this;this.service=n;this.$stateParams=t;this.$scope=i;this.$interval=r;this.initParams=function(){try{u.stationId=u.$stateParams.stationId;u.usage=u.$stateParams.usage;u.usage=="0"?nobexPlayer({stationId:u.stationId,reportUsage:u.usage}):nobexPlayer({stationId:u.stationId})}catch(n){}};this.initParams()}return n.$inject=["app.NobexPartners.Widgets.Service","$stateParams","$scope","$interval"],n}(),i;n.WebPlayerController=t;i=function(){function n(){this.isSavedSettings=!1;this.width="500";this.height="100"}return n}();n.NobexPlayerConfigurations=i;angular.module("app.NobexPartners.Widgets").controller("app.NobexPartners.Widgets.webPlayerController",t)})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i,r){var u=this;this.service=n;this.$stateParams=t;this.$scope=i;this.$location=r;this.initParams=function(){try{u.stationId=u.$location.search().sid;u.usage=u.$stateParams.usage;u.usage!=null&&u.usage!="0"&&u.reportUsage()}catch(n){}};this.reportUsage=function(){u.service.reportUsage("activitymap",u.stationId)};this.initParams()}return n.$inject=["app.NobexPartners.Widgets.Service","$stateParams","$scope","$location"],n}();n.ActivityMapController=t;angular.module("app.NobexPartners.Widgets").controller("app.NobexPartners.Widgets.activityMapController",t)})(t=n.Widgets||(n.Widgets={}))})(t=n.NobexPartners||(n.NobexPartners={}))}(app||(app={}))