insight-ui-zcash/public/js/angularjs-all.min.js

11 lines
289 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*! insight-ui 0.3.1 */
!function(W,X,u){"use strict";function z(b){return function(){var c,a=arguments[0],a="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.2.28/"+(b?b+"/":"")+a;for(c=1;c<arguments.length;c++)a=a+(1==c?"?":"&")+"p"+(c-1)+"="+encodeURIComponent("function"==typeof arguments[c]?arguments[c].toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof arguments[c]?"undefined":"string"!=typeof arguments[c]?JSON.stringify(arguments[c]):arguments[c]);return Error(a)}}function Sa(b){if(null==b||Ja(b))return!1;var a=b.length;return 1===b.nodeType&&a?!0:G(b)||L(b)||0===a||"number"==typeof a&&a>0&&a-1 in b}function r(b,a,c){var d;if(b)if(N(b))for(d in b)"prototype"==d||"length"==d||"name"==d||b.hasOwnProperty&&!b.hasOwnProperty(d)||a.call(c,b[d],d);else if(L(b)||Sa(b))for(d=0;d<b.length;d++)a.call(c,b[d],d);else if(b.forEach&&b.forEach!==r)b.forEach(a,c);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d);return b}function Xb(b){var c,a=[];for(c in b)b.hasOwnProperty(c)&&a.push(c);return a.sort()}function Sc(b,a,c){for(var d=Xb(b),e=0;e<d.length;e++)a.call(c,b[d[e]],d[e]);return d}function Yb(b){return function(a,c){b(c,a)}}function ib(){for(var a,b=na.length;b;){if(b--,a=na[b].charCodeAt(0),57==a)return na[b]="A",na.join("");if(90!=a)return na[b]=String.fromCharCode(a+1),na.join("");na[b]="0"}return na.unshift("0"),na.join("")}function Zb(b,a){a?b.$$hashKey=a:delete b.$$hashKey}function E(b){var a=b.$$hashKey;return r(arguments,function(a){a!==b&&r(a,function(a,c){b[c]=a})}),Zb(b,a),b}function U(b){return parseInt(b,10)}function $b(b,a){return E(new(E(function(){},{prototype:b})),a)}function v(){}function ga(b){return b}function aa(b){return function(){return b}}function F(b){return"undefined"==typeof b}function D(b){return"undefined"!=typeof b}function T(b){return null!=b&&"object"==typeof b}function G(b){return"string"==typeof b}function jb(b){return"number"==typeof b}function va(b){return"[object Date]"===Ba.call(b)}function N(b){return"function"==typeof b}function kb(b){return"[object RegExp]"===Ba.call(b)}function Ja(b){return b&&b.document&&b.location&&b.alert&&b.setInterval}function Tc(b){return!(!b||!(b.nodeName||b.prop&&b.attr&&b.find))}function Uc(b,a,c){var d=[];return r(b,function(b,f,g){d.push(a.call(c,b,f,g))}),d}function Ta(b,a){if(b.indexOf)return b.indexOf(a);for(var c=0;c<b.length;c++)if(a===b[c])return c;return-1}function Ua(b,a){var c=Ta(b,a);return c>=0&&b.splice(c,1),a}function Ka(b,a,c,d){if(Ja(b)||b&&b.$evalAsync&&b.$watch)throw Va("cpws");if(a){if(b===a)throw Va("cpi");if(c=c||[],d=d||[],T(b)){var e=Ta(c,b);if(-1!==e)return d[e];c.push(b),d.push(a)}if(L(b))for(var f=a.length=0;f<b.length;f++)e=Ka(b[f],null,c,d),T(b[f])&&(c.push(b[f]),d.push(e)),a.push(e);else{var g=a.$$hashKey;L(a)?a.length=0:r(a,function(b,c){delete a[c]});for(f in b)e=Ka(b[f],null,c,d),T(b[f])&&(c.push(b[f]),d.push(e)),a[f]=e;Zb(a,g)}}else(a=b)&&(L(b)?a=Ka(b,[],c,d):va(b)?a=new Date(b.getTime()):kb(b)?(a=RegExp(b.source,b.toString().match(/[^\/]*$/)[0]),a.lastIndex=b.lastIndex):T(b)&&(a=Ka(b,{},c,d)));return a}function ha(b,a){if(L(b)){a=a||[];for(var c=0;c<b.length;c++)a[c]=b[c]}else if(T(b))for(c in a=a||{},b)!lb.call(b,c)||"$"===c.charAt(0)&&"$"===c.charAt(1)||(a[c]=b[c]);return a||b}function Ca(b,a){if(b===a)return!0;if(null===b||null===a)return!1;if(b!==b&&a!==a)return!0;var d,c=typeof b;if(c==typeof a&&"object"==c){if(!L(b)){if(va(b))return va(a)?isNaN(b.getTime())&&isNaN(a.getTime())||b.getTime()===a.getTime():!1;if(kb(b)&&kb(a))return b.toString()==a.toString();if(b&&b.$evalAsync&&b.$watch||a&&a.$evalAsync&&a.$watch||Ja(b)||Ja(a)||L(a))return!1;c={};for(d in b)if("$"!==d.charAt(0)&&!N(b[d])){if(!Ca(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c.hasOwnProperty(d)&&"$"!==d.charAt(0)&&a[d]!==u&&!N(a[d]))return!1;return!0}if(!L(a))return!1;if((c=b.length)==a.length){for(d=0;c>d;d++)if(!Ca(b[d],a[d]))return!1;return!0}}return!1}function Bb(b,a){var c=2<arguments.length?wa.call(arguments,2):[];return!N(a)||a instanceof RegExp?a:c.length?function(){return arguments.length?a.apply(b,c.concat(wa.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}}function Vc(b,a){var c=a;return"string"==typeof b&&"$"===b.charAt(0)?c=u:Ja(a)?c="$WINDOW":a&&X===a?c="$DOCUMENT":a&&a.$evalAsync&&a.$watch&&(c="$SCOPE"),c}function oa(b,a){return"undefined"==typeof b?u:JSON.stringify(b,Vc,a?" ":null)}function ac(b){return G(b)?JSON.parse(b):b}function Wa(b){return"function"==typeof b?b=!0:b&&0!==b.length?(b=x(""+b),b=!("f"==b||"0"==b||"false"==b||"no"==b||"n"==b||"[]"==b)):b=!1,b}function ia(b){b=A(b).clone();try{b.empty()}catch(a){}var c=A("<div>").append(b).html();try{return 3===b[0].nodeType?x(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+x(b)})}catch(d){return x(c)}}function bc(b){try{return decodeURIComponent(b)}catch(a){}}function cc(b){var c,d,a={};return r((b||"").split("&"),function(b){b&&(c=b.replace(/\+/g,"%20").split("="),d=bc(c[0]),D(d)&&(b=D(c[1])?bc(c[1]):!0,lb.call(a,d)?L(a[d])?a[d].push(b):a[d]=[a[d],b]:a[d]=b))}),a}function Cb(b){var a=[];return r(b,function(b,d){L(b)?r(b,function(b){a.push(Da(d,!0)+(!0===b?"":"="+Da(b,!0)))}):a.push(Da(d,!0)+(!0===b?"":"="+Da(b,!0)))}),a.length?a.join("&"):""}function mb(b){return Da(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Da(b,a){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,a?"%20":"+")}function Wc(b,a){function c(a){a&&d.push(a)}var e,f,d=[b],g=["ng:app","ng-app","x-ng-app","data-ng-app"],h=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;r(g,function(a){g[a]=!0,c(X.getElementById(a)),a=a.replace(":","\\:"),b.querySelectorAll&&(r(b.querySelectorAll("."+a),c),r(b.querySelectorAll("."+a+"\\:"),c),r(b.querySelectorAll("["+a+"]"),c))}),r(d,function(a){if(!e){var b=h.exec(" "+a.className+" ");b?(e=a,f=(b[2]||"").replace(/\s+/g,",")):r(a.attributes,function(b){!e&&g[b.name]&&(e=a,f=b.value)})}}),e&&a(e,f?[f]:[])}function dc(b,a){var c=function(){if(b=A(b),b.injector()){var c=b[0]===X?"document":ia(b);throw Va("btstrpd",c.replace(/</,"&lt;").replace(/>/,"&gt;"))}return a=a||[],a.unshift(["$provide",function(a){a.value("$rootElement",b)}]),a.unshift("ng"),c=ec(a),c.invoke(["$rootScope","$rootElement","$compile","$injector","$animate",function(a,b,c,d,e){a.$apply(function(){b.data("$injector",d),c(b)(a)})}]),c},d=/^NG_DEFER_BOOTSTRAP!/;return W&&!d.test(W.name)?c():(W.name=W.name.replace(d,""),void(Xa.resumeBootstrap=function(b){r(b,function(b){a.push(b)}),c()}))}function nb(b,a){return a=a||"_",b.replace(Xc,function(b,d){return(d?a:"")+b.toLowerCase()})}function Db(b,a,c){if(!b)throw Va("areq",a||"?",c||"required");return b}function Ya(b,a,c){return c&&L(b)&&(b=b[b.length-1]),Db(N(b),a,"not a function, got "+(b&&"object"==typeof b?b.constructor.name||"Object":typeof b)),b}function Ea(b,a){if("hasOwnProperty"===b)throw Va("badname",a)}function fc(b,a,c){if(!a)return b;a=a.split(".");for(var d,e=b,f=a.length,g=0;f>g;g++)d=a[g],b&&(b=(e=b)[d]);return!c&&N(b)?Bb(e,b):b}function Eb(b){var a=b[0];if(b=b[b.length-1],a===b)return A(a);var c=[a];do{if(a=a.nextSibling,!a)break;c.push(a)}while(a!==b);return A(c)}function Yc(b){var a=z("$injector"),c=z("ng");return b=b.angular||(b.angular={}),b.$$minErr=b.$$minErr||z,b.module||(b.module=function(){var b={};return function(e,f,g){if("hasOwnProperty"===e)throw c("badname","module");return f&&b.hasOwnProperty(e)&&(b[e]=null),b[e]||(b[e]=function(){function b(a,d,e){return function(){return c[e||"push"]([a,d,arguments]),n}}if(!f)throw a("nomod",e);var c=[],d=[],l=b("$injector","invoke"),n={_invokeQueue:c,_runBlocks:d,requires:f,name:e,provider:b("$provide","provider"),factory:b("$provide","factory"),service:b("$provide","service"),value:b("$provide","value"),constant:b("$provide","constant","unshift"),animation:b("$animateProvider","register"),filter:b("$filterProvider","register"),controller:b("$controllerProvider","register"),directive:b("$compileProvider","directive"),config:l,run:function(a){return d.push(a),this}};return g&&l(g),n}())}}())}function Zc(b){E(b,{bootstrap:dc,copy:Ka,extend:E,equals:Ca,element:A,forEach:r,injector:ec,noop:v,bind:Bb,toJson:oa,fromJson:ac,identity:ga,isUndefined:F,isDefined:D,isString:G,isFunction:N,isObject:T,isNumber:jb,isElement:Tc,isArray:L,version:$c,isDate:va,lowercase:x,uppercase:La,callbacks:{counter:0},$$minErr:z,$$csp:Za}),$a=Yc(W);try{$a("ngLocale")}catch(a){$a("ngLocale",[]).provider("$locale",ad)}$a("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:bd}),a.provider("$compile",gc).directive({a:cd,input:hc,textarea:hc,form:dd,script:ed,select:fd,style:gd,option:hd,ngBind:id,ngBindHtml:jd,ngBindTemplate:kd,ngClass:ld,ngClassEven:md,ngClassOdd:nd,ngCloak:od,ngController:pd,ngForm:qd,ngHide:rd,ngIf:sd,ngInclude:td,ngInit:ud,ngNonBindable:vd,ngPluralize:wd,ngRepeat:xd,ngShow:yd,ngStyle:zd,ngSwitch:Ad,ngSwitchWhen:Bd,ngSwitchDefault:Cd,ngOptions:Dd,ngTransclude:Ed,ngModel:Fd,ngList:Gd,ngChange:Hd,required:ic,ngRequired:ic,ngValue:Id}).directive({ngInclude:Jd}).directive(Fb).directive(jc),a.provider({$anchorScroll:Kd,$animate:Ld,$browser:Md,$cacheFactory:Nd,$controller:Od,$document:Pd,$exceptionHandler:Qd,$filter:kc,$interpolate:Rd,$interval:Sd,$http:Td,$httpBackend:Ud,$location:Vd,$log:Wd,$parse:Xd,$rootScope:Yd,$q:Zd,$sce:$d,$sceDelegate:ae,$sniffer:be,$templateCache:ce,$timeout:de,$window:ee,$$rAF:fe,$$asyncCallback:ge})}])}function ab(b){return b.replace(he,function(a,b,d,e){return e?d.toUpperCase():d}).replace(ie,"Moz$1")}function Gb(b,a,c,d){function e(b){var m,l,n,q,p,s,e=c&&b?[this.filter(b)]:[this],k=a;if(!d||null!=b)for(;e.length;)for(m=e.shift(),l=0,n=m.length;n>l;l++)for(q=A(m[l]),k?q.triggerHandler("$destroy"):k=!k,p=0,q=(s=q.children()).length;q>p;p++)e.push(Fa(s[p]));return f.apply(this,arguments)}var f=Fa.fn[b],f=f.$original||f;e.$original=f,Fa.fn[b]=e}function S(b){if(b instanceof S)return b;if(G(b)&&(b=$(b)),!(this instanceof S)){if(G(b)&&"<"!=b.charAt(0))throw Hb("nosel");return new S(b)}if(G(b)){var a=b;b=X;var c;if(c=je.exec(a))b=[b.createElement(c[1])];else{var e,d=b;if(b=d.createDocumentFragment(),c=[],Ib.test(a)){for(d=b.appendChild(d.createElement("div")),e=(ke.exec(a)||["",""])[1].toLowerCase(),e=da[e]||da._default,d.innerHTML="<div>&#160;</div>"+e[1]+a.replace(le,"<$1></$2>")+e[2],d.removeChild(d.firstChild),a=e[0];a--;)d=d.lastChild;for(a=0,e=d.childNodes.length;e>a;++a)c.push(d.childNodes[a]);d=b.firstChild,d.textContent=""}else c.push(d.createTextNode(a));b.textContent="",b.innerHTML="",b=c}Jb(this,b),A(X.createDocumentFragment()).append(this)}else Jb(this,b)}function Kb(b){return b.cloneNode(!0)}function Ma(b){Lb(b);var a=0;for(b=b.childNodes||[];a<b.length;a++)Ma(b[a])}function lc(b,a,c,d){if(D(d))throw Hb("offargs");var e=pa(b,"events");pa(b,"handle")&&(F(a)?r(e,function(a,c){bb(b,c,a),delete e[c]}):r(a.split(" "),function(a){F(c)?(bb(b,a,e[a]),delete e[a]):Ua(e[a]||[],c)}))}function Lb(b,a){var c=b.ng339,d=cb[c];d&&(a?delete cb[c].data[a]:(d.handle&&(d.events.$destroy&&d.handle({},"$destroy"),lc(b)),delete cb[c],b.ng339=u))}function pa(b,a,c){var d=b.ng339,d=cb[d||-1];return D(c)?(d||(b.ng339=d=++me,d=cb[d]={}),void(d[a]=c)):d&&d[a]}function Mb(b,a,c){var d=pa(b,"data"),e=D(c),f=!e&&D(a),g=f&&!T(a);if(d||g||pa(b,"data",d={}),e)d[a]=c;else{if(!f)return d;if(g)return d&&d[a];E(d,a)}}function Nb(b,a){return b.getAttribute?-1<(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+a+" "):!1}function ob(b,a){a&&b.setAttribute&&r(a.split(" "),function(a){b.setAttribute("class",$((" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+$(a)+" "," ")))})}function pb(b,a){if(a&&b.setAttribute){var c=(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");r(a.split(" "),function(a){a=$(a),-1===c.indexOf(" "+a+" ")&&(c+=a+" ")}),b.setAttribute("class",$(c))}}function Jb(b,a){if(a){a=a.nodeName||!D(a.length)||Ja(a)?[a]:a;for(var c=0;c<a.length;c++)b.push(a[c])}}function mc(b,a){return qb(b,"$"+(a||"ngController")+"Controller")}function qb(b,a,c){for(9==b.nodeType&&(b=b.documentElement),a=L(a)?a:[a];b;){for(var d=0,e=a.length;e>d;d++)if((c=A.data(b,a[d]))!==u)return c;b=b.parentNode||11===b.nodeType&&b.host}}function nc(b){for(var a=0,c=b.childNodes;a<c.length;a++)Ma(c[a]);for(;b.firstChild;)b.removeChild(b.firstChild)}function oc(b,a){var c=rb[a.toLowerCase()];return c&&pc[b.nodeName]&&c}function ne(b,a){var c=function(c,e){if(c.preventDefault||(c.preventDefault=function(){c.returnValue=!1}),c.stopPropagation||(c.stopPropagation=function(){c.cancelBubble=!0}),c.target||(c.target=c.srcElement||X),F(c.defaultPrevented)){var f=c.preventDefault;c.preventDefault=function(){c.defaultPrevented=!0,f.call(c)},c.defaultPrevented=!1}c.isDefaultPrevented=function(){return c.defaultPrevented||!1===c.returnValue};var g=ha(a[e||c.type]||[]);r(g,function(a){a.call(b,c)}),8>=R?(c.preventDefault=null,c.stopPropagation=null,c.isDefaultPrevented=null):(delete c.preventDefault,delete c.stopPropagation,delete c.isDefaultPrevented)};return c.elem=b,c}function Na(b,a){var d,c=typeof b;return"function"==c||"object"==c&&null!==b?"function"==typeof(d=b.$$hashKey)?d=b.$$hashKey():d===u&&(d=b.$$hashKey=(a||ib)()):d=b,c+":"+d}function db(b,a){if(a){var c=0;this.nextUid=function(){return++c}}r(b,this.put,this)}function qc(b){var a,c;return"function"==typeof b?(a=b.$inject)||(a=[],b.length&&(c=b.toString().replace(oe,""),c=c.match(pe),r(c[1].split(qe),function(b){b.replace(re,function(b,c,d){a.push(d)})})),b.$inject=a):L(b)?(c=b.length-1,Ya(b[c],"fn"),a=b.slice(0,c)):Ya(b,"fn",!0),a}function ec(b){function a(a){return function(b,c){return T(b)?void r(b,Yb(a)):a(b,c)}}function c(a,b){if(Ea(a,"service"),(N(b)||L(b))&&(b=n.instantiate(b)),!b.$get)throw eb("pget",a);return l[a+h]=b}function d(a,b){return c(a,{$get:b})}function e(a){var c,d,f,h,b=[];return r(a,function(a){if(!m.get(a)){m.put(a,!0);try{if(G(a))for(c=$a(a),b=b.concat(e(c.requires)).concat(c._runBlocks),d=c._invokeQueue,f=0,h=d.length;h>f;f++){var g=d[f],k=n.get(g[0]);k[g[1]].apply(k,g[2])}else N(a)?b.push(n.invoke(a)):L(a)?b.push(n.invoke(a)):Ya(a,"module")}catch(p){throw L(a)&&(a=a[a.length-1]),p.message&&p.stack&&-1==p.stack.indexOf(p.message)&&(p=p.message+"\n"+p.stack),eb("modulerr",a,p.stack||p.message||p)}}}),b}function f(a,b){function c(d){if(a.hasOwnProperty(d)){if(a[d]===g)throw eb("cdep",d+" <- "+k.join(" <- "));return a[d]}try{return k.unshift(d),a[d]=g,a[d]=b(d)}catch(e){throw a[d]===g&&delete a[d],e}finally{k.shift()}}function d(a,b,e){var g,k,p,f=[],h=qc(a);for(k=0,g=h.length;g>k;k++){if(p=h[k],"string"!=typeof p)throw eb("itkn",p);f.push(e&&e.hasOwnProperty(p)?e[p]:c(p))}return L(a)&&(a=a[g]),a.apply(b,f)}return{invoke:d,instantiate:function(a,b){var e,c=function(){};return c.prototype=(L(a)?a[a.length-1]:a).prototype,c=new c,e=d(a,c,b),T(e)||N(e)?e:c},get:c,annotate:qc,has:function(b){return l.hasOwnProperty(b+h)||a.hasOwnProperty(b)}}}var g={},h="Provider",k=[],m=new db([],!0),l={$provide:{provider:a(c),factory:a(d),service:a(function(a,b){return d(a,["$injector",function(a){return a.instantiate(b)}])}),value:a(function(a,b){return d(a,aa(b))}),constant:a(function(a,b){Ea(a,"constant"),l[a]=b,q[a]=b}),decorator:function(a,b){var c=n.get(a+h),d=c.$get;c.$get=function(){var a=p.invoke(d,c);return p.invoke(b,null,{$delegate:a})}}}},n=l.$injector=f(l,function(){throw eb("unpr",k.join(" <- "))}),q={},p=q.$injector=f(q,function(a){return a=n.get(a+h),p.invoke(a.$get,a)});return r(e(b),function(a){p.invoke(a||v)}),p}function Kd(){var b=!0;this.disableAutoScrolling=function(){b=!1},this.$get=["$window","$location","$rootScope",function(a,c,d){function e(a){var b=null;return r(a,function(a){b||"a"!==x(a.nodeName)||(b=a)}),b}function f(){var d,b=c.hash();b?(d=g.getElementById(b))?d.scrollIntoView():(d=e(g.getElementsByName(b)))?d.scrollIntoView():"top"===b&&a.scrollTo(0,0):a.scrollTo(0,0)}var g=a.document;return b&&d.$watch(function(){return c.hash()},function(){d.$evalAsync(f)}),f}]}function ge(){this.$get=["$$rAF","$timeout",function(b,a){return b.supported?function(a){return b(a)}:function(b){return a(b,0,!1)}}]}function se(b,a,c,d){function e(a){try{a.apply(null,wa.call(arguments,1))}finally{if(s--,0===s)for(;J.length;)try{J.pop()()}catch(b){c.error(b)}}}function f(a,b){!function ea(){r(w,function(a){a()}),t=b(ea,a)}()}function g(){y!=h.url()&&(y=h.url(),r(ba,function(a){a(h.url())}))}var h=this,k=a[0],m=b.location,l=b.history,n=b.setTimeout,q=b.clearTimeout,p={};h.isMock=!1;var s=0,J=[];h.$$completeOutstandingRequest=e,h.$$incOutstandingRequestCount=function(){s++},h.notifyWhenNoOutstandingRequests=function(a){r(w,function(a){a()}),0===s?a():J.push(a)};var t,w=[];h.addPollFn=function(a){return F(t)&&f(100,n),w.push(a),a};var y=m.href,K=a.find("base"),B=null;h.url=function(a,c){if(m!==b.location&&(m=b.location),l!==b.history&&(l=b.history),!a)return B||m.href.replace(/%27/g,"'");if(y!=a){var e=y&&Ga(y)===Ga(a);return y=a,!e&&d.history?c?l.replaceState(null,"",a):(l.pushState(null,"",a),K.attr("href",K.attr("href"))):(e||(B=a),c?m.replace(a):m.href=a),h}};var ba=[],O=!1;h.onUrlChange=function(a){return O||(d.history&&A(b).on("popstate",g),d.hashchange?A(b).on("hashchange",g):h.addPollFn(g),O=!0),ba.push(a),a},h.$$checkUrlChange=g,h.baseHref=function(){var a=K.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""};var M={},ca="",P=h.baseHref();h.cookies=function(a,b){var d,e,f,h;if(!a){if(k.cookie!==ca)for(ca=k.cookie,d=ca.split("; "),M={},f=0;f<d.length;f++)e=d[f],h=e.indexOf("="),h>0&&(a=unescape(e.substring(0,h)),M[a]===u&&(M[a]=unescape(e.substring(h+1))));return M}b===u?k.cookie=escape(a)+"=;path="+P+";expires=Thu, 01 Jan 1970 00:00:00 GMT":G(b)&&(d=(k.cookie=escape(a)+"="+escape(b)+";path="+P).length+1,d>4096&&c.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+d+" > 4096 bytes)!"))},h.defer=function(a,b){var c;return s++,c=n(function(){delete p[c],e(a)},b||0),p[c]=!0,c},h.defer.cancel=function(a){return p[a]?(delete p[a],q(a),e(v),!0):!1}}function Md(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new se(b,d,a,c)}]}function Nd(){this.$get=function(){function b(b,d){function e(a){a!=n&&(q?q==a&&(q=a.n):q=a,f(a.n,a.p),f(a,n),n=a,n.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(b in a)throw z("$cacheFactory")("iid",b);var g=0,h=E({},d,{id:b}),k={},m=d&&d.capacity||Number.MAX_VALUE,l={},n=null,q=null;return a[b]={put:function(a,b){if(m<Number.MAX_VALUE){var c=l[a]||(l[a]={key:a});e(c)}return F(b)?void 0:(a in k||g++,k[a]=b,g>m&&this.remove(q.key),b)},get:function(a){if(m<Number.MAX_VALUE){var b=l[a];if(!b)return;e(b)}return k[a]},remove:function(a){if(m<Number.MAX_VALUE){var b=l[a];if(!b)return;b==n&&(n=b.p),b==q&&(q=b.n),f(b.n,b.p),delete l[a]}delete k[a],g--},removeAll:function(){k={},g=0,l={},n=q=null},destroy:function(){l=h=k=null,delete a[b]},info:function(){return E({},h,{size:g})}}}var a={};return b.info=function(){var b={};return r(a,function(a,e){b[e]=a.info()}),b},b.get=function(b){return a[b]},b}}function ce(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function gc(b,a){var c={},d="Directive",e=/^\s*directive\:\s*([\d\w_\-]+)\s+(.*)$/,f=/(([\d\w_\-]+)(?:\:([^;]+))?;?)/,g=/^(on[a-z]+|formaction)$/;this.directive=function k(a,e){return Ea(a,"directive"),G(a)?(Db(e,"directiveFactory"),c.hasOwnProperty(a)||(c[a]=[],b.factory(a+d,["$injector","$exceptionHandler",function(b,d){var e=[];return r(c[a],function(c,f){try{var g=b.invoke(c);N(g)?g={compile:aa(g)}:!g.compile&&g.link&&(g.compile=aa(g.link)),g.priority=g.priority||0,g.index=f,g.name=g.name||a,g.require=g.require||g.controller&&g.name,g.restrict=g.restrict||"A",e.push(g)}catch(k){d(k)}}),e}])),c[a].push(e)):r(a,Yb(k)),this},this.aHrefSanitizationWhitelist=function(b){return D(b)?(a.aHrefSanitizationWhitelist(b),this):a.aHrefSanitizationWhitelist()},this.imgSrcSanitizationWhitelist=function(b){return D(b)?(a.imgSrcSanitizationWhitelist(b),this):a.imgSrcSanitizationWhitelist()},this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(a,b,l,n,q,p,s,J,w,t,y,K){function B(a,b,c,d,e){a instanceof A||(a=A(a)),r(a,function(b,c){3==b.nodeType&&b.nodeValue.match(/\S+/)&&(a[c]=A(b).wrap("<span></span>").parent()[0])});var f=O(a,b,a,c,d,e);return ba(a,"ng-scope"),function(b,c,d,e){Db(b,"scope");var g=c?Oa.clone.call(a):a;r(d,function(a,b){g.data("$"+b+"Controller",a)}),d=0;for(var k=g.length;k>d;d++){var p=g[d].nodeType;1!==p&&9!==p||g.eq(d).data("$scope",b)}return c&&c(g,b),f&&f(b,g,g,e),g}}function ba(a,b){try{a.addClass(b)}catch(c){}}function O(a,b,c,d,e,f){function g(a,c,d,e){var f,p,l,m,q,n,w;f=c.length;var s=Array(f);for(m=0;f>m;m++)s[m]=c[m];for(n=m=0,q=k.length;q>m;n++)p=s[n],c=k[m++],f=k[m++],c?(c.scope?(l=a.$new(),A.data(p,"$scope",l)):l=a,w=c.transcludeOnThisElement?M(a,c.transclude,e):!c.templateOnThisElement&&e?e:!e&&b?M(a,b):null,c(f,l,p,d,w)):f&&f(a,p.childNodes,u,e)}for(var p,l,m,q,k=[],n=0;n<a.length;n++)p=new Ob,l=ca(a[n],[],p,0===n?d:u,e),(f=l.length?I(l,a[n],p,b,c,null,[],[],f):null)&&f.scope&&ba(p.$$element,"ng-scope"),p=f&&f.terminal||!(m=a[n].childNodes)||!m.length?null:O(m,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:b),k.push(f,p),q=q||f||p,f=null;return q?g:null}function M(a,b,c){return function(d,e,f){var g=!1;return d||(d=a.$new(),g=d.$$transcluded=!0),e=b(d,e,f,c),g&&e.on("$destroy",function(){d.$destroy()}),e}}function ca(a,b,c,d,g){var p,k=c.$attr;switch(a.nodeType){case 1:ea(b,qa(Pa(a).toLowerCase()),"E",d,g);for(var l,m,q,n=a.attributes,w=0,s=n&&n.length;s>w;w++){var t=!1,J=!1;if(l=n[w],!R||R>=8||l.specified){p=l.name,m=$(l.value),l=qa(p),(q=U.test(l))&&(p=nb(l.substr(6),"-"));var y=l.replace(/(Start|End)$/,"");l===y+"Start"&&(t=p,J=p.substr(0,p.length-5)+"end",p=p.substr(0,p.length-6)),l=qa(p.toLowerCase()),k[l]=p,(q||!c.hasOwnProperty(l))&&(c[l]=m,oc(a,l)&&(c[l]=!0)),S(a,b,m,l),ea(b,l,"A",d,g,t,J)}}if(a=a.className,G(a)&&""!==a)for(;p=f.exec(a);)l=qa(p[2]),ea(b,l,"C",d,g)&&(c[l]=$(p[3])),a=a.substr(p.index+p[0].length);break;case 3:x(b,a.nodeValue);break;case 8:try{(p=e.exec(a.nodeValue))&&(l=qa(p[1]),ea(b,l,"M",d,g)&&(c[l]=$(p[2])))}catch(B){}}return b.sort(F),b}function P(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw ja("uterdir",b,c);1==a.nodeType&&(a.hasAttribute(b)&&e++,a.hasAttribute(c)&&e--),d.push(a),a=a.nextSibling}while(e>0)}else d.push(a);return A(d)}function C(a,b,c){return function(d,e,f,g,k){return e=P(e[0],b,c),a(d,e,f,g,k)}}function I(a,c,d,e,f,g,k,q,n){function w(a,b,c,d){a&&(c&&(a=C(a,c,d)),a.require=H.require,a.directiveName=z,(K===H||H.$$isolateScope)&&(a=rc(a,{isolateScope:!0})),k.push(a)),b&&(c&&(b=C(b,c,d)),b.require=H.require,b.directiveName=z,(K===H||H.$$isolateScope)&&(b=rc(b,{isolateScope:!0})),q.push(b))}function t(a,b,c,d){var e,f="data",g=!1;if(G(b)){for(;"^"==(e=b.charAt(0))||"?"==e;)b=b.substr(1),"^"==e&&(f="inheritedData"),g=g||"?"==e;if(e=null,d&&"data"===f&&(e=d[b]),e=e||c[f]("$"+b+"Controller"),!e&&!g)throw ja("ctreq",b,a)}else L(b)&&(e=[],r(b,function(b){e.push(t(a,b,c,d))}));return e}function J(a,e,f,g,n){function w(a,b){var c;return 2>arguments.length&&(b=a,a=u),Ia&&(c=ca),n(a,b,c)}var y,Q,B,M,C,P,ra,ca={};if(y=c===f?d:ha(d,new Ob(A(f),d.$attr)),Q=y.$$element,K){var ue=/^\s*([@=&])(\??)\s*(\w*)\s*$/;P=e.$new(!0),!I||I!==K&&I!==K.$$originalDirective?Q.data("$isolateScopeNoTemplate",P):Q.data("$isolateScope",P),ba(Q,"ng-isolate-scope"),r(K.scope,function(a,c){var k,l,n,q,d=a.match(ue)||[],f=d[3]||c,g="?"==d[2],d=d[1];switch(P.$$isolateBindings[c]=d+f,d){case"@":y.$observe(f,function(a){P[c]=a}),y.$$observers[f].$$scope=e,y[f]&&(P[c]=b(y[f])(e));break;case"=":if(g&&!y[f])break;l=p(y[f]),q=l.literal?Ca:function(a,b){return a===b||a!==a&&b!==b},n=l.assign||function(){throw k=P[c]=l(e),ja("nonassign",y[f],K.name)},k=P[c]=l(e),P.$watch(function(){var a=l(e);return q(a,P[c])||(q(a,k)?n(e,a=P[c]):P[c]=a),k=a},null,l.literal);break;case"&":l=p(y[f]),P[c]=function(a){return l(e,a)};break;default:throw ja("iscp",K.name,c,a)}})}for(ra=n&&w,O&&r(O,function(a){var c,b={$scope:a===K||a.$$isolateScope?P:e,$element:Q,$attrs:y,$transclude:ra};C=a.controller,"@"==C&&(C=y[a.name]),c=s(C,b),ca[a.name]=c,Ia||Q.data("$"+a.name+"Controller",c),a.controllerAs&&(b.$scope[a.controllerAs]=c)}),g=0,B=k.length;B>g;g++)try{(M=k[g])(M.isolateScope?P:e,Q,y,M.require&&t(M.directiveName,M.require,Q,ca),ra)}catch(H){l(H,ia(Q))}for(g=e,K&&(K.template||null===K.templateUrl)&&(g=P),a&&a(g,f.childNodes,u,n),g=q.length-1;g>=0;g--)try{(M=q[g])(M.isolateScope?P:e,Q,y,M.require&&t(M.directiveName,M.require,Q,ca),ra)}catch(D){l(D,ia(Q))}}n=n||{};for(var M,H,z,V,R,y=-Number.MAX_VALUE,O=n.controllerDirectives,K=n.newIsolateScopeDirective,I=n.templateDirective,ea=n.nonTlbTranscludeDirective,F=!1,E=!1,Ia=n.hasElementTranscludeDirective,x=d.$$element=A(c),S=e,Ha=0,sa=a.length;sa>Ha;Ha++){H=a[Ha];var U=H.$$start,Y=H.$$end;if(U&&(x=P(c,U,Y)),V=u,y>H.priority)break;if((V=H.scope)&&(M=M||H,H.templateUrl||(fb("new/isolated scope",K,H,x),T(V)&&(K=H))),z=H.name,!H.templateUrl&&H.controller&&(V=H.controller,O=O||{},fb("'"+z+"' controller",O[z],H,x),O[z]=H),(V=H.transclude)&&(F=!0,H.$$tlb||(fb("transclusion",ea,H,x),ea=H),"element"==V?(Ia=!0,y=H.priority,V=x,x=d.$$element=A(X.createComment(" "+z+": "+d[z]+" ")),c=x[0],ra(f,wa.call(V,0),c),S=B(V,e,y,g&&g.name,{nonTlbTranscludeDirective:ea})):(V=A(Kb(c)).contents(),x.empty(),S=B(V,e))),H.template)if(E=!0,fb("template",I,H,x),I=H,V=N(H.template)?H.template(x,d):H.template,V=W(V),H.replace){if(g=H,V=Ib.test(V)?A($(V)):[],c=V[0],1!=V.length||1!==c.nodeType)throw ja("tplrt",z,"");ra(f,x,c),sa={$attr:{}},V=ca(c,[],sa);var Z=a.splice(Ha+1,a.length-(Ha+1));K&&D(V),a=a.concat(V).concat(Z),v(d,sa),sa=a.length}else x.html(V);if(H.templateUrl)E=!0,fb("template",I,H,x),I=H,H.replace&&(g=H),J=te(a.splice(Ha,a.length-Ha),x,d,f,F&&S,k,q,{controllerDirectives:O,newIsolateScopeDirective:K,templateDirective:I,nonTlbTranscludeDirective:ea}),sa=a.length;else if(H.compile)try{R=H.compile(x,d,S),N(R)?w(null,R,U,Y):R&&w(R.pre,R.post,U,Y)}catch(ve){l(ve,ia(x))}H.terminal&&(J.terminal=!0,y=Math.max(y,H.priority))}return J.scope=M&&!0===M.scope,J.transcludeOnThisElement=F,J.templateOnThisElement=E,J.transclude=S,n.hasElementTranscludeDirective=Ia,J}function D(a){for(var b=0,c=a.length;c>b;b++)a[b]=$b(a[b],{$$isolateScope:!0})}function ea(b,e,f,g,p,m,n){if(e===p)return null;if(p=null,c.hasOwnProperty(e)){var q;e=a.get(e+d);for(var w=0,s=e.length;s>w;w++)try{q=e[w],(g===u||g>q.priority)&&-1!=q.restrict.indexOf(f)&&(m&&(q=$b(q,{$$start:m,$$end:n})),b.push(q),p=q)}catch(y){l(y)}}return p}function v(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;r(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&b[e]!==d&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))}),r(b,function(b,f){"class"==f?(ba(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?(e.attr("style",e.attr("style")+";"+b),a.style=(a.style?a.style+";":"")+b):"$"==f.charAt(0)||a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function te(a,b,c,d,e,f,g,k){var l,m,p=[],w=b[0],s=a.shift(),y=E({},s,{templateUrl:null,transclude:null,replace:null,$$originalDirective:s}),J=N(s.templateUrl)?s.templateUrl(b,c):s.templateUrl;return b.empty(),n.get(t.getTrustedResourceUrl(J),{cache:q}).success(function(q){var n,t;if(q=W(q),s.replace){if(q=Ib.test(q)?A($(q)):[],n=q[0],1!=q.length||1!==n.nodeType)throw ja("tplrt",s.name,J);q={$attr:{}},ra(d,b,n);var B=ca(n,[],q);T(s.scope)&&D(B),a=B.concat(a),v(c,q)}else n=w,b.html(q);for(a.unshift(y),l=I(a,n,c,e,b,s,f,g,k),r(d,function(a,c){a==n&&(d[c]=b[0])}),m=O(b[0].childNodes,e);p.length;){q=p.shift(),t=p.shift();var K=p.shift(),C=p.shift(),B=b[0];if(t!==w){var P=t.className;k.hasElementTranscludeDirective&&s.replace||(B=Kb(n)),ra(K,A(t),B),ba(A(B),P)}t=l.transcludeOnThisElement?M(q,l.transclude,C):C,l(m,q,B,d,t)}p=null}).error(function(a,b,c,d){throw ja("tpload",d.url)}),function(a,b,c,d,e){a=e,p?(p.push(b),p.push(c),p.push(d),p.push(a)):(l.transcludeOnThisElement&&(a=M(b,l.transclude,e)),l(m,b,c,d,a))}}function F(a,b){var c=b.priority-a.priority;return 0!==c?c:a.name!==b.name?a.name<b.name?-1:1:a.index-b.index}function fb(a,b,c,d){if(b)throw ja("multidir",b.name,c.name,a,ia(d))}function x(a,c){var d=b(c,!0);d&&a.push({priority:0,compile:function(a){var b=a.parent().length;return b&&ba(a.parent(),"ng-binding"),function(a,c){var e=c.parent(),f=e.data("$binding")||[];f.push(d),e.data("$binding",f),b||ba(e,"ng-binding"),a.$watch(d,function(a){c[0].nodeValue=a})}}})}function z(a,b){if("srcdoc"==b)return t.HTML;var c=Pa(a);return"xlinkHref"==b||"FORM"==c&&"action"==b||"IMG"!=c&&("src"==b||"ngSrc"==b)?t.RESOURCE_URL:void 0}function S(a,c,d,e){var f=b(d,!0);if(f){if("multiple"===e&&"SELECT"===Pa(a))throw ja("selmulti",ia(a));c.push({priority:100,compile:function(){return{pre:function(c,d,k){if(d=k.$$observers||(k.$$observers={}),g.test(e))throw ja("nodomevents");(f=b(k[e],!0,z(a,e)))&&(k[e]=f(c),(d[e]||(d[e]=[])).$$inter=!0,(k.$$observers&&k.$$observers[e].$$scope||c).$watch(f,function(a,b){"class"===e&&a!=b?k.$updateClass(a,b):k.$set(e,a)}))}}}})}}function ra(a,b,c){var g,k,d=b[0],e=b.length,f=d.parentNode;if(a)for(g=0,k=a.length;k>g;g++)if(a[g]==d){a[g++]=c,k=g+e-1;for(var p=a.length;p>g;g++,k++)p>k?a[g]=a[k]:delete a[g];a.length-=e-1;break}for(f&&f.replaceChild(c,d),a=X.createDocumentFragment(),a.appendChild(d),c[A.expando]=d[A.expando],d=1,e=b.length;e>d;d++)f=b[d],A(f).remove(),a.appendChild(f),delete b[d];b[0]=c,b.length=1}function rc(a,b){return E(function(){return a.apply(null,arguments)},a,b)}var Ob=function(a,b){this.$$element=a,this.$attr=b||{}};Ob.prototype={$normalize:qa,$addClass:function(a){a&&0<a.length&&y.addClass(this.$$element,a)},$removeClass:function(a){a&&0<a.length&&y.removeClass(this.$$element,a)},$updateClass:function(a,b){var c=sc(a,b),d=sc(b,a);0===c.length?y.removeClass(this.$$element,d):0===d.length?y.addClass(this.$$element,c):y.setClass(this.$$element,c,d)},$set:function(a,b,c,d){var e=oc(this.$$element[0],a);e&&(this.$$element.prop(a,b),d=e),this[a]=b,d?this.$attr[a]=d:(d=this.$attr[a])||(this.$attr[a]=d=nb(a,"-")),e=Pa(this.$$element),("A"===e&&"href"===a||"IMG"===e&&"src"===a)&&(this[a]=b=K(b,"src"===a)),!1!==c&&(null===b||b===u?this.$$element.removeAttr(d):this.$$element.attr(d,b)),(c=this.$$observers)&&r(c[a],function(a){try{a(b)}catch(c){l(c)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers={}),e=d[a]||(d[a]=[]);return e.push(b),J.$evalAsync(function(){e.$$inter||b(c[a])}),b}};var sa=b.startSymbol(),Ia=b.endSymbol(),W="{{"==sa||"}}"==Ia?ga:function(a){return a.replace(/\{\{/g,sa).replace(/}}/g,Ia)},U=/^ngAttr[A-Z]/;return B}]}function qa(b){return ab(b.replace(we,""))}function sc(b,a){var c="",d=b.split(/\s+/),e=a.split(/\s+/),f=0;a:for(;f<d.length;f++){for(var g=d[f],h=0;h<e.length;h++)if(g==e[h])continue a;c+=(0<c.length?" ":"")+g}return c}function Od(){var b={},a=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(a,d){Ea(a,"controller"),T(a)?E(b,a):b[a]=d},this.$get=["$injector","$window",function(c,d){return function(e,f){var g,h,k;if(G(e)&&(g=e.match(a),h=g[1],k=g[3],e=b.hasOwnProperty(h)?b[h]:fc(f.$scope,h,!0)||fc(d,h,!0),Ya(e,h,!0)),g=c.instantiate(e,f),k){if(!f||"object"!=typeof f.$scope)throw z("$controller")("noscp",h||e.name,k);f.$scope[k]=g}return g}}]}function Pd(){this.$get=["$window",function(b){return A(b.document)}]}function Qd(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function tc(b){var c,d,e,a={};return b?(r(b.split("\n"),function(b){e=b.indexOf(":"),c=x($(b.substr(0,e))),d=$(b.substr(e+1)),c&&(a[c]=a[c]?a[c]+", "+d:d)}),a):a}function uc(b){var a=T(b)?b:u;return function(c){return a||(a=tc(b)),c?a[x(c)]||null:a}}function vc(b,a,c){return N(c)?c(b,a):(r(c,function(c){b=c(b,a)}),b);
}function Td(){var b=/^\s*(\[|\{[^\{])/,a=/[\}\]]\s*$/,c=/^\)\]\}',?\n/,d={"Content-Type":"application/json;charset=utf-8"},e=this.defaults={transformResponse:[function(d){return G(d)&&(d=d.replace(c,""),b.test(d)&&a.test(d)&&(d=ac(d))),d}],transformRequest:[function(a){return T(a)&&"[object File]"!==Ba.call(a)&&"[object Blob]"!==Ba.call(a)?oa(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ha(d),put:ha(d),patch:ha(d)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},f=this.interceptors=[],g=this.responseInterceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,b,c,d,n,q){function p(a){function b(a){var d=E({},a,{data:vc(a.data,a.headers,c.transformResponse)});return 200<=a.status&&300>a.status?d:n.reject(d)}var c={method:"get",transformRequest:e.transformRequest,transformResponse:e.transformResponse},d=function(a){var d,f,b=e.headers,c=E({},a.headers),b=E({},b.common,b[x(a.method)]);a:for(d in b){a=x(d);for(f in c)if(x(f)===a)continue a;c[d]=b[d]}return function(a){var b;r(a,function(c,d){N(c)&&(b=c(),null!=b?a[d]=b:delete a[d])})}(c),c}(a);E(c,a),c.headers=d,c.method=La(c.method);var f=[function(a){d=a.headers;var c=vc(a.data,uc(d),a.transformRequest);return F(c)&&r(d,function(a,b){"content-type"===x(b)&&delete d[b]}),F(a.withCredentials)&&!F(e.withCredentials)&&(a.withCredentials=e.withCredentials),s(a,c,d).then(b,b)},u],g=n.when(c);for(r(t,function(a){(a.request||a.requestError)&&f.unshift(a.request,a.requestError),(a.response||a.responseError)&&f.push(a.response,a.responseError)});f.length;){a=f.shift();var h=f.shift(),g=g.then(a,h)}return g.success=function(a){return g.then(function(b){a(b.data,b.status,b.headers,c)}),g},g.error=function(a){return g.then(null,function(b){a(b.data,b.status,b.headers,c)}),g},g}function s(c,f,g){function m(a,b,c,e){C&&(a>=200&&300>a?C.put(A,[a,b,tc(c),e]):C.remove(A)),q(b,a,c,e),d.$$phase||d.$apply()}function q(a,b,d,e){b=Math.max(b,0),(b>=200&&300>b?t.resolve:t.reject)({data:a,status:b,headers:uc(d),config:c,statusText:e})}function s(){var a=Ta(p.pendingRequests,c);-1!==a&&p.pendingRequests.splice(a,1)}var C,I,t=n.defer(),r=t.promise,A=J(c.url,c.params);if(p.pendingRequests.push(c),r.then(s,s),!c.cache&&!e.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(C=T(c.cache)?c.cache:T(e.cache)?e.cache:w),C)if(I=C.get(A),D(I)){if(I&&N(I.then))return I.then(s,s),I;L(I)?q(I[1],I[0],ha(I[2]),I[3]):q(I,200,{},"OK")}else C.put(A,r);return F(I)&&((I=Pb(c.url)?b.cookies()[c.xsrfCookieName||e.xsrfCookieName]:u)&&(g[c.xsrfHeaderName||e.xsrfHeaderName]=I),a(c.method,A,f,m,g,c.timeout,c.withCredentials,c.responseType)),r}function J(a,b){if(!b)return a;var c=[];return Sc(b,function(a,b){null===a||F(a)||(L(a)||(a=[a]),r(a,function(a){T(a)&&(a=va(a)?a.toISOString():oa(a)),c.push(Da(b)+"="+Da(a))}))}),0<c.length&&(a+=(-1==a.indexOf("?")?"?":"&")+c.join("&")),a}var w=c("$http"),t=[];return r(f,function(a){t.unshift(G(a)?q.get(a):q.invoke(a))}),r(g,function(a,b){var c=G(a)?q.get(a):q.invoke(a);t.splice(b,0,{response:function(a){return c(n.when(a))},responseError:function(a){return c(n.reject(a))}})}),p.pendingRequests=[],function(a){r(arguments,function(a){p[a]=function(b,c){return p(E(c||{},{method:a,url:b}))}})}("get","delete","head","jsonp"),function(a){r(arguments,function(a){p[a]=function(b,c,d){return p(E(d||{},{method:a,url:b,data:c}))}})}("post","put","patch"),p.defaults=e,p}]}function xe(b){if(8>=R&&(!b.match(/^(get|post|head|put|delete|options)$/i)||!W.XMLHttpRequest))return new W.ActiveXObject("Microsoft.XMLHTTP");if(W.XMLHttpRequest)return new W.XMLHttpRequest;throw z("$httpBackend")("noxhr")}function Ud(){this.$get=["$browser","$window","$document",function(b,a,c){return ye(b,xe,b.defer,a.angular.callbacks,c[0])}]}function ye(b,a,c,d,e){function f(a,b,c){var f=e.createElement("script"),g=null;return f.type="text/javascript",f.src=a,f.async=!0,g=function(a){bb(f,"load",g),bb(f,"error",g),e.body.removeChild(f),f=null;var h=-1,s="unknown";a&&("load"!==a.type||d[b].called||(a={type:"error"}),s=a.type,h="error"===a.type?404:200),c&&c(h,s)},sb(f,"load",g),sb(f,"error",g),8>=R&&(f.onreadystatechange=function(){G(f.readyState)&&/loaded|complete/.test(f.readyState)&&(f.onreadystatechange=null,g({type:"load"}))}),e.body.appendChild(f),g}var g=-1;return function(e,k,m,l,n,q,p,s){function J(){t=g,K&&K(),B&&B.abort()}function w(a,d,e,f,g){O&&c.cancel(O),K=B=null,0===d&&(d=e?200:"file"==xa(k).protocol?404:0),a(1223===d?204:d,e,f,g||""),b.$$completeOutstandingRequest(v)}var t;if(b.$$incOutstandingRequestCount(),k=k||b.url(),"jsonp"==x(e)){var y="_"+(d.counter++).toString(36);d[y]=function(a){d[y].data=a,d[y].called=!0};var K=f(k.replace("JSON_CALLBACK","angular.callbacks."+y),y,function(a,b){w(l,a,d[y].data,"",b),d[y]=v})}else{var B=a(e);if(B.open(e,k,!0),r(n,function(a,b){D(a)&&B.setRequestHeader(b,a)}),B.onreadystatechange=function(){if(B&&4==B.readyState){var a=null,b=null,c="";t!==g&&(a=B.getAllResponseHeaders(),b="response"in B?B.response:B.responseText),t===g&&10>R||(c=B.statusText),w(l,t||B.status,b,a,c)}},p&&(B.withCredentials=!0),s)try{B.responseType=s}catch(ba){if("json"!==s)throw ba}B.send(m||null)}if(q>0)var O=c(J,q);else q&&N(q.then)&&q.then(J)}}function Rd(){var b="{{",a="}}";this.startSymbol=function(a){return a?(b=a,this):b},this.endSymbol=function(b){return b?(a=b,this):a},this.$get=["$parse","$exceptionHandler","$sce",function(c,d,e){function f(f,m,l){for(var n,q,p=0,s=[],J=f.length,w=!1,t=[];J>p;)-1!=(n=f.indexOf(b,p))&&-1!=(q=f.indexOf(a,n+g))?(p!=n&&s.push(f.substring(p,n)),s.push(p=c(w=f.substring(n+g,q))),p.exp=w,p=q+h,w=!0):(p!=J&&s.push(f.substring(p)),p=J);if((J=s.length)||(s.push(""),J=1),l&&1<s.length)throw wc("noconcat",f);return!m||w?(t.length=J,p=function(a){try{for(var g,b=0,c=J;c>b;b++){if("function"==typeof(g=s[b]))if(g=g(a),g=l?e.getTrusted(l,g):e.valueOf(g),null==g)g="";else switch(typeof g){case"string":break;case"number":g=""+g;break;default:g=oa(g)}t[b]=g}return t.join("")}catch(h){a=wc("interr",f,h.toString()),d(a)}},p.exp=f,p.parts=s,p):void 0}var g=b.length,h=a.length;return f.startSymbol=function(){return b},f.endSymbol=function(){return a},f}]}function Sd(){this.$get=["$rootScope","$window","$q",function(b,a,c){function d(d,g,h,k){var m=a.setInterval,l=a.clearInterval,n=c.defer(),q=n.promise,p=0,s=D(k)&&!k;return h=D(h)?h:0,q.then(null,null,d),q.$$intervalId=m(function(){n.notify(p++),h>0&&p>=h&&(n.resolve(p),l(q.$$intervalId),delete e[q.$$intervalId]),s||b.$apply()},g),e[q.$$intervalId]=n,q}var e={};return d.cancel=function(b){return b&&b.$$intervalId in e?(e[b.$$intervalId].reject("canceled"),a.clearInterval(b.$$intervalId),delete e[b.$$intervalId],!0):!1},d}]}function ad(){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"},pluralCat:function(b){return 1===b?"one":"other"}}}}function Qb(b){b=b.split("/");for(var a=b.length;a--;)b[a]=mb(b[a]);return b.join("/")}function xc(b,a,c){b=xa(b,c),a.$$protocol=b.protocol,a.$$host=b.hostname,a.$$port=U(b.port)||ze[b.protocol]||null}function yc(b,a,c){var d="/"!==b.charAt(0);d&&(b="/"+b),b=xa(b,c),a.$$path=decodeURIComponent(d&&"/"===b.pathname.charAt(0)?b.pathname.substring(1):b.pathname),a.$$search=cc(b.search),a.$$hash=decodeURIComponent(b.hash),a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function ta(b,a){return 0===a.indexOf(b)?a.substr(b.length):void 0}function Ga(b){var a=b.indexOf("#");return-1==a?b:b.substr(0,a)}function Rb(b){return b.substr(0,Ga(b).lastIndexOf("/")+1)}function zc(b,a){this.$$html5=!0,a=a||"";var c=Rb(b);xc(b,this,b),this.$$parse=function(a){var e=ta(c,a);if(!G(e))throw Sb("ipthprfx",a,c);yc(e,this,b),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var a=Cb(this.$$search),b=this.$$hash?"#"+mb(this.$$hash):"";this.$$url=Qb(this.$$path)+(a?"?"+a:"")+b,this.$$absUrl=c+this.$$url.substr(1)},this.$$parseLinkUrl=function(d,e){var f,g;return(f=ta(b,d))!==u?(g=f,g=(f=ta(a,f))!==u?c+(ta("/",f)||f):b+g):(f=ta(c,d))!==u?g=c+f:c==d+"/"&&(g=c),g&&this.$$parse(g),!!g}}function Tb(b,a){var c=Rb(b);xc(b,this,b),this.$$parse=function(d){var e=ta(b,d)||ta(c,d),e="#"==e.charAt(0)?ta(a,e):this.$$html5?e:"";if(!G(e))throw Sb("ihshprfx",d,a);yc(e,this,b),d=this.$$path;var f=/^\/[A-Z]:(\/.*)/;0===e.indexOf(b)&&(e=e.replace(b,"")),f.exec(e)||(d=(e=f.exec(d))?e[1]:d),this.$$path=d,this.$$compose()},this.$$compose=function(){var c=Cb(this.$$search),e=this.$$hash?"#"+mb(this.$$hash):"";this.$$url=Qb(this.$$path)+(c?"?"+c:"")+e,this.$$absUrl=b+(this.$$url?a+this.$$url:"")},this.$$parseLinkUrl=function(a,c){return Ga(b)==Ga(a)?(this.$$parse(a),!0):!1}}function Ac(b,a){this.$$html5=!0,Tb.apply(this,arguments);var c=Rb(b);this.$$parseLinkUrl=function(d,e){var f,g;return b==Ga(d)?f=d:(g=ta(c,d))?f=b+a+g:c===d+"/"&&(f=c),f&&this.$$parse(f),!!f},this.$$compose=function(){var c=Cb(this.$$search),e=this.$$hash?"#"+mb(this.$$hash):"";this.$$url=Qb(this.$$path)+(c?"?"+c:"")+e,this.$$absUrl=b+a+this.$$url}}function tb(b){return function(){return this[b]}}function Bc(b,a){return function(c){return F(c)?this[b]:(this[b]=a(c),this.$$compose(),this)}}function Vd(){var b="",a=!1;this.hashPrefix=function(a){return D(a)?(b=a,this):b},this.html5Mode=function(b){return D(b)?(a=b,this):a},this.$get=["$rootScope","$browser","$sniffer","$rootElement",function(c,d,e,f){function g(a){c.$broadcast("$locationChangeSuccess",h.absUrl(),a)}var h,k=d.baseHref(),m=d.url();a?(k=m.substring(0,m.indexOf("/",m.indexOf("//")+2))+(k||"/"),e=e.history?zc:Ac):(k=Ga(m),e=Tb),h=new e(k,"#"+b),h.$$parseLinkUrl(m,m);var l=/^\s*(javascript|mailto):/i;f.on("click",function(a){if(!a.ctrlKey&&!a.metaKey&&2!=a.which){for(var b=A(a.target);"a"!==x(b[0].nodeName);)if(b[0]===f[0]||!(b=b.parent())[0])return;var e=b.prop("href"),g=b.attr("href")||b.attr("xlink:href");T(e)&&"[object SVGAnimatedString]"===e.toString()&&(e=xa(e.animVal).href),l.test(e)||!e||b.attr("target")||a.isDefaultPrevented()||!h.$$parseLinkUrl(e,g)||(a.preventDefault(),h.absUrl()!=d.url()&&(c.$apply(),W.angular["ff-684208-preventDefault"]=!0))}}),h.absUrl()!=m&&d.url(h.absUrl(),!0),d.onUrlChange(function(a){h.absUrl()!=a&&(c.$evalAsync(function(){var b=h.absUrl();h.$$parse(a),c.$broadcast("$locationChangeStart",a,b).defaultPrevented?(h.$$parse(b),d.url(b)):g(b)}),c.$$phase||c.$digest())});var n=0;return c.$watch(function(){var a=d.url(),b=h.$$replace;return n&&a==h.absUrl()||(n++,c.$evalAsync(function(){c.$broadcast("$locationChangeStart",h.absUrl(),a).defaultPrevented?h.$$parse(a):(d.url(h.absUrl(),b),g(a))})),h.$$replace=!1,n}),h}]}function Wd(){var b=!0,a=this;this.debugEnabled=function(a){return D(a)?(b=a,this):b},this.$get=["$window",function(c){function d(a){return a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line)),a}function e(a){var b=c.console||{},e=b[a]||b.log||v;a=!1;try{a=!!e.apply}catch(k){}return a?function(){var a=[];return r(arguments,function(b){a.push(d(b))}),e.apply(b,a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){b&&c.apply(a,arguments)}}()}}]}function ka(b,a){if("__defineGetter__"===b||"__defineSetter__"===b||"__lookupGetter__"===b||"__lookupSetter__"===b||"__proto__"===b)throw la("isecfld",a);return b}function ma(b,a){if(b){if(b.constructor===b)throw la("isecfn",a);if(b.document&&b.location&&b.alert&&b.setInterval)throw la("isecwindow",a);if(b.children&&(b.nodeName||b.prop&&b.attr&&b.find))throw la("isecdom",a);if(b===Object)throw la("isecobj",a)}return b}function ub(b,a,c,d,e){ma(b,d),e=e||{},a=a.split(".");for(var f,g=0;1<a.length;g++){f=ka(a.shift(),d);var h=ma(b[f],d);h||(h={},b[f]=h),b=h,b.then&&e.unwrapPromises&&(ya(d),"$$v"in b||function(a){a.then(function(b){a.$$v=b})}(b),b.$$v===u&&(b.$$v={}),b=b.$$v)}return f=ka(a.shift(),d),ma(b[f],d),b[f]=c}function Qa(b){return"constructor"==b}function Cc(b,a,c,d,e,f,g){ka(b,f),ka(a,f),ka(c,f),ka(d,f),ka(e,f);var h=function(a){return ma(a,f)},k=g.expensiveChecks,m=k||Qa(b)?h:ga,l=k||Qa(a)?h:ga,n=k||Qa(c)?h:ga,q=k||Qa(d)?h:ga,p=k||Qa(e)?h:ga;return g.unwrapPromises?function(g,h){var t,k=h&&h.hasOwnProperty(b)?h:g;return null==k?k:((k=m(k[b]))&&k.then&&(ya(f),"$$v"in k||(t=k,t.$$v=u,t.then(function(a){t.$$v=m(a)})),k=m(k.$$v)),a?null==k?u:((k=l(k[a]))&&k.then&&(ya(f),"$$v"in k||(t=k,t.$$v=u,t.then(function(a){t.$$v=l(a)})),k=l(k.$$v)),c?null==k?u:((k=n(k[c]))&&k.then&&(ya(f),"$$v"in k||(t=k,t.$$v=u,t.then(function(a){t.$$v=n(a)})),k=n(k.$$v)),d?null==k?u:((k=q(k[d]))&&k.then&&(ya(f),"$$v"in k||(t=k,t.$$v=u,t.then(function(a){t.$$v=q(a)})),k=q(k.$$v)),e?null==k?u:((k=p(k[e]))&&k.then&&(ya(f),"$$v"in k||(t=k,t.$$v=u,t.then(function(a){t.$$v=p(a)})),k=p(k.$$v)),k):k):k):k):k)}:function(f,g){var h=g&&g.hasOwnProperty(b)?g:f;return null==h?h:(h=m(h[b]),a?null==h?u:(h=l(h[a]),c?null==h?u:(h=n(h[c]),d?null==h?u:(h=q(h[d]),e?null==h?u:h=p(h[e]):h):h):h):h)}}function Ae(b,a){return function(c,d){return b(c,d,ya,ma,a)}}function Dc(b,a,c){var d=a.expensiveChecks,e=d?Be:Ce;if(e.hasOwnProperty(b))return e[b];var h,f=b.split("."),g=f.length;if(a.csp)h=6>g?Cc(f[0],f[1],f[2],f[3],f[4],c,a):function(b,d){var h,e=0;do h=Cc(f[e++],f[e++],f[e++],f[e++],f[e++],c,a)(b,d),d=u,b=h;while(g>e);return h};else{var k="var p;\n";d&&(k+="s = eso(s, fe);\nl = eso(l, fe);\n");var m=d;r(f,function(b,e){ka(b,c);var f=(e?"s":'((l&&l.hasOwnProperty("'+b+'"))?l:s)')+'["'+b+'"]',g=d||Qa(b);g&&(f="eso("+f+", fe)",m=!0),k+="if(s == null) return undefined;\ns="+f+";\n",a.unwrapPromises&&(k+='if (s && s.then) {\n pw("'+c.replace(/(["\r\n])/g,"\\$1")+'");\n if (!("$$v" in s)) {\n p=s;\n p.$$v = undefined;\n p.then(function(v) {p.$$v='+(g?"eso(v)":"v")+";});\n}\n s="+(g?"eso(s.$$v)":"s.$$v")+"\n}\n")}),k+="return s;",h=new Function("s","l","pw","eso","fe",k),h.toString=aa(k),(m||a.unwrapPromises)&&(h=Ae(h,c))}return"hasOwnProperty"!==b&&(e[b]=h),h}function Xd(){var b={},a={},c={csp:!1,unwrapPromises:!1,logPromiseWarnings:!0,expensiveChecks:!1};this.unwrapPromises=function(a){return D(a)?(c.unwrapPromises=!!a,this):c.unwrapPromises},this.logPromiseWarnings=function(a){return D(a)?(c.logPromiseWarnings=a,this):c.logPromiseWarnings},this.$get=["$filter","$sniffer","$log",function(d,e,f){c.csp=e.csp;var g={csp:c.csp,unwrapPromises:c.unwrapPromises,logPromiseWarnings:c.logPromiseWarnings,expensiveChecks:!0};return ya=function(a){c.logPromiseWarnings&&!Ec.hasOwnProperty(a)&&(Ec[a]=!0,f.warn("[$parse] Promise found in the expression `"+a+"`. Automatic unwrapping of promises in Angular expressions is deprecated."))},function(e,f){var m;switch(typeof e){case"string":var l=f?a:b;if(l.hasOwnProperty(e))return l[e];m=f?g:c;var n=new Ub(m);return m=new gb(n,d,m).parse(e),"hasOwnProperty"!==e&&(l[e]=m),m;case"function":return e;default:return v}}}]}function Zd(){this.$get=["$rootScope","$exceptionHandler",function(b,a){return De(function(a){b.$evalAsync(a)},a)}]}function De(b,a){function c(a){return a}function d(a){return g(a)}var e=function(){var m,l,g=[];return l={resolve:function(a){if(g){var c=g;g=u,m=f(a),c.length&&b(function(){for(var a,b=0,d=c.length;d>b;b++)a=c[b],m.then(a[0],a[1],a[2])})}},reject:function(a){l.resolve(h(a))},notify:function(a){if(g){var c=g;g.length&&b(function(){for(var b,d=0,e=c.length;e>d;d++)b=c[d],b[2](a)})}},promise:{then:function(b,f,h){var l=e(),J=function(d){try{l.resolve((N(b)?b:c)(d))}catch(e){l.reject(e),a(e)}},w=function(b){try{l.resolve((N(f)?f:d)(b))}catch(c){l.reject(c),a(c)}},t=function(b){try{l.notify((N(h)?h:c)(b))}catch(d){a(d)}};return g?g.push([J,w,t]):m.then(J,w,t),l.promise},"catch":function(a){return this.then(null,a)},"finally":function(a){function b(a,c){var d=e();return c?d.resolve(a):d.reject(a),d.promise}function d(e,f){var g=null;try{g=(a||c)()}catch(h){return b(h,!1)}return g&&N(g.then)?g.then(function(){return b(e,f)},function(a){return b(a,!1)}):b(e,f)}return this.then(function(a){return d(a,!0)},function(a){return d(a,!1)})}}}},f=function(a){return a&&N(a.then)?a:{then:function(c){var d=e();return b(function(){d.resolve(c(a))}),d.promise}}},g=function(a){var b=e();return b.reject(a),b.promise},h=function(c){return{then:function(f,g){var h=e();return b(function(){try{h.resolve((N(g)?g:d)(c))}catch(b){h.reject(b),a(b)}}),h.promise}}};return{defer:e,reject:g,when:function(h,m,l,n){var p,q=e(),s=function(b){try{return(N(m)?m:c)(b)}catch(d){return a(d),g(d)}},J=function(b){try{return(N(l)?l:d)(b)}catch(c){return a(c),g(c)}},w=function(b){try{return(N(n)?n:c)(b)}catch(d){a(d)}};return b(function(){f(h).then(function(a){p||(p=!0,q.resolve(f(a).then(s,J,w)))},function(a){p||(p=!0,q.resolve(J(a)))},function(a){p||q.notify(w(a))})}),q.promise},all:function(a){var b=e(),c=0,d=L(a)?[]:{};return r(a,function(a,e){c++,f(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})}),0===c&&b.resolve(d),b.promise}}}function fe(){this.$get=["$window","$timeout",function(b,a){var c=b.requestAnimationFrame||b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame,d=b.cancelAnimationFrame||b.webkitCancelAnimationFrame||b.mozCancelAnimationFrame||b.webkitCancelRequestAnimationFrame,e=!!c,f=e?function(a){var b=c(a);return function(){d(b)}}:function(b){var c=a(b,16.66,!1);return function(){a.cancel(c)}};return f.supported=e,f}]}function Yd(){var b=10,a=z("$rootScope"),c=null;this.digestTtl=function(a){return arguments.length&&(b=a),b},this.$get=["$injector","$exceptionHandler","$parse","$browser",function(d,e,f,g){function h(){this.$id=ib(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this["this"]=this.$root=this,this.$$destroyed=!1,this.$$asyncQueue=[],this.$$postDigestQueue=[],this.$$listeners={},this.$$listenerCount={},this.$$isolateBindings={}}function k(b){if(q.$$phase)throw a("inprog",q.$$phase);q.$$phase=b}function m(a,b){var c=f(a);return Ya(c,b),c}function l(a,b,c){do a.$$listenerCount[c]-=b,0===a.$$listenerCount[c]&&delete a.$$listenerCount[c];while(a=a.$parent)}function n(){}h.prototype={constructor:h,$new:function(a){return a?(a=new h,a.$root=this.$root,a.$$asyncQueue=this.$$asyncQueue,a.$$postDigestQueue=this.$$postDigestQueue):(this.$$childScopeClass||(this.$$childScopeClass=function(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$id=ib(),this.$$childScopeClass=null},this.$$childScopeClass.prototype=this),a=new this.$$childScopeClass),a["this"]=a,a.$parent=this,a.$$prevSibling=this.$$childTail,this.$$childHead?this.$$childTail=this.$$childTail.$$nextSibling=a:this.$$childHead=this.$$childTail=a,a},$watch:function(a,b,d){var e=m(a,"watch"),f=this.$$watchers,g={fn:b,last:n,get:e,exp:a,eq:!!d};if(c=null,!N(b)){var h=m(b||v,"listener");g.fn=function(a,b,c){h(c)}}if("string"==typeof a&&e.constant){var k=g.fn;g.fn=function(a,b,c){k.call(this,a,b,c),Ua(f,g)}}return f||(f=this.$$watchers=[]),f.unshift(g),function(){Ua(f,g),c=null}},$watchCollection:function(a,b){var d,e,g,c=this,h=1<b.length,k=0,l=f(a),m=[],n={},q=!0,r=0;return this.$watch(function(){d=l(c);var a,b,f;if(T(d))if(Sa(d))for(e!==m&&(e=m,r=e.length=0,k++),a=d.length,r!==a&&(k++,e.length=r=a),b=0;a>b;b++)f=e[b]!==e[b]&&d[b]!==d[b],f||e[b]===d[b]||(k++,e[b]=d[b]);else{e!==n&&(e=n={},r=0,k++),a=0;for(b in d)d.hasOwnProperty(b)&&(a++,e.hasOwnProperty(b)?(f=e[b]!==e[b]&&d[b]!==d[b],f||e[b]===d[b]||(k++,e[b]=d[b])):(r++,e[b]=d[b],k++));if(r>a)for(b in k++,e)e.hasOwnProperty(b)&&!d.hasOwnProperty(b)&&(r--,delete e[b])}else e!==d&&(e=d,k++);return k},function(){if(q?(q=!1,b(d,d,c)):b(d,g,c),h)if(T(d))if(Sa(d)){g=Array(d.length);for(var a=0;a<d.length;a++)g[a]=d[a]}else for(a in g={},d)lb.call(d,a)&&(g[a]=d[a]);else g=d})},$digest:function(){var d,f,h,l,K,B,O,A,P,C,m=this.$$asyncQueue,r=this.$$postDigestQueue,u=b,M=[];k("$digest"),g.$$checkUrlChange(),c=null;do{for(B=!1,O=this;m.length;){try{C=m.shift(),C.scope.$eval(C.expression)}catch(I){q.$$phase=null,e(I)}c=null}a:do{if(l=O.$$watchers)for(K=l.length;K--;)try{if(d=l[K])if((f=d.get(O))===(h=d.last)||(d.eq?Ca(f,h):"number"==typeof f&&"number"==typeof h&&isNaN(f)&&isNaN(h))){if(d===c){B=!1;break a}}else B=!0,c=d,d.last=d.eq?Ka(f,null):f,d.fn(f,h===n?f:h,O),5>u&&(A=4-u,M[A]||(M[A]=[]),P=N(d.exp)?"fn: "+(d.exp.name||d.exp.toString()):d.exp,P+="; newVal: "+oa(f)+"; oldVal: "+oa(h),M[A].push(P))}catch(D){q.$$phase=null,e(D)}if(!(l=O.$$childHead||O!==this&&O.$$nextSibling))for(;O!==this&&!(l=O.$$nextSibling);)O=O.$parent}while(O=l);if((B||m.length)&&!u--)throw q.$$phase=null,a("infdig",b,oa(M))}while(B||m.length);for(q.$$phase=null;r.length;)try{r.shift()()}catch(x){e(x)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy"),this.$$destroyed=!0,this!==q&&(r(this.$$listenerCount,Bb(null,l,this)),a.$$childHead==this&&(a.$$childHead=this.$$nextSibling),a.$$childTail==this&&(a.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=null,this.$$listeners={},this.$$watchers=this.$$asyncQueue=this.$$postDigestQueue=[],this.$destroy=this.$digest=this.$apply=v,this.$on=this.$watch=function(){return v})}},$eval:function(a,b){return f(a)(this,b)},$evalAsync:function(a){q.$$phase||q.$$asyncQueue.length||g.defer(function(){q.$$asyncQueue.length&&q.$digest()}),this.$$asyncQueue.push({scope:this,expression:a})},$$postDigest:function(a){this.$$postDigestQueue.push(a)},$apply:function(a){try{return k("$apply"),this.$eval(a)}catch(b){e(b)}finally{q.$$phase=null;try{q.$digest()}catch(c){throw e(c),c}}},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]),c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=Ta(c,b);-1!==d&&(c[d]=null,l(e,1,a))}},$emit:function(a,b){var d,l,m,c=[],f=this,g=!1,h={name:a,targetScope:f,stopPropagation:function(){g=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},k=[h].concat(wa.call(arguments,1));do{for(d=f.$$listeners[a]||c,h.currentScope=f,l=0,m=d.length;m>l;l++)if(d[l])try{d[l].apply(null,k)}catch(n){e(n)}else d.splice(l,1),l--,m--;if(g)break;f=f.$parent}while(f);return h},$broadcast:function(a,b){for(var h,k,c=this,d=this,f={name:a,targetScope:this,preventDefault:function(){f.defaultPrevented=!0},defaultPrevented:!1},g=[f].concat(wa.call(arguments,1));c=d;){for(f.currentScope=c,d=c.$$listeners[a]||[],h=0,k=d.length;k>h;h++)if(d[h])try{d[h].apply(null,g)}catch(l){e(l)}else d.splice(h,1),h--,k--;if(!(d=c.$$listenerCount[a]&&c.$$childHead||c!==this&&c.$$nextSibling))for(;c!==this&&!(d=c.$$nextSibling);)c=c.$parent}return f}};var q=new h;return q}]}function bd(){var b=/^\s*(https?|ftp|mailto|tel|file):/,a=/^\s*((https?|ftp|file):|data:image\/)/;this.aHrefSanitizationWhitelist=function(a){return D(a)?(b=a,this):b},this.imgSrcSanitizationWhitelist=function(b){return D(b)?(a=b,this):a},this.$get=function(){return function(c,d){var f,e=d?a:b;return R&&!(R>=8)||(f=xa(c).href,""===f||f.match(e))?c:"unsafe:"+f}}}function Ee(b){if("self"===b)return b;if(G(b)){if(-1<b.indexOf("***"))throw za("iwcard",b);return b=b.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08").replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),RegExp("^"+b+"$")}if(kb(b))return RegExp("^"+b.source+"$");throw za("imatcher")}function Fc(b){var a=[];return D(b)&&r(b,function(b){a.push(Ee(b))}),a}function ae(){this.SCE_CONTEXTS=fa;var b=["self"],a=[];this.resourceUrlWhitelist=function(a){return arguments.length&&(b=Fc(a)),b},this.resourceUrlBlacklist=function(b){return arguments.length&&(a=Fc(b)),a},this.$get=["$injector",function(c){function d(a){var b=function(a){this.$$unwrapTrustedValue=function(){return a}};return a&&(b.prototype=new a),b.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},b.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},b}var e=function(a){throw za("unsafe")};c.has("$sanitize")&&(e=c.get("$sanitize"));var f=d(),g={};return g[fa.HTML]=d(f),g[fa.CSS]=d(f),g[fa.URL]=d(f),g[fa.JS]=d(f),g[fa.RESOURCE_URL]=d(g[fa.URL]),{trustAs:function(a,b){var c=g.hasOwnProperty(a)?g[a]:null;if(!c)throw za("icontext",a,b);if(null===b||b===u||""===b)return b;if("string"!=typeof b)throw za("itype",a);return new c(b)},getTrusted:function(c,d){if(null===d||d===u||""===d)return d;var f=g.hasOwnProperty(c)?g[c]:null;if(f&&d instanceof f)return d.$$unwrapTrustedValue();if(c===fa.RESOURCE_URL){var l,n,f=xa(d.toString()),q=!1;for(l=0,n=b.length;n>l;l++)if("self"===b[l]?Pb(f):b[l].exec(f.href)){q=!0;break}if(q)for(l=0,n=a.length;n>l;l++)if("self"===a[l]?Pb(f):a[l].exec(f.href)){q=!1;break}if(q)return d;throw za("insecurl",d.toString())}if(c===fa.HTML)return e(d);throw za("unsafe")},valueOf:function(a){return a instanceof f?a.$$unwrapTrustedValue():a}}}]}function $d(){var b=!0;this.enabled=function(a){return arguments.length&&(b=!!a),b},this.$get=["$parse","$sniffer","$sceDelegate",function(a,c,d){if(b&&c.msie&&8>c.msieDocumentMode)throw za("iequirks");var e=ha(fa);e.isEnabled=function(){return b},e.trustAs=d.trustAs,e.getTrusted=d.getTrusted,e.valueOf=d.valueOf,b||(e.trustAs=e.getTrusted=function(a,b){return b},e.valueOf=ga),e.parseAs=function(b,c){var d=a(c);return d.literal&&d.constant?d:function(a,c){return e.getTrusted(b,d(a,c))}};var f=e.parseAs,g=e.getTrusted,h=e.trustAs;return r(fa,function(a,b){var c=x(b);e[ab("parse_as_"+c)]=function(b){return f(a,b)},e[ab("get_trusted_"+c)]=function(b){return g(a,b)},e[ab("trust_as_"+c)]=function(b){return h(a,b)}}),e}]}function be(){this.$get=["$window","$document",function(b,a){var h,c={},d=U((/android (\d+)/.exec(x((b.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((b.navigator||{}).userAgent),f=a[0]||{},g=f.documentMode,k=/^(Moz|webkit|O|ms)(?=[A-Z])/,m=f.body&&f.body.style,l=!1,n=!1;if(m){for(var q in m)if(l=k.exec(q)){h=l[0],h=h.substr(0,1).toUpperCase()+h.substr(1);break}h||(h="WebkitOpacity"in m&&"webkit"),l=!!("transition"in m||h+"Transition"in m),n=!!("animation"in m||h+"Animation"in m),!d||l&&n||(l=G(f.body.style.webkitTransition),n=G(f.body.style.webkitAnimation))}return{history:!(!b.history||!b.history.pushState||4>d||e),hashchange:"onhashchange"in b&&(!g||g>7),hasEvent:function(a){if("input"==a&&9==R)return!1;if(F(c[a])){var b=f.createElement("div");c[a]="on"+a in b}return c[a]},csp:Za(),vendorPrefix:h,transitions:l,animations:n,android:d,msie:R,msieDocumentMode:g}}]}function de(){this.$get=["$rootScope","$browser","$q","$exceptionHandler",function(b,a,c,d){function e(e,h,k){var m=c.defer(),l=m.promise,n=D(k)&&!k;return h=a.defer(function(){try{m.resolve(e())}catch(a){m.reject(a),d(a)}finally{delete f[l.$$timeoutId]}n||b.$apply()},h),l.$$timeoutId=h,f[h]=m,l}var f={};return e.cancel=function(b){return b&&b.$$timeoutId in f?(f[b.$$timeoutId].reject("canceled"),delete f[b.$$timeoutId],a.defer.cancel(b.$$timeoutId)):!1},e}]}function xa(b,a){var c=b;return R&&(Y.setAttribute("href",c),c=Y.href),Y.setAttribute("href",c),{href:Y.href,protocol:Y.protocol?Y.protocol.replace(/:$/,""):"",host:Y.host,search:Y.search?Y.search.replace(/^\?/,""):"",hash:Y.hash?Y.hash.replace(/^#/,""):"",hostname:Y.hostname,port:Y.port,pathname:"/"===Y.pathname.charAt(0)?Y.pathname:"/"+Y.pathname}}function Pb(b){return b=G(b)?xa(b):b,b.protocol===Gc.protocol&&b.host===Gc.host}function ee(){this.$get=aa(W)}function kc(b){function a(d,e){if(T(d)){var f={};return r(d,function(b,c){f[c]=a(c,b)}),f}return b.factory(d+c,e)}var c="Filter";this.register=a,this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}],a("currency",Hc),a("date",Ic),a("filter",Fe),a("json",Ge),a("limitTo",He),a("lowercase",Ie),a("number",Jc),a("orderBy",Kc),a("uppercase",Je)}function Fe(){return function(b,a,c){if(!L(b))return b;var d=typeof c,e=[];e.check=function(a){for(var b=0;b<e.length;b++)if(!e[b](a))return!1;return!0},"function"!==d&&(c="boolean"===d&&c?function(a,b){return Xa.equals(a,b)}:function(a,b){if(a&&b&&"object"==typeof a&&"object"==typeof b){for(var d in a)if("$"!==d.charAt(0)&&lb.call(a,d)&&c(a[d],b[d]))return!0;return!1}return b=(""+b).toLowerCase(),-1<(""+a).toLowerCase().indexOf(b)});var f=function(a,b){if("string"==typeof b&&"!"===b.charAt(0))return!f(a,b.substr(1));switch(typeof a){case"boolean":case"number":case"string":return c(a,b);case"object":switch(typeof b){case"object":return c(a,b);default:for(var d in a)if("$"!==d.charAt(0)&&f(a[d],b))return!0}return!1;case"array":for(d=0;d<a.length;d++)if(f(a[d],b))return!0;return!1;default:return!1}};switch(typeof a){case"boolean":case"number":case"string":a={$:a};case"object":for(var g in a)(function(b){"undefined"!=typeof a[b]&&e.push(function(c){return f("$"==b?c:c&&c[b],a[b])})})(g);break;case"function":e.push(a);break;default:return b}for(d=[],g=0;g<b.length;g++){var h=b[g];e.check(h)&&d.push(h)}return d}}function Hc(b){var a=b.NUMBER_FORMATS;return function(b,d){return F(d)&&(d=a.CURRENCY_SYM),Lc(b,a.PATTERNS[1],a.GROUP_SEP,a.DECIMAL_SEP,2).replace(/\u00A4/g,d)}}function Jc(b){var a=b.NUMBER_FORMATS;return function(b,d){return Lc(b,a.PATTERNS[0],a.GROUP_SEP,a.DECIMAL_SEP,d)}}function Lc(b,a,c,d,e){if(null==b||!isFinite(b)||T(b))return"";var f=0>b;b=Math.abs(b);var g=b+"",h="",k=[],m=!1;if(-1!==g.indexOf("e")){var l=g.match(/([\d\.]+)e(-?)(\d+)/);l&&"-"==l[2]&&l[3]>e+1?(g="0",b=0):(h=g,m=!0)}if(m)e>0&&b>-1&&1>b&&(h=b.toFixed(e));else{g=(g.split(Mc)[1]||"").length,F(e)&&(e=Math.min(Math.max(a.minFrac,g),a.maxFrac)),b=+(Math.round(+(b.toString()+"e"+e)).toString()+"e"+-e),0===b&&(f=!1),b=(""+b).split(Mc),g=b[0],b=b[1]||"";var l=0,n=a.lgSize,q=a.gSize;if(g.length>=n+q)for(l=g.length-n,m=0;l>m;m++)0===(l-m)%q&&0!==m&&(h+=c),h+=g.charAt(m);for(m=l;m<g.length;m++)0===(g.length-m)%n&&0!==m&&(h+=c),h+=g.charAt(m);for(;b.length<e;)b+="0";e&&"0"!==e&&(h+=d+b.substr(0,e))}return k.push(f?a.negPre:a.posPre),k.push(h),k.push(f?a.negSuf:a.posSuf),k.join("")}function Vb(b,a,c){var d="";for(0>b&&(d="-",b=-b),b=""+b;b.length<a;)b="0"+b;return c&&(b=b.substr(b.length-a)),d+b}function Z(b,a,c,d){return c=c||0,function(e){return e=e["get"+b](),(c>0||e>-c)&&(e+=c),0===e&&-12==c&&(e=12),Vb(e,a,d)}}function vb(b,a){return function(c,d){var e=c["get"+b](),f=La(a?"SHORT"+b:b);return d[f][e]}}function Ic(b){function a(a){var b;if(b=a.match(c)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,k=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=U(b[9]+b[10]),g=U(b[9]+b[11])),h.call(a,U(b[1]),U(b[2])-1,U(b[3])),f=U(b[4]||0)-f,g=U(b[5]||0)-g,h=U(b[6]||0),b=Math.round(1e3*parseFloat("0."+(b[7]||0))),k.call(a,f,g,h,b)}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,e){var h,k,f="",g=[];if(e=e||"mediumDate",e=b.DATETIME_FORMATS[e]||e,G(c)&&(c=Ke.test(c)?U(c):a(c)),jb(c)&&(c=new Date(c)),!va(c))return c;for(;e;)(k=Le.exec(e))?(g=g.concat(wa.call(k,1)),
e=g.pop()):(g.push(e),e=null);return r(g,function(a){h=Me[a],f+=h?h(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),f}}function Ge(){return function(b){return oa(b,!0)}}function He(){return function(b,a){if(!L(b)&&!G(b))return b;if(a=1/0===Math.abs(Number(a))?Number(a):U(a),G(b))return a?a>=0?b.slice(0,a):b.slice(a,b.length):"";var d,e,c=[];for(a>b.length?a=b.length:a<-b.length&&(a=-b.length),a>0?(d=0,e=a):(d=b.length+a,e=b.length);e>d;d++)c.push(b[d]);return c}}function Kc(b){return function(a,c,d){function e(a,b){return Wa(b)?function(b,c){return a(c,b)}:a}function f(a,b){var c=typeof a,d=typeof b;return c==d?(va(a)&&va(b)&&(a=a.valueOf(),b=b.valueOf()),"string"==c&&(a=a.toLowerCase(),b=b.toLowerCase()),a===b?0:b>a?-1:1):d>c?-1:1}return Sa(a)?(c=L(c)?c:[c],0===c.length&&(c=["+"]),c=Uc(c,function(a){var c=!1,d=a||ga;if(G(a)){if(("+"==a.charAt(0)||"-"==a.charAt(0))&&(c="-"==a.charAt(0),a=a.substring(1)),""===a)return e(function(a,b){return f(a,b)},c);if(d=b(a),d.constant){var m=d();return e(function(a,b){return f(a[m],b[m])},c)}}return e(function(a,b){return f(d(a),d(b))},c)}),wa.call(a).sort(e(function(a,b){for(var d=0;d<c.length;d++){var e=c[d](a,b);if(0!==e)return e}return 0},d))):a}}function Aa(b){return N(b)&&(b={link:b}),b.restrict=b.restrict||"AC",aa(b)}function Nc(b,a,c,d){function e(a,c){c=c?"-"+nb(c,"-"):"",d.setClass(b,(a?wb:xb)+c,(a?xb:wb)+c)}var f=this,g=b.parent().controller("form")||yb,h=0,k=f.$error={},m=[];f.$name=a.name||a.ngForm,f.$dirty=!1,f.$pristine=!0,f.$valid=!0,f.$invalid=!1,g.$addControl(f),b.addClass(Ra),e(!0),f.$addControl=function(a){Ea(a.$name,"input"),m.push(a),a.$name&&(f[a.$name]=a)},f.$removeControl=function(a){a.$name&&f[a.$name]===a&&delete f[a.$name],r(k,function(b,c){f.$setValidity(c,!0,a)}),Ua(m,a)},f.$setValidity=function(a,b,c){var d=k[a];if(b)d&&(Ua(d,c),d.length||(h--,h||(e(b),f.$valid=!0,f.$invalid=!1),k[a]=!1,e(!0,a),g.$setValidity(a,!0,f)));else{if(h||e(b),d){if(-1!=Ta(d,c))return}else k[a]=d=[],h++,e(!1,a),g.$setValidity(a,!1,f);d.push(c),f.$valid=!1,f.$invalid=!0}},f.$setDirty=function(){d.removeClass(b,Ra),d.addClass(b,zb),f.$dirty=!0,f.$pristine=!1,g.$setDirty()},f.$setPristine=function(){d.removeClass(b,zb),d.addClass(b,Ra),f.$dirty=!1,f.$pristine=!0,r(m,function(a){a.$setPristine()})}}function ua(b,a,c,d){return b.$setValidity(a,c),c?d:u}function Oc(b,a){var c,d;if(a)for(c=0;c<a.length;++c)if(d=a[c],b[d])return!0;return!1}function Ne(b,a,c,d,e){T(e)&&(b.$$hasNativeValidators=!0,b.$parsers.push(function(f){return b.$error[a]||Oc(e,d)||!Oc(e,c)?f:void b.$setValidity(a,!1)}))}function Ab(b,a,c,d,e,f){var g=a.prop(Oe),h=a[0].placeholder,k={},m=x(a[0].type);if(d.$$validityState=g,!e.android){var l=!1;a.on("compositionstart",function(a){l=!0}),a.on("compositionend",function(){l=!1,n()})}var n=function(e){if(!l){var f=a.val();R&&"input"===(e||k).type&&a[0].placeholder!==h?h=a[0].placeholder:("password"!==m&&Wa(c.ngTrim||"T")&&(f=$(f)),e=g&&d.$$hasNativeValidators,(d.$viewValue!==f||""===f&&e)&&(b.$root.$$phase?d.$setViewValue(f):b.$apply(function(){d.$setViewValue(f)})))}};if(e.hasEvent("input"))a.on("input",n);else{var q,p=function(){q||(q=f.defer(function(){n(),q=null}))};a.on("keydown",function(a){a=a.keyCode,91===a||a>15&&19>a||a>=37&&40>=a||p()}),e.hasEvent("paste")&&a.on("paste cut",p)}a.on("change",n),d.$render=function(){a.val(d.$isEmpty(d.$viewValue)?"":d.$viewValue)};var s=c.ngPattern;if(s&&((e=s.match(/^\/(.*)\/([gim]*)$/))?(s=RegExp(e[1],e[2]),e=function(a){return ua(d,"pattern",d.$isEmpty(a)||s.test(a),a)}):e=function(c){var e=b.$eval(s);if(!e||!e.test)throw z("ngPattern")("noregexp",s,e,ia(a));return ua(d,"pattern",d.$isEmpty(c)||e.test(c),c)},d.$formatters.push(e),d.$parsers.push(e)),c.ngMinlength){var r=U(c.ngMinlength);e=function(a){return ua(d,"minlength",d.$isEmpty(a)||a.length>=r,a)},d.$parsers.push(e),d.$formatters.push(e)}if(c.ngMaxlength){var w=U(c.ngMaxlength);e=function(a){return ua(d,"maxlength",d.$isEmpty(a)||a.length<=w,a)},d.$parsers.push(e),d.$formatters.push(e)}}function Wb(b,a){return b="ngClass"+b,["$animate",function(c){function d(a,b){var c=[],d=0;a:for(;d<a.length;d++){for(var e=a[d],l=0;l<b.length;l++)if(e==b[l])continue a;c.push(e)}return c}function e(a){if(!L(a)){if(G(a))return a.split(" ");if(T(a)){var b=[];return r(a,function(a,c){a&&(b=b.concat(c.split(" ")))}),b}}return a}return{restrict:"AC",link:function(f,g,h){function k(a,b){var c=g.data("$classCounts")||{},d=[];return r(a,function(a){(b>0||c[a])&&(c[a]=(c[a]||0)+b,c[a]===+(b>0)&&d.push(a))}),g.data("$classCounts",c),d.join(" ")}function m(b){if(!0===a||f.$index%2===a){var m=e(b||[]);if(l){if(!Ca(b,l)){var s=e(l),p=d(m,s),m=d(s,m),m=k(m,-1),p=k(p,1);0===p.length?c.removeClass(g,m):0===m.length?c.addClass(g,p):c.setClass(g,p,m)}}else{var p=k(m,1);h.$addClass(p)}}l=ha(b)}var l;f.$watch(h[b],m,!0),h.$observe("class",function(a){m(f.$eval(h[b]))}),"ngClass"!==b&&f.$watch("$index",function(c,d){var g=1&c;if(g!==(1&d)){var l=e(f.$eval(h[b]));g===a?(g=k(l,1),h.$addClass(g)):(g=k(l,-1),h.$removeClass(g))}})}}}]}var R,A,Fa,$a,Pa,Oe="validity",x=function(b){return G(b)?b.toLowerCase():b},lb=Object.prototype.hasOwnProperty,La=function(b){return G(b)?b.toUpperCase():b},wa=[].slice,Pe=[].push,Ba=Object.prototype.toString,Va=z("ng"),Xa=W.angular||(W.angular={}),na=["0","0","0"];R=U((/msie (\d+)/.exec(x(navigator.userAgent))||[])[1]),isNaN(R)&&(R=U((/trident\/.*; rv:(\d+)/.exec(x(navigator.userAgent))||[])[1])),v.$inject=[],ga.$inject=[];var L=function(){return N(Array.isArray)?Array.isArray:function(b){return"[object Array]"===Ba.call(b)}}(),$=function(){return String.prototype.trim?function(b){return G(b)?b.trim():b}:function(b){return G(b)?b.replace(/^\s\s*/,"").replace(/\s\s*$/,""):b}}();Pa=9>R?function(b){return b=b.nodeName?b:b[0],b.scopeName&&"HTML"!=b.scopeName?La(b.scopeName+":"+b.nodeName):b.nodeName}:function(b){return b.nodeName?b.nodeName:b[0].nodeName};var Za=function(){if(D(Za.isActive_))return Za.isActive_;var b=!(!X.querySelector("[ng-csp]")&&!X.querySelector("[data-ng-csp]"));if(!b)try{new Function("")}catch(a){b=!0}return Za.isActive_=b},Xc=/[A-Z]/g,$c={full:"1.2.28",major:1,minor:2,dot:28,codeName:"finnish-disembarkation"};S.expando="ng339";var cb=S.cache={},me=1,sb=W.document.addEventListener?function(b,a,c){b.addEventListener(a,c,!1)}:function(b,a,c){b.attachEvent("on"+a,c)},bb=W.document.removeEventListener?function(b,a,c){b.removeEventListener(a,c,!1)}:function(b,a,c){b.detachEvent("on"+a,c)};S._data=function(b){return this.cache[b[this.expando]]||{}};var he=/([\:\-\_]+(.))/g,ie=/^moz([A-Z])/,Hb=z("jqLite"),je=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,Ib=/<|&#?\w+;/,ke=/<([\w:]+)/,le=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,da={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,"",""]};da.optgroup=da.option,da.tbody=da.tfoot=da.colgroup=da.caption=da.thead,da.th=da.td;var Oa=S.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;"complete"===X.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),S(W).on("load",a))},toString:function(){var b=[];return r(this,function(a){b.push(""+a)}),"["+b.join(", ")+"]"},eq:function(b){return A(b>=0?this[b]:this[this.length+b])},length:0,push:Pe,sort:[].sort,splice:[].splice},rb={};r("multiple selected checked disabled readOnly required open".split(" "),function(b){rb[x(b)]=b});var pc={};r("input select option textarea button form details".split(" "),function(b){pc[La(b)]=!0}),r({data:Mb,removeData:Lb},function(b,a){S[a]=b}),r({data:Mb,inheritedData:qb,scope:function(b){return A.data(b,"$scope")||qb(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return A.data(b,"$isolateScope")||A.data(b,"$isolateScopeNoTemplate")},controller:mc,injector:function(b){return qb(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Nb,css:function(b,a,c){if(a=ab(a),!D(c)){var d;return 8>=R&&(d=b.currentStyle&&b.currentStyle[a],""===d&&(d="auto")),d=d||b.style[a],8>=R&&(d=""===d?u:d),d}b.style[a]=c},attr:function(b,a,c){var d=x(a);if(rb[d]){if(!D(c))return b[a]||(b.attributes.getNamedItem(a)||v).specified?d:u;c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d))}else if(D(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?u:b},prop:function(b,a,c){return D(c)?void(b[a]=c):b[a]},text:function(){function b(b,d){var e=a[b.nodeType];return F(d)?e?b[e]:"":void(b[e]=d)}var a=[];return 9>R?(a[1]="innerText",a[3]="nodeValue"):a[1]=a[3]="textContent",b.$dv="",b}(),val:function(b,a){if(F(a)){if("SELECT"===Pa(b)&&b.multiple){var c=[];return r(b.options,function(a){a.selected&&c.push(a.value||a.text)}),0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(F(a))return b.innerHTML;for(var c=0,d=b.childNodes;c<d.length;c++)Ma(d[c]);b.innerHTML=a},empty:nc},function(b,a){S.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==nc&&(2==b.length&&b!==Nb&&b!==mc?a:d)===u){if(T(a)){for(e=0;g>e;e++)if(b===Mb)b(this[e],a);else for(f in a)b(this[e],f,a[f]);return this}for(e=b.$dv,g=e===u?Math.min(g,1):g,f=0;g>f;f++){var h=b(this[f],a,d);e=e?e+h:h}return e}for(e=0;g>e;e++)b(this[e],a,d);return this}}),r({removeData:Lb,dealoc:Ma,on:function a(c,d,e,f){if(D(f))throw Hb("onargs");var g=pa(c,"events"),h=pa(c,"handle");g||pa(c,"events",g={}),h||pa(c,"handle",h=ne(c,g)),r(d.split(" "),function(d){var f=g[d];if(!f){if("mouseenter"==d||"mouseleave"==d){var l=X.body.contains||X.body.compareDocumentPosition?function(a,c){var d=9===a.nodeType?a.documentElement:a,e=c&&c.parentNode;return a===e||!(!e||1!==e.nodeType||!(d.contains?d.contains(e):a.compareDocumentPosition&&16&a.compareDocumentPosition(e)))}:function(a,c){if(c)for(;c=c.parentNode;)if(c===a)return!0;return!1};g[d]=[],a(c,{mouseleave:"mouseout",mouseenter:"mouseover"}[d],function(a){var c=a.relatedTarget;c&&(c===this||l(this,c))||h(a,d)})}else sb(c,d,h),g[d]=[];f=g[d]}f.push(e)})},off:lc,one:function(a,c,d){a=A(a),a.on(c,function f(){a.off(c,d),a.off(c,f)}),a.on(c,d)},replaceWith:function(a,c){var d,e=a.parentNode;Ma(a),r(new S(c),function(c){d?e.insertBefore(c,d.nextSibling):e.replaceChild(c,a),d=c})},children:function(a){var c=[];return r(a.childNodes,function(a){1===a.nodeType&&c.push(a)}),c},contents:function(a){return a.contentDocument||a.childNodes||[]},append:function(a,c){r(new S(c),function(c){1!==a.nodeType&&11!==a.nodeType||a.appendChild(c)})},prepend:function(a,c){if(1===a.nodeType){var d=a.firstChild;r(new S(c),function(c){a.insertBefore(c,d)})}},wrap:function(a,c){c=A(c)[0];var d=a.parentNode;d&&d.replaceChild(c,a),c.appendChild(a)},remove:function(a){Ma(a);var c=a.parentNode;c&&c.removeChild(a)},after:function(a,c){var d=a,e=a.parentNode;r(new S(c),function(a){e.insertBefore(a,d.nextSibling),d=a})},addClass:pb,removeClass:ob,toggleClass:function(a,c,d){c&&r(c.split(" "),function(c){var f=d;F(f)&&(f=!Nb(a,c)),(f?pb:ob)(a,c)})},parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},next:function(a){if(a.nextElementSibling)return a.nextElementSibling;for(a=a.nextSibling;null!=a&&1!==a.nodeType;)a=a.nextSibling;return a},find:function(a,c){return a.getElementsByTagName?a.getElementsByTagName(c):[]},clone:Kb,triggerHandler:function(a,c,d){var e,f;e=c.type||c;var g=(pa(a,"events")||{})[e];g&&(e={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopPropagation:v,type:e,target:a},c.type&&(e=E(e,c)),c=ha(g),f=d?[e].concat(d):[e],r(c,function(c){c.apply(a,f)}))}},function(a,c){S.prototype[c]=function(c,e,f){for(var g,h=0;h<this.length;h++)F(g)?(g=a(this[h],c,e,f),D(g)&&(g=A(g))):Jb(g,a(this[h],c,e,f));return D(g)?g:this},S.prototype.bind=S.prototype.on,S.prototype.unbind=S.prototype.off}),db.prototype={put:function(a,c){this[Na(a,this.nextUid)]=c},get:function(a){return this[Na(a,this.nextUid)]},remove:function(a){var c=this[a=Na(a,this.nextUid)];return delete this[a],c}};var pe=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,qe=/,/,re=/^\s*(_?)(\S+?)\1\s*$/,oe=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,eb=z("$injector"),Qe=z("$animate"),Ld=["$provide",function(a){this.$$selectors={},this.register=function(c,d){var e=c+"-animation";if(c&&"."!=c.charAt(0))throw Qe("notcsel",c);this.$$selectors[c.substr(1)]=e,a.factory(e,d)},this.classNameFilter=function(a){return 1===arguments.length&&(this.$$classNameFilter=a instanceof RegExp?a:null),this.$$classNameFilter},this.$get=["$timeout","$$asyncCallback",function(a,d){return{enter:function(a,c,g,h){g?g.after(a):(c&&c[0]||(c=g.parent()),c.append(a)),h&&d(h)},leave:function(a,c){a.remove(),c&&d(c)},move:function(a,c,d,h){this.enter(a,c,d,h)},addClass:function(a,c,g){c=G(c)?c:L(c)?c.join(" "):"",r(a,function(a){pb(a,c)}),g&&d(g)},removeClass:function(a,c,g){c=G(c)?c:L(c)?c.join(" "):"",r(a,function(a){ob(a,c)}),g&&d(g)},setClass:function(a,c,g,h){r(a,function(a){pb(a,c),ob(a,g)}),h&&d(h)},enabled:v}}]}],ja=z("$compile");gc.$inject=["$provide","$$sanitizeUriProvider"];var we=/^(x[\:\-_]|data[\:\-_])/i,wc=z("$interpolate"),Re=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,ze={http:80,https:443,ftp:21},Sb=z("$location");Ac.prototype=Tb.prototype=zc.prototype={$$html5:!1,$$replace:!1,absUrl:tb("$$absUrl"),url:function(a){return F(a)?this.$$url:(a=Re.exec(a),a[1]&&this.path(decodeURIComponent(a[1])),(a[2]||a[1])&&this.search(a[3]||""),this.hash(a[5]||""),this)},protocol:tb("$$protocol"),host:tb("$$host"),port:tb("$$port"),path:Bc("$$path",function(a){return a=null!==a?a.toString():"","/"==a.charAt(0)?a:"/"+a}),search:function(a,c){switch(arguments.length){case 0:return this.$$search;case 1:if(G(a)||jb(a))a=a.toString(),this.$$search=cc(a);else{if(!T(a))throw Sb("isrcharg");r(a,function(c,e){null==c&&delete a[e]}),this.$$search=a}break;default:F(c)||null===c?delete this.$$search[a]:this.$$search[a]=c}return this.$$compose(),this},hash:Bc("$$hash",function(a){return null!==a?a.toString():""}),replace:function(){return this.$$replace=!0,this}};var ya,la=z("$parse"),Ec={},Se=Function.prototype.call,Te=Function.prototype.apply,Pc=Function.prototype.bind,hb={"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:v,"+":function(a,c,d,e){return d=d(a,c),e=e(a,c),D(d)?D(e)?d+e:d:D(e)?e:u},"-":function(a,c,d,e){return d=d(a,c),e=e(a,c),(D(d)?d:0)-(D(e)?e:0)},"*":function(a,c,d,e){return d(a,c)*e(a,c)},"/":function(a,c,d,e){return d(a,c)/e(a,c)},"%":function(a,c,d,e){return d(a,c)%e(a,c)},"^":function(a,c,d,e){return d(a,c)^e(a,c)},"=":v,"===":function(a,c,d,e){return d(a,c)===e(a,c)},"!==":function(a,c,d,e){return d(a,c)!==e(a,c)},"==":function(a,c,d,e){return d(a,c)==e(a,c)},"!=":function(a,c,d,e){return d(a,c)!=e(a,c)},"<":function(a,c,d,e){return d(a,c)<e(a,c)},">":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"&":function(a,c,d,e){return d(a,c)&e(a,c)},"|":function(a,c,d,e){return e(a,c)(a,c,d(a,c))},"!":function(a,c,d){return!d(a,c)}},Ue={n:"\n",f:"\f",r:"\r",t:" ",v:" ","'":"'",'"':'"'},Ub=function(a){this.options=a};Ub.prototype={constructor:Ub,lex:function(a){for(this.text=a,this.index=0,this.ch=u,this.lastCh=":",this.tokens=[];this.index<this.text.length;){if(this.ch=this.text.charAt(this.index),this.is("\"'"))this.readString(this.ch);else if(this.isNumber(this.ch)||this.is(".")&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(this.ch))this.readIdent();else if(this.is("(){}[].,;:?"))this.tokens.push({index:this.index,text:this.ch}),this.index++;else{if(this.isWhitespace(this.ch)){this.index++;continue}a=this.ch+this.peek();var c=a+this.peek(2),d=hb[this.ch],e=hb[a],f=hb[c];f?(this.tokens.push({index:this.index,text:c,fn:f}),this.index+=3):e?(this.tokens.push({index:this.index,text:a,fn:e}),this.index+=2):d?(this.tokens.push({index:this.index,text:this.ch,fn:d}),this.index+=1):this.throwError("Unexpected next character ",this.index,this.index+1)}this.lastCh=this.ch}return this.tokens},is:function(a){return-1!==a.indexOf(this.ch)},was:function(a){return-1!==a.indexOf(this.lastCh)},peek:function(a){return a=a||1,this.index+a<this.text.length?this.text.charAt(this.index+a):!1},isNumber:function(a){return a>="0"&&"9">=a},isWhitespace:function(a){return" "===a||"\r"===a||" "===a||"\n"===a||" "===a||" "===a},isIdent:function(a){return a>="a"&&"z">=a||a>="A"&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,c,d){throw d=d||this.index,c=D(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d,la("lexerr",a,c,this.text)},readNumber:function(){for(var a="",c=this.index;this.index<this.text.length;){var d=x(this.text.charAt(this.index));if("."==d||this.isNumber(d))a+=d;else{var e=this.peek();if("e"==d&&this.isExpOperator(e))a+=d;else if(this.isExpOperator(d)&&e&&this.isNumber(e)&&"e"==a.charAt(a.length-1))a+=d;else{if(!this.isExpOperator(d)||e&&this.isNumber(e)||"e"!=a.charAt(a.length-1))break;this.throwError("Invalid exponent")}}this.index++}a*=1,this.tokens.push({index:c,text:a,literal:!0,constant:!0,fn:function(){return a}})},readIdent:function(){for(var e,f,g,h,a=this,c="",d=this.index;this.index<this.text.length&&(h=this.text.charAt(this.index),"."===h||this.isIdent(h)||this.isNumber(h));)"."===h&&(e=this.index),c+=h,this.index++;if(e)for(f=this.index;f<this.text.length;){if(h=this.text.charAt(f),"("===h){g=c.substr(e-d+1),c=c.substr(0,e-d),this.index=f;break}if(!this.isWhitespace(h))break;f++}if(d={index:d,text:c},hb.hasOwnProperty(c))d.fn=hb[c],d.literal=!0,d.constant=!0;else{var k=Dc(c,this.options,this.text);d.fn=E(function(a,c){return k(a,c)},{assign:function(d,e){return ub(d,c,e,a.text,a.options)}})}this.tokens.push(d),g&&(this.tokens.push({index:e,text:"."}),this.tokens.push({index:e+1,text:g}))},readString:function(a){var c=this.index;this.index++;for(var d="",e=a,f=!1;this.index<this.text.length;){var g=this.text.charAt(this.index),e=e+g;if(f)"u"===g?(f=this.text.substring(this.index+1,this.index+5),f.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+f+"]"),this.index+=4,d+=String.fromCharCode(parseInt(f,16))):d+=Ue[g]||g,f=!1;else if("\\"===g)f=!0;else{if(g===a)return this.index++,void this.tokens.push({index:c,text:e,string:d,literal:!0,constant:!0,fn:function(){return d}});d+=g}this.index++}this.throwError("Unterminated quote",c)}};var gb=function(a,c,d){this.lexer=a,this.$filter=c,this.options=d};gb.ZERO=E(function(){return 0},{constant:!0}),gb.prototype={constructor:gb,parse:function(a){return this.text=a,this.tokens=this.lexer.lex(a),a=this.statements(),0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),a.literal=!!a.literal,a.constant=!!a.constant,a},primary:function(){var a;if(this.expect("("))a=this.filterChain(),this.consume(")");else if(this.expect("["))a=this.arrayDeclaration();else if(this.expect("{"))a=this.object();else{var c=this.expect();(a=c.fn)||this.throwError("not a primary expression",c),a.literal=!!c.literal,a.constant=!!c.constant}for(var d;c=this.expect("(","[",".");)"("===c.text?(a=this.functionCall(a,d),d=null):"["===c.text?(d=a,a=this.objectIndex(a)):"."===c.text?(d=a,a=this.fieldAccess(a)):this.throwError("IMPOSSIBLE");return a},throwError:function(a,c){throw la("syntax",c.text,a,c.index+1,this.text,this.text.substring(c.index))},peekToken:function(){if(0===this.tokens.length)throw la("ueoe",this.text);return this.tokens[0]},peek:function(a,c,d,e){if(0<this.tokens.length){var f=this.tokens[0],g=f.text;if(g===a||g===c||g===d||g===e||!(a||c||d||e))return f}return!1},expect:function(a,c,d,e){return(a=this.peek(a,c,d,e))?(this.tokens.shift(),a):!1},consume:function(a){this.expect(a)||this.throwError("is unexpected, expecting ["+a+"]",this.peek())},unaryFn:function(a,c){return E(function(d,e){return a(d,e,c)},{constant:c.constant})},ternaryFn:function(a,c,d){return E(function(e,f){return a(e,f)?c(e,f):d(e,f)},{constant:a.constant&&c.constant&&d.constant})},binaryFn:function(a,c,d){return E(function(e,f){return c(e,f,a,d)},{constant:a.constant&&d.constant})},statements:function(){for(var a=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&a.push(this.filterChain()),!this.expect(";"))return 1===a.length?a[0]:function(c,d){for(var e,f=0;f<a.length;f++){var g=a[f];g&&(e=g(c,d))}return e}},filterChain:function(){for(var c,a=this.expression();;){if(!(c=this.expect("|")))return a;a=this.binaryFn(a,c.fn,this.filter())}},filter:function(){for(var a=this.expect(),c=this.$filter(a.text),d=[];;){if(!(a=this.expect(":"))){var e=function(a,e,h){h=[h];for(var k=0;k<d.length;k++)h.push(d[k](a,e));return c.apply(a,h)};return function(){return e}}d.push(this.expression())}},expression:function(){return this.assignment()},assignment:function(){var c,d,a=this.ternary();return(d=this.expect("="))?(a.assign||this.throwError("implies assignment but ["+this.text.substring(0,d.index)+"] can not be assigned to",d),c=this.ternary(),function(d,f){return a.assign(d,c(d,f),f)}):a},ternary:function(){var c,d,a=this.logicalOR();return this.expect("?")?(c=this.assignment(),(d=this.expect(":"))?this.ternaryFn(a,c,this.assignment()):void this.throwError("expected :",d)):a},logicalOR:function(){for(var c,a=this.logicalAND();;){if(!(c=this.expect("||")))return a;a=this.binaryFn(a,c.fn,this.logicalAND())}},logicalAND:function(){var c,a=this.equality();return(c=this.expect("&&"))&&(a=this.binaryFn(a,c.fn,this.logicalAND())),a},equality:function(){var c,a=this.relational();return(c=this.expect("==","!=","===","!=="))&&(a=this.binaryFn(a,c.fn,this.equality())),a},relational:function(){var c,a=this.additive();return(c=this.expect("<",">","<=",">="))&&(a=this.binaryFn(a,c.fn,this.relational())),a},additive:function(){for(var c,a=this.multiplicative();c=this.expect("+","-");)a=this.binaryFn(a,c.fn,this.multiplicative());return a},multiplicative:function(){for(var c,a=this.unary();c=this.expect("*","/","%");)a=this.binaryFn(a,c.fn,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(gb.ZERO,a.fn,this.unary()):(a=this.expect("!"))?this.unaryFn(a.fn,this.unary()):this.primary()},fieldAccess:function(a){var c=this,d=this.expect().text,e=Dc(d,this.options,this.text);return E(function(c,d,h){return e(h||a(c,d))},{assign:function(e,g,h){return(h=a(e,h))||a.assign(e,h={}),ub(h,d,g,c.text,c.options)}})},objectIndex:function(a){var c=this,d=this.expression();return this.consume("]"),E(function(e,f){var k,g=a(e,f),h=d(e,f);return ka(h,c.text),g?((g=ma(g[h],c.text))&&g.then&&c.options.unwrapPromises&&(k=g,"$$v"in g||(k.$$v=u,k.then(function(a){k.$$v=a})),g=g.$$v),g):u},{assign:function(e,f,g){var h=ka(d(e,g),c.text);return(g=ma(a(e,g),c.text))||a.assign(e,g={}),g[h]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text)do d.push(this.expression());while(this.expect(","));this.consume(")");var e=this;return function(f,g){for(var h=[],k=c?c(f,g):f,m=0;m<d.length;m++)h.push(ma(d[m](f,g),e.text));m=a(f,g,k)||v,ma(k,e.text);var l=e.text;if(m){if(m.constructor===m)throw la("isecfn",l);if(m===Se||m===Te||Pc&&m===Pc)throw la("isecff",l)}return h=m.apply?m.apply(k,h):m(h[0],h[1],h[2],h[3],h[4]),ma(h,e.text)}},arrayDeclaration:function(){var a=[],c=!0;if("]"!==this.peekToken().text)do{if(this.peek("]"))break;var d=this.expression();a.push(d),d.constant||(c=!1)}while(this.expect(","));return this.consume("]"),E(function(c,d){for(var g=[],h=0;h<a.length;h++)g.push(a[h](c,d));return g},{literal:!0,constant:c})},object:function(){var a=[],c=!0;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;var d=this.expect(),d=d.string||d.text;this.consume(":");var e=this.expression();a.push({key:d,value:e}),e.constant||(c=!1)}while(this.expect(","));return this.consume("}"),E(function(c,d){for(var e={},k=0;k<a.length;k++){var m=a[k];e[m.key]=m.value(c,d)}return e},{literal:!0,constant:c})}};var Ce={},Be={},za=z("$sce"),fa={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},Y=X.createElement("a"),Gc=xa(W.location.href,!0);kc.$inject=["$provide"],Hc.$inject=["$locale"],Jc.$inject=["$locale"];var Mc=".",Me={yyyy:Z("FullYear",4),yy:Z("FullYear",2,0,!0),y:Z("FullYear",1),MMMM:vb("Month"),MMM:vb("Month",!0),MM:Z("Month",2,1),M:Z("Month",1,1),dd:Z("Date",2),d:Z("Date",1),HH:Z("Hours",2),H:Z("Hours",1),hh:Z("Hours",2,-12),h:Z("Hours",1,-12),mm:Z("Minutes",2),m:Z("Minutes",1),ss:Z("Seconds",2),s:Z("Seconds",1),sss:Z("Milliseconds",3),EEEE:vb("Day"),EEE:vb("Day",!0),a:function(a,c){return 12>a.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){return a=-1*a.getTimezoneOffset(),a=(a>=0?"+":"")+(Vb(Math[a>0?"floor":"ceil"](a/60),2)+Vb(Math.abs(a%60),2))}},Le=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,Ke=/^\-?\d+$/;Ic.$inject=["$locale"];var Ie=aa(x),Je=aa(La);Kc.$inject=["$parse"];var cd=aa({restrict:"E",compile:function(a,c){return 8>=R&&(c.href||c.name||c.$set("href",""),a.append(X.createComment("IE fix"))),c.href||c.xlinkHref||c.name?void 0:function(a,c){var f="[object SVGAnimatedString]"===Ba.call(c.prop("href"))?"xlink:href":"href";c.on("click",function(a){c.attr(f)||a.preventDefault()})}}}),Fb={};r(rb,function(a,c){if("multiple"!=a){var d=qa("ng-"+c);Fb[d]=function(){return{priority:100,link:function(a,f,g){a.$watch(g[d],function(a){g.$set(c,!!a)})}}}}}),r(["src","srcset","href"],function(a){var c=qa("ng-"+a);Fb[c]=function(){return{priority:99,link:function(d,e,f){var g=a,h=a;"href"===a&&"[object SVGAnimatedString]"===Ba.call(e.prop("href"))&&(h="xlinkHref",f.$attr[h]="xlink:href",g=null),f.$observe(c,function(c){c?(f.$set(h,c),R&&g&&e.prop(g,f[h])):"href"===a&&f.$set(h,null)})}}}});var yb={$addControl:v,$removeControl:v,$setValidity:v,$setDirty:v,$setPristine:v};Nc.$inject=["$element","$attrs","$scope","$animate"];var Qc=function(a){return["$timeout",function(c){return{name:"form",restrict:a?"EAC":"E",controller:Nc,compile:function(){return{pre:function(a,e,f,g){if(!f.action){var h=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1};sb(e[0],"submit",h),e.on("$destroy",function(){c(function(){bb(e[0],"submit",h)},0,!1)})}var k=e.parent().controller("form"),m=f.name||f.ngForm;m&&ub(a,m,g,m),k&&e.on("$destroy",function(){k.$removeControl(g),m&&ub(a,m,u,m),E(g,yb)})}}}}}]},dd=Qc(),qd=Qc(!0),Ve=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,We=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,Xe=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,Rc={text:Ab,number:function(a,c,d,e,f,g){Ab(a,c,d,e,f,g),e.$parsers.push(function(a){var c=e.$isEmpty(a);return c||Xe.test(a)?(e.$setValidity("number",!0),""===a?null:c?a:parseFloat(a)):(e.$setValidity("number",!1),u)}),Ne(e,"number",Ye,null,e.$$validityState),e.$formatters.push(function(a){return e.$isEmpty(a)?"":""+a}),d.min&&(a=function(a){var c=parseFloat(d.min);return ua(e,"min",e.$isEmpty(a)||a>=c,a)},e.$parsers.push(a),e.$formatters.push(a)),d.max&&(a=function(a){var c=parseFloat(d.max);return ua(e,"max",e.$isEmpty(a)||c>=a,a)},e.$parsers.push(a),e.$formatters.push(a)),e.$formatters.push(function(a){return ua(e,"number",e.$isEmpty(a)||jb(a),a)})},url:function(a,c,d,e,f,g){Ab(a,c,d,e,f,g),a=function(a){return ua(e,"url",e.$isEmpty(a)||Ve.test(a),a)},e.$formatters.push(a),e.$parsers.push(a)},email:function(a,c,d,e,f,g){Ab(a,c,d,e,f,g),a=function(a){return ua(e,"email",e.$isEmpty(a)||We.test(a),a)},e.$formatters.push(a),e.$parsers.push(a)},radio:function(a,c,d,e){F(d.name)&&c.attr("name",ib()),c.on("click",function(){c[0].checked&&a.$apply(function(){e.$setViewValue(d.value)})}),e.$render=function(){c[0].checked=d.value==e.$viewValue},d.$observe("value",e.$render)},checkbox:function(a,c,d,e){var f=d.ngTrueValue,g=d.ngFalseValue;G(f)||(f=!0),G(g)||(g=!1),c.on("click",function(){a.$apply(function(){e.$setViewValue(c[0].checked)})}),e.$render=function(){c[0].checked=e.$viewValue},e.$isEmpty=function(a){return a!==f},e.$formatters.push(function(a){return a===f}),e.$parsers.push(function(a){return a?f:g})},hidden:v,button:v,submit:v,reset:v,file:v},Ye=["badInput"],hc=["$browser","$sniffer",function(a,c){return{restrict:"E",require:"?ngModel",link:function(d,e,f,g){g&&(Rc[x(f.type)]||Rc.text)(d,e,f,g,c,a)}}}],wb="ng-valid",xb="ng-invalid",Ra="ng-pristine",zb="ng-dirty",Ze=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate",function(a,c,d,e,f,g){function h(a,c){c=c?"-"+nb(c,"-"):"",g.removeClass(e,(a?xb:wb)+c),g.addClass(e,(a?wb:xb)+c)}this.$modelValue=this.$viewValue=Number.NaN,this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$name=d.name;var k=f(d.ngModel),m=k.assign;if(!m)throw z("ngModel")("nonassign",d.ngModel,ia(e));this.$render=v,this.$isEmpty=function(a){return F(a)||""===a||null===a||a!==a};var l=e.inheritedData("$formController")||yb,n=0,q=this.$error={};e.addClass(Ra),h(!0),this.$setValidity=function(a,c){q[a]!==!c&&(c?(q[a]&&n--,n||(h(!0),this.$valid=!0,this.$invalid=!1)):(h(!1),this.$invalid=!0,this.$valid=!1,n++),q[a]=!c,h(c,a),l.$setValidity(a,c,this))},this.$setPristine=function(){this.$dirty=!1,this.$pristine=!0,g.removeClass(e,zb),g.addClass(e,Ra)},this.$setViewValue=function(d){this.$viewValue=d,this.$pristine&&(this.$dirty=!0,this.$pristine=!1,g.removeClass(e,Ra),g.addClass(e,zb),l.$setDirty()),r(this.$parsers,function(a){d=a(d)}),this.$modelValue!==d&&(this.$modelValue=d,m(a,d),r(this.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}}))};var p=this;a.$watch(function(){var c=k(a);if(p.$modelValue!==c){var d=p.$formatters,e=d.length;for(p.$modelValue=c;e--;)c=d[e](c);p.$viewValue!==c&&(p.$viewValue=c,p.$render())}return c})}],Fd=function(){return{require:["ngModel","^?form"],controller:Ze,link:function(a,c,d,e){var f=e[0],g=e[1]||yb;g.$addControl(f),a.$on("$destroy",function(){g.$removeControl(f)})}}},Hd=aa({require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),ic=function(){return{require:"?ngModel",link:function(a,c,d,e){if(e){d.required=!0;var f=function(a){return d.required&&e.$isEmpty(a)?void e.$setValidity("required",!1):(e.$setValidity("required",!0),a)};e.$formatters.push(f),e.$parsers.unshift(f),d.$observe("required",function(){f(e.$viewValue)})}}}},Gd=function(){return{require:"ngModel",link:function(a,c,d,e){var f=(a=/\/(.*)\//.exec(d.ngList))&&RegExp(a[1])||d.ngList||",";e.$parsers.push(function(a){if(!F(a)){var c=[];return a&&r(a.split(f),function(a){a&&c.push($(a))}),c}}),e.$formatters.push(function(a){return L(a)?a.join(", "):u}),e.$isEmpty=function(a){return!a||!a.length}}}},$e=/^(true|false|\d+)$/,Id=function(){return{priority:100,compile:function(a,c){return $e.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value",a)})}}}},id=Aa({compile:function(a){return a.addClass("ng-binding"),function(a,d,e){d.data("$binding",e.ngBind),a.$watch(e.ngBind,function(a){d.text(a==u?"":a)})}}}),kd=["$interpolate",function(a){return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate)),d.addClass("ng-binding").data("$binding",c),e.$observe("ngBindTemplate",function(a){d.text(a)})}}],jd=["$sce","$parse",function(a,c){return{compile:function(d){return d.addClass("ng-binding"),function(d,f,g){f.data("$binding",g.ngBindHtml);var h=c(g.ngBindHtml);d.$watch(function(){return(h(d)||"").toString()},function(c){f.html(a.getTrustedHtml(h(d))||"")})}}}}],ld=Wb("",!0),nd=Wb("Odd",0),md=Wb("Even",1),od=Aa({compile:function(a,c){c.$set("ngCloak",u),a.removeClass("ng-cloak")}}),pd=[function(){return{scope:!0,controller:"@",priority:500}}],jc={},af={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(a){var c=qa("ng-"+a);jc[c]=["$parse","$rootScope",function(d,e){return{compile:function(f,g){var h=d(g[c],!0);return function(c,d){d.on(a,function(d){var f=function(){h(c,{$event:d})};af[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]});var sd=["$animate",function(a){return{transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var h,k,m;c.$watch(e.ngIf,function(f){Wa(f)?k||(k=c.$new(),g(k,function(c){c[c.length++]=X.createComment(" end ngIf: "+e.ngIf+" "),h={clone:c},a.enter(c,d.parent(),d)})):(m&&(m.remove(),m=null),k&&(k.$destroy(),k=null),h&&(m=Eb(h.clone),a.leave(m,function(){m=null}),h=null))})}}}],td=["$http","$templateCache","$anchorScroll","$animate","$sce",function(a,c,d,e,f){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:Xa.noop,compile:function(g,h){var k=h.ngInclude||h.src,m=h.onload||"",l=h.autoscroll;return function(g,h,p,r,J){var t,y,u,w=0,B=function(){y&&(y.remove(),y=null),t&&(t.$destroy(),t=null),u&&(e.leave(u,function(){y=null}),y=u,u=null)};g.$watch(f.parseAsResourceUrl(k),function(f){var k=function(){!D(l)||l&&!g.$eval(l)||d()},p=++w;f?(a.get(f,{cache:c}).success(function(a){if(p===w){var c=g.$new();r.template=a,a=J(c,function(a){B(),e.enter(a,null,h,k)}),t=c,u=a,t.$emit("$includeContentLoaded"),g.$eval(m)}}).error(function(){p===w&&B()}),g.$emit("$includeContentRequested")):(B(),r.template=null)})}}}}],Jd=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){d.html(f.template),a(d.contents())(c)}}}],ud=Aa({priority:450,compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),vd=Aa({terminal:!0,priority:1e3}),wd=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,f,g){var h=g.count,k=g.$attr.when&&f.attr(g.$attr.when),m=g.offset||0,l=e.$eval(k)||{},n={},q=c.startSymbol(),p=c.endSymbol(),s=/^when(Minus)?(.+)$/;r(g,function(a,c){s.test(c)&&(l[x(c.replace("when","").replace("Minus","-"))]=f.attr(g.$attr[c]))}),r(l,function(a,e){n[e]=c(a.replace(d,q+h+"-"+m+p))}),e.$watch(function(){var c=parseFloat(e.$eval(h));return isNaN(c)?"":(c in l||(c=a.pluralCat(c-m)),n[c](e,f,!0))},function(a){f.text(a)})}}}],xd=["$parse","$animate",function(a,c){var d=z("ngRepeat");return{transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,link:function(e,f,g,h,k){var n,q,p,s,u,w,m=g.ngRepeat,l=m.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?\s*$/),t={$id:Na};if(!l)throw d("iexp",m);if(g=l[1],h=l[2],(l=l[3])?(n=a(l),q=function(a,c,d){return w&&(t[w]=a),t[u]=c,t.$index=d,n(e,t)}):(p=function(a,c){return Na(c)},s=function(a){return a}),l=g.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/),!l)throw d("iidexp",g);u=l[3]||l[1],w=l[2];var y={};e.$watchCollection(h,function(a){var g,h,n,D,C,I,x,G,v,z,l=f[0],t={},F=[];if(Sa(a))v=a,G=q||p;else{G=q||s,v=[];for(I in a)a.hasOwnProperty(I)&&"$"!=I.charAt(0)&&v.push(I);v.sort()}for(D=v.length,h=F.length=v.length,g=0;h>g;g++)if(I=a===v?g:v[g],x=a[I],n=G(I,x,g),Ea(n,"`track by` id"),y.hasOwnProperty(n))z=y[n],delete y[n],t[n]=z,F[g]=z;else{if(t.hasOwnProperty(n))throw r(F,function(a){a&&a.scope&&(y[a.id]=a)}),d("dupes",m,n,oa(x));F[g]={id:n},t[n]=!1}for(I in y)y.hasOwnProperty(I)&&(z=y[I],g=Eb(z.clone),c.leave(g),r(g,function(a){a.$$NG_REMOVED=!0}),z.scope.$destroy());for(g=0,h=v.length;h>g;g++){if(I=a===v?g:v[g],x=a[I],z=F[g],F[g-1]&&(l=F[g-1].clone[F[g-1].clone.length-1]),z.scope){C=z.scope,n=l;do n=n.nextSibling;while(n&&n.$$NG_REMOVED);z.clone[0]!=n&&c.move(Eb(z.clone),null,A(l)),l=z.clone[z.clone.length-1]}else C=e.$new();C[u]=x,w&&(C[w]=I),C.$index=g,C.$first=0===g,C.$last=g===D-1,C.$middle=!(C.$first||C.$last),C.$odd=!(C.$even=0===(1&g)),z.scope||k(C,function(a){a[a.length++]=X.createComment(" end ngRepeat: "+m+" "),c.enter(a,null,A(l)),l=a,z.scope=C,z.clone=a,t[z.id]=z})}y=t})}}}],yd=["$animate",function(a){return function(c,d,e){c.$watch(e.ngShow,function(c){a[Wa(c)?"removeClass":"addClass"](d,"ng-hide")})}}],rd=["$animate",function(a){return function(c,d,e){c.$watch(e.ngHide,function(c){a[Wa(c)?"addClass":"removeClass"](d,"ng-hide")})}}],zd=Aa(function(a,c,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&r(d,function(a,d){c.css(d,"")}),a&&c.css(a)},!0)}),Ad=["$animate",function(a){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(c,d,e,f){var g=[],h=[],k=[],m=[];c.$watch(e.ngSwitch||e.on,function(d){var n,q;for(n=0,q=k.length;q>n;++n)k[n].remove();for(n=k.length=0,q=m.length;q>n;++n){var p=h[n];m[n].$destroy(),k[n]=p,a.leave(p,function(){k.splice(n,1)})}h.length=0,m.length=0,(g=f.cases["!"+d]||f.cases["?"])&&(c.$eval(e.change),r(g,function(d){var e=c.$new();m.push(e),d.transclude(e,function(c){var e=d.element;h.push(c),a.enter(c,e.parent(),e)})}))})}}}],Bd=Aa({transclude:"element",priority:800,require:"^ngSwitch",link:function(a,c,d,e,f){e.cases["!"+d.ngSwitchWhen]=e.cases["!"+d.ngSwitchWhen]||[],e.cases["!"+d.ngSwitchWhen].push({transclude:f,element:c})}}),Cd=Aa({transclude:"element",priority:800,require:"^ngSwitch",link:function(a,c,d,e,f){e.cases["?"]=e.cases["?"]||[],e.cases["?"].push({transclude:f,element:c})}}),Ed=Aa({link:function(a,c,d,e,f){if(!f)throw z("ngTransclude")("orphan",ia(c));f(function(a){c.empty(),c.append(a)})}}),ed=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(c,d){"text/ng-template"==d.type&&a.put(d.id,c[0].text)}}}],bf=z("ngOptions"),Dd=aa({terminal:!0}),fd=["$compile","$parse",function(a,c){var d=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\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]+?))?$/,e={$setViewValue:v};return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(a,c,d){var n,k=this,m={},l=e;k.databound=d.ngModel,k.init=function(a,c,d){l=a,n=d},k.addOption=function(c){Ea(c,'"option value"'),m[c]=!0,l.$viewValue==c&&(a.val(c),n.parent()&&n.remove())},k.removeOption=function(a){this.hasOption(a)&&(delete m[a],l.$viewValue==a&&this.renderUnknownOption(a))},k.renderUnknownOption=function(c){c="? "+Na(c)+" ?",n.val(c),a.prepend(n),a.val(c),n.prop("selected",!0)},k.hasOption=function(a){return m.hasOwnProperty(a)},c.$on("$destroy",function(){k.renderUnknownOption=v})}],link:function(e,g,h,k){function m(a,c,d,e){d.$render=function(){var a=d.$viewValue;e.hasOption(a)?(x.parent()&&x.remove(),c.val(a),""===a&&w.prop("selected",!0)):F(a)&&w?c.val(""):e.renderUnknownOption(a)},c.on("change",function(){a.$apply(function(){x.parent()&&x.remove(),d.$setViewValue(c.val())})})}function l(a,c,d){var e;d.$render=function(){var a=new db(d.$viewValue);r(c.find("option"),function(c){c.selected=D(a.get(c.value))})},a.$watch(function(){Ca(e,d.$viewValue)||(e=ha(d.$viewValue),d.$render())}),c.on("change",function(){a.$apply(function(){var a=[];r(c.find("option"),function(c){c.selected&&a.push(c.value)}),d.$setViewValue(a)})})}function n(e,f,g){function h(){var d,k,s,u,v,a={"":[]},c=[""];s=g.$modelValue,u=A(e)||[];var G,Q,C,F=n?Xb(u):u;if(Q={},C=!1,p)if(k=g.$modelValue,w&&L(k))for(C=new db([]),d={},v=0;v<k.length;v++)d[m]=k[v],C.put(w(e,d),k[v]);else C=new db(k);v=C;var E,K;for(C=0;G=F.length,G>C;C++){if(k=C,n){if(k=F[C],"$"===k.charAt(0))continue;Q[n]=k}Q[m]=u[k],d=r(e,Q)||"",(k=a[d])||(k=a[d]=[],c.push(d)),p?d=D(v.remove(w?w(e,Q):x(e,Q))):(w?(d={},d[m]=s,d=w(e,d)===w(e,Q)):d=s===x(e,Q),v=v||d),E=l(e,Q),E=D(E)?E:"",k.push({id:w?w(e,Q):n?F[C]:C,label:E,selected:d})}for(p||(z||null===s?a[""].unshift({id:"",label:"",selected:!v}):v||a[""].unshift({id:"?",label:"",selected:!0})),Q=0,F=c.length;F>Q;Q++){for(d=c[Q],k=a[d],B.length<=Q?(s={element:y.clone().attr("label",d),label:k.label},u=[s],B.push(u),f.append(s.element)):(u=B[Q],s=u[0],s.label!=d&&s.element.attr("label",s.label=d)),E=null,C=0,G=k.length;G>C;C++)d=k[C],(v=u[C+1])?(E=v.element,v.label!==d.label&&(E.text(v.label=d.label),E.prop("label",v.label)),v.id!==d.id&&E.val(v.id=d.id),E[0].selected!==d.selected&&(E.prop("selected",v.selected=d.selected),R&&E.prop("selected",v.selected))):(""===d.id&&z?K=z:(K=t.clone()).val(d.id).prop("selected",d.selected).attr("selected",d.selected).prop("label",d.label).text(d.label),u.push({element:K,label:d.label,id:d.id,selected:d.selected}),q.addOption(d.label,K),E?E.after(K):s.element.append(K),E=K);for(C++;u.length>C;)d=u.pop(),q.removeOption(d.label),d.element.remove()}for(;B.length>Q;)B.pop()[0].element.remove()}var k;if(!(k=s.match(d)))throw bf("iexp",s,ia(f));var l=c(k[2]||k[1]),m=k[4]||k[6],n=k[5],r=c(k[3]||""),x=c(k[2]?k[1]:m),A=c(k[7]),w=k[8]?c(k[8]):null,B=[[{element:f,label:""}]];z&&(a(z)(e),z.removeClass("ng-scope"),z.remove()),f.empty(),f.on("change",function(){e.$apply(function(){var a,k,l,q,r,s,t,v,c=A(e)||[],d={};if(p){for(l=[],r=0,t=B.length;t>r;r++)for(a=B[r],q=1,s=a.length;s>q;q++)if((k=a[q].element)[0].selected){if(k=k.val(),n&&(d[n]=k),w)for(v=0;v<c.length&&(d[m]=c[v],w(e,d)!=k);v++);else d[m]=c[k];l.push(x(e,d))}}else if(k=f.val(),"?"==k)l=u;else if(""===k)l=null;else if(w){for(v=0;v<c.length;v++)if(d[m]=c[v],w(e,d)==k){l=x(e,d);break}}else d[m]=c[k],n&&(d[n]=k),l=x(e,d);g.$setViewValue(l),h()})}),g.$render=h,e.$watchCollection(A,h),e.$watchCollection(function(){var a={},c=A(e);if(c){for(var d=Array(c.length),f=0,g=c.length;g>f;f++)a[m]=c[f],d[f]=l(e,a);return d}},h),p&&e.$watchCollection(function(){return g.$modelValue},h)}if(k[1]){var q=k[0];k=k[1];var w,p=h.multiple,s=h.ngOptions,z=!1,t=A(X.createElement("option")),y=A(X.createElement("optgroup")),x=t.clone();h=0;for(var B=g.children(),v=B.length;v>h;h++)if(""===B[h].value){w=z=B.eq(h);break}q.init(k,z,x),p&&(k.$isEmpty=function(a){return!a||0===a.length}),s?n(e,g,k):p?l(e,g,k):m(e,g,k,q)}}}}],hd=["$interpolate",function(a){var c={addOption:v,removeOption:v};return{restrict:"E",priority:100,compile:function(d,e){if(F(e.value)){var f=a(d.text(),!0);f||e.$set("value",d.text())}return function(a,d,e){var m=d.parent(),l=m.data("$selectController")||m.parent().data("$selectController");l&&l.databound?d.prop("selected",!1):l=c,f?a.$watch(f,function(a,c){e.$set("value",a),a!==c&&l.removeOption(c),l.addOption(a)}):l.addOption(e.value),d.on("$destroy",function(){l.removeOption(e.value)})}}}}],gd=aa({restrict:"E",terminal:!0});W.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):((Fa=W.jQuery)&&Fa.fn.on?(A=Fa,E(Fa.fn,{scope:Oa.scope,isolateScope:Oa.isolateScope,controller:Oa.controller,injector:Oa.injector,inheritedData:Oa.inheritedData}),Gb("remove",!0,!0,!1),Gb("empty",!1,!1,!1),Gb("html",!1,!1,!0)):A=S,Xa.element=A,Zc(Xa),A(X).ready(function(){Wc(X,dc)}))}(window,document),!window.angular.$$csp()&&window.angular.element(document).find("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{display:none !important;}ng\\:form{display:block;}.ng-animate-block-transitions{transition:0s all!important;-webkit-transition:0s all!important;}.ng-hide-add-active,.ng-hide-remove{display:block!important;}</style>'),function(H,a,A){"use strict";function D(p,g){g=g||{},a.forEach(g,function(a,c){delete g[c]});for(var c in p)!p.hasOwnProperty(c)||"$"===c.charAt(0)&&"$"===c.charAt(1)||(g[c]=p[c]);return g}var v=a.$$minErr("$resource"),C=/^(\.[a-zA-Z_$][0-9a-zA-Z_$]*)+$/;a.module("ngResource",["ng"]).factory("$resource",["$http","$q",function(p,g){function c(a,c){this.template=a,this.defaults=c||{},this.urlParams={}}function t(n,w,l){function r(h,d){var e={};return d=x({},w,d),s(d,function(b,d){u(b)&&(b=b());var k;if(b&&b.charAt&&"@"==b.charAt(0)){k=h;var a=b.substr(1);if(null==a||""===a||"hasOwnProperty"===a||!C.test("."+a))throw v("badmember",a);for(var a=a.split("."),f=0,c=a.length;c>f&&k!==A;f++){var g=a[f];k=null!==k?k[g]:A}}else k=b;e[d]=k}),e}function e(a){return a.resource}function f(a){D(a||{},this)}var F=new c(n);return l=x({},B,l),s(l,function(h,d){var c=/^(POST|PUT|PATCH)$/i.test(h.method);f[d]=function(b,d,k,w){var n,l,y,q={};switch(arguments.length){case 4:y=w,l=k;case 3:case 2:if(!u(d)){q=b,n=d,l=k;break}if(u(b)){l=b,y=d;break}l=d,y=k;case 1:u(b)?l=b:c?n=b:q=b;break;case 0:break;default:throw v("badargs",arguments.length)}var t=this instanceof f,m=t?n:h.isArray?[]:new f(n),z={},B=h.interceptor&&h.interceptor.response||e,C=h.interceptor&&h.interceptor.responseError||A;return s(h,function(a,b){"params"!=b&&"isArray"!=b&&"interceptor"!=b&&(z[b]=G(a))}),c&&(z.data=n),F.setUrlParams(z,x({},r(n,h.params||{}),q),h.url),q=p(z).then(function(b){var d=b.data,k=m.$promise;if(d){if(a.isArray(d)!==!!h.isArray)throw v("badcfg",h.isArray?"array":"object",a.isArray(d)?"array":"object");h.isArray?(m.length=0,s(d,function(b){"object"==typeof b?m.push(new f(b)):m.push(b)})):(D(d,m),m.$promise=k)}return m.$resolved=!0,b.resource=m,b},function(b){return m.$resolved=!0,(y||E)(b),g.reject(b)}),q=q.then(function(b){var a=B(b);return(l||E)(a,b.headers),a},C),t?q:(m.$promise=q,m.$resolved=!1,m)},f.prototype["$"+d]=function(b,a,k){return u(b)&&(k=a,a=b,b={}),b=f[d].call(this,b,this,a,k),b.$promise||b}}),f.bind=function(a){return t(n,x({},w,a),l)},f}var B={get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}},E=a.noop,s=a.forEach,x=a.extend,G=a.copy,u=a.isFunction;return c.prototype={setUrlParams:function(c,g,l){var f,p,r=this,e=l||r.template,h=r.urlParams={};s(e.split(/\W/),function(a){if("hasOwnProperty"===a)throw v("badname");!/^\d+$/.test(a)&&a&&RegExp("(^|[^\\\\]):"+a+"(\\W|$)").test(e)&&(h[a]=!0)}),e=e.replace(/\\:/g,":"),g=g||{},s(r.urlParams,function(d,c){f=g.hasOwnProperty(c)?g[c]:r.defaults[c],a.isDefined(f)&&null!==f?(p=encodeURIComponent(f).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"%20").replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+"),e=e.replace(RegExp(":"+c+"(\\W|$)","g"),function(a,c){return p+c})):e=e.replace(RegExp("(/?):"+c+"(\\W|$)","g"),function(a,c,d){return"/"==d.charAt(0)?d:c+d})}),e=e.replace(/\/+$/,"")||"/",e=e.replace(/\/\.(?=\w+($|\?))/,"."),c.url=e.replace(/\/\\\./,"/."),s(g,function(a,e){r.urlParams[e]||(c.params=c.params||{},c.params[e]=a)})}},t}])}(window,window.angular),function(n,e,A){"use strict";function x(s,g,h){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(a,c,b,f,w){function y(){p&&(p.remove(),p=null),k&&(k.$destroy(),k=null),l&&(h.leave(l,function(){p=null}),p=l,l=null)}function v(){var b=s.current&&s.current.locals;if(e.isDefined(b&&b.$template)){var b=a.$new(),d=s.current;l=w(b,function(d){h.enter(d,null,l||c,function(){!e.isDefined(t)||t&&!a.$eval(t)||g()}),y()}),k=d.scope=b,k.$emit("$viewContentLoaded"),k.$eval(u)}else y()}var k,l,p,t=b.autoscroll,u=b.onload||"";a.$on("$routeChangeSuccess",v),v()}}}function z(e,g,h){return{restrict:"ECA",priority:-400,link:function(a,c){var b=h.current,f=b.locals;c.html(f.$template);var w=e(c.contents());b.controller&&(f.$scope=a,f=g(b.controller,f),b.controllerAs&&(a[b.controllerAs]=f),c.data("$ngControllerController",f),c.children().data("$ngControllerController",f)),w(a)}}}n=e.module("ngRoute",["ng"]).provider("$route",function(){function s(a,c){return e.extend(new(e.extend(function(){},{prototype:a})),c)}function g(a,e){var b=e.caseInsensitiveMatch,f={originalPath:a,regexp:a},h=f.keys=[];return a=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)([\?\*])?/g,function(a,e,b,c){return a="?"===c?c:null,c="*"===c?c:null,h.push({name:b,optional:!!a}),e=e||"",""+(a?"":e)+"(?:"+(a?e:"")+(c&&"(.+?)"||"([^/]+)")+(a||"")+")"+(a||"")}).replace(/([\/$\*])/g,"\\$1"),f.regexp=RegExp("^"+a+"$",b?"i":""),f}var h={};this.when=function(a,c){if(h[a]=e.extend({reloadOnSearch:!0},c,a&&g(a,c)),a){var b="/"==a[a.length-1]?a.substr(0,a.length-1):a+"/";h[b]=e.extend({redirectTo:a},g(b,c))}return this},this.otherwise=function(a){return this.when(null,a),this},this.$get=["$rootScope","$location","$routeParams","$q","$injector","$http","$templateCache","$sce",function(a,c,b,f,g,n,v,k){function l(){var d=p(),m=r.current;d&&m&&d.$$route===m.$$route&&e.equals(d.pathParams,m.pathParams)&&!d.reloadOnSearch&&!u?(m.params=d.params,e.copy(m.params,b),a.$broadcast("$routeUpdate",m)):(d||m)&&(u=!1,a.$broadcast("$routeChangeStart",d,m),(r.current=d)&&d.redirectTo&&(e.isString(d.redirectTo)?c.path(t(d.redirectTo,d.params)).search(d.params).replace():c.url(d.redirectTo(d.pathParams,c.path(),c.search())).replace()),f.when(d).then(function(){if(d){var c,b,a=e.extend({},d.resolve);return e.forEach(a,function(d,c){a[c]=e.isString(d)?g.get(d):g.invoke(d)}),e.isDefined(c=d.template)?e.isFunction(c)&&(c=c(d.params)):e.isDefined(b=d.templateUrl)&&(e.isFunction(b)&&(b=b(d.params)),b=k.getTrustedResourceUrl(b),e.isDefined(b)&&(d.loadedTemplateUrl=b,c=n.get(b,{cache:v}).then(function(a){return a.data}))),e.isDefined(c)&&(a.$template=c),f.all(a)}}).then(function(c){d==r.current&&(d&&(d.locals=c,e.copy(d.params,b)),a.$broadcast("$routeChangeSuccess",d,m))},function(c){d==r.current&&a.$broadcast("$routeChangeError",d,m,c)}))}function p(){var a,b;return e.forEach(h,function(f,h){var q;if(q=!b){var g=c.path();q=f.keys;var l={};if(f.regexp)if(g=f.regexp.exec(g)){for(var k=1,p=g.length;p>k;++k){var n=q[k-1],r=g[k];n&&r&&(l[n.name]=r)}q=l}else q=null;else q=null;q=a=q}q&&(b=s(f,{params:e.extend({},c.search(),a),pathParams:a}),b.$$route=f)}),b||h[null]&&s(h[null],{params:{},pathParams:{}})}function t(a,c){var b=[];return e.forEach((a||"").split(":"),function(a,d){if(0===d)b.push(a);else{var e=a.match(/(\w+)(?:[?*])?(.*)/),f=e[1];b.push(c[f]),b.push(e[2]||""),delete c[f]}}),b.join("")}var u=!1,r={routes:h,reload:function(){u=!0,a.$evalAsync(l)}};return a.$on("$locationChangeSuccess",l),r}]}),n.provider("$routeParams",function(){this.$get=function(){return{}}}),n.directive("ngView",x),n.directive("ngView",z),x.$inject=["$route","$anchorScroll","$animate"],z.$inject=["$compile","$controller","$route"]}(window,window.angular),angular.module("monospaced.qrcode",[]).directive("qrcode",["$window",function($window){var canvas2D=!!$window.CanvasRenderingContext2D,levels={L:"Low",M:"Medium",Q:"Quartile",H:"High"},draw=function(context,qr,modules,tile){for(var row=0;modules>row;row++)for(var col=0;modules>col;col++){var w=Math.ceil((col+1)*tile)-Math.floor(col*tile),h=Math.ceil((row+1)*tile)-Math.floor(row*tile);context.fillStyle=qr.isDark(row,col)?"#000":"#fff",context.fillRect(Math.round(col*tile),Math.round(row*tile),w,h)}};return{restrict:"E",template:"<canvas></canvas>",link:function(scope,element,attrs){var error,version,errorCorrectionLevel,data,size,modules,tile,qr,domElement=element[0],canvas=element.find("canvas")[0],context=canvas2D?canvas.getContext("2d"):null,trim=/^\s+|\s+$/g,setVersion=function(value){version=Math.max(1,Math.min(parseInt(value,10),10))||4},setErrorCorrectionLevel=function(value){errorCorrectionLevel=value in levels?value:"M"},setData=function(value){if(value){data=value.replace(trim,""),qr=qrcode(version,errorCorrectionLevel),qr.addData(data);try{qr.make()}catch(e){return void(error=e.message)}error=!1,modules=qr.getModuleCount()}},setSize=function(value){size=parseInt(value,10)||2*modules,tile=size/modules,canvas.width=canvas.height=size},render=function(){return qr?error?(canvas2D||(domElement.innerHTML='<img src width="'+size+'"height="'+size+'">'),void scope.$emit("qrcode:error",error)):void(canvas2D?draw(context,qr,modules,tile):domElement.innerHTML=qr.createImgTag(tile,0)):void 0};setVersion(attrs.version),setErrorCorrectionLevel(attrs.errorCorrectionLevel),setSize(attrs.size),attrs.$observe("version",function(value){value&&(setVersion(value),setData(data),setSize(size),render())}),attrs.$observe("errorCorrectionLevel",function(value){value&&(setErrorCorrectionLevel(value),setData(data),setSize(size),render())}),attrs.$observe("data",function(value){value&&(setData(value),setSize(size),render())}),attrs.$observe("size",function(value){value&&(setSize(value),render())})}}}]),function(G,d,P){"use strict";d.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){return function(H,z,e){e=e.ngAnimateChildren,d.isString(e)&&0===e.length?z.data("$$ngAnimateChildren",!0):H.$watch(e,function(d){z.data("$$ngAnimateChildren",!!d)})}}).factory("$$animateReflow",["$$rAF","$document",function(d,z){return function(e){return d(function(){e()})}}]).config(["$provide","$animateProvider",function(H,z){function e(d){for(var e=0;e<d.length;e++){var g=d[e];if(g.nodeType==ba)return g}}function E(g){return d.element(e(g))}var q=d.noop,w=d.forEach,Q=z.$$selectors,ba=1,g="$$ngAnimateState",ga="$$ngAnimateChildren",I="ng-animate",h={running:!0};H.decorator("$animate",["$delegate","$injector","$sniffer","$rootElement","$$asyncCallback","$rootScope","$document",function(y,G,aa,J,K,k,P){function R(a){var b=a.data(g)||{};b.running=!0,a.data(g,b)}function ha(a){if(a){var b=[],c={};a=a.substr(1).split("."),(aa.transitions||aa.animations)&&b.push(G.get(Q[""]));for(var f=0;f<a.length;f++){var d=a[f],e=Q[d];e&&!c[d]&&(b.push(G.get(e)),c[d]=!0)}return b}}function M(a,b,c){function f(a,b){var c=a[b],d=a["before"+b.charAt(0).toUpperCase()+b.substr(1)];return c||d?("leave"==b&&(d=c,c=null),S.push({event:b,fn:c}),n.push({event:b,fn:d}),!0):void 0}function e(b,d,f){var g=[];w(b,function(a){a.fn&&g.push(a)});var r=0;w(g,function(b,e){var C=function(){a:{if(d){if((d[e]||q)(),++r<g.length)break a;d=null}f()}};switch(b.event){case"setClass":d.push(b.fn(a,l,A,C));break;case"addClass":d.push(b.fn(a,l||c,C));break;case"removeClass":d.push(b.fn(a,A||c,C));break;default:d.push(b.fn(a,C))}}),d&&0===d.length&&f()}var g=a[0];if(g){var l,A,p="setClass"==b,h=p||"addClass"==b||"removeClass"==b;d.isArray(c)&&(l=c[0],A=c[1],c=l+" "+A);var k=a.attr("class")+" "+c;if(U(k)){var t=q,v=[],n=[],x=q,u=[],S=[],k=(" "+k).replace(/\s+/g,".");return w(ha(k),function(a){!f(a,b)&&p&&(f(a,"addClass"),f(a,"removeClass"))}),{node:g,event:b,className:c,isClassBased:h,isSetClassOperation:p,before:function(a){t=a,e(n,v,function(){t=q,a()})},after:function(a){x=a,e(S,u,function(){x=q,a()})},cancel:function(){v&&(w(v,function(a){(a||q)(!0)}),t(!0)),u&&(w(u,function(a){(a||q)(!0)}),x(!0))}}}}}function F(a,b,c,f,e,m,p){function k(d){var e="$animate:"+d;x&&x[e]&&0<x[e].length&&K(function(){c.triggerHandler(e,{event:a,className:b})})}function l(){k("before")}function A(){k("after")}function q(){k("close"),p&&K(function(){p()})}function t(){t.hasBeenRun||(t.hasBeenRun=!0,m())}function v(){if(!v.hasBeenRun){v.hasBeenRun=!0;var e=c.data(g);e&&(n&&n.isClassBased?B(c,b):(K(function(){var e=c.data(g)||{};s==e.index&&B(c,b,a)}),c.data(g,e))),q()}}var n=M(c,a,b);if(n){b=n.className;var x=d.element._data(n.node),x=x&&x.events;f||(f=e?e.parent():c.parent());var u=c.data(g)||{};e=u.active||{};var D,h=u.totalActive||0,C=u.last;if(n.isClassBased&&(D=u.running||u.disabled||C&&!C.isClassBased),D||N(c,f))t(),l(),A(),v();else{if(f=!1,h>0){if(D=[],n.isClassBased)"setClass"==C.event?(D.push(C),B(c,b)):e[b]&&(y=e[b],y.event==a?f=!0:(D.push(y),B(c,b)));else if("leave"==a&&e["ng-leave"])f=!0;else{for(var y in e)D.push(e[y]),B(c,y);e={},h=0}0<D.length&&w(D,function(a){a.cancel()})}if(!n.isClassBased||n.isSetClassOperation||f||(f="addClass"==a==c.hasClass(b)),f)t(),l(),A(),q();else{"leave"==a&&c.one("$destroy",function(a){a=d.element(this);var b=a.data(g);b&&(b=b.active["ng-leave"])&&(b.cancel(),B(a,"ng-leave"))}),c.addClass(I);var s=O++;h++,e[b]=n,c.data(g,{last:n,active:e,index:s,totalActive:h}),l(),n.before(function(e){var d=c.data(g);e=e||!d||!d.active[b]||n.isClassBased&&d.active[b].event!=a,t(),!0===e?v():(A(),n.after(v))})}}}else t(),l(),A(),v()}function V(a){(a=e(a))&&(a=d.isFunction(a.getElementsByClassName)?a.getElementsByClassName(I):a.querySelectorAll("."+I),w(a,function(a){a=d.element(a),(a=a.data(g))&&a.active&&w(a.active,function(a){a.cancel()})}))}function B(a,b){if(e(a)==e(J))h.disabled||(h.running=!1,h.structural=!1);else if(b){var c=a.data(g)||{},d=!0===b;!d&&c.active&&c.active[b]&&(c.totalActive--,delete c.active[b]),(d||!c.totalActive)&&(a.removeClass(I),a.removeData(g))}}function N(a,b){if(h.disabled)return!0;if(e(a)==e(J))return h.running;var c,f,k;do{if(0===b.length)break;var m=e(b)==e(J),p=m?h:b.data(g)||{};if(p.disabled)return!0;m&&(k=!0),!1!==c&&(m=b.data(ga),d.isDefined(m)&&(c=m)),f=f||p.running||p.last&&!p.last.isClassBased}while(b=b.parent());return!k||!c&&f}var O=0;J.data(g,h),k.$$postDigest(function(){k.$$postDigest(function(){h.running=!1})});var W=z.classNameFilter(),U=W?function(a){return W.test(a)}:function(){return!0};return{enter:function(a,b,c,e){a=d.element(a),b=b&&d.element(b),c=c&&d.element(c),R(a),y.enter(a,b,c),k.$$postDigest(function(){a=E(a),F("enter","ng-enter",a,b,c,q,e)})},leave:function(a,b){a=d.element(a),V(a),R(a),k.$$postDigest(function(){F("leave","ng-leave",E(a),null,null,function(){y.leave(a)},b)})},move:function(a,b,c,e){a=d.element(a),b=b&&d.element(b),c=c&&d.element(c),V(a),R(a),y.move(a,b,c),k.$$postDigest(function(){a=E(a),F("move","ng-move",a,b,c,q,e)})},addClass:function(a,b,c){a=d.element(a),a=E(a),F("addClass",b,a,null,null,function(){y.addClass(a,b)},c)},removeClass:function(a,b,c){a=d.element(a),a=E(a),F("removeClass",b,a,null,null,function(){y.removeClass(a,b)},c)},setClass:function(a,b,c,e){a=d.element(a),a=E(a),F("setClass",[b,c],a,null,null,function(){y.setClass(a,b,c)},e)},enabled:function(a,b){switch(arguments.length){case 2:if(a)B(b);else{var c=b.data(g)||{};c.disabled=!0,b.data(g,c)}break;case 1:h.disabled=!a;break;default:a=!h.disabled}return!!a}}}]),z.register("",["$window","$sniffer","$timeout","$$animateReflow",function(g,h,z,J){function K(){L||(L=J(function(){T=[],L=null,s={}}))}function k(a,X){L&&L(),T.push(X),L=J(function(){w(T,function(a){a()}),T=[],L=null,s={}})}function E(a,X){var b=e(a);a=d.element(b),Y.push(a),b=Date.now()+X,fa>=b||(z.cancel(ea),fa=b,ea=z(function(){R(Y),Y=[]},X,!1))}function R(a){w(a,function(a){(a=a.data(u))&&(a.closeAnimationFn||q)()})}function I(a,b){var c=b?s[b]:null;if(!c){var h,Z,$,m,e=0,d=0,f=0,k=0;w(a,function(a){if(a.nodeType==ba){a=g.getComputedStyle(a)||{},$=a[p+Q],e=Math.max(M($),e),m=a[p+t],h=a[p+v],d=Math.max(M(h),d),Z=a[l+v],k=Math.max(M(Z),k);var b=M(a[l+Q]);b>0&&(b*=parseInt(a[l+n],10)||1),f=Math.max(b,f)}}),c={total:0,transitionPropertyStyle:m,transitionDurationStyle:$,transitionDelayStyle:h,transitionDelay:d,transitionDuration:e,animationDelayStyle:Z,animationDelay:k,animationDuration:f},b&&(s[b]=c)}return c}function M(a){var b=0;return a=d.isString(a)?a.split(/\s*,\s*/):[],w(a,function(a){b=Math.max(parseFloat(a)||0,b)}),b}function F(a){var b=a.parent(),c=b.data(x);return c||(b.data(x,++da),c=da),c+"-"+e(a).getAttribute("class")}function V(a,b,c,d){var f=F(b),g=f+" "+c,k=s[g]?++s[g].total:0,h={};if(k>0){var m=c+"-stagger",h=f+" "+m;(f=!s[h])&&b.addClass(m),h=I(b,h),f&&b.removeClass(m)}d=d||function(a){return a()},b.addClass(c);var m=b.data(u)||{},n=d(function(){return I(b,g)});return d=n.transitionDuration,f=n.animationDuration,0===d&&0===f?(b.removeClass(c),!1):(b.data(u,{running:m.running||0,itemIndex:k,stagger:h,timings:n,closeAnimationFn:q}),a=0<m.running||"setClass"==a,d>0&&B(b,c,a),f>0&&0<h.animationDelay&&0===h.animationDuration&&(e(b).style[l]="none 0s"),!0)}function B(a,b,c){"ng-enter"!=b&&"ng-move"!=b&&"ng-leave"!=b&&c?a.addClass(S):e(a).style[p+t]="none"}function N(a,b){var c=p+t,d=e(a);d.style[c]&&0<d.style[c].length&&(d.style[c]=""),a.removeClass(S)}function O(a){var b=l;a=e(a),a.style[b]&&0<a.style[b].length&&(a.style[b]="")}function W(a,b,c,d){function g(a){b.off(z,h),b.removeClass(n),f(b,c),a=e(b);for(var d in s)a.style.removeProperty(s[d])}function h(a){a.stopPropagation();var b=a.originalEvent||a;a=b.$manualTimeStamp||b.timeStamp||Date.now(),b=parseFloat(b.elapsedTime.toFixed(C)),Math.max(a-y,0)>=x&&b>=t&&d()}var k=e(b);if(a=b.data(u),-1!=k.getAttribute("class").indexOf(c)&&a){var n="";w(c.split(" "),function(a,b){n+=(b>0?" ":"")+a+"-active"});var p=a.stagger,l=a.timings,q=a.itemIndex,t=Math.max(l.transitionDuration,l.animationDuration),v=Math.max(l.transitionDelay,l.animationDelay),x=v*ca,y=Date.now(),z=A+" "+H,r="",s=[];if(0<l.transitionDuration){var B=l.transitionPropertyStyle;-1==B.indexOf("all")&&(r+=m+"transition-property: "+B+";",r+=m+"transition-duration: "+l.transitionDurationStyle+";",s.push(m+"transition-property"),s.push(m+"transition-duration"))}return q>0&&(0<p.transitionDelay&&0===p.transitionDuration&&(r+=m+"transition-delay: "+U(l.transitionDelayStyle,p.transitionDelay,q)+"; ",s.push(m+"transition-delay")),0<p.animationDelay&&0===p.animationDuration&&(r+=m+"animation-delay: "+U(l.animationDelayStyle,p.animationDelay,q)+"; ",s.push(m+"animation-delay"))),0<s.length&&(l=k.getAttribute("style")||"",k.setAttribute("style",l+"; "+r)),b.on(z,h),b.addClass(n),a.closeAnimationFn=function(){g(),d()},k=(q*(Math.max(p.animationDelay,p.transitionDelay)||0)+(v+t)*D)*ca,a.running++,E(b,k),g}d()}function U(a,b,c){var d="";return w(a.split(","),function(a,e){d+=(e>0?",":"")+(c*b+parseInt(a,10))+"s"}),d}function a(a,b,c,d){return V(a,b,c,d)?function(a){a&&f(b,c)}:void 0}function b(a,b,c,d){return b.data(u)?W(a,b,c,d):(f(b,c),void d())}function c(c,d,e,f){var g=a(c,d,e);if(g){var h=g;return k(d,function(){N(d,e),O(d),h=b(c,d,e,f)}),function(a){(h||q)(a)}}K(),f()}function f(a,b){a.removeClass(b);var c=a.data(u);c&&(c.running&&c.running--,c.running&&0!==c.running||a.removeData(u))}function r(a,b){var c="";return a=d.isArray(a)?a:a.split(/\s+/),w(a,function(a,d){a&&0<a.length&&(c+=(d>0?" ":"")+a+b)}),c}var p,H,l,A,m="";G.ontransitionend===P&&G.onwebkittransitionend!==P?(m="-webkit-",p="WebkitTransition",H="webkitTransitionEnd transitionend"):(p="transition",H="transitionend"),G.onanimationend===P&&G.onwebkitanimationend!==P?(m="-webkit-",l="WebkitAnimation",A="webkitAnimationEnd animationend"):(l="animation",A="animationend");var L,Q="Duration",t="Property",v="Delay",n="IterationCount",x="$$ngAnimateKey",u="$$ngAnimateCSS3Data",S="ng-animate-block-transitions",C=3,D=1.5,ca=1e3,s={},da=0,T=[],ea=null,fa=0,Y=[];return{enter:function(a,b){return c("enter",a,"ng-enter",b)},leave:function(a,b){return c("leave",a,"ng-leave",b)},move:function(a,b){return c("move",a,"ng-move",b)},beforeSetClass:function(b,c,d,e){var f=r(d,"-remove")+" "+r(c,"-add"),g=a("setClass",b,f,function(a){var e=b.attr("class");return b.removeClass(d),b.addClass(c),a=a(),b.attr("class",e),a});return g?(k(b,function(){N(b,f),O(b),e()}),g):(K(),void e())},beforeAddClass:function(b,c,d){var e=a("addClass",b,r(c,"-add"),function(a){return b.addClass(c),a=a(),b.removeClass(c),a});return e?(k(b,function(){N(b,c),O(b),d()}),e):(K(),void d())},setClass:function(a,c,d,e){return d=r(d,"-remove"),c=r(c,"-add"),b("setClass",a,d+" "+c,e)},addClass:function(a,c,d){return b("addClass",a,r(c,"-add"),d)},beforeRemoveClass:function(b,c,d){var e=a("removeClass",b,r(c,"-remove"),function(a){var d=b.attr("class");return b.removeClass(c),a=a(),b.attr("class",d),a});return e?(k(b,function(){N(b,c),O(b),d()}),e):void d()},removeClass:function(a,c,d){return b("removeClass",a,r(c,"-remove"),d)}}}])}])}(window,window.angular),angular.module("ui.bootstrap",["ui.bootstrap.transition","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.bindHtml","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.dropdownToggle","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.transition",[]).factory("$transition",["$q","$timeout","$rootScope",function($q,$timeout,$rootScope){
function findEndEventName(endEventNames){for(var name in endEventNames)if(void 0!==transElement.style[name])return endEventNames[name]}var $transition=function(element,trigger,options){options=options||{};var deferred=$q.defer(),endEventName=$transition[options.animation?"animationEndEventName":"transitionEndEventName"],transitionEndHandler=function(event){$rootScope.$apply(function(){element.unbind(endEventName,transitionEndHandler),deferred.resolve(element)})};return endEventName&&element.bind(endEventName,transitionEndHandler),$timeout(function(){angular.isString(trigger)?element.addClass(trigger):angular.isFunction(trigger)?trigger(element):angular.isObject(trigger)&&element.css(trigger),endEventName||deferred.resolve(element)}),deferred.promise.cancel=function(){endEventName&&element.unbind(endEventName,transitionEndHandler),deferred.reject("Transition cancelled")},deferred.promise},transElement=document.createElement("trans"),transitionEndEventNames={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"},animationEndEventNames={WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"};return $transition.transitionEndEventName=findEndEventName(transitionEndEventNames),$transition.animationEndEventName=findEndEventName(animationEndEventNames),$transition}]),angular.module("ui.bootstrap.collapse",["ui.bootstrap.transition"]).directive("collapse",["$transition",function($transition,$timeout){return{link:function(scope,element,attrs){function doTransition(change){function newTransitionDone(){currentTransition===newTransition&&(currentTransition=void 0)}var newTransition=$transition(element,change);return currentTransition&&currentTransition.cancel(),currentTransition=newTransition,newTransition.then(newTransitionDone,newTransitionDone),newTransition}function expand(){initialAnimSkip?(initialAnimSkip=!1,expandDone()):(element.removeClass("collapse").addClass("collapsing"),doTransition({height:element[0].scrollHeight+"px"}).then(expandDone))}function expandDone(){element.removeClass("collapsing"),element.addClass("collapse in"),element.css({height:"auto"})}function collapse(){if(initialAnimSkip)initialAnimSkip=!1,collapseDone(),element.css({height:0});else{element.css({height:element[0].scrollHeight+"px"});element[0].offsetWidth;element.removeClass("collapse in").addClass("collapsing"),doTransition({height:0}).then(collapseDone)}}function collapseDone(){element.removeClass("collapsing"),element.addClass("collapse")}var currentTransition,initialAnimSkip=!0;scope.$watch(attrs.collapse,function(shouldCollapse){shouldCollapse?collapse():expand()})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function($scope,$attrs,accordionConfig){this.groups=[],this.closeOthers=function(openGroup){var closeOthers=angular.isDefined($attrs.closeOthers)?$scope.$eval($attrs.closeOthers):accordionConfig.closeOthers;closeOthers&&angular.forEach(this.groups,function(group){group!==openGroup&&(group.isOpen=!1)})},this.addGroup=function(groupScope){var that=this;this.groups.push(groupScope),groupScope.$on("$destroy",function(event){that.removeGroup(groupScope)})},this.removeGroup=function(group){var index=this.groups.indexOf(group);-1!==index&&this.groups.splice(this.groups.indexOf(group),1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",transclude:!0,replace:!1,templateUrl:"template/accordion/accordion.html"}}).directive("accordionGroup",["$parse",function($parse){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/accordion/accordion-group.html",scope:{heading:"@"},controller:function(){this.setHeading=function(element){this.heading=element}},link:function(scope,element,attrs,accordionCtrl){var getIsOpen,setIsOpen;accordionCtrl.addGroup(scope),scope.isOpen=!1,attrs.isOpen&&(getIsOpen=$parse(attrs.isOpen),setIsOpen=getIsOpen.assign,scope.$parent.$watch(getIsOpen,function(value){scope.isOpen=!!value})),scope.$watch("isOpen",function(value){value&&accordionCtrl.closeOthers(scope),setIsOpen&&setIsOpen(scope.$parent,value)})}}}]).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",compile:function(element,attr,transclude){return function(scope,element,attr,accordionGroupCtrl){accordionGroupCtrl.setHeading(transclude(scope,function(){}))}}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(scope,element,attr,controller){scope.$watch(function(){return controller[attr.accordionTransclude]},function(heading){heading&&(element.html(""),element.append(heading))})}}}),angular.module("ui.bootstrap.alert",[]).controller("AlertController",["$scope","$attrs",function($scope,$attrs){$scope.closeable="close"in $attrs}]).directive("alert",function(){return{restrict:"EA",controller:"AlertController",templateUrl:"template/alert/alert.html",transclude:!0,replace:!0,scope:{type:"=",close:"&"}}}),angular.module("ui.bootstrap.bindHtml",[]).directive("bindHtmlUnsafe",function(){return function(scope,element,attr){element.addClass("ng-binding").data("$binding",attr.bindHtmlUnsafe),scope.$watch(attr.bindHtmlUnsafe,function(value){element.html(value||"")})}}),angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).controller("ButtonsController",["buttonConfig",function(buttonConfig){this.activeClass=buttonConfig.activeClass||"active",this.toggleEvent=buttonConfig.toggleEvent||"click"}]).directive("btnRadio",function(){return{require:["btnRadio","ngModel"],controller:"ButtonsController",link:function(scope,element,attrs,ctrls){var buttonsCtrl=ctrls[0],ngModelCtrl=ctrls[1];ngModelCtrl.$render=function(){element.toggleClass(buttonsCtrl.activeClass,angular.equals(ngModelCtrl.$modelValue,scope.$eval(attrs.btnRadio)))},element.bind(buttonsCtrl.toggleEvent,function(){element.hasClass(buttonsCtrl.activeClass)||scope.$apply(function(){ngModelCtrl.$setViewValue(scope.$eval(attrs.btnRadio)),ngModelCtrl.$render()})})}}}).directive("btnCheckbox",function(){return{require:["btnCheckbox","ngModel"],controller:"ButtonsController",link:function(scope,element,attrs,ctrls){function getTrueValue(){return getCheckboxValue(attrs.btnCheckboxTrue,!0)}function getFalseValue(){return getCheckboxValue(attrs.btnCheckboxFalse,!1)}function getCheckboxValue(attributeValue,defaultValue){var val=scope.$eval(attributeValue);return angular.isDefined(val)?val:defaultValue}var buttonsCtrl=ctrls[0],ngModelCtrl=ctrls[1];ngModelCtrl.$render=function(){element.toggleClass(buttonsCtrl.activeClass,angular.equals(ngModelCtrl.$modelValue,getTrueValue()))},element.bind(buttonsCtrl.toggleEvent,function(){scope.$apply(function(){ngModelCtrl.$setViewValue(element.hasClass(buttonsCtrl.activeClass)?getFalseValue():getTrueValue()),ngModelCtrl.$render()})})}}}),angular.module("ui.bootstrap.carousel",["ui.bootstrap.transition"]).controller("CarouselController",["$scope","$timeout","$transition","$q",function($scope,$timeout,$transition,$q){function restartTimer(){resetTimer();var interval=+$scope.interval;!isNaN(interval)&&interval>=0&&(currentTimeout=$timeout(timerFn,interval))}function resetTimer(){currentTimeout&&($timeout.cancel(currentTimeout),currentTimeout=null)}function timerFn(){isPlaying?($scope.next(),restartTimer()):$scope.pause()}var currentTimeout,isPlaying,self=this,slides=self.slides=[],currentIndex=-1;self.currentSlide=null;var destroyed=!1;self.select=function(nextSlide,direction){function goNext(){if(!destroyed){if(self.currentSlide&&angular.isString(direction)&&!$scope.noTransition&&nextSlide.$element){nextSlide.$element.addClass(direction);nextSlide.$element[0].offsetWidth;angular.forEach(slides,function(slide){angular.extend(slide,{direction:"",entering:!1,leaving:!1,active:!1})}),angular.extend(nextSlide,{direction:direction,active:!0,entering:!0}),angular.extend(self.currentSlide||{},{direction:direction,leaving:!0}),$scope.$currentTransition=$transition(nextSlide.$element,{}),function(next,current){$scope.$currentTransition.then(function(){transitionDone(next,current)},function(){transitionDone(next,current)})}(nextSlide,self.currentSlide)}else transitionDone(nextSlide,self.currentSlide);self.currentSlide=nextSlide,currentIndex=nextIndex,restartTimer()}}function transitionDone(next,current){angular.extend(next,{direction:"",active:!0,leaving:!1,entering:!1}),angular.extend(current||{},{direction:"",active:!1,leaving:!1,entering:!1}),$scope.$currentTransition=null}var nextIndex=slides.indexOf(nextSlide);void 0===direction&&(direction=nextIndex>currentIndex?"next":"prev"),nextSlide&&nextSlide!==self.currentSlide&&($scope.$currentTransition?($scope.$currentTransition.cancel(),$timeout(goNext)):goNext())},$scope.$on("$destroy",function(){destroyed=!0}),self.indexOfSlide=function(slide){return slides.indexOf(slide)},$scope.next=function(){var newIndex=(currentIndex+1)%slides.length;return $scope.$currentTransition?void 0:self.select(slides[newIndex],"next")},$scope.prev=function(){var newIndex=0>currentIndex-1?slides.length-1:currentIndex-1;return $scope.$currentTransition?void 0:self.select(slides[newIndex],"prev")},$scope.select=function(slide){self.select(slide)},$scope.isActive=function(slide){return self.currentSlide===slide},$scope.slides=function(){return slides},$scope.$watch("interval",restartTimer),$scope.$on("$destroy",resetTimer),$scope.play=function(){isPlaying||(isPlaying=!0,restartTimer())},$scope.pause=function(){$scope.noPause||(isPlaying=!1,resetTimer())},self.addSlide=function(slide,element){slide.$element=element,slides.push(slide),1===slides.length||slide.active?(self.select(slides[slides.length-1]),1==slides.length&&$scope.play()):slide.active=!1},self.removeSlide=function(slide){var index=slides.indexOf(slide);slides.splice(index,1),slides.length>0&&slide.active?index>=slides.length?self.select(slides[index-1]):self.select(slides[index]):currentIndex>index&&currentIndex--}}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",require:"carousel",templateUrl:"template/carousel/carousel.html",scope:{interval:"=",noTransition:"=",noPause:"="}}}]).directive("slide",["$parse",function($parse){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/carousel/slide.html",scope:{},link:function(scope,element,attrs,carouselCtrl){if(attrs.active){var getActive=$parse(attrs.active),setActive=getActive.assign,lastValue=scope.active=getActive(scope.$parent);scope.$watch(function(){var parentActive=getActive(scope.$parent);return parentActive!==scope.active&&(parentActive!==lastValue?lastValue=scope.active=parentActive:setActive(scope.$parent,parentActive=lastValue=scope.active)),parentActive})}carouselCtrl.addSlide(scope,element),scope.$on("$destroy",function(){carouselCtrl.removeSlide(scope)}),scope.$watch("active",function(active){active&&carouselCtrl.select(scope)})}}}]),angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function($document,$window){function getStyle(el,cssprop){return el.currentStyle?el.currentStyle[cssprop]:$window.getComputedStyle?$window.getComputedStyle(el)[cssprop]:el.style[cssprop]}function isStaticPositioned(element){return"static"===(getStyle(element,"position")||"static")}var parentOffsetEl=function(element){for(var docDomEl=$document[0],offsetParent=element.offsetParent||docDomEl;offsetParent&&offsetParent!==docDomEl&&isStaticPositioned(offsetParent);)offsetParent=offsetParent.offsetParent;return offsetParent||docDomEl};return{position:function(element){var elBCR=this.offset(element),offsetParentBCR={top:0,left:0},offsetParentEl=parentOffsetEl(element[0]);offsetParentEl!=$document[0]&&(offsetParentBCR=this.offset(angular.element(offsetParentEl)),offsetParentBCR.top+=offsetParentEl.clientTop-offsetParentEl.scrollTop,offsetParentBCR.left+=offsetParentEl.clientLeft-offsetParentEl.scrollLeft);var boundingClientRect=element[0].getBoundingClientRect();return{width:boundingClientRect.width||element.prop("offsetWidth"),height:boundingClientRect.height||element.prop("offsetHeight"),top:elBCR.top-offsetParentBCR.top,left:elBCR.left-offsetParentBCR.left}},offset:function(element){var boundingClientRect=element[0].getBoundingClientRect();return{width:boundingClientRect.width||element.prop("offsetWidth"),height:boundingClientRect.height||element.prop("offsetHeight"),top:boundingClientRect.top+($window.pageYOffset||$document[0].body.scrollTop||$document[0].documentElement.scrollTop),left:boundingClientRect.left+($window.pageXOffset||$document[0].body.scrollLeft||$document[0].documentElement.scrollLeft)}}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.position"]).constant("datepickerConfig",{dayFormat:"dd",monthFormat:"MMMM",yearFormat:"yyyy",dayHeaderFormat:"EEE",dayTitleFormat:"MMMM yyyy",monthTitleFormat:"yyyy",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null}).controller("DatepickerController",["$scope","$attrs","dateFilter","datepickerConfig",function($scope,$attrs,dateFilter,dtConfig){function getValue(value,defaultValue){return angular.isDefined(value)?$scope.$parent.$eval(value):defaultValue}function getDaysInMonth(year,month){return new Date(year,month,0).getDate()}function getDates(startDate,n){for(var dates=new Array(n),current=startDate,i=0;n>i;)dates[i++]=new Date(current),current.setDate(current.getDate()+1);return dates}function makeDate(date,format,isSelected,isSecondary){return{date:date,label:dateFilter(date,format),selected:!!isSelected,secondary:!!isSecondary}}var format={day:getValue($attrs.dayFormat,dtConfig.dayFormat),month:getValue($attrs.monthFormat,dtConfig.monthFormat),year:getValue($attrs.yearFormat,dtConfig.yearFormat),dayHeader:getValue($attrs.dayHeaderFormat,dtConfig.dayHeaderFormat),dayTitle:getValue($attrs.dayTitleFormat,dtConfig.dayTitleFormat),monthTitle:getValue($attrs.monthTitleFormat,dtConfig.monthTitleFormat)},startingDay=getValue($attrs.startingDay,dtConfig.startingDay),yearRange=getValue($attrs.yearRange,dtConfig.yearRange);this.minDate=dtConfig.minDate?new Date(dtConfig.minDate):null,this.maxDate=dtConfig.maxDate?new Date(dtConfig.maxDate):null,this.modes=[{name:"day",getVisibleDates:function(date,selected){var year=date.getFullYear(),month=date.getMonth(),firstDayOfMonth=new Date(year,month,1),difference=startingDay-firstDayOfMonth.getDay(),numDisplayedFromPreviousMonth=difference>0?7-difference:-difference,firstDate=new Date(firstDayOfMonth),numDates=0;numDisplayedFromPreviousMonth>0&&(firstDate.setDate(-numDisplayedFromPreviousMonth+1),numDates+=numDisplayedFromPreviousMonth),numDates+=getDaysInMonth(year,month+1),numDates+=(7-numDates%7)%7;for(var days=getDates(firstDate,numDates),labels=new Array(7),i=0;numDates>i;i++){var dt=new Date(days[i]);days[i]=makeDate(dt,format.day,selected&&selected.getDate()===dt.getDate()&&selected.getMonth()===dt.getMonth()&&selected.getFullYear()===dt.getFullYear(),dt.getMonth()!==month)}for(var j=0;7>j;j++)labels[j]=dateFilter(days[j].date,format.dayHeader);return{objects:days,title:dateFilter(date,format.dayTitle),labels:labels}},compare:function(date1,date2){return new Date(date1.getFullYear(),date1.getMonth(),date1.getDate())-new Date(date2.getFullYear(),date2.getMonth(),date2.getDate())},split:7,step:{months:1}},{name:"month",getVisibleDates:function(date,selected){for(var months=new Array(12),year=date.getFullYear(),i=0;12>i;i++){var dt=new Date(year,i,1);months[i]=makeDate(dt,format.month,selected&&selected.getMonth()===i&&selected.getFullYear()===year)}return{objects:months,title:dateFilter(date,format.monthTitle)}},compare:function(date1,date2){return new Date(date1.getFullYear(),date1.getMonth())-new Date(date2.getFullYear(),date2.getMonth())},split:3,step:{years:1}},{name:"year",getVisibleDates:function(date,selected){for(var years=new Array(yearRange),year=date.getFullYear(),startYear=parseInt((year-1)/yearRange,10)*yearRange+1,i=0;yearRange>i;i++){var dt=new Date(startYear+i,0,1);years[i]=makeDate(dt,format.year,selected&&selected.getFullYear()===dt.getFullYear())}return{objects:years,title:[years[0].label,years[yearRange-1].label].join(" - ")}},compare:function(date1,date2){return date1.getFullYear()-date2.getFullYear()},split:5,step:{years:yearRange}}],this.isDisabled=function(date,mode){var currentMode=this.modes[mode||0];return this.minDate&&currentMode.compare(date,this.minDate)<0||this.maxDate&&currentMode.compare(date,this.maxDate)>0||$scope.dateDisabled&&$scope.dateDisabled({date:date,mode:currentMode.name})}}]).directive("datepicker",["dateFilter","$parse","datepickerConfig","$log",function(dateFilter,$parse,datepickerConfig,$log){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/datepicker.html",scope:{dateDisabled:"&"},require:["datepicker","?^ngModel"],controller:"DatepickerController",link:function(scope,element,attrs,ctrls){function updateShowWeekNumbers(){scope.showWeekNumbers=0===mode&&showWeeks}function split(arr,size){for(var arrays=[];arr.length>0;)arrays.push(arr.splice(0,size));return arrays}function refill(updateSelected){var date=null,valid=!0;ngModel.$modelValue&&(date=new Date(ngModel.$modelValue),isNaN(date)?(valid=!1,$log.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):updateSelected&&(selected=date)),ngModel.$setValidity("date",valid);var currentMode=datepickerCtrl.modes[mode],data=currentMode.getVisibleDates(selected,date);angular.forEach(data.objects,function(obj){obj.disabled=datepickerCtrl.isDisabled(obj.date,mode)}),ngModel.$setValidity("date-disabled",!date||!datepickerCtrl.isDisabled(date)),scope.rows=split(data.objects,currentMode.split),scope.labels=data.labels||[],scope.title=data.title}function setMode(value){mode=value,updateShowWeekNumbers(),refill()}function getISO8601WeekNumber(date){var checkDate=new Date(date);checkDate.setDate(checkDate.getDate()+4-(checkDate.getDay()||7));var time=checkDate.getTime();return checkDate.setMonth(0),checkDate.setDate(1),Math.floor(Math.round((time-checkDate)/864e5)/7)+1}var datepickerCtrl=ctrls[0],ngModel=ctrls[1];if(ngModel){var mode=0,selected=new Date,showWeeks=datepickerConfig.showWeeks;attrs.showWeeks?scope.$parent.$watch($parse(attrs.showWeeks),function(value){showWeeks=!!value,updateShowWeekNumbers()}):updateShowWeekNumbers(),attrs.min&&scope.$parent.$watch($parse(attrs.min),function(value){datepickerCtrl.minDate=value?new Date(value):null,refill()}),attrs.max&&scope.$parent.$watch($parse(attrs.max),function(value){datepickerCtrl.maxDate=value?new Date(value):null,refill()}),ngModel.$render=function(){refill(!0)},scope.select=function(date){if(0===mode){var dt=ngModel.$modelValue?new Date(ngModel.$modelValue):new Date(0,0,0,0,0,0,0);dt.setFullYear(date.getFullYear(),date.getMonth(),date.getDate()),ngModel.$setViewValue(dt),refill(!0)}else selected=date,setMode(mode-1)},scope.move=function(direction){var step=datepickerCtrl.modes[mode].step;selected.setMonth(selected.getMonth()+direction*(step.months||0)),selected.setFullYear(selected.getFullYear()+direction*(step.years||0)),refill()},scope.toggleMode=function(){setMode((mode+1)%datepickerCtrl.modes.length)},scope.getWeekNumber=function(row){return 0===mode&&scope.showWeekNumbers&&7===row.length?getISO8601WeekNumber(row[0].date):null}}}}}]).constant("datepickerPopupConfig",{dateFormat:"yyyy-MM-dd",currentText:"Today",toggleWeeksText:"Weeks",clearText:"Clear",closeText:"Done",closeOnDateSelection:!0,appendToBody:!1,showButtonBar:!0}).directive("datepickerPopup",["$compile","$parse","$document","$position","dateFilter","datepickerPopupConfig","datepickerConfig",function($compile,$parse,$document,$position,dateFilter,datepickerPopupConfig,datepickerConfig){return{restrict:"EA",require:"ngModel",link:function(originalScope,element,attrs,ngModel){function setOpen(value){setIsOpen?setIsOpen(originalScope,!!value):scope.isOpen=!!value}function parseDate(viewValue){if(viewValue){if(angular.isDate(viewValue))return ngModel.$setValidity("date",!0),viewValue;if(angular.isString(viewValue)){var date=new Date(viewValue);return isNaN(date)?void ngModel.$setValidity("date",!1):(ngModel.$setValidity("date",!0),date)}return void ngModel.$setValidity("date",!1)}return ngModel.$setValidity("date",!0),null}function addWatchableAttribute(attribute,scopeProperty,datepickerAttribute){attribute&&(originalScope.$watch($parse(attribute),function(value){scope[scopeProperty]=value}),datepickerEl.attr(datepickerAttribute||scopeProperty,scopeProperty))}function updatePosition(){scope.position=appendToBody?$position.offset(element):$position.position(element),scope.position.top=scope.position.top+element.prop("offsetHeight")}var dateFormat,scope=originalScope.$new(),closeOnDateSelection=angular.isDefined(attrs.closeOnDateSelection)?originalScope.$eval(attrs.closeOnDateSelection):datepickerPopupConfig.closeOnDateSelection,appendToBody=angular.isDefined(attrs.datepickerAppendToBody)?originalScope.$eval(attrs.datepickerAppendToBody):datepickerPopupConfig.appendToBody;attrs.$observe("datepickerPopup",function(value){dateFormat=value||datepickerPopupConfig.dateFormat,ngModel.$render()}),scope.showButtonBar=angular.isDefined(attrs.showButtonBar)?originalScope.$eval(attrs.showButtonBar):datepickerPopupConfig.showButtonBar,originalScope.$on("$destroy",function(){$popup.remove(),scope.$destroy()}),attrs.$observe("currentText",function(text){scope.currentText=angular.isDefined(text)?text:datepickerPopupConfig.currentText}),attrs.$observe("toggleWeeksText",function(text){scope.toggleWeeksText=angular.isDefined(text)?text:datepickerPopupConfig.toggleWeeksText}),attrs.$observe("clearText",function(text){scope.clearText=angular.isDefined(text)?text:datepickerPopupConfig.clearText}),attrs.$observe("closeText",function(text){scope.closeText=angular.isDefined(text)?text:datepickerPopupConfig.closeText});var getIsOpen,setIsOpen;attrs.isOpen&&(getIsOpen=$parse(attrs.isOpen),setIsOpen=getIsOpen.assign,originalScope.$watch(getIsOpen,function(value){scope.isOpen=!!value})),scope.isOpen=getIsOpen?getIsOpen(originalScope):!1;var documentClickBind=function(event){scope.isOpen&&event.target!==element[0]&&scope.$apply(function(){setOpen(!1)})},elementFocusBind=function(){scope.$apply(function(){setOpen(!0)})},popupEl=angular.element("<div datepicker-popup-wrap><div datepicker></div></div>");popupEl.attr({"ng-model":"date","ng-change":"dateSelection()"});var datepickerEl=angular.element(popupEl.children()[0]),datepickerOptions={};attrs.datepickerOptions&&(datepickerOptions=originalScope.$eval(attrs.datepickerOptions),datepickerEl.attr(angular.extend({},datepickerOptions))),ngModel.$parsers.unshift(parseDate),scope.dateSelection=function(dt){angular.isDefined(dt)&&(scope.date=dt),ngModel.$setViewValue(scope.date),ngModel.$render(),closeOnDateSelection&&setOpen(!1)},element.bind("input change keyup",function(){scope.$apply(function(){scope.date=ngModel.$modelValue})}),ngModel.$render=function(){var date=ngModel.$viewValue?dateFilter(ngModel.$viewValue,dateFormat):"";element.val(date),scope.date=ngModel.$modelValue},addWatchableAttribute(attrs.min,"min"),addWatchableAttribute(attrs.max,"max"),attrs.showWeeks?addWatchableAttribute(attrs.showWeeks,"showWeeks","show-weeks"):(scope.showWeeks="show-weeks"in datepickerOptions?datepickerOptions["show-weeks"]:datepickerConfig.showWeeks,datepickerEl.attr("show-weeks","showWeeks")),attrs.dateDisabled&&datepickerEl.attr("date-disabled",attrs.dateDisabled);var documentBindingInitialized=!1,elementFocusInitialized=!1;scope.$watch("isOpen",function(value){value?(updatePosition(),$document.bind("click",documentClickBind),elementFocusInitialized&&element.unbind("focus",elementFocusBind),element[0].focus(),documentBindingInitialized=!0):(documentBindingInitialized&&$document.unbind("click",documentClickBind),element.bind("focus",elementFocusBind),elementFocusInitialized=!0),setIsOpen&&setIsOpen(originalScope,value)}),scope.today=function(){scope.dateSelection(new Date)},scope.clear=function(){scope.dateSelection(null)};var $popup=$compile(popupEl)(scope);appendToBody?$document.find("body").append($popup):element.after($popup)}}}]).directive("datepickerPopupWrap",function(){return{restrict:"EA",replace:!0,transclude:!0,templateUrl:"template/datepicker/popup.html",link:function(scope,element,attrs){element.bind("click",function(event){event.preventDefault(),event.stopPropagation()})}}}),angular.module("ui.bootstrap.dropdownToggle",[]).directive("dropdownToggle",["$document","$location",function($document,$location){var openElement=null,closeMenu=angular.noop;return{restrict:"CA",link:function(scope,element,attrs){scope.$watch("$location.path",function(){closeMenu()}),element.parent().bind("click",function(){closeMenu()}),element.bind("click",function(event){var elementWasOpen=element===openElement;event.preventDefault(),event.stopPropagation(),openElement&&closeMenu(),elementWasOpen||element.hasClass("disabled")||element.prop("disabled")||(element.parent().addClass("open"),openElement=element,closeMenu=function(event){event&&(event.preventDefault(),event.stopPropagation()),$document.unbind("click",closeMenu),element.parent().removeClass("open"),closeMenu=angular.noop,openElement=null},$document.bind("click",closeMenu))})}}}]),angular.module("ui.bootstrap.modal",["ui.bootstrap.transition"]).factory("$$stackedMap",function(){return{createNew:function(){var stack=[];return{add:function(key,value){stack.push({key:key,value:value})},get:function(key){for(var i=0;i<stack.length;i++)if(key==stack[i].key)return stack[i]},keys:function(){for(var keys=[],i=0;i<stack.length;i++)keys.push(stack[i].key);return keys},top:function(){return stack[stack.length-1]},remove:function(key){for(var idx=-1,i=0;i<stack.length;i++)if(key==stack[i].key){idx=i;break}return stack.splice(idx,1)[0]},removeTop:function(){return stack.splice(stack.length-1,1)[0]},length:function(){return stack.length}}}}}).directive("modalBackdrop",["$timeout",function($timeout){return{restrict:"EA",replace:!0,templateUrl:"template/modal/backdrop.html",link:function(scope){scope.animate=!1,$timeout(function(){scope.animate=!0})}}}]).directive("modalWindow",["$modalStack","$timeout",function($modalStack,$timeout){return{restrict:"EA",scope:{index:"@",animate:"="},replace:!0,transclude:!0,templateUrl:"template/modal/window.html",link:function(scope,element,attrs){scope.windowClass=attrs.windowClass||"",$timeout(function(){scope.animate=!0,element[0].focus()}),scope.close=function(evt){var modal=$modalStack.getTop();modal&&modal.value.backdrop&&"static"!=modal.value.backdrop&&evt.target===evt.currentTarget&&(evt.preventDefault(),evt.stopPropagation(),$modalStack.dismiss(modal.key,"backdrop click"))}}}}]).factory("$modalStack",["$transition","$timeout","$document","$compile","$rootScope","$$stackedMap",function($transition,$timeout,$document,$compile,$rootScope,$$stackedMap){function backdropIndex(){for(var topBackdropIndex=-1,opened=openedWindows.keys(),i=0;i<opened.length;i++)openedWindows.get(opened[i]).value.backdrop&&(topBackdropIndex=i);return topBackdropIndex}function removeModalWindow(modalInstance){var body=$document.find("body").eq(0),modalWindow=openedWindows.get(modalInstance).value;openedWindows.remove(modalInstance),removeAfterAnimate(modalWindow.modalDomEl,modalWindow.modalScope,300,checkRemoveBackdrop),body.toggleClass(OPENED_MODAL_CLASS,openedWindows.length()>0)}function checkRemoveBackdrop(){if(backdropDomEl&&-1==backdropIndex()){var backdropScopeRef=backdropScope;removeAfterAnimate(backdropDomEl,backdropScope,150,function(){backdropScopeRef.$destroy(),backdropScopeRef=null}),backdropDomEl=void 0,backdropScope=void 0}}function removeAfterAnimate(domEl,scope,emulateTime,done){function afterAnimating(){afterAnimating.done||(afterAnimating.done=!0,domEl.remove(),done&&done())}scope.animate=!1;var transitionEndEventName=$transition.transitionEndEventName;if(transitionEndEventName){var timeout=$timeout(afterAnimating,emulateTime);domEl.bind(transitionEndEventName,function(){$timeout.cancel(timeout),afterAnimating(),scope.$apply()})}else $timeout(afterAnimating,0)}var backdropDomEl,backdropScope,OPENED_MODAL_CLASS="modal-open",openedWindows=$$stackedMap.createNew(),$modalStack={};return $rootScope.$watch(backdropIndex,function(newBackdropIndex){backdropScope&&(backdropScope.index=newBackdropIndex)}),$document.bind("keydown",function(evt){var modal;27===evt.which&&(modal=openedWindows.top(),modal&&modal.value.keyboard&&$rootScope.$apply(function(){$modalStack.dismiss(modal.key)}))}),$modalStack.open=function(modalInstance,modal){openedWindows.add(modalInstance,{deferred:modal.deferred,modalScope:modal.scope,backdrop:modal.backdrop,keyboard:modal.keyboard});var body=$document.find("body").eq(0),currBackdropIndex=backdropIndex();currBackdropIndex>=0&&!backdropDomEl&&(backdropScope=$rootScope.$new(!0),backdropScope.index=currBackdropIndex,backdropDomEl=$compile("<div modal-backdrop></div>")(backdropScope),body.append(backdropDomEl));var angularDomEl=angular.element("<div modal-window></div>");angularDomEl.attr("window-class",modal.windowClass),angularDomEl.attr("index",openedWindows.length()-1),angularDomEl.attr("animate","animate"),angularDomEl.html(modal.content);var modalDomEl=$compile(angularDomEl)(modal.scope);openedWindows.top().value.modalDomEl=modalDomEl,body.append(modalDomEl),body.addClass(OPENED_MODAL_CLASS)},$modalStack.close=function(modalInstance,result){var modalWindow=openedWindows.get(modalInstance).value;modalWindow&&(modalWindow.deferred.resolve(result),removeModalWindow(modalInstance))},$modalStack.dismiss=function(modalInstance,reason){var modalWindow=openedWindows.get(modalInstance).value;modalWindow&&(modalWindow.deferred.reject(reason),removeModalWindow(modalInstance))},$modalStack.dismissAll=function(reason){for(var topModal=this.getTop();topModal;)this.dismiss(topModal.key,reason),topModal=this.getTop()},$modalStack.getTop=function(){return openedWindows.top()},$modalStack}]).provider("$modal",function(){var $modalProvider={options:{backdrop:!0,keyboard:!0},$get:["$injector","$rootScope","$q","$http","$templateCache","$controller","$modalStack",function($injector,$rootScope,$q,$http,$templateCache,$controller,$modalStack){function getTemplatePromise(options){return options.template?$q.when(options.template):$http.get(options.templateUrl,{cache:$templateCache}).then(function(result){return result.data})}function getResolvePromises(resolves){var promisesArr=[];return angular.forEach(resolves,function(value,key){(angular.isFunction(value)||angular.isArray(value))&&promisesArr.push($q.when($injector.invoke(value)))}),promisesArr}var $modal={};return $modal.open=function(modalOptions){var modalResultDeferred=$q.defer(),modalOpenedDeferred=$q.defer(),modalInstance={result:modalResultDeferred.promise,opened:modalOpenedDeferred.promise,close:function(result){$modalStack.close(modalInstance,result)},dismiss:function(reason){$modalStack.dismiss(modalInstance,reason)}};if(modalOptions=angular.extend({},$modalProvider.options,modalOptions),modalOptions.resolve=modalOptions.resolve||{},!modalOptions.template&&!modalOptions.templateUrl)throw new Error("One of template or templateUrl options is required.");var templateAndResolvePromise=$q.all([getTemplatePromise(modalOptions)].concat(getResolvePromises(modalOptions.resolve)));return templateAndResolvePromise.then(function(tplAndVars){var modalScope=(modalOptions.scope||$rootScope).$new();modalScope.$close=modalInstance.close,modalScope.$dismiss=modalInstance.dismiss;var ctrlInstance,ctrlLocals={},resolveIter=1;modalOptions.controller&&(ctrlLocals.$scope=modalScope,
ctrlLocals.$modalInstance=modalInstance,angular.forEach(modalOptions.resolve,function(value,key){ctrlLocals[key]=tplAndVars[resolveIter++]}),ctrlInstance=$controller(modalOptions.controller,ctrlLocals)),$modalStack.open(modalInstance,{scope:modalScope,deferred:modalResultDeferred,content:tplAndVars[0],backdrop:modalOptions.backdrop,keyboard:modalOptions.keyboard,windowClass:modalOptions.windowClass})},function(reason){modalResultDeferred.reject(reason)}),templateAndResolvePromise.then(function(){modalOpenedDeferred.resolve(!0)},function(){modalOpenedDeferred.reject(!1)}),modalInstance},$modal}]};return $modalProvider}),angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope","$attrs","$parse","$interpolate",function($scope,$attrs,$parse,$interpolate){var self=this,setNumPages=$attrs.numPages?$parse($attrs.numPages).assign:angular.noop;this.init=function(defaultItemsPerPage){$attrs.itemsPerPage?$scope.$parent.$watch($parse($attrs.itemsPerPage),function(value){self.itemsPerPage=parseInt(value,10),$scope.totalPages=self.calculateTotalPages()}):this.itemsPerPage=defaultItemsPerPage},this.noPrevious=function(){return 1===this.page},this.noNext=function(){return this.page===$scope.totalPages},this.isActive=function(page){return this.page===page},this.calculateTotalPages=function(){var totalPages=this.itemsPerPage<1?1:Math.ceil($scope.totalItems/this.itemsPerPage);return Math.max(totalPages||0,1)},this.getAttributeValue=function(attribute,defaultValue,interpolate){return angular.isDefined(attribute)?interpolate?$interpolate(attribute)($scope.$parent):$scope.$parent.$eval(attribute):defaultValue},this.render=function(){this.page=parseInt($scope.page,10)||1,this.page>0&&this.page<=$scope.totalPages&&($scope.pages=this.getPages(this.page,$scope.totalPages))},$scope.selectPage=function(page){!self.isActive(page)&&page>0&&page<=$scope.totalPages&&($scope.page=page,$scope.onSelectPage({page:page}))},$scope.$watch("page",function(){self.render()}),$scope.$watch("totalItems",function(){$scope.totalPages=self.calculateTotalPages()}),$scope.$watch("totalPages",function(value){setNumPages($scope.$parent,value),self.page>value?$scope.selectPage(value):self.render()})}]).constant("paginationConfig",{itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["$parse","paginationConfig",function($parse,config){return{restrict:"EA",scope:{page:"=",totalItems:"=",onSelectPage:" &"},controller:"PaginationController",templateUrl:"template/pagination/pagination.html",replace:!0,link:function(scope,element,attrs,paginationCtrl){function makePage(number,text,isActive,isDisabled){return{number:number,text:text,active:isActive,disabled:isDisabled}}var maxSize,boundaryLinks=paginationCtrl.getAttributeValue(attrs.boundaryLinks,config.boundaryLinks),directionLinks=paginationCtrl.getAttributeValue(attrs.directionLinks,config.directionLinks),firstText=paginationCtrl.getAttributeValue(attrs.firstText,config.firstText,!0),previousText=paginationCtrl.getAttributeValue(attrs.previousText,config.previousText,!0),nextText=paginationCtrl.getAttributeValue(attrs.nextText,config.nextText,!0),lastText=paginationCtrl.getAttributeValue(attrs.lastText,config.lastText,!0),rotate=paginationCtrl.getAttributeValue(attrs.rotate,config.rotate);paginationCtrl.init(config.itemsPerPage),attrs.maxSize&&scope.$parent.$watch($parse(attrs.maxSize),function(value){maxSize=parseInt(value,10),paginationCtrl.render()}),paginationCtrl.getPages=function(currentPage,totalPages){var pages=[],startPage=1,endPage=totalPages,isMaxSized=angular.isDefined(maxSize)&&totalPages>maxSize;isMaxSized&&(rotate?(startPage=Math.max(currentPage-Math.floor(maxSize/2),1),endPage=startPage+maxSize-1,endPage>totalPages&&(endPage=totalPages,startPage=endPage-maxSize+1)):(startPage=(Math.ceil(currentPage/maxSize)-1)*maxSize+1,endPage=Math.min(startPage+maxSize-1,totalPages)));for(var number=startPage;endPage>=number;number++){var page=makePage(number,number,paginationCtrl.isActive(number),!1);pages.push(page)}if(isMaxSized&&!rotate){if(startPage>1){var previousPageSet=makePage(startPage-1,"...",!1,!1);pages.unshift(previousPageSet)}if(totalPages>endPage){var nextPageSet=makePage(endPage+1,"...",!1,!1);pages.push(nextPageSet)}}if(directionLinks){var previousPage=makePage(currentPage-1,previousText,!1,paginationCtrl.noPrevious());pages.unshift(previousPage);var nextPage=makePage(currentPage+1,nextText,!1,paginationCtrl.noNext());pages.push(nextPage)}if(boundaryLinks){var firstPage=makePage(1,firstText,!1,paginationCtrl.noPrevious());pages.unshift(firstPage);var lastPage=makePage(totalPages,lastText,!1,paginationCtrl.noNext());pages.push(lastPage)}return pages}}}}]).constant("pagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(config){return{restrict:"EA",scope:{page:"=",totalItems:"=",onSelectPage:" &"},controller:"PaginationController",templateUrl:"template/pagination/pager.html",replace:!0,link:function(scope,element,attrs,paginationCtrl){function makePage(number,text,isDisabled,isPrevious,isNext){return{number:number,text:text,disabled:isDisabled,previous:align&&isPrevious,next:align&&isNext}}var previousText=paginationCtrl.getAttributeValue(attrs.previousText,config.previousText,!0),nextText=paginationCtrl.getAttributeValue(attrs.nextText,config.nextText,!0),align=paginationCtrl.getAttributeValue(attrs.align,config.align);paginationCtrl.init(config.itemsPerPage),paginationCtrl.getPages=function(currentPage){return[makePage(currentPage-1,previousText,paginationCtrl.noPrevious(),!0,!1),makePage(currentPage+1,nextText,paginationCtrl.noNext(),!1,!0)]}}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).provider("$tooltip",function(){function snake_case(name){var regexp=/[A-Z]/g,separator="-";return name.replace(regexp,function(letter,pos){return(pos?separator:"")+letter.toLowerCase()})}var defaultOptions={placement:"top",animation:!0,popupDelay:0},triggerMap={mouseenter:"mouseleave",click:"click",focus:"blur"},globalOptions={};this.options=function(value){angular.extend(globalOptions,value)},this.setTriggers=function(triggers){angular.extend(triggerMap,triggers)},this.$get=["$window","$compile","$timeout","$parse","$document","$position","$interpolate",function($window,$compile,$timeout,$parse,$document,$position,$interpolate){return function(type,prefix,defaultTriggerShow){function getTriggers(trigger){var show=trigger||options.trigger||defaultTriggerShow,hide=triggerMap[show]||show;return{show:show,hide:hide}}var options=angular.extend({},defaultOptions,globalOptions),directiveName=snake_case(type),startSym=$interpolate.startSymbol(),endSym=$interpolate.endSymbol(),template="<div "+directiveName+'-popup title="'+startSym+"tt_title"+endSym+'" content="'+startSym+"tt_content"+endSym+'" placement="'+startSym+"tt_placement"+endSym+'" animation="tt_animation" is-open="tt_isOpen"></div>';return{restrict:"EA",scope:!0,compile:function(tElem,tAttrs){var tooltipLinker=$compile(template);return function(scope,element,attrs){function toggleTooltipBind(){scope.tt_isOpen?hideTooltipBind():showTooltipBind()}function showTooltipBind(){(!hasEnableExp||scope.$eval(attrs[prefix+"Enable"]))&&(scope.tt_popupDelay?(popupTimeout=$timeout(show,scope.tt_popupDelay,!1),popupTimeout.then(function(reposition){reposition()})):show()())}function hideTooltipBind(){scope.$apply(function(){hide()})}function show(){return scope.tt_content?(createTooltip(),transitionTimeout&&$timeout.cancel(transitionTimeout),tooltip.css({top:0,left:0,display:"block"}),appendToBody?$document.find("body").append(tooltip):element.after(tooltip),positionTooltip(),scope.tt_isOpen=!0,scope.$digest(),positionTooltip):angular.noop}function hide(){scope.tt_isOpen=!1,$timeout.cancel(popupTimeout),scope.tt_animation?transitionTimeout=$timeout(removeTooltip,500):removeTooltip()}function createTooltip(){tooltip&&removeTooltip(),tooltip=tooltipLinker(scope,function(){}),scope.$digest()}function removeTooltip(){tooltip&&(tooltip.remove(),tooltip=null)}var tooltip,transitionTimeout,popupTimeout,appendToBody=angular.isDefined(options.appendToBody)?options.appendToBody:!1,triggers=getTriggers(void 0),hasRegisteredTriggers=!1,hasEnableExp=angular.isDefined(attrs[prefix+"Enable"]),positionTooltip=function(){var position,ttWidth,ttHeight,ttPosition;switch(position=appendToBody?$position.offset(element):$position.position(element),ttWidth=tooltip.prop("offsetWidth"),ttHeight=tooltip.prop("offsetHeight"),scope.tt_placement){case"right":ttPosition={top:position.top+position.height/2-ttHeight/2,left:position.left+position.width};break;case"bottom":ttPosition={top:position.top+position.height,left:position.left+position.width/2-ttWidth/2};break;case"left":ttPosition={top:position.top+position.height/2-ttHeight/2,left:position.left-ttWidth};break;default:ttPosition={top:position.top-ttHeight,left:position.left+position.width/2-ttWidth/2}}ttPosition.top+="px",ttPosition.left+="px",tooltip.css(ttPosition)};scope.tt_isOpen=!1,attrs.$observe(type,function(val){scope.tt_content=val,!val&&scope.tt_isOpen&&hide()}),attrs.$observe(prefix+"Title",function(val){scope.tt_title=val}),attrs.$observe(prefix+"Placement",function(val){scope.tt_placement=angular.isDefined(val)?val:options.placement}),attrs.$observe(prefix+"PopupDelay",function(val){var delay=parseInt(val,10);scope.tt_popupDelay=isNaN(delay)?options.popupDelay:delay});var unregisterTriggers=function(){hasRegisteredTriggers&&(element.unbind(triggers.show,showTooltipBind),element.unbind(triggers.hide,hideTooltipBind))};attrs.$observe(prefix+"Trigger",function(val){unregisterTriggers(),triggers=getTriggers(val),triggers.show===triggers.hide?element.bind(triggers.show,toggleTooltipBind):(element.bind(triggers.show,showTooltipBind),element.bind(triggers.hide,hideTooltipBind)),hasRegisteredTriggers=!0});var animation=scope.$eval(attrs[prefix+"Animation"]);scope.tt_animation=angular.isDefined(animation)?!!animation:options.animation,attrs.$observe(prefix+"AppendToBody",function(val){appendToBody=angular.isDefined(val)?$parse(val)(scope):appendToBody}),appendToBody&&scope.$on("$locationChangeSuccess",function(){scope.tt_isOpen&&hide()}),scope.$on("$destroy",function(){$timeout.cancel(transitionTimeout),$timeout.cancel(popupTimeout),unregisterTriggers(),removeTooltip()})}}}}}]}).directive("tooltipPopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function($tooltip){return $tooltip("tooltip","tooltip","mouseenter")}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-unsafe-popup.html"}}).directive("tooltipHtmlUnsafe",["$tooltip",function($tooltip){return $tooltip("tooltipHtmlUnsafe","tooltip","mouseenter")}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$tooltip",function($tooltip){return $tooltip("popover","popover","click")}]),angular.module("ui.bootstrap.progressbar",["ui.bootstrap.transition"]).constant("progressConfig",{animate:!0,max:100}).controller("ProgressController",["$scope","$attrs","progressConfig","$transition",function($scope,$attrs,progressConfig,$transition){var self=this,bars=[],max=angular.isDefined($attrs.max)?$scope.$parent.$eval($attrs.max):progressConfig.max,animate=angular.isDefined($attrs.animate)?$scope.$parent.$eval($attrs.animate):progressConfig.animate;this.addBar=function(bar,element){var oldValue=0,index=bar.$parent.$index;angular.isDefined(index)&&bars[index]&&(oldValue=bars[index].value),bars.push(bar),this.update(element,bar.value,oldValue),bar.$watch("value",function(value,oldValue){value!==oldValue&&self.update(element,value,oldValue)}),bar.$on("$destroy",function(){self.removeBar(bar)})},this.update=function(element,newValue,oldValue){var percent=this.getPercentage(newValue);animate?(element.css("width",this.getPercentage(oldValue)+"%"),$transition(element,{width:percent+"%"})):element.css({transition:"none",width:percent+"%"})},this.removeBar=function(bar){bars.splice(bars.indexOf(bar),1)},this.getPercentage=function(value){return Math.round(100*value/max)}}]).directive("progress",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"progress",scope:{},template:'<div class="progress" ng-transclude></div>'}}).directive("bar",function(){return{restrict:"EA",replace:!0,transclude:!0,require:"^progress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(scope,element,attrs,progressCtrl){progressCtrl.addBar(scope,element)}}}).directive("progressbar",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/progressbar.html",link:function(scope,element,attrs,progressCtrl){progressCtrl.addBar(scope,angular.element(element.children()[0]))}}}),angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5,stateOn:null,stateOff:null}).controller("RatingController",["$scope","$attrs","$parse","ratingConfig",function($scope,$attrs,$parse,ratingConfig){this.maxRange=angular.isDefined($attrs.max)?$scope.$parent.$eval($attrs.max):ratingConfig.max,this.stateOn=angular.isDefined($attrs.stateOn)?$scope.$parent.$eval($attrs.stateOn):ratingConfig.stateOn,this.stateOff=angular.isDefined($attrs.stateOff)?$scope.$parent.$eval($attrs.stateOff):ratingConfig.stateOff,this.createRateObjects=function(states){for(var defaultOptions={stateOn:this.stateOn,stateOff:this.stateOff},i=0,n=states.length;n>i;i++)states[i]=angular.extend({index:i},defaultOptions,states[i]);return states},$scope.range=angular.isDefined($attrs.ratingStates)?this.createRateObjects(angular.copy($scope.$parent.$eval($attrs.ratingStates))):this.createRateObjects(new Array(this.maxRange)),$scope.rate=function(value){$scope.value===value||$scope.readonly||($scope.value=value)},$scope.enter=function(value){$scope.readonly||($scope.val=value),$scope.onHover({value:value})},$scope.reset=function(){$scope.val=angular.copy($scope.value),$scope.onLeave()},$scope.$watch("value",function(value){$scope.val=value}),$scope.readonly=!1,$attrs.readonly&&$scope.$parent.$watch($parse($attrs.readonly),function(value){$scope.readonly=!!value})}]).directive("rating",function(){return{restrict:"EA",scope:{value:"=",onHover:"&",onLeave:"&"},controller:"RatingController",templateUrl:"template/rating/rating.html",replace:!0}}),angular.module("ui.bootstrap.tabs",[]).controller("TabsetController",["$scope",function($scope){var ctrl=this,tabs=ctrl.tabs=$scope.tabs=[];ctrl.select=function(tab){angular.forEach(tabs,function(tab){tab.active=!1}),tab.active=!0},ctrl.addTab=function(tab){tabs.push(tab),(1===tabs.length||tab.active)&&ctrl.select(tab)},ctrl.removeTab=function(tab){var index=tabs.indexOf(tab);if(tab.active&&tabs.length>1){var newActiveIndex=index==tabs.length-1?index-1:index+1;ctrl.select(tabs[newActiveIndex])}tabs.splice(index,1)}}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,replace:!0,scope:{},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(scope,element,attrs){scope.vertical=angular.isDefined(attrs.vertical)?scope.$parent.$eval(attrs.vertical):!1,scope.justified=angular.isDefined(attrs.justified)?scope.$parent.$eval(attrs.justified):!1,scope.type=angular.isDefined(attrs.type)?scope.$parent.$eval(attrs.type):"tabs"}}}).directive("tab",["$parse",function($parse){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{heading:"@",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},compile:function(elm,attrs,transclude){return function(scope,elm,attrs,tabsetCtrl){var getActive,setActive;attrs.active?(getActive=$parse(attrs.active),setActive=getActive.assign,scope.$parent.$watch(getActive,function(value,oldVal){value!==oldVal&&(scope.active=!!value)}),scope.active=getActive(scope.$parent)):setActive=getActive=angular.noop,scope.$watch("active",function(active){setActive(scope.$parent,active),active?(tabsetCtrl.select(scope),scope.onSelect()):scope.onDeselect()}),scope.disabled=!1,attrs.disabled&&scope.$parent.$watch($parse(attrs.disabled),function(value){scope.disabled=!!value}),scope.select=function(){scope.disabled||(scope.active=!0)},tabsetCtrl.addTab(scope),scope.$on("$destroy",function(){tabsetCtrl.removeTab(scope)}),scope.$transcludeFn=transclude}}}}]).directive("tabHeadingTransclude",[function(){return{restrict:"A",require:"^tab",link:function(scope,elm,attrs,tabCtrl){scope.$watch("headingElement",function(heading){heading&&(elm.html(""),elm.append(heading))})}}}]).directive("tabContentTransclude",function(){function isTabHeading(node){return node.tagName&&(node.hasAttribute("tab-heading")||node.hasAttribute("data-tab-heading")||"tab-heading"===node.tagName.toLowerCase()||"data-tab-heading"===node.tagName.toLowerCase())}return{restrict:"A",require:"^tabset",link:function(scope,elm,attrs){var tab=scope.$eval(attrs.tabContentTransclude);tab.$transcludeFn(tab.$parent,function(contents){angular.forEach(contents,function(node){isTabHeading(node)?tab.headingElement=node:elm.append(node)})})}}}),angular.module("ui.bootstrap.timepicker",[]).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:null,readonlyInput:!1,mousewheel:!0}).directive("timepicker",["$parse","$log","timepickerConfig","$locale",function($parse,$log,timepickerConfig,$locale){return{restrict:"EA",require:"?^ngModel",replace:!0,scope:{},templateUrl:"template/timepicker/timepicker.html",link:function(scope,element,attrs,ngModel){function getHoursFromTemplate(){var hours=parseInt(scope.hours,10),valid=scope.showMeridian?hours>0&&13>hours:hours>=0&&24>hours;return valid?(scope.showMeridian&&(12===hours&&(hours=0),scope.meridian===meridians[1]&&(hours+=12)),hours):void 0}function getMinutesFromTemplate(){var minutes=parseInt(scope.minutes,10);return minutes>=0&&60>minutes?minutes:void 0}function pad(value){return angular.isDefined(value)&&value.toString().length<2?"0"+value:value}function refresh(keyboardChange){makeValid(),ngModel.$setViewValue(new Date(selected)),updateTemplate(keyboardChange)}function makeValid(){ngModel.$setValidity("time",!0),scope.invalidHours=!1,scope.invalidMinutes=!1}function updateTemplate(keyboardChange){var hours=selected.getHours(),minutes=selected.getMinutes();scope.showMeridian&&(hours=0===hours||12===hours?12:hours%12),scope.hours="h"===keyboardChange?hours:pad(hours),scope.minutes="m"===keyboardChange?minutes:pad(minutes),scope.meridian=selected.getHours()<12?meridians[0]:meridians[1]}function addMinutes(minutes){var dt=new Date(selected.getTime()+6e4*minutes);selected.setHours(dt.getHours(),dt.getMinutes()),refresh()}if(ngModel){var selected=new Date,meridians=angular.isDefined(attrs.meridians)?scope.$parent.$eval(attrs.meridians):timepickerConfig.meridians||$locale.DATETIME_FORMATS.AMPMS,hourStep=timepickerConfig.hourStep;attrs.hourStep&&scope.$parent.$watch($parse(attrs.hourStep),function(value){hourStep=parseInt(value,10)});var minuteStep=timepickerConfig.minuteStep;attrs.minuteStep&&scope.$parent.$watch($parse(attrs.minuteStep),function(value){minuteStep=parseInt(value,10)}),scope.showMeridian=timepickerConfig.showMeridian,attrs.showMeridian&&scope.$parent.$watch($parse(attrs.showMeridian),function(value){if(scope.showMeridian=!!value,ngModel.$error.time){var hours=getHoursFromTemplate(),minutes=getMinutesFromTemplate();angular.isDefined(hours)&&angular.isDefined(minutes)&&(selected.setHours(hours),refresh())}else updateTemplate()});var inputs=element.find("input"),hoursInputEl=inputs.eq(0),minutesInputEl=inputs.eq(1),mousewheel=angular.isDefined(attrs.mousewheel)?scope.$eval(attrs.mousewheel):timepickerConfig.mousewheel;if(mousewheel){var isScrollingUp=function(e){e.originalEvent&&(e=e.originalEvent);var delta=e.wheelDelta?e.wheelDelta:-e.deltaY;return e.detail||delta>0};hoursInputEl.bind("mousewheel wheel",function(e){scope.$apply(isScrollingUp(e)?scope.incrementHours():scope.decrementHours()),e.preventDefault()}),minutesInputEl.bind("mousewheel wheel",function(e){scope.$apply(isScrollingUp(e)?scope.incrementMinutes():scope.decrementMinutes()),e.preventDefault()})}if(scope.readonlyInput=angular.isDefined(attrs.readonlyInput)?scope.$eval(attrs.readonlyInput):timepickerConfig.readonlyInput,scope.readonlyInput)scope.updateHours=angular.noop,scope.updateMinutes=angular.noop;else{var invalidate=function(invalidHours,invalidMinutes){ngModel.$setViewValue(null),ngModel.$setValidity("time",!1),angular.isDefined(invalidHours)&&(scope.invalidHours=invalidHours),angular.isDefined(invalidMinutes)&&(scope.invalidMinutes=invalidMinutes)};scope.updateHours=function(){var hours=getHoursFromTemplate();angular.isDefined(hours)?(selected.setHours(hours),refresh("h")):invalidate(!0)},hoursInputEl.bind("blur",function(e){!scope.validHours&&scope.hours<10&&scope.$apply(function(){scope.hours=pad(scope.hours)})}),scope.updateMinutes=function(){var minutes=getMinutesFromTemplate();angular.isDefined(minutes)?(selected.setMinutes(minutes),refresh("m")):invalidate(void 0,!0)},minutesInputEl.bind("blur",function(e){!scope.invalidMinutes&&scope.minutes<10&&scope.$apply(function(){scope.minutes=pad(scope.minutes)})})}ngModel.$render=function(){var date=ngModel.$modelValue?new Date(ngModel.$modelValue):null;isNaN(date)?(ngModel.$setValidity("time",!1),$log.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(date&&(selected=date),makeValid(),updateTemplate())},scope.incrementHours=function(){addMinutes(60*hourStep)},scope.decrementHours=function(){addMinutes(60*-hourStep)},scope.incrementMinutes=function(){addMinutes(minuteStep)},scope.decrementMinutes=function(){addMinutes(-minuteStep)},scope.toggleMeridian=function(){addMinutes(720*(selected.getHours()<12?1:-1))}}}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).factory("typeaheadParser",["$parse",function($parse){var TYPEAHEAD_REGEXP=/^\s*(.*?)(?:\s+as\s+(.*?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+(.*)$/;return{parse:function(input){var match=input.match(TYPEAHEAD_REGEXP);if(!match)throw new Error("Expected typeahead specification in form of '_modelValue_ (as _label_)? for _item_ in _collection_' but got '"+input+"'.");return{itemName:match[3],source:$parse(match[4]),viewMapper:$parse(match[2]||match[1]),modelMapper:$parse(match[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$position","typeaheadParser",function($compile,$parse,$q,$timeout,$document,$position,typeaheadParser){var HOT_KEYS=[9,13,27,38,40];return{require:"ngModel",link:function(originalScope,element,attrs,modelCtrl){var hasFocus,minSearch=originalScope.$eval(attrs.typeaheadMinLength)||1,waitTime=originalScope.$eval(attrs.typeaheadWaitMs)||0,isEditable=originalScope.$eval(attrs.typeaheadEditable)!==!1,isLoadingSetter=$parse(attrs.typeaheadLoading).assign||angular.noop,onSelectCallback=$parse(attrs.typeaheadOnSelect),inputFormatter=attrs.typeaheadInputFormatter?$parse(attrs.typeaheadInputFormatter):void 0,appendToBody=attrs.typeaheadAppendToBody?$parse(attrs.typeaheadAppendToBody):!1,$setModelValue=$parse(attrs.ngModel).assign,parserResult=typeaheadParser.parse(attrs.typeahead),popUpEl=angular.element("<div typeahead-popup></div>");popUpEl.attr({matches:"matches",active:"activeIdx",select:"select(activeIdx)",query:"query",position:"position"}),angular.isDefined(attrs.typeaheadTemplateUrl)&&popUpEl.attr("template-url",attrs.typeaheadTemplateUrl);var scope=originalScope.$new();originalScope.$on("$destroy",function(){scope.$destroy()});var resetMatches=function(){scope.matches=[],scope.activeIdx=-1},getMatchesAsync=function(inputValue){var locals={$viewValue:inputValue};isLoadingSetter(originalScope,!0),$q.when(parserResult.source(originalScope,locals)).then(function(matches){if(inputValue===modelCtrl.$viewValue&&hasFocus){if(matches.length>0){scope.activeIdx=0,scope.matches.length=0;for(var i=0;i<matches.length;i++)locals[parserResult.itemName]=matches[i],scope.matches.push({label:parserResult.viewMapper(scope,locals),model:matches[i]});scope.query=inputValue,scope.position=appendToBody?$position.offset(element):$position.position(element),scope.position.top=scope.position.top+element.prop("offsetHeight")}else resetMatches();isLoadingSetter(originalScope,!1)}},function(){resetMatches(),isLoadingSetter(originalScope,!1)})};resetMatches(),scope.query=void 0;var timeoutPromise;modelCtrl.$parsers.unshift(function(inputValue){return hasFocus=!0,inputValue&&inputValue.length>=minSearch?waitTime>0?(timeoutPromise&&$timeout.cancel(timeoutPromise),timeoutPromise=$timeout(function(){getMatchesAsync(inputValue)},waitTime)):getMatchesAsync(inputValue):(isLoadingSetter(originalScope,!1),resetMatches()),isEditable?inputValue:inputValue?void modelCtrl.$setValidity("editable",!1):(modelCtrl.$setValidity("editable",!0),inputValue)}),modelCtrl.$formatters.push(function(modelValue){var candidateViewValue,emptyViewValue,locals={};return inputFormatter?(locals.$model=modelValue,inputFormatter(originalScope,locals)):(locals[parserResult.itemName]=modelValue,candidateViewValue=parserResult.viewMapper(originalScope,locals),locals[parserResult.itemName]=void 0,emptyViewValue=parserResult.viewMapper(originalScope,locals),candidateViewValue!==emptyViewValue?candidateViewValue:modelValue)}),scope.select=function(activeIdx){var model,item,locals={};locals[parserResult.itemName]=item=scope.matches[activeIdx].model,model=parserResult.modelMapper(originalScope,locals),$setModelValue(originalScope,model),modelCtrl.$setValidity("editable",!0),onSelectCallback(originalScope,{$item:item,$model:model,$label:parserResult.viewMapper(originalScope,locals)}),resetMatches(),element[0].focus()},element.bind("keydown",function(evt){0!==scope.matches.length&&-1!==HOT_KEYS.indexOf(evt.which)&&(evt.preventDefault(),40===evt.which?(scope.activeIdx=(scope.activeIdx+1)%scope.matches.length,scope.$digest()):38===evt.which?(scope.activeIdx=(scope.activeIdx?scope.activeIdx:scope.matches.length)-1,scope.$digest()):13===evt.which||9===evt.which?scope.$apply(function(){scope.select(scope.activeIdx)}):27===evt.which&&(evt.stopPropagation(),resetMatches(),scope.$digest()))}),element.bind("blur",function(evt){hasFocus=!1});var dismissClickHandler=function(evt){element[0]!==evt.target&&(resetMatches(),scope.$digest())};$document.bind("click",dismissClickHandler),originalScope.$on("$destroy",function(){$document.unbind("click",dismissClickHandler)});var $popup=$compile(popUpEl)(scope);appendToBody?$document.find("body").append($popup):element.after($popup)}}}]).directive("typeaheadPopup",function(){return{restrict:"EA",scope:{matches:"=",query:"=",active:"=",position:"=",select:"&"},replace:!0,templateUrl:"template/typeahead/typeahead-popup.html",link:function(scope,element,attrs){scope.templateUrl=attrs.templateUrl,scope.isOpen=function(){return scope.matches.length>0},scope.isActive=function(matchIdx){return scope.active==matchIdx},scope.selectActive=function(matchIdx){scope.active=matchIdx},scope.selectMatch=function(activeIdx){scope.select({activeIdx:activeIdx})}}}}).directive("typeaheadMatch",["$http","$templateCache","$compile","$parse",function($http,$templateCache,$compile,$parse){return{restrict:"EA",scope:{index:"=",match:"=",query:"="},link:function(scope,element,attrs){var tplUrl=$parse(attrs.templateUrl)(scope.$parent)||"template/typeahead/typeahead-match.html";$http.get(tplUrl,{cache:$templateCache}).success(function(tplContent){element.replaceWith($compile(tplContent.trim())(scope))})}}}]).filter("typeaheadHighlight",function(){function escapeRegexp(queryToEscape){return queryToEscape.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(matchItem,query){return query?matchItem.replace(new RegExp(escapeRegexp(query),"gi"),"<strong>$&</strong>"):matchItem}}),angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.transition","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.bindHtml","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.dropdownToggle","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.tpls",["template/accordion/accordion-group.html","template/accordion/accordion.html","template/alert/alert.html","template/carousel/carousel.html","template/carousel/slide.html","template/datepicker/datepicker.html","template/datepicker/popup.html","template/modal/backdrop.html","template/modal/window.html","template/pagination/pager.html","template/pagination/pagination.html","template/tooltip/tooltip-html-unsafe-popup.html","template/tooltip/tooltip-popup.html","template/popover/popover.html","template/progressbar/bar.html","template/progressbar/progress.html","template/progressbar/progressbar.html","template/rating/rating.html","template/tabs/tab.html","template/tabs/tabset.html","template/timepicker/timepicker.html","template/typeahead/typeahead-match.html","template/typeahead/typeahead-popup.html"]),angular.module("ui.bootstrap.transition",[]).factory("$transition",["$q","$timeout","$rootScope",function($q,$timeout,$rootScope){function findEndEventName(endEventNames){for(var name in endEventNames)if(void 0!==transElement.style[name])return endEventNames[name]}var $transition=function(element,trigger,options){options=options||{};var deferred=$q.defer(),endEventName=$transition[options.animation?"animationEndEventName":"transitionEndEventName"],transitionEndHandler=function(event){$rootScope.$apply(function(){element.unbind(endEventName,transitionEndHandler),deferred.resolve(element)})};return endEventName&&element.bind(endEventName,transitionEndHandler),$timeout(function(){angular.isString(trigger)?element.addClass(trigger):angular.isFunction(trigger)?trigger(element):angular.isObject(trigger)&&element.css(trigger),endEventName||deferred.resolve(element)}),deferred.promise.cancel=function(){endEventName&&element.unbind(endEventName,transitionEndHandler),deferred.reject("Transition cancelled")},deferred.promise},transElement=document.createElement("trans"),transitionEndEventNames={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"},animationEndEventNames={WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"};return $transition.transitionEndEventName=findEndEventName(transitionEndEventNames),$transition.animationEndEventName=findEndEventName(animationEndEventNames),$transition}]),angular.module("ui.bootstrap.collapse",["ui.bootstrap.transition"]).directive("collapse",["$transition",function($transition,$timeout){return{link:function(scope,element,attrs){function doTransition(change){function newTransitionDone(){currentTransition===newTransition&&(currentTransition=void 0)}var newTransition=$transition(element,change);return currentTransition&&currentTransition.cancel(),currentTransition=newTransition,newTransition.then(newTransitionDone,newTransitionDone),newTransition}function expand(){initialAnimSkip?(initialAnimSkip=!1,
expandDone()):(element.removeClass("collapse").addClass("collapsing"),doTransition({height:element[0].scrollHeight+"px"}).then(expandDone))}function expandDone(){element.removeClass("collapsing"),element.addClass("collapse in"),element.css({height:"auto"})}function collapse(){if(initialAnimSkip)initialAnimSkip=!1,collapseDone(),element.css({height:0});else{element.css({height:element[0].scrollHeight+"px"});element[0].offsetWidth;element.removeClass("collapse in").addClass("collapsing"),doTransition({height:0}).then(collapseDone)}}function collapseDone(){element.removeClass("collapsing"),element.addClass("collapse")}var currentTransition,initialAnimSkip=!0;scope.$watch(attrs.collapse,function(shouldCollapse){shouldCollapse?collapse():expand()})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function($scope,$attrs,accordionConfig){this.groups=[],this.closeOthers=function(openGroup){var closeOthers=angular.isDefined($attrs.closeOthers)?$scope.$eval($attrs.closeOthers):accordionConfig.closeOthers;closeOthers&&angular.forEach(this.groups,function(group){group!==openGroup&&(group.isOpen=!1)})},this.addGroup=function(groupScope){var that=this;this.groups.push(groupScope),groupScope.$on("$destroy",function(event){that.removeGroup(groupScope)})},this.removeGroup=function(group){var index=this.groups.indexOf(group);-1!==index&&this.groups.splice(this.groups.indexOf(group),1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",transclude:!0,replace:!1,templateUrl:"template/accordion/accordion.html"}}).directive("accordionGroup",["$parse",function($parse){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/accordion/accordion-group.html",scope:{heading:"@"},controller:function(){this.setHeading=function(element){this.heading=element}},link:function(scope,element,attrs,accordionCtrl){var getIsOpen,setIsOpen;accordionCtrl.addGroup(scope),scope.isOpen=!1,attrs.isOpen&&(getIsOpen=$parse(attrs.isOpen),setIsOpen=getIsOpen.assign,scope.$parent.$watch(getIsOpen,function(value){scope.isOpen=!!value})),scope.$watch("isOpen",function(value){value&&accordionCtrl.closeOthers(scope),setIsOpen&&setIsOpen(scope.$parent,value)})}}}]).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",compile:function(element,attr,transclude){return function(scope,element,attr,accordionGroupCtrl){accordionGroupCtrl.setHeading(transclude(scope,function(){}))}}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(scope,element,attr,controller){scope.$watch(function(){return controller[attr.accordionTransclude]},function(heading){heading&&(element.html(""),element.append(heading))})}}}),angular.module("ui.bootstrap.alert",[]).controller("AlertController",["$scope","$attrs",function($scope,$attrs){$scope.closeable="close"in $attrs}]).directive("alert",function(){return{restrict:"EA",controller:"AlertController",templateUrl:"template/alert/alert.html",transclude:!0,replace:!0,scope:{type:"=",close:"&"}}}),angular.module("ui.bootstrap.bindHtml",[]).directive("bindHtmlUnsafe",function(){return function(scope,element,attr){element.addClass("ng-binding").data("$binding",attr.bindHtmlUnsafe),scope.$watch(attr.bindHtmlUnsafe,function(value){element.html(value||"")})}}),angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).controller("ButtonsController",["buttonConfig",function(buttonConfig){this.activeClass=buttonConfig.activeClass||"active",this.toggleEvent=buttonConfig.toggleEvent||"click"}]).directive("btnRadio",function(){return{require:["btnRadio","ngModel"],controller:"ButtonsController",link:function(scope,element,attrs,ctrls){var buttonsCtrl=ctrls[0],ngModelCtrl=ctrls[1];ngModelCtrl.$render=function(){element.toggleClass(buttonsCtrl.activeClass,angular.equals(ngModelCtrl.$modelValue,scope.$eval(attrs.btnRadio)))},element.bind(buttonsCtrl.toggleEvent,function(){element.hasClass(buttonsCtrl.activeClass)||scope.$apply(function(){ngModelCtrl.$setViewValue(scope.$eval(attrs.btnRadio)),ngModelCtrl.$render()})})}}}).directive("btnCheckbox",function(){return{require:["btnCheckbox","ngModel"],controller:"ButtonsController",link:function(scope,element,attrs,ctrls){function getTrueValue(){return getCheckboxValue(attrs.btnCheckboxTrue,!0)}function getFalseValue(){return getCheckboxValue(attrs.btnCheckboxFalse,!1)}function getCheckboxValue(attributeValue,defaultValue){var val=scope.$eval(attributeValue);return angular.isDefined(val)?val:defaultValue}var buttonsCtrl=ctrls[0],ngModelCtrl=ctrls[1];ngModelCtrl.$render=function(){element.toggleClass(buttonsCtrl.activeClass,angular.equals(ngModelCtrl.$modelValue,getTrueValue()))},element.bind(buttonsCtrl.toggleEvent,function(){scope.$apply(function(){ngModelCtrl.$setViewValue(element.hasClass(buttonsCtrl.activeClass)?getFalseValue():getTrueValue()),ngModelCtrl.$render()})})}}}),angular.module("ui.bootstrap.carousel",["ui.bootstrap.transition"]).controller("CarouselController",["$scope","$timeout","$transition","$q",function($scope,$timeout,$transition,$q){function restartTimer(){resetTimer();var interval=+$scope.interval;!isNaN(interval)&&interval>=0&&(currentTimeout=$timeout(timerFn,interval))}function resetTimer(){currentTimeout&&($timeout.cancel(currentTimeout),currentTimeout=null)}function timerFn(){isPlaying?($scope.next(),restartTimer()):$scope.pause()}var currentTimeout,isPlaying,self=this,slides=self.slides=[],currentIndex=-1;self.currentSlide=null;var destroyed=!1;self.select=function(nextSlide,direction){function goNext(){if(!destroyed){if(self.currentSlide&&angular.isString(direction)&&!$scope.noTransition&&nextSlide.$element){nextSlide.$element.addClass(direction);nextSlide.$element[0].offsetWidth;angular.forEach(slides,function(slide){angular.extend(slide,{direction:"",entering:!1,leaving:!1,active:!1})}),angular.extend(nextSlide,{direction:direction,active:!0,entering:!0}),angular.extend(self.currentSlide||{},{direction:direction,leaving:!0}),$scope.$currentTransition=$transition(nextSlide.$element,{}),function(next,current){$scope.$currentTransition.then(function(){transitionDone(next,current)},function(){transitionDone(next,current)})}(nextSlide,self.currentSlide)}else transitionDone(nextSlide,self.currentSlide);self.currentSlide=nextSlide,currentIndex=nextIndex,restartTimer()}}function transitionDone(next,current){angular.extend(next,{direction:"",active:!0,leaving:!1,entering:!1}),angular.extend(current||{},{direction:"",active:!1,leaving:!1,entering:!1}),$scope.$currentTransition=null}var nextIndex=slides.indexOf(nextSlide);void 0===direction&&(direction=nextIndex>currentIndex?"next":"prev"),nextSlide&&nextSlide!==self.currentSlide&&($scope.$currentTransition?($scope.$currentTransition.cancel(),$timeout(goNext)):goNext())},$scope.$on("$destroy",function(){destroyed=!0}),self.indexOfSlide=function(slide){return slides.indexOf(slide)},$scope.next=function(){var newIndex=(currentIndex+1)%slides.length;return $scope.$currentTransition?void 0:self.select(slides[newIndex],"next")},$scope.prev=function(){var newIndex=0>currentIndex-1?slides.length-1:currentIndex-1;return $scope.$currentTransition?void 0:self.select(slides[newIndex],"prev")},$scope.select=function(slide){self.select(slide)},$scope.isActive=function(slide){return self.currentSlide===slide},$scope.slides=function(){return slides},$scope.$watch("interval",restartTimer),$scope.$on("$destroy",resetTimer),$scope.play=function(){isPlaying||(isPlaying=!0,restartTimer())},$scope.pause=function(){$scope.noPause||(isPlaying=!1,resetTimer())},self.addSlide=function(slide,element){slide.$element=element,slides.push(slide),1===slides.length||slide.active?(self.select(slides[slides.length-1]),1==slides.length&&$scope.play()):slide.active=!1},self.removeSlide=function(slide){var index=slides.indexOf(slide);slides.splice(index,1),slides.length>0&&slide.active?index>=slides.length?self.select(slides[index-1]):self.select(slides[index]):currentIndex>index&&currentIndex--}}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",require:"carousel",templateUrl:"template/carousel/carousel.html",scope:{interval:"=",noTransition:"=",noPause:"="}}}]).directive("slide",["$parse",function($parse){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/carousel/slide.html",scope:{},link:function(scope,element,attrs,carouselCtrl){if(attrs.active){var getActive=$parse(attrs.active),setActive=getActive.assign,lastValue=scope.active=getActive(scope.$parent);scope.$watch(function(){var parentActive=getActive(scope.$parent);return parentActive!==scope.active&&(parentActive!==lastValue?lastValue=scope.active=parentActive:setActive(scope.$parent,parentActive=lastValue=scope.active)),parentActive})}carouselCtrl.addSlide(scope,element),scope.$on("$destroy",function(){carouselCtrl.removeSlide(scope)}),scope.$watch("active",function(active){active&&carouselCtrl.select(scope)})}}}]),angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function($document,$window){function getStyle(el,cssprop){return el.currentStyle?el.currentStyle[cssprop]:$window.getComputedStyle?$window.getComputedStyle(el)[cssprop]:el.style[cssprop]}function isStaticPositioned(element){return"static"===(getStyle(element,"position")||"static")}var parentOffsetEl=function(element){for(var docDomEl=$document[0],offsetParent=element.offsetParent||docDomEl;offsetParent&&offsetParent!==docDomEl&&isStaticPositioned(offsetParent);)offsetParent=offsetParent.offsetParent;return offsetParent||docDomEl};return{position:function(element){var elBCR=this.offset(element),offsetParentBCR={top:0,left:0},offsetParentEl=parentOffsetEl(element[0]);offsetParentEl!=$document[0]&&(offsetParentBCR=this.offset(angular.element(offsetParentEl)),offsetParentBCR.top+=offsetParentEl.clientTop-offsetParentEl.scrollTop,offsetParentBCR.left+=offsetParentEl.clientLeft-offsetParentEl.scrollLeft);var boundingClientRect=element[0].getBoundingClientRect();return{width:boundingClientRect.width||element.prop("offsetWidth"),height:boundingClientRect.height||element.prop("offsetHeight"),top:elBCR.top-offsetParentBCR.top,left:elBCR.left-offsetParentBCR.left}},offset:function(element){var boundingClientRect=element[0].getBoundingClientRect();return{width:boundingClientRect.width||element.prop("offsetWidth"),height:boundingClientRect.height||element.prop("offsetHeight"),top:boundingClientRect.top+($window.pageYOffset||$document[0].body.scrollTop||$document[0].documentElement.scrollTop),left:boundingClientRect.left+($window.pageXOffset||$document[0].body.scrollLeft||$document[0].documentElement.scrollLeft)}}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.position"]).constant("datepickerConfig",{dayFormat:"dd",monthFormat:"MMMM",yearFormat:"yyyy",dayHeaderFormat:"EEE",dayTitleFormat:"MMMM yyyy",monthTitleFormat:"yyyy",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null}).controller("DatepickerController",["$scope","$attrs","dateFilter","datepickerConfig",function($scope,$attrs,dateFilter,dtConfig){function getValue(value,defaultValue){return angular.isDefined(value)?$scope.$parent.$eval(value):defaultValue}function getDaysInMonth(year,month){return new Date(year,month,0).getDate()}function getDates(startDate,n){for(var dates=new Array(n),current=startDate,i=0;n>i;)dates[i++]=new Date(current),current.setDate(current.getDate()+1);return dates}function makeDate(date,format,isSelected,isSecondary){return{date:date,label:dateFilter(date,format),selected:!!isSelected,secondary:!!isSecondary}}var format={day:getValue($attrs.dayFormat,dtConfig.dayFormat),month:getValue($attrs.monthFormat,dtConfig.monthFormat),year:getValue($attrs.yearFormat,dtConfig.yearFormat),dayHeader:getValue($attrs.dayHeaderFormat,dtConfig.dayHeaderFormat),dayTitle:getValue($attrs.dayTitleFormat,dtConfig.dayTitleFormat),monthTitle:getValue($attrs.monthTitleFormat,dtConfig.monthTitleFormat)},startingDay=getValue($attrs.startingDay,dtConfig.startingDay),yearRange=getValue($attrs.yearRange,dtConfig.yearRange);this.minDate=dtConfig.minDate?new Date(dtConfig.minDate):null,this.maxDate=dtConfig.maxDate?new Date(dtConfig.maxDate):null,this.modes=[{name:"day",getVisibleDates:function(date,selected){var year=date.getFullYear(),month=date.getMonth(),firstDayOfMonth=new Date(year,month,1),difference=startingDay-firstDayOfMonth.getDay(),numDisplayedFromPreviousMonth=difference>0?7-difference:-difference,firstDate=new Date(firstDayOfMonth),numDates=0;numDisplayedFromPreviousMonth>0&&(firstDate.setDate(-numDisplayedFromPreviousMonth+1),numDates+=numDisplayedFromPreviousMonth),numDates+=getDaysInMonth(year,month+1),numDates+=(7-numDates%7)%7;for(var days=getDates(firstDate,numDates),labels=new Array(7),i=0;numDates>i;i++){var dt=new Date(days[i]);days[i]=makeDate(dt,format.day,selected&&selected.getDate()===dt.getDate()&&selected.getMonth()===dt.getMonth()&&selected.getFullYear()===dt.getFullYear(),dt.getMonth()!==month)}for(var j=0;7>j;j++)labels[j]=dateFilter(days[j].date,format.dayHeader);return{objects:days,title:dateFilter(date,format.dayTitle),labels:labels}},compare:function(date1,date2){return new Date(date1.getFullYear(),date1.getMonth(),date1.getDate())-new Date(date2.getFullYear(),date2.getMonth(),date2.getDate())},split:7,step:{months:1}},{name:"month",getVisibleDates:function(date,selected){for(var months=new Array(12),year=date.getFullYear(),i=0;12>i;i++){var dt=new Date(year,i,1);months[i]=makeDate(dt,format.month,selected&&selected.getMonth()===i&&selected.getFullYear()===year)}return{objects:months,title:dateFilter(date,format.monthTitle)}},compare:function(date1,date2){return new Date(date1.getFullYear(),date1.getMonth())-new Date(date2.getFullYear(),date2.getMonth())},split:3,step:{years:1}},{name:"year",getVisibleDates:function(date,selected){for(var years=new Array(yearRange),year=date.getFullYear(),startYear=parseInt((year-1)/yearRange,10)*yearRange+1,i=0;yearRange>i;i++){var dt=new Date(startYear+i,0,1);years[i]=makeDate(dt,format.year,selected&&selected.getFullYear()===dt.getFullYear())}return{objects:years,title:[years[0].label,years[yearRange-1].label].join(" - ")}},compare:function(date1,date2){return date1.getFullYear()-date2.getFullYear()},split:5,step:{years:yearRange}}],this.isDisabled=function(date,mode){var currentMode=this.modes[mode||0];return this.minDate&&currentMode.compare(date,this.minDate)<0||this.maxDate&&currentMode.compare(date,this.maxDate)>0||$scope.dateDisabled&&$scope.dateDisabled({date:date,mode:currentMode.name})}}]).directive("datepicker",["dateFilter","$parse","datepickerConfig","$log",function(dateFilter,$parse,datepickerConfig,$log){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/datepicker.html",scope:{dateDisabled:"&"},require:["datepicker","?^ngModel"],controller:"DatepickerController",link:function(scope,element,attrs,ctrls){function updateShowWeekNumbers(){scope.showWeekNumbers=0===mode&&showWeeks}function split(arr,size){for(var arrays=[];arr.length>0;)arrays.push(arr.splice(0,size));return arrays}function refill(updateSelected){var date=null,valid=!0;ngModel.$modelValue&&(date=new Date(ngModel.$modelValue),isNaN(date)?(valid=!1,$log.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):updateSelected&&(selected=date)),ngModel.$setValidity("date",valid);var currentMode=datepickerCtrl.modes[mode],data=currentMode.getVisibleDates(selected,date);angular.forEach(data.objects,function(obj){obj.disabled=datepickerCtrl.isDisabled(obj.date,mode)}),ngModel.$setValidity("date-disabled",!date||!datepickerCtrl.isDisabled(date)),scope.rows=split(data.objects,currentMode.split),scope.labels=data.labels||[],scope.title=data.title}function setMode(value){mode=value,updateShowWeekNumbers(),refill()}function getISO8601WeekNumber(date){var checkDate=new Date(date);checkDate.setDate(checkDate.getDate()+4-(checkDate.getDay()||7));var time=checkDate.getTime();return checkDate.setMonth(0),checkDate.setDate(1),Math.floor(Math.round((time-checkDate)/864e5)/7)+1}var datepickerCtrl=ctrls[0],ngModel=ctrls[1];if(ngModel){var mode=0,selected=new Date,showWeeks=datepickerConfig.showWeeks;attrs.showWeeks?scope.$parent.$watch($parse(attrs.showWeeks),function(value){showWeeks=!!value,updateShowWeekNumbers()}):updateShowWeekNumbers(),attrs.min&&scope.$parent.$watch($parse(attrs.min),function(value){datepickerCtrl.minDate=value?new Date(value):null,refill()}),attrs.max&&scope.$parent.$watch($parse(attrs.max),function(value){datepickerCtrl.maxDate=value?new Date(value):null,refill()}),ngModel.$render=function(){refill(!0)},scope.select=function(date){if(0===mode){var dt=ngModel.$modelValue?new Date(ngModel.$modelValue):new Date(0,0,0,0,0,0,0);dt.setFullYear(date.getFullYear(),date.getMonth(),date.getDate()),ngModel.$setViewValue(dt),refill(!0)}else selected=date,setMode(mode-1)},scope.move=function(direction){var step=datepickerCtrl.modes[mode].step;selected.setMonth(selected.getMonth()+direction*(step.months||0)),selected.setFullYear(selected.getFullYear()+direction*(step.years||0)),refill()},scope.toggleMode=function(){setMode((mode+1)%datepickerCtrl.modes.length)},scope.getWeekNumber=function(row){return 0===mode&&scope.showWeekNumbers&&7===row.length?getISO8601WeekNumber(row[0].date):null}}}}}]).constant("datepickerPopupConfig",{dateFormat:"yyyy-MM-dd",currentText:"Today",toggleWeeksText:"Weeks",clearText:"Clear",closeText:"Done",closeOnDateSelection:!0,appendToBody:!1,showButtonBar:!0}).directive("datepickerPopup",["$compile","$parse","$document","$position","dateFilter","datepickerPopupConfig","datepickerConfig",function($compile,$parse,$document,$position,dateFilter,datepickerPopupConfig,datepickerConfig){return{restrict:"EA",require:"ngModel",link:function(originalScope,element,attrs,ngModel){function setOpen(value){setIsOpen?setIsOpen(originalScope,!!value):scope.isOpen=!!value}function parseDate(viewValue){if(viewValue){if(angular.isDate(viewValue))return ngModel.$setValidity("date",!0),viewValue;if(angular.isString(viewValue)){var date=new Date(viewValue);return isNaN(date)?void ngModel.$setValidity("date",!1):(ngModel.$setValidity("date",!0),date)}return void ngModel.$setValidity("date",!1)}return ngModel.$setValidity("date",!0),null}function addWatchableAttribute(attribute,scopeProperty,datepickerAttribute){attribute&&(originalScope.$watch($parse(attribute),function(value){scope[scopeProperty]=value}),datepickerEl.attr(datepickerAttribute||scopeProperty,scopeProperty))}function updatePosition(){scope.position=appendToBody?$position.offset(element):$position.position(element),scope.position.top=scope.position.top+element.prop("offsetHeight")}var dateFormat,scope=originalScope.$new(),closeOnDateSelection=angular.isDefined(attrs.closeOnDateSelection)?originalScope.$eval(attrs.closeOnDateSelection):datepickerPopupConfig.closeOnDateSelection,appendToBody=angular.isDefined(attrs.datepickerAppendToBody)?originalScope.$eval(attrs.datepickerAppendToBody):datepickerPopupConfig.appendToBody;attrs.$observe("datepickerPopup",function(value){dateFormat=value||datepickerPopupConfig.dateFormat,ngModel.$render()}),scope.showButtonBar=angular.isDefined(attrs.showButtonBar)?originalScope.$eval(attrs.showButtonBar):datepickerPopupConfig.showButtonBar,originalScope.$on("$destroy",function(){$popup.remove(),scope.$destroy()}),attrs.$observe("currentText",function(text){scope.currentText=angular.isDefined(text)?text:datepickerPopupConfig.currentText}),attrs.$observe("toggleWeeksText",function(text){scope.toggleWeeksText=angular.isDefined(text)?text:datepickerPopupConfig.toggleWeeksText}),attrs.$observe("clearText",function(text){scope.clearText=angular.isDefined(text)?text:datepickerPopupConfig.clearText}),attrs.$observe("closeText",function(text){scope.closeText=angular.isDefined(text)?text:datepickerPopupConfig.closeText});var getIsOpen,setIsOpen;attrs.isOpen&&(getIsOpen=$parse(attrs.isOpen),setIsOpen=getIsOpen.assign,originalScope.$watch(getIsOpen,function(value){scope.isOpen=!!value})),scope.isOpen=getIsOpen?getIsOpen(originalScope):!1;var documentClickBind=function(event){scope.isOpen&&event.target!==element[0]&&scope.$apply(function(){setOpen(!1)})},elementFocusBind=function(){scope.$apply(function(){setOpen(!0)})},popupEl=angular.element("<div datepicker-popup-wrap><div datepicker></div></div>");popupEl.attr({"ng-model":"date","ng-change":"dateSelection()"});var datepickerEl=angular.element(popupEl.children()[0]),datepickerOptions={};attrs.datepickerOptions&&(datepickerOptions=originalScope.$eval(attrs.datepickerOptions),datepickerEl.attr(angular.extend({},datepickerOptions))),ngModel.$parsers.unshift(parseDate),scope.dateSelection=function(dt){angular.isDefined(dt)&&(scope.date=dt),ngModel.$setViewValue(scope.date),ngModel.$render(),closeOnDateSelection&&setOpen(!1)},element.bind("input change keyup",function(){scope.$apply(function(){scope.date=ngModel.$modelValue})}),ngModel.$render=function(){var date=ngModel.$viewValue?dateFilter(ngModel.$viewValue,dateFormat):"";element.val(date),scope.date=ngModel.$modelValue},addWatchableAttribute(attrs.min,"min"),addWatchableAttribute(attrs.max,"max"),attrs.showWeeks?addWatchableAttribute(attrs.showWeeks,"showWeeks","show-weeks"):(scope.showWeeks="show-weeks"in datepickerOptions?datepickerOptions["show-weeks"]:datepickerConfig.showWeeks,datepickerEl.attr("show-weeks","showWeeks")),attrs.dateDisabled&&datepickerEl.attr("date-disabled",attrs.dateDisabled);var documentBindingInitialized=!1,elementFocusInitialized=!1;scope.$watch("isOpen",function(value){value?(updatePosition(),$document.bind("click",documentClickBind),elementFocusInitialized&&element.unbind("focus",elementFocusBind),element[0].focus(),documentBindingInitialized=!0):(documentBindingInitialized&&$document.unbind("click",documentClickBind),element.bind("focus",elementFocusBind),elementFocusInitialized=!0),setIsOpen&&setIsOpen(originalScope,value)}),scope.today=function(){scope.dateSelection(new Date)},scope.clear=function(){scope.dateSelection(null)};var $popup=$compile(popupEl)(scope);appendToBody?$document.find("body").append($popup):element.after($popup)}}}]).directive("datepickerPopupWrap",function(){return{restrict:"EA",replace:!0,transclude:!0,templateUrl:"template/datepicker/popup.html",link:function(scope,element,attrs){element.bind("click",function(event){event.preventDefault(),event.stopPropagation()})}}}),angular.module("ui.bootstrap.dropdownToggle",[]).directive("dropdownToggle",["$document","$location",function($document,$location){var openElement=null,closeMenu=angular.noop;return{restrict:"CA",link:function(scope,element,attrs){scope.$watch("$location.path",function(){closeMenu()}),element.parent().bind("click",function(){closeMenu()}),element.bind("click",function(event){var elementWasOpen=element===openElement;event.preventDefault(),event.stopPropagation(),openElement&&closeMenu(),elementWasOpen||element.hasClass("disabled")||element.prop("disabled")||(element.parent().addClass("open"),openElement=element,closeMenu=function(event){event&&(event.preventDefault(),event.stopPropagation()),$document.unbind("click",closeMenu),element.parent().removeClass("open"),closeMenu=angular.noop,openElement=null},$document.bind("click",closeMenu))})}}}]),angular.module("ui.bootstrap.modal",["ui.bootstrap.transition"]).factory("$$stackedMap",function(){return{createNew:function(){var stack=[];return{add:function(key,value){stack.push({key:key,value:value})},get:function(key){for(var i=0;i<stack.length;i++)if(key==stack[i].key)return stack[i]},keys:function(){for(var keys=[],i=0;i<stack.length;i++)keys.push(stack[i].key);return keys},top:function(){return stack[stack.length-1]},remove:function(key){for(var idx=-1,i=0;i<stack.length;i++)if(key==stack[i].key){idx=i;break}return stack.splice(idx,1)[0]},removeTop:function(){return stack.splice(stack.length-1,1)[0]},length:function(){return stack.length}}}}}).directive("modalBackdrop",["$timeout",function($timeout){return{restrict:"EA",replace:!0,templateUrl:"template/modal/backdrop.html",link:function(scope){scope.animate=!1,$timeout(function(){scope.animate=!0})}}}]).directive("modalWindow",["$modalStack","$timeout",function($modalStack,$timeout){return{restrict:"EA",scope:{index:"@",animate:"="},replace:!0,transclude:!0,templateUrl:"template/modal/window.html",link:function(scope,element,attrs){scope.windowClass=attrs.windowClass||"",$timeout(function(){scope.animate=!0,element[0].focus()}),scope.close=function(evt){var modal=$modalStack.getTop();modal&&modal.value.backdrop&&"static"!=modal.value.backdrop&&evt.target===evt.currentTarget&&(evt.preventDefault(),evt.stopPropagation(),$modalStack.dismiss(modal.key,"backdrop click"))}}}}]).factory("$modalStack",["$transition","$timeout","$document","$compile","$rootScope","$$stackedMap",function($transition,$timeout,$document,$compile,$rootScope,$$stackedMap){function backdropIndex(){for(var topBackdropIndex=-1,opened=openedWindows.keys(),i=0;i<opened.length;i++)openedWindows.get(opened[i]).value.backdrop&&(topBackdropIndex=i);return topBackdropIndex}function removeModalWindow(modalInstance){var body=$document.find("body").eq(0),modalWindow=openedWindows.get(modalInstance).value;openedWindows.remove(modalInstance),removeAfterAnimate(modalWindow.modalDomEl,modalWindow.modalScope,300,checkRemoveBackdrop),body.toggleClass(OPENED_MODAL_CLASS,openedWindows.length()>0)}function checkRemoveBackdrop(){if(backdropDomEl&&-1==backdropIndex()){var backdropScopeRef=backdropScope;removeAfterAnimate(backdropDomEl,backdropScope,150,function(){backdropScopeRef.$destroy(),backdropScopeRef=null}),backdropDomEl=void 0,backdropScope=void 0}}function removeAfterAnimate(domEl,scope,emulateTime,done){function afterAnimating(){afterAnimating.done||(afterAnimating.done=!0,domEl.remove(),done&&done())}scope.animate=!1;var transitionEndEventName=$transition.transitionEndEventName;if(transitionEndEventName){var timeout=$timeout(afterAnimating,emulateTime);domEl.bind(transitionEndEventName,function(){$timeout.cancel(timeout),afterAnimating(),scope.$apply()})}else $timeout(afterAnimating,0)}var backdropDomEl,backdropScope,OPENED_MODAL_CLASS="modal-open",openedWindows=$$stackedMap.createNew(),$modalStack={};return $rootScope.$watch(backdropIndex,function(newBackdropIndex){backdropScope&&(backdropScope.index=newBackdropIndex)}),$document.bind("keydown",function(evt){var modal;27===evt.which&&(modal=openedWindows.top(),modal&&modal.value.keyboard&&$rootScope.$apply(function(){$modalStack.dismiss(modal.key)}))}),$modalStack.open=function(modalInstance,modal){openedWindows.add(modalInstance,{deferred:modal.deferred,modalScope:modal.scope,backdrop:modal.backdrop,keyboard:modal.keyboard});var body=$document.find("body").eq(0),currBackdropIndex=backdropIndex();currBackdropIndex>=0&&!backdropDomEl&&(backdropScope=$rootScope.$new(!0),backdropScope.index=currBackdropIndex,backdropDomEl=$compile("<div modal-backdrop></div>")(backdropScope),body.append(backdropDomEl));var angularDomEl=angular.element("<div modal-window></div>");angularDomEl.attr("window-class",modal.windowClass),angularDomEl.attr("index",openedWindows.length()-1),angularDomEl.attr("animate","animate"),angularDomEl.html(modal.content);var modalDomEl=$compile(angularDomEl)(modal.scope);openedWindows.top().value.modalDomEl=modalDomEl,body.append(modalDomEl),body.addClass(OPENED_MODAL_CLASS)},$modalStack.close=function(modalInstance,result){var modalWindow=openedWindows.get(modalInstance).value;modalWindow&&(modalWindow.deferred.resolve(result),removeModalWindow(modalInstance))},$modalStack.dismiss=function(modalInstance,reason){var modalWindow=openedWindows.get(modalInstance).value;modalWindow&&(modalWindow.deferred.reject(reason),removeModalWindow(modalInstance))},$modalStack.dismissAll=function(reason){for(var topModal=this.getTop();topModal;)this.dismiss(topModal.key,reason),topModal=this.getTop()},$modalStack.getTop=function(){return openedWindows.top()},$modalStack}]).provider("$modal",function(){var $modalProvider={options:{backdrop:!0,keyboard:!0},$get:["$injector","$rootScope","$q","$http","$templateCache","$controller","$modalStack",function($injector,$rootScope,$q,$http,$templateCache,$controller,$modalStack){function getTemplatePromise(options){return options.template?$q.when(options.template):$http.get(options.templateUrl,{cache:$templateCache}).then(function(result){return result.data})}function getResolvePromises(resolves){var promisesArr=[];return angular.forEach(resolves,function(value,key){(angular.isFunction(value)||angular.isArray(value))&&promisesArr.push($q.when($injector.invoke(value)))}),promisesArr}var $modal={};return $modal.open=function(modalOptions){var modalResultDeferred=$q.defer(),modalOpenedDeferred=$q.defer(),modalInstance={result:modalResultDeferred.promise,opened:modalOpenedDeferred.promise,close:function(result){$modalStack.close(modalInstance,result)},dismiss:function(reason){$modalStack.dismiss(modalInstance,reason)}};if(modalOptions=angular.extend({},$modalProvider.options,modalOptions),modalOptions.resolve=modalOptions.resolve||{},!modalOptions.template&&!modalOptions.templateUrl)throw new Error("One of template or templateUrl options is required.");var templateAndResolvePromise=$q.all([getTemplatePromise(modalOptions)].concat(getResolvePromises(modalOptions.resolve)));return templateAndResolvePromise.then(function(tplAndVars){var modalScope=(modalOptions.scope||$rootScope).$new();modalScope.$close=modalInstance.close,modalScope.$dismiss=modalInstance.dismiss;var ctrlInstance,ctrlLocals={},resolveIter=1;modalOptions.controller&&(ctrlLocals.$scope=modalScope,ctrlLocals.$modalInstance=modalInstance,angular.forEach(modalOptions.resolve,function(value,key){ctrlLocals[key]=tplAndVars[resolveIter++]}),ctrlInstance=$controller(modalOptions.controller,ctrlLocals)),$modalStack.open(modalInstance,{scope:modalScope,deferred:modalResultDeferred,content:tplAndVars[0],backdrop:modalOptions.backdrop,keyboard:modalOptions.keyboard,windowClass:modalOptions.windowClass})},function(reason){modalResultDeferred.reject(reason)}),templateAndResolvePromise.then(function(){modalOpenedDeferred.resolve(!0)},function(){modalOpenedDeferred.reject(!1)}),modalInstance},$modal}]};return $modalProvider}),angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope","$attrs","$parse","$interpolate",function($scope,$attrs,$parse,$interpolate){var self=this,setNumPages=$attrs.numPages?$parse($attrs.numPages).assign:angular.noop;this.init=function(defaultItemsPerPage){$attrs.itemsPerPage?$scope.$parent.$watch($parse($attrs.itemsPerPage),function(value){self.itemsPerPage=parseInt(value,10),$scope.totalPages=self.calculateTotalPages()}):this.itemsPerPage=defaultItemsPerPage},this.noPrevious=function(){return 1===this.page},this.noNext=function(){return this.page===$scope.totalPages},this.isActive=function(page){return this.page===page},this.calculateTotalPages=function(){var totalPages=this.itemsPerPage<1?1:Math.ceil($scope.totalItems/this.itemsPerPage);return Math.max(totalPages||0,1)},this.getAttributeValue=function(attribute,defaultValue,interpolate){return angular.isDefined(attribute)?interpolate?$interpolate(attribute)($scope.$parent):$scope.$parent.$eval(attribute):defaultValue},this.render=function(){this.page=parseInt($scope.page,10)||1,this.page>0&&this.page<=$scope.totalPages&&($scope.pages=this.getPages(this.page,$scope.totalPages))},$scope.selectPage=function(page){!self.isActive(page)&&page>0&&page<=$scope.totalPages&&($scope.page=page,$scope.onSelectPage({page:page
}))},$scope.$watch("page",function(){self.render()}),$scope.$watch("totalItems",function(){$scope.totalPages=self.calculateTotalPages()}),$scope.$watch("totalPages",function(value){setNumPages($scope.$parent,value),self.page>value?$scope.selectPage(value):self.render()})}]).constant("paginationConfig",{itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["$parse","paginationConfig",function($parse,config){return{restrict:"EA",scope:{page:"=",totalItems:"=",onSelectPage:" &"},controller:"PaginationController",templateUrl:"template/pagination/pagination.html",replace:!0,link:function(scope,element,attrs,paginationCtrl){function makePage(number,text,isActive,isDisabled){return{number:number,text:text,active:isActive,disabled:isDisabled}}var maxSize,boundaryLinks=paginationCtrl.getAttributeValue(attrs.boundaryLinks,config.boundaryLinks),directionLinks=paginationCtrl.getAttributeValue(attrs.directionLinks,config.directionLinks),firstText=paginationCtrl.getAttributeValue(attrs.firstText,config.firstText,!0),previousText=paginationCtrl.getAttributeValue(attrs.previousText,config.previousText,!0),nextText=paginationCtrl.getAttributeValue(attrs.nextText,config.nextText,!0),lastText=paginationCtrl.getAttributeValue(attrs.lastText,config.lastText,!0),rotate=paginationCtrl.getAttributeValue(attrs.rotate,config.rotate);paginationCtrl.init(config.itemsPerPage),attrs.maxSize&&scope.$parent.$watch($parse(attrs.maxSize),function(value){maxSize=parseInt(value,10),paginationCtrl.render()}),paginationCtrl.getPages=function(currentPage,totalPages){var pages=[],startPage=1,endPage=totalPages,isMaxSized=angular.isDefined(maxSize)&&totalPages>maxSize;isMaxSized&&(rotate?(startPage=Math.max(currentPage-Math.floor(maxSize/2),1),endPage=startPage+maxSize-1,endPage>totalPages&&(endPage=totalPages,startPage=endPage-maxSize+1)):(startPage=(Math.ceil(currentPage/maxSize)-1)*maxSize+1,endPage=Math.min(startPage+maxSize-1,totalPages)));for(var number=startPage;endPage>=number;number++){var page=makePage(number,number,paginationCtrl.isActive(number),!1);pages.push(page)}if(isMaxSized&&!rotate){if(startPage>1){var previousPageSet=makePage(startPage-1,"...",!1,!1);pages.unshift(previousPageSet)}if(totalPages>endPage){var nextPageSet=makePage(endPage+1,"...",!1,!1);pages.push(nextPageSet)}}if(directionLinks){var previousPage=makePage(currentPage-1,previousText,!1,paginationCtrl.noPrevious());pages.unshift(previousPage);var nextPage=makePage(currentPage+1,nextText,!1,paginationCtrl.noNext());pages.push(nextPage)}if(boundaryLinks){var firstPage=makePage(1,firstText,!1,paginationCtrl.noPrevious());pages.unshift(firstPage);var lastPage=makePage(totalPages,lastText,!1,paginationCtrl.noNext());pages.push(lastPage)}return pages}}}}]).constant("pagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(config){return{restrict:"EA",scope:{page:"=",totalItems:"=",onSelectPage:" &"},controller:"PaginationController",templateUrl:"template/pagination/pager.html",replace:!0,link:function(scope,element,attrs,paginationCtrl){function makePage(number,text,isDisabled,isPrevious,isNext){return{number:number,text:text,disabled:isDisabled,previous:align&&isPrevious,next:align&&isNext}}var previousText=paginationCtrl.getAttributeValue(attrs.previousText,config.previousText,!0),nextText=paginationCtrl.getAttributeValue(attrs.nextText,config.nextText,!0),align=paginationCtrl.getAttributeValue(attrs.align,config.align);paginationCtrl.init(config.itemsPerPage),paginationCtrl.getPages=function(currentPage){return[makePage(currentPage-1,previousText,paginationCtrl.noPrevious(),!0,!1),makePage(currentPage+1,nextText,paginationCtrl.noNext(),!1,!0)]}}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).provider("$tooltip",function(){function snake_case(name){var regexp=/[A-Z]/g,separator="-";return name.replace(regexp,function(letter,pos){return(pos?separator:"")+letter.toLowerCase()})}var defaultOptions={placement:"top",animation:!0,popupDelay:0},triggerMap={mouseenter:"mouseleave",click:"click",focus:"blur"},globalOptions={};this.options=function(value){angular.extend(globalOptions,value)},this.setTriggers=function(triggers){angular.extend(triggerMap,triggers)},this.$get=["$window","$compile","$timeout","$parse","$document","$position","$interpolate",function($window,$compile,$timeout,$parse,$document,$position,$interpolate){return function(type,prefix,defaultTriggerShow){function getTriggers(trigger){var show=trigger||options.trigger||defaultTriggerShow,hide=triggerMap[show]||show;return{show:show,hide:hide}}var options=angular.extend({},defaultOptions,globalOptions),directiveName=snake_case(type),startSym=$interpolate.startSymbol(),endSym=$interpolate.endSymbol(),template="<div "+directiveName+'-popup title="'+startSym+"tt_title"+endSym+'" content="'+startSym+"tt_content"+endSym+'" placement="'+startSym+"tt_placement"+endSym+'" animation="tt_animation" is-open="tt_isOpen"></div>';return{restrict:"EA",scope:!0,compile:function(tElem,tAttrs){var tooltipLinker=$compile(template);return function(scope,element,attrs){function toggleTooltipBind(){scope.tt_isOpen?hideTooltipBind():showTooltipBind()}function showTooltipBind(){(!hasEnableExp||scope.$eval(attrs[prefix+"Enable"]))&&(scope.tt_popupDelay?(popupTimeout=$timeout(show,scope.tt_popupDelay,!1),popupTimeout.then(function(reposition){reposition()})):show()())}function hideTooltipBind(){scope.$apply(function(){hide()})}function show(){return scope.tt_content?(createTooltip(),transitionTimeout&&$timeout.cancel(transitionTimeout),tooltip.css({top:0,left:0,display:"block"}),appendToBody?$document.find("body").append(tooltip):element.after(tooltip),positionTooltip(),scope.tt_isOpen=!0,scope.$digest(),positionTooltip):angular.noop}function hide(){scope.tt_isOpen=!1,$timeout.cancel(popupTimeout),scope.tt_animation?transitionTimeout=$timeout(removeTooltip,500):removeTooltip()}function createTooltip(){tooltip&&removeTooltip(),tooltip=tooltipLinker(scope,function(){}),scope.$digest()}function removeTooltip(){tooltip&&(tooltip.remove(),tooltip=null)}var tooltip,transitionTimeout,popupTimeout,appendToBody=angular.isDefined(options.appendToBody)?options.appendToBody:!1,triggers=getTriggers(void 0),hasRegisteredTriggers=!1,hasEnableExp=angular.isDefined(attrs[prefix+"Enable"]),positionTooltip=function(){var position,ttWidth,ttHeight,ttPosition;switch(position=appendToBody?$position.offset(element):$position.position(element),ttWidth=tooltip.prop("offsetWidth"),ttHeight=tooltip.prop("offsetHeight"),scope.tt_placement){case"right":ttPosition={top:position.top+position.height/2-ttHeight/2,left:position.left+position.width};break;case"bottom":ttPosition={top:position.top+position.height,left:position.left+position.width/2-ttWidth/2};break;case"left":ttPosition={top:position.top+position.height/2-ttHeight/2,left:position.left-ttWidth};break;default:ttPosition={top:position.top-ttHeight,left:position.left+position.width/2-ttWidth/2}}ttPosition.top+="px",ttPosition.left+="px",tooltip.css(ttPosition)};scope.tt_isOpen=!1,attrs.$observe(type,function(val){scope.tt_content=val,!val&&scope.tt_isOpen&&hide()}),attrs.$observe(prefix+"Title",function(val){scope.tt_title=val}),attrs.$observe(prefix+"Placement",function(val){scope.tt_placement=angular.isDefined(val)?val:options.placement}),attrs.$observe(prefix+"PopupDelay",function(val){var delay=parseInt(val,10);scope.tt_popupDelay=isNaN(delay)?options.popupDelay:delay});var unregisterTriggers=function(){hasRegisteredTriggers&&(element.unbind(triggers.show,showTooltipBind),element.unbind(triggers.hide,hideTooltipBind))};attrs.$observe(prefix+"Trigger",function(val){unregisterTriggers(),triggers=getTriggers(val),triggers.show===triggers.hide?element.bind(triggers.show,toggleTooltipBind):(element.bind(triggers.show,showTooltipBind),element.bind(triggers.hide,hideTooltipBind)),hasRegisteredTriggers=!0});var animation=scope.$eval(attrs[prefix+"Animation"]);scope.tt_animation=angular.isDefined(animation)?!!animation:options.animation,attrs.$observe(prefix+"AppendToBody",function(val){appendToBody=angular.isDefined(val)?$parse(val)(scope):appendToBody}),appendToBody&&scope.$on("$locationChangeSuccess",function(){scope.tt_isOpen&&hide()}),scope.$on("$destroy",function(){$timeout.cancel(transitionTimeout),$timeout.cancel(popupTimeout),unregisterTriggers(),removeTooltip()})}}}}}]}).directive("tooltipPopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function($tooltip){return $tooltip("tooltip","tooltip","mouseenter")}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-unsafe-popup.html"}}).directive("tooltipHtmlUnsafe",["$tooltip",function($tooltip){return $tooltip("tooltipHtmlUnsafe","tooltip","mouseenter")}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$tooltip",function($tooltip){return $tooltip("popover","popover","click")}]),angular.module("ui.bootstrap.progressbar",["ui.bootstrap.transition"]).constant("progressConfig",{animate:!0,max:100}).controller("ProgressController",["$scope","$attrs","progressConfig","$transition",function($scope,$attrs,progressConfig,$transition){var self=this,bars=[],max=angular.isDefined($attrs.max)?$scope.$parent.$eval($attrs.max):progressConfig.max,animate=angular.isDefined($attrs.animate)?$scope.$parent.$eval($attrs.animate):progressConfig.animate;this.addBar=function(bar,element){var oldValue=0,index=bar.$parent.$index;angular.isDefined(index)&&bars[index]&&(oldValue=bars[index].value),bars.push(bar),this.update(element,bar.value,oldValue),bar.$watch("value",function(value,oldValue){value!==oldValue&&self.update(element,value,oldValue)}),bar.$on("$destroy",function(){self.removeBar(bar)})},this.update=function(element,newValue,oldValue){var percent=this.getPercentage(newValue);animate?(element.css("width",this.getPercentage(oldValue)+"%"),$transition(element,{width:percent+"%"})):element.css({transition:"none",width:percent+"%"})},this.removeBar=function(bar){bars.splice(bars.indexOf(bar),1)},this.getPercentage=function(value){return Math.round(100*value/max)}}]).directive("progress",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"progress",scope:{},template:'<div class="progress" ng-transclude></div>'}}).directive("bar",function(){return{restrict:"EA",replace:!0,transclude:!0,require:"^progress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(scope,element,attrs,progressCtrl){progressCtrl.addBar(scope,element)}}}).directive("progressbar",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/progressbar.html",link:function(scope,element,attrs,progressCtrl){progressCtrl.addBar(scope,angular.element(element.children()[0]))}}}),angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5,stateOn:null,stateOff:null}).controller("RatingController",["$scope","$attrs","$parse","ratingConfig",function($scope,$attrs,$parse,ratingConfig){this.maxRange=angular.isDefined($attrs.max)?$scope.$parent.$eval($attrs.max):ratingConfig.max,this.stateOn=angular.isDefined($attrs.stateOn)?$scope.$parent.$eval($attrs.stateOn):ratingConfig.stateOn,this.stateOff=angular.isDefined($attrs.stateOff)?$scope.$parent.$eval($attrs.stateOff):ratingConfig.stateOff,this.createRateObjects=function(states){for(var defaultOptions={stateOn:this.stateOn,stateOff:this.stateOff},i=0,n=states.length;n>i;i++)states[i]=angular.extend({index:i},defaultOptions,states[i]);return states},$scope.range=angular.isDefined($attrs.ratingStates)?this.createRateObjects(angular.copy($scope.$parent.$eval($attrs.ratingStates))):this.createRateObjects(new Array(this.maxRange)),$scope.rate=function(value){$scope.value===value||$scope.readonly||($scope.value=value)},$scope.enter=function(value){$scope.readonly||($scope.val=value),$scope.onHover({value:value})},$scope.reset=function(){$scope.val=angular.copy($scope.value),$scope.onLeave()},$scope.$watch("value",function(value){$scope.val=value}),$scope.readonly=!1,$attrs.readonly&&$scope.$parent.$watch($parse($attrs.readonly),function(value){$scope.readonly=!!value})}]).directive("rating",function(){return{restrict:"EA",scope:{value:"=",onHover:"&",onLeave:"&"},controller:"RatingController",templateUrl:"template/rating/rating.html",replace:!0}}),angular.module("ui.bootstrap.tabs",[]).controller("TabsetController",["$scope",function($scope){var ctrl=this,tabs=ctrl.tabs=$scope.tabs=[];ctrl.select=function(tab){angular.forEach(tabs,function(tab){tab.active=!1}),tab.active=!0},ctrl.addTab=function(tab){tabs.push(tab),(1===tabs.length||tab.active)&&ctrl.select(tab)},ctrl.removeTab=function(tab){var index=tabs.indexOf(tab);if(tab.active&&tabs.length>1){var newActiveIndex=index==tabs.length-1?index-1:index+1;ctrl.select(tabs[newActiveIndex])}tabs.splice(index,1)}}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,replace:!0,scope:{},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(scope,element,attrs){scope.vertical=angular.isDefined(attrs.vertical)?scope.$parent.$eval(attrs.vertical):!1,scope.justified=angular.isDefined(attrs.justified)?scope.$parent.$eval(attrs.justified):!1,scope.type=angular.isDefined(attrs.type)?scope.$parent.$eval(attrs.type):"tabs"}}}).directive("tab",["$parse",function($parse){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{heading:"@",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},compile:function(elm,attrs,transclude){return function(scope,elm,attrs,tabsetCtrl){var getActive,setActive;attrs.active?(getActive=$parse(attrs.active),setActive=getActive.assign,scope.$parent.$watch(getActive,function(value,oldVal){value!==oldVal&&(scope.active=!!value)}),scope.active=getActive(scope.$parent)):setActive=getActive=angular.noop,scope.$watch("active",function(active){setActive(scope.$parent,active),active?(tabsetCtrl.select(scope),scope.onSelect()):scope.onDeselect()}),scope.disabled=!1,attrs.disabled&&scope.$parent.$watch($parse(attrs.disabled),function(value){scope.disabled=!!value}),scope.select=function(){scope.disabled||(scope.active=!0)},tabsetCtrl.addTab(scope),scope.$on("$destroy",function(){tabsetCtrl.removeTab(scope)}),scope.$transcludeFn=transclude}}}}]).directive("tabHeadingTransclude",[function(){return{restrict:"A",require:"^tab",link:function(scope,elm,attrs,tabCtrl){scope.$watch("headingElement",function(heading){heading&&(elm.html(""),elm.append(heading))})}}}]).directive("tabContentTransclude",function(){function isTabHeading(node){return node.tagName&&(node.hasAttribute("tab-heading")||node.hasAttribute("data-tab-heading")||"tab-heading"===node.tagName.toLowerCase()||"data-tab-heading"===node.tagName.toLowerCase())}return{restrict:"A",require:"^tabset",link:function(scope,elm,attrs){var tab=scope.$eval(attrs.tabContentTransclude);tab.$transcludeFn(tab.$parent,function(contents){angular.forEach(contents,function(node){isTabHeading(node)?tab.headingElement=node:elm.append(node)})})}}}),angular.module("ui.bootstrap.timepicker",[]).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:null,readonlyInput:!1,mousewheel:!0}).directive("timepicker",["$parse","$log","timepickerConfig","$locale",function($parse,$log,timepickerConfig,$locale){return{restrict:"EA",require:"?^ngModel",replace:!0,scope:{},templateUrl:"template/timepicker/timepicker.html",link:function(scope,element,attrs,ngModel){function getHoursFromTemplate(){var hours=parseInt(scope.hours,10),valid=scope.showMeridian?hours>0&&13>hours:hours>=0&&24>hours;return valid?(scope.showMeridian&&(12===hours&&(hours=0),scope.meridian===meridians[1]&&(hours+=12)),hours):void 0}function getMinutesFromTemplate(){var minutes=parseInt(scope.minutes,10);return minutes>=0&&60>minutes?minutes:void 0}function pad(value){return angular.isDefined(value)&&value.toString().length<2?"0"+value:value}function refresh(keyboardChange){makeValid(),ngModel.$setViewValue(new Date(selected)),updateTemplate(keyboardChange)}function makeValid(){ngModel.$setValidity("time",!0),scope.invalidHours=!1,scope.invalidMinutes=!1}function updateTemplate(keyboardChange){var hours=selected.getHours(),minutes=selected.getMinutes();scope.showMeridian&&(hours=0===hours||12===hours?12:hours%12),scope.hours="h"===keyboardChange?hours:pad(hours),scope.minutes="m"===keyboardChange?minutes:pad(minutes),scope.meridian=selected.getHours()<12?meridians[0]:meridians[1]}function addMinutes(minutes){var dt=new Date(selected.getTime()+6e4*minutes);selected.setHours(dt.getHours(),dt.getMinutes()),refresh()}if(ngModel){var selected=new Date,meridians=angular.isDefined(attrs.meridians)?scope.$parent.$eval(attrs.meridians):timepickerConfig.meridians||$locale.DATETIME_FORMATS.AMPMS,hourStep=timepickerConfig.hourStep;attrs.hourStep&&scope.$parent.$watch($parse(attrs.hourStep),function(value){hourStep=parseInt(value,10)});var minuteStep=timepickerConfig.minuteStep;attrs.minuteStep&&scope.$parent.$watch($parse(attrs.minuteStep),function(value){minuteStep=parseInt(value,10)}),scope.showMeridian=timepickerConfig.showMeridian,attrs.showMeridian&&scope.$parent.$watch($parse(attrs.showMeridian),function(value){if(scope.showMeridian=!!value,ngModel.$error.time){var hours=getHoursFromTemplate(),minutes=getMinutesFromTemplate();angular.isDefined(hours)&&angular.isDefined(minutes)&&(selected.setHours(hours),refresh())}else updateTemplate()});var inputs=element.find("input"),hoursInputEl=inputs.eq(0),minutesInputEl=inputs.eq(1),mousewheel=angular.isDefined(attrs.mousewheel)?scope.$eval(attrs.mousewheel):timepickerConfig.mousewheel;if(mousewheel){var isScrollingUp=function(e){e.originalEvent&&(e=e.originalEvent);var delta=e.wheelDelta?e.wheelDelta:-e.deltaY;return e.detail||delta>0};hoursInputEl.bind("mousewheel wheel",function(e){scope.$apply(isScrollingUp(e)?scope.incrementHours():scope.decrementHours()),e.preventDefault()}),minutesInputEl.bind("mousewheel wheel",function(e){scope.$apply(isScrollingUp(e)?scope.incrementMinutes():scope.decrementMinutes()),e.preventDefault()})}if(scope.readonlyInput=angular.isDefined(attrs.readonlyInput)?scope.$eval(attrs.readonlyInput):timepickerConfig.readonlyInput,scope.readonlyInput)scope.updateHours=angular.noop,scope.updateMinutes=angular.noop;else{var invalidate=function(invalidHours,invalidMinutes){ngModel.$setViewValue(null),ngModel.$setValidity("time",!1),angular.isDefined(invalidHours)&&(scope.invalidHours=invalidHours),angular.isDefined(invalidMinutes)&&(scope.invalidMinutes=invalidMinutes)};scope.updateHours=function(){var hours=getHoursFromTemplate();angular.isDefined(hours)?(selected.setHours(hours),refresh("h")):invalidate(!0)},hoursInputEl.bind("blur",function(e){!scope.validHours&&scope.hours<10&&scope.$apply(function(){scope.hours=pad(scope.hours)})}),scope.updateMinutes=function(){var minutes=getMinutesFromTemplate();angular.isDefined(minutes)?(selected.setMinutes(minutes),refresh("m")):invalidate(void 0,!0)},minutesInputEl.bind("blur",function(e){!scope.invalidMinutes&&scope.minutes<10&&scope.$apply(function(){scope.minutes=pad(scope.minutes)})})}ngModel.$render=function(){var date=ngModel.$modelValue?new Date(ngModel.$modelValue):null;isNaN(date)?(ngModel.$setValidity("time",!1),$log.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(date&&(selected=date),makeValid(),updateTemplate())},scope.incrementHours=function(){addMinutes(60*hourStep)},scope.decrementHours=function(){addMinutes(60*-hourStep)},scope.incrementMinutes=function(){addMinutes(minuteStep)},scope.decrementMinutes=function(){addMinutes(-minuteStep)},scope.toggleMeridian=function(){addMinutes(720*(selected.getHours()<12?1:-1))}}}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).factory("typeaheadParser",["$parse",function($parse){var TYPEAHEAD_REGEXP=/^\s*(.*?)(?:\s+as\s+(.*?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+(.*)$/;return{parse:function(input){var match=input.match(TYPEAHEAD_REGEXP);if(!match)throw new Error("Expected typeahead specification in form of '_modelValue_ (as _label_)? for _item_ in _collection_' but got '"+input+"'.");return{itemName:match[3],source:$parse(match[4]),viewMapper:$parse(match[2]||match[1]),modelMapper:$parse(match[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$position","typeaheadParser",function($compile,$parse,$q,$timeout,$document,$position,typeaheadParser){var HOT_KEYS=[9,13,27,38,40];return{require:"ngModel",link:function(originalScope,element,attrs,modelCtrl){var hasFocus,minSearch=originalScope.$eval(attrs.typeaheadMinLength)||1,waitTime=originalScope.$eval(attrs.typeaheadWaitMs)||0,isEditable=originalScope.$eval(attrs.typeaheadEditable)!==!1,isLoadingSetter=$parse(attrs.typeaheadLoading).assign||angular.noop,onSelectCallback=$parse(attrs.typeaheadOnSelect),inputFormatter=attrs.typeaheadInputFormatter?$parse(attrs.typeaheadInputFormatter):void 0,appendToBody=attrs.typeaheadAppendToBody?$parse(attrs.typeaheadAppendToBody):!1,$setModelValue=$parse(attrs.ngModel).assign,parserResult=typeaheadParser.parse(attrs.typeahead),popUpEl=angular.element("<div typeahead-popup></div>");popUpEl.attr({matches:"matches",active:"activeIdx",select:"select(activeIdx)",query:"query",position:"position"}),angular.isDefined(attrs.typeaheadTemplateUrl)&&popUpEl.attr("template-url",attrs.typeaheadTemplateUrl);var scope=originalScope.$new();originalScope.$on("$destroy",function(){scope.$destroy()});var resetMatches=function(){scope.matches=[],scope.activeIdx=-1},getMatchesAsync=function(inputValue){var locals={$viewValue:inputValue};isLoadingSetter(originalScope,!0),$q.when(parserResult.source(originalScope,locals)).then(function(matches){if(inputValue===modelCtrl.$viewValue&&hasFocus){if(matches.length>0){scope.activeIdx=0,scope.matches.length=0;for(var i=0;i<matches.length;i++)locals[parserResult.itemName]=matches[i],scope.matches.push({label:parserResult.viewMapper(scope,locals),model:matches[i]});scope.query=inputValue,scope.position=appendToBody?$position.offset(element):$position.position(element),scope.position.top=scope.position.top+element.prop("offsetHeight")}else resetMatches();isLoadingSetter(originalScope,!1)}},function(){resetMatches(),isLoadingSetter(originalScope,!1)})};resetMatches(),scope.query=void 0;var timeoutPromise;modelCtrl.$parsers.unshift(function(inputValue){return hasFocus=!0,inputValue&&inputValue.length>=minSearch?waitTime>0?(timeoutPromise&&$timeout.cancel(timeoutPromise),timeoutPromise=$timeout(function(){getMatchesAsync(inputValue)},waitTime)):getMatchesAsync(inputValue):(isLoadingSetter(originalScope,!1),resetMatches()),isEditable?inputValue:inputValue?void modelCtrl.$setValidity("editable",!1):(modelCtrl.$setValidity("editable",!0),inputValue)}),modelCtrl.$formatters.push(function(modelValue){var candidateViewValue,emptyViewValue,locals={};return inputFormatter?(locals.$model=modelValue,inputFormatter(originalScope,locals)):(locals[parserResult.itemName]=modelValue,candidateViewValue=parserResult.viewMapper(originalScope,locals),locals[parserResult.itemName]=void 0,emptyViewValue=parserResult.viewMapper(originalScope,locals),candidateViewValue!==emptyViewValue?candidateViewValue:modelValue)}),scope.select=function(activeIdx){var model,item,locals={};locals[parserResult.itemName]=item=scope.matches[activeIdx].model,model=parserResult.modelMapper(originalScope,locals),$setModelValue(originalScope,model),modelCtrl.$setValidity("editable",!0),onSelectCallback(originalScope,{$item:item,$model:model,$label:parserResult.viewMapper(originalScope,locals)}),resetMatches(),element[0].focus()},element.bind("keydown",function(evt){0!==scope.matches.length&&-1!==HOT_KEYS.indexOf(evt.which)&&(evt.preventDefault(),40===evt.which?(scope.activeIdx=(scope.activeIdx+1)%scope.matches.length,scope.$digest()):38===evt.which?(scope.activeIdx=(scope.activeIdx?scope.activeIdx:scope.matches.length)-1,scope.$digest()):13===evt.which||9===evt.which?scope.$apply(function(){scope.select(scope.activeIdx)}):27===evt.which&&(evt.stopPropagation(),resetMatches(),scope.$digest()))}),element.bind("blur",function(evt){hasFocus=!1});var dismissClickHandler=function(evt){element[0]!==evt.target&&(resetMatches(),scope.$digest())};$document.bind("click",dismissClickHandler),originalScope.$on("$destroy",function(){$document.unbind("click",dismissClickHandler)});var $popup=$compile(popUpEl)(scope);appendToBody?$document.find("body").append($popup):element.after($popup)}}}]).directive("typeaheadPopup",function(){return{restrict:"EA",scope:{matches:"=",query:"=",active:"=",position:"=",select:"&"},replace:!0,templateUrl:"template/typeahead/typeahead-popup.html",link:function(scope,element,attrs){scope.templateUrl=attrs.templateUrl,scope.isOpen=function(){return scope.matches.length>0},scope.isActive=function(matchIdx){return scope.active==matchIdx},scope.selectActive=function(matchIdx){scope.active=matchIdx},scope.selectMatch=function(activeIdx){scope.select({activeIdx:activeIdx})}}}}).directive("typeaheadMatch",["$http","$templateCache","$compile","$parse",function($http,$templateCache,$compile,$parse){return{restrict:"EA",scope:{index:"=",match:"=",query:"="},link:function(scope,element,attrs){var tplUrl=$parse(attrs.templateUrl)(scope.$parent)||"template/typeahead/typeahead-match.html";$http.get(tplUrl,{cache:$templateCache}).success(function(tplContent){element.replaceWith($compile(tplContent.trim())(scope))})}}}]).filter("typeaheadHighlight",function(){function escapeRegexp(queryToEscape){return queryToEscape.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(matchItem,query){return query?matchItem.replace(new RegExp(escapeRegexp(query),"gi"),"<strong>$&</strong>"):matchItem}}),angular.module("template/accordion/accordion-group.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/accordion/accordion-group.html",'<div class="panel panel-default">\n <div class="panel-heading">\n <h4 class="panel-title">\n <a class="accordion-toggle" ng-click="isOpen = !isOpen" accordion-transclude="heading">{{heading}}</a>\n </h4>\n </div>\n <div class="panel-collapse" collapse="!isOpen">\n <div class="panel-body" ng-transclude></div>\n </div>\n</div>')}]),angular.module("template/accordion/accordion.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/accordion/accordion.html",'<div class="panel-group" ng-transclude></div>')}]),angular.module("template/alert/alert.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/alert/alert.html","<div class='alert' ng-class='\"alert-\" + (type || \"warning\")'>\n <button ng-show='closeable' type='button' class='close' ng-click='close()'>&times;</button>\n <div ng-transclude></div>\n</div>\n")}]),angular.module("template/carousel/carousel.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/carousel/carousel.html",'<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel">\n <ol class="carousel-indicators" ng-show="slides().length > 1">\n <li ng-repeat="slide in slides()" ng-class="{active: isActive(slide)}" ng-click="select(slide)"></li>\n </ol>\n <div class="carousel-inner" ng-transclude></div>\n <a class="left carousel-control" ng-click="prev()" ng-show="slides().length > 1"><span class="icon-prev"></span></a>\n <a class="right carousel-control" ng-click="next()" ng-show="slides().length > 1"><span class="icon-next"></span></a>\n</div>\n')}]),angular.module("template/carousel/slide.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/carousel/slide.html","<div ng-class=\"{\n 'active': leaving || (active && !entering),\n 'prev': (next || active) && direction=='prev',\n 'next': (next || active) && direction=='next',\n 'right': direction=='prev',\n 'left': direction=='next'\n }\" class=\"item text-center\" ng-transclude></div>\n")}]),angular.module("template/datepicker/datepicker.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/datepicker/datepicker.html",'<table>\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th colspan="{{rows[0].length - 2 + showWeekNumbers}}"><button type="button" class="btn btn-default btn-sm btn-block" ng-click="toggleMode()"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n <tr ng-show="labels.length > 0" class="h6">\n <th ng-show="showWeekNumbers" class="text-center">#</th>\n <th ng-repeat="label in labels" class="text-center">{{label}}</th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows">\n <td ng-show="showWeekNumbers" class="text-center"><em>{{ getWeekNumber(row) }}</em></td>\n <td ng-repeat="dt in row" class="text-center">\n <button type="button" style="width:100%;" class="btn btn-default btn-sm" ng-class="{\'btn-info\': dt.selected}" ng-click="select(dt.date)" ng-disabled="dt.disabled"><span ng-class="{\'text-muted\': dt.secondary}">{{dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/datepicker/popup.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/datepicker/popup.html","<ul class=\"dropdown-menu\" ng-style=\"{display: (isOpen && 'block') || 'none', top: position.top+'px', left: position.left+'px'}\">\n <li ng-transclude></li>\n"+' <li ng-show="showButtonBar" style="padding:10px 9px 2px">\n <span class="btn-group">\n <button type="button" class="btn btn-sm btn-info" ng-click="today()">{{currentText}}</button>\n <button type="button" class="btn btn-sm btn-default" ng-click="showWeeks = ! showWeeks" ng-class="{active: showWeeks}">{{toggleWeeksText}}</button>\n <button type="button" class="btn btn-sm btn-danger" ng-click="clear()">{{clearText}}</button>\n </span>\n <button type="button" class="btn btn-sm btn-success pull-right" ng-click="isOpen = false">{{closeText}}</button>\n </li>\n</ul>\n')}]),angular.module("template/modal/backdrop.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/modal/backdrop.html",'<div class="modal-backdrop fade" ng-class="{in: animate}" ng-style="{\'z-index\': 1040 + index*10}"></div>')}]),angular.module("template/modal/window.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/modal/window.html",'<div tabindex="-1" class="modal fade {{ windowClass }}" ng-class="{in: animate}" ng-style="{\'z-index\': 1050 + index*10, display: \'block\'}" ng-click="close($event)">\n <div class="modal-dialog"><div class="modal-content" ng-transclude></div></div>\n</div>')}]),angular.module("template/pagination/pager.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/pagination/pager.html",'<ul class="pager">\n <li ng-repeat="page in pages" ng-class="{disabled: page.disabled, previous: page.previous, next: page.next}"><a ng-click="selectPage(page.number)">{{page.text}}</a></li>\n</ul>');
}]),angular.module("template/pagination/pagination.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/pagination/pagination.html",'<ul class="pagination">\n <li ng-repeat="page in pages" ng-class="{active: page.active, disabled: page.disabled}"><a ng-click="selectPage(page.number)">{{page.text}}</a></li>\n</ul>')}]),angular.module("template/tooltip/tooltip-html-unsafe-popup.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/tooltip/tooltip-html-unsafe-popup.html",'<div class="tooltip {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" bind-html-unsafe="content"></div>\n</div>\n')}]),angular.module("template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/tooltip/tooltip-popup.html",'<div class="tooltip {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" ng-bind="content"></div>\n</div>\n')}]),angular.module("template/popover/popover.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/popover/popover.html",'<div class="popover {{placement}}" ng-class="{ in: isOpen(), fade: animation() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-show="title"></h3>\n <div class="popover-content" ng-bind="content"></div>\n </div>\n</div>\n')}]),angular.module("template/progressbar/bar.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" ng-transclude></div>')}]),angular.module("template/progressbar/progress.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/progressbar/progress.html",'<div class="progress" ng-transclude></div>')}]),angular.module("template/progressbar/progressbar.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/progressbar/progressbar.html",'<div class="progress"><div class="progress-bar" ng-class="type && \'progress-bar-\' + type" ng-transclude></div></div>')}]),angular.module("template/rating/rating.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/rating/rating.html",'<span ng-mouseleave="reset()">\n <i ng-repeat="r in range" ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < val && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')"></i>\n</span>')}]),angular.module("template/tabs/tab.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/tabs/tab.html",'<li ng-class="{active: active, disabled: disabled}">\n <a ng-click="select()" tab-heading-transclude>{{heading}}</a>\n</li>\n')}]),angular.module("template/tabs/tabset-titles.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/tabs/tabset-titles.html","<ul class=\"nav {{type && 'nav-' + type}}\" ng-class=\"{'nav-stacked': vertical}\">\n</ul>\n")}]),angular.module("template/tabs/tabset.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/tabs/tabset.html",'\n<div class="tabbable">\n <ul class="nav {{type && \'nav-\' + type}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude></ul>\n <div class="tab-content">\n <div class="tab-pane" \n ng-repeat="tab in tabs" \n ng-class="{active: tab.active}"\n tab-content-transclude="tab">\n </div>\n </div>\n</div>\n')}]),angular.module("template/timepicker/timepicker.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/timepicker/timepicker.html",'<table>\n <tbody>\n <tr class="text-center">\n <td><a ng-click="incrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td>&nbsp;</td>\n <td><a ng-click="incrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n <tr>\n <td style="width:50px;" class="form-group" ng-class="{\'has-error\': invalidHours}">\n <input type="text" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-mousewheel="incrementHours()" ng-readonly="readonlyInput" maxlength="2">\n </td>\n <td>:</td>\n <td style="width:50px;" class="form-group" ng-class="{\'has-error\': invalidMinutes}">\n <input type="text" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="readonlyInput" maxlength="2">\n </td>\n <td ng-show="showMeridian"><button type="button" class="btn btn-default text-center" ng-click="toggleMeridian()">{{meridian}}</button></td>\n </tr>\n <tr class="text-center">\n <td><a ng-click="decrementHours()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td>&nbsp;</td>\n <td><a ng-click="decrementMinutes()" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/typeahead/typeahead-match.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/typeahead/typeahead-match.html",'<a tabindex="-1" bind-html-unsafe="match.label | typeaheadHighlight:query"></a>')}]),angular.module("template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function($templateCache){$templateCache.put("template/typeahead/typeahead-popup.html","<ul class=\"dropdown-menu\" ng-style=\"{display: isOpen()&&'block' || 'none', top: position.top+'px', left: position.left+'px'}\">\n"+' <li ng-repeat="match in matches" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)">\n <div typeahead-match index="$index" match="match" query="query" template-url="templateUrl"></div>\n </li>\n</ul>')}]),angular.module("ui.alias",[]).config(["$compileProvider","uiAliasConfig",function(a,b){b=b||{},angular.forEach(b,function(b,c){angular.isString(b)&&(b={replace:!0,template:b}),a.directive(c,function(){return b})})}]),angular.module("ui.event",[]).directive("uiEvent",["$parse",function(a){return function(b,c,d){var e=b.$eval(d.uiEvent);angular.forEach(e,function(d,e){var f=a(d);c.bind(e,function(a){var c=Array.prototype.slice.call(arguments);c=c.splice(1),f(b,{$event:a,$params:c}),b.$$phase||b.$apply()})})}}]),angular.module("ui.format",[]).filter("format",function(){return function(a,b){var c=a;if(angular.isString(c)&&void 0!==b)if(angular.isArray(b)||angular.isObject(b)||(b=[b]),angular.isArray(b)){var d=b.length,e=function(a,c){return c=parseInt(c,10),c>=0&&d>c?b[c]:a};c=c.replace(/\$([0-9]+)/g,e)}else angular.forEach(b,function(a,b){c=c.split(":"+b).join(a)});return c}}),angular.module("ui.highlight",[]).filter("highlight",function(){return function(a,b,c){return b||angular.isNumber(b)?(a=a.toString(),b=b.toString(),c?a.split(b).join('<span class="ui-match">'+b+"</span>"):a.replace(new RegExp(b,"gi"),'<span class="ui-match">$&</span>')):a}}),angular.module("ui.include",[]).directive("uiInclude",["$http","$templateCache","$anchorScroll","$compile",function(a,b,c,d){return{restrict:"ECA",terminal:!0,compile:function(e,f){var g=f.uiInclude||f.src,h=f.fragment||"",i=f.onload||"",j=f.autoscroll;return function(e,f){function k(){var k=++m,o=e.$eval(g),p=e.$eval(h);o?a.get(o,{cache:b}).success(function(a){if(k===m){l&&l.$destroy(),l=e.$new();var b;b=p?angular.element("<div/>").html(a).find(p):angular.element("<div/>").html(a).contents(),f.html(b),d(b)(l),!angular.isDefined(j)||j&&!e.$eval(j)||c(),l.$emit("$includeContentLoaded"),e.$eval(i)}}).error(function(){k===m&&n()}):n()}var l,m=0,n=function(){l&&(l.$destroy(),l=null),f.html("")};e.$watch(h,k),e.$watch(g,k)}}}}]),angular.module("ui.indeterminate",[]).directive("uiIndeterminate",[function(){return{compile:function(a,b){return b.type&&"checkbox"===b.type.toLowerCase()?function(a,b,c){a.$watch(c.uiIndeterminate,function(a){b[0].indeterminate=!!a})}:angular.noop}}}]),angular.module("ui.inflector",[]).filter("inflector",function(){function a(a){return a.replace(/^([a-z])|\s+([a-z])/g,function(a){return a.toUpperCase()})}function b(a,b){return a.replace(/[A-Z]/g,function(a){return b+a})}var c={humanize:function(c){return a(b(c," ").split("_").join(" "))},underscore:function(a){return a.substr(0,1).toLowerCase()+b(a.substr(1),"_").toLowerCase().split(" ").join("_")},variable:function(b){return b=b.substr(0,1).toLowerCase()+a(b.split("_").join(" ")).substr(1).split(" ").join("")}};return function(a,b){return b!==!1&&angular.isString(a)?(b=b||"humanize",c[b](a)):a}}),angular.module("ui.jq",[]).value("uiJqConfig",{}).directive("uiJq",["uiJqConfig","$timeout",function(a,b){return{restrict:"A",compile:function(c,d){if(!angular.isFunction(c[d.uiJq]))throw new Error('ui-jq: The "'+d.uiJq+'" function does not exist');var e=a&&a[d.uiJq];return function(a,c,d){function f(){b(function(){c[d.uiJq].apply(c,g)},0,!1)}var g=[];d.uiOptions?(g=a.$eval("["+d.uiOptions+"]"),angular.isObject(e)&&angular.isObject(g[0])&&(g[0]=angular.extend({},e,g[0]))):e&&(g=[e]),d.ngModel&&c.is("select,input,textarea")&&c.bind("change",function(){c.trigger("input")}),d.uiRefresh&&a.$watch(d.uiRefresh,function(){f()}),f()}}}}]),angular.module("ui.keypress",[]).factory("keypressHelper",["$parse",function(a){var b={8:"backspace",9:"tab",13:"enter",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete"},c=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};return function(d,e,f,g){var h,i=[];h=e.$eval(g["ui"+c(d)]),angular.forEach(h,function(b,c){var d,e;e=a(b),angular.forEach(c.split(" "),function(a){d={expression:e,keys:{}},angular.forEach(a.split("-"),function(a){d.keys[a]=!0}),i.push(d)})}),f.bind(d,function(a){var c=!(!a.metaKey||a.ctrlKey),f=!!a.altKey,g=!!a.ctrlKey,h=!!a.shiftKey,j=a.keyCode;"keypress"===d&&!h&&j>=97&&122>=j&&(j-=32),angular.forEach(i,function(d){var i=d.keys[b[j]]||d.keys[j.toString()],k=!!d.keys.meta,l=!!d.keys.alt,m=!!d.keys.ctrl,n=!!d.keys.shift;i&&k===c&&l===f&&m===g&&n===h&&e.$apply(function(){d.expression(e,{$event:a})})})})}}]),angular.module("ui.keypress").directive("uiKeydown",["keypressHelper",function(a){return{link:function(b,c,d){a("keydown",b,c,d)}}}]),angular.module("ui.keypress").directive("uiKeypress",["keypressHelper",function(a){return{link:function(b,c,d){a("keypress",b,c,d)}}}]),angular.module("ui.keypress").directive("uiKeyup",["keypressHelper",function(a){return{link:function(b,c,d){a("keyup",b,c,d)}}}]),angular.module("ui.mask",[]).value("uiMaskConfig",{maskDefinitions:{9:/\d/,A:/[a-zA-Z]/,"*":/[a-zA-Z0-9]/}}).directive("uiMask",["uiMaskConfig",function(a){return{priority:100,require:"ngModel",restrict:"A",compile:function(){var b=a;return function(a,c,d,e){function f(a){return angular.isDefined(a)?(s(a),N?(k(),l(),!0):j()):j()}function g(a){angular.isDefined(a)&&(D=a,N&&w())}function h(a){return N?(G=o(a||""),I=n(G),e.$setValidity("mask",I),I&&G.length?p(G):void 0):a}function i(a){return N?(G=o(a||""),I=n(G),e.$viewValue=G.length?p(G):"",e.$setValidity("mask",I),""===G&&void 0!==e.$error.required&&e.$setValidity("required",!1),I?G:void 0):a}function j(){return N=!1,m(),angular.isDefined(P)?c.attr("placeholder",P):c.removeAttr("placeholder"),angular.isDefined(Q)?c.attr("maxlength",Q):c.removeAttr("maxlength"),c.val(e.$modelValue),e.$viewValue=e.$modelValue,!1}function k(){G=K=o(e.$modelValue||""),H=J=p(G),I=n(G);var a=I&&G.length?H:"";d.maxlength&&c.attr("maxlength",2*B[B.length-1]),c.attr("placeholder",D),c.val(a),e.$viewValue=a}function l(){O||(c.bind("blur",t),c.bind("mousedown mouseup",u),c.bind("input keyup click focus",w),O=!0)}function m(){O&&(c.unbind("blur",t),c.unbind("mousedown",u),c.unbind("mouseup",u),c.unbind("input",w),c.unbind("keyup",w),c.unbind("click",w),c.unbind("focus",w),O=!1)}function n(a){return a.length?a.length>=F:!0}function o(a){var b="",c=C.slice();return a=a.toString(),angular.forEach(E,function(b){a=a.replace(b,"")}),angular.forEach(a.split(""),function(a){c.length&&c[0].test(a)&&(b+=a,c.shift())}),b}function p(a){var b="",c=B.slice();return angular.forEach(D.split(""),function(d,e){a.length&&e===c[0]?(b+=a.charAt(0)||"_",a=a.substr(1),c.shift()):b+=d}),b}function q(a){var b=d.placeholder;return"undefined"!=typeof b&&b[a]?b[a]:"_"}function r(){return D.replace(/[_]+/g,"_").replace(/([^_]+)([a-zA-Z0-9])([^_])/g,"$1$2_$3").split("_")}function s(a){var b=0;if(B=[],C=[],D="","string"==typeof a){F=0;var c=!1,d=a.split("");angular.forEach(d,function(a,d){R.maskDefinitions[a]?(B.push(b),D+=q(d),C.push(R.maskDefinitions[a]),b++,c||F++):"?"===a?c=!0:(D+=a,b++)})}B.push(B.slice().pop()+1),E=r(),N=B.length>1?!0:!1}function t(){L=0,M=0,I&&0!==G.length||(H="",c.val(""),a.$apply(function(){e.$setViewValue("")}))}function u(a){"mousedown"===a.type?c.bind("mouseout",v):c.unbind("mouseout",v)}function v(){M=A(this),c.unbind("mouseout",v)}function w(b){b=b||{};var d=b.which,f=b.type;if(16!==d&&91!==d){var g,h=c.val(),i=J,j=o(h),k=K,l=!1,m=y(this)||0,n=L||0,q=m-n,r=B[0],s=B[j.length]||B.slice().shift(),t=M||0,u=A(this)>0,v=t>0,w=h.length>i.length||t&&h.length>i.length-t,C=h.length<i.length||t&&h.length===i.length-t,D=d>=37&&40>=d&&b.shiftKey,E=37===d,F=8===d||"keyup"!==f&&C&&-1===q,G=46===d||"keyup"!==f&&C&&0===q&&!v,H=(E||F||"click"===f)&&m>r;if(M=A(this),!D&&(!u||"click"!==f&&"keyup"!==f)){if("input"===f&&C&&!v&&j===k){for(;F&&m>r&&!x(m);)m--;for(;G&&s>m&&-1===B.indexOf(m);)m++;var I=B.indexOf(m);j=j.substring(0,I)+j.substring(I+1),l=!0}for(g=p(j),J=g,K=j,c.val(g),l&&a.$apply(function(){e.$setViewValue(j)}),w&&r>=m&&(m=r+1),H&&m--,m=m>s?s:r>m?r:m;!x(m)&&m>r&&s>m;)m+=H?-1:1;(H&&s>m||w&&!x(n))&&m++,L=m,z(this,m)}}}function x(a){return B.indexOf(a)>-1}function y(a){if(!a)return 0;if(void 0!==a.selectionStart)return a.selectionStart;if(document.selection){a.focus();var b=document.selection.createRange();return b.moveStart("character",-a.value.length),b.text.length}return 0}function z(a,b){if(!a)return 0;if(0!==a.offsetWidth&&0!==a.offsetHeight)if(a.setSelectionRange)a.focus(),a.setSelectionRange(b,b);else if(a.createTextRange){var c=a.createTextRange();c.collapse(!0),c.moveEnd("character",b),c.moveStart("character",b),c.select()}}function A(a){return a?void 0!==a.selectionStart?a.selectionEnd-a.selectionStart:document.selection?document.selection.createRange().text.length:0:0}var B,C,D,E,F,G,H,I,J,K,L,M,N=!1,O=!1,P=d.placeholder,Q=d.maxlength,R={};d.uiOptions?(R=a.$eval("["+d.uiOptions+"]"),angular.isObject(R[0])&&(R=function(a,b){for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]?angular.extend(b[c],a[c]):b[c]=angular.copy(a[c]));return b}(b,R[0]))):R=b,d.$observe("uiMask",f),d.$observe("placeholder",g),e.$formatters.push(h),e.$parsers.push(i),c.bind("mousedown mouseup",u),Array.prototype.indexOf||(Array.prototype.indexOf=function(a){if(null===this)throw new TypeError;var b=Object(this),c=b.length>>>0;if(0===c)return-1;var d=0;if(arguments.length>1&&(d=Number(arguments[1]),d!==d?d=0:0!==d&&1/0!==d&&d!==-1/0&&(d=(d>0||-1)*Math.floor(Math.abs(d)))),d>=c)return-1;for(var e=d>=0?d:Math.max(c-Math.abs(d),0);c>e;e++)if(e in b&&b[e]===a)return e;return-1})}}}}]),angular.module("ui.reset",[]).value("uiResetConfig",null).directive("uiReset",["uiResetConfig",function(a){var b=null;return void 0!==a&&(b=a),{require:"ngModel",link:function(a,c,d,e){var f;f=angular.element('<a class="ui-reset" />'),c.wrap('<span class="ui-resetwrap" />').after(f),f.bind("click",function(c){c.preventDefault(),a.$apply(function(){e.$setViewValue(d.uiReset?a.$eval(d.uiReset):b),e.$render()})})}}}]),angular.module("ui.route",[]).directive("uiRoute",["$location","$parse",function(a,b){return{restrict:"AC",scope:!0,compile:function(c,d){var e;if(d.uiRoute)e="uiRoute";else if(d.ngHref)e="ngHref";else{if(!d.href)throw new Error("uiRoute missing a route or href property on "+c[0]);e="href"}return function(c,d,f){function g(b){var d=b.indexOf("#");d>-1&&(b=b.substr(d+1)),(j=function(){i(c,a.path().indexOf(b)>-1)})()}function h(b){var d=b.indexOf("#");d>-1&&(b=b.substr(d+1)),(j=function(){var d=new RegExp("^"+b+"$",["i"]);i(c,d.test(a.path()))})()}var i=b(f.ngModel||f.routeModel||"$uiRoute").assign,j=angular.noop;switch(e){case"uiRoute":f.uiRoute?h(f.uiRoute):f.$observe("uiRoute",h);break;case"ngHref":f.ngHref?g(f.ngHref):f.$observe("ngHref",g);break;case"href":g(f.href)}c.$on("$routeChangeSuccess",function(){j()}),c.$on("$stateChangeSuccess",function(){j()})}}}}]),angular.module("ui.scroll.jqlite",["ui.scroll"]).service("jqLiteExtras",["$log","$window",function(a,b){return{registerFor:function(a){var c,d,e,f,g,h,i;return d=angular.element.prototype.css,a.prototype.css=function(a,b){var c,e;return e=this,c=e[0],c&&3!==c.nodeType&&8!==c.nodeType&&c.style?d.call(e,a,b):void 0},h=function(a){return a&&a.document&&a.location&&a.alert&&a.setInterval},i=function(a,b,c){var d,e,f,g,i;return d=a[0],i={top:["scrollTop","pageYOffset","scrollLeft"],left:["scrollLeft","pageXOffset","scrollTop"]}[b],e=i[0],g=i[1],f=i[2],h(d)?angular.isDefined(c)?d.scrollTo(a[f].call(a),c):g in d?d[g]:d.document.documentElement[e]:angular.isDefined(c)?d[e]=c:d[e]},b.getComputedStyle?(f=function(a){return b.getComputedStyle(a,null)},c=function(a,b){return parseFloat(b)}):(f=function(a){return a.currentStyle},c=function(a,b){var c,d,e,f,g,h,i;return c=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,f=new RegExp("^("+c+")(?!px)[a-z%]+$","i"),f.test(b)?(i=a.style,d=i.left,g=a.runtimeStyle,h=g&&g.left,g&&(g.left=i.left),i.left=b,e=i.pixelLeft,i.left=d,h&&(g.left=h),e):parseFloat(b)}),e=function(a,b){var d,e,g,i,j,k,l,m,n,o,p,q,r;return h(a)?(d=document.documentElement[{height:"clientHeight",width:"clientWidth"}[b]],{base:d,padding:0,border:0,margin:0}):(r={width:[a.offsetWidth,"Left","Right"],height:[a.offsetHeight,"Top","Bottom"]}[b],d=r[0],l=r[1],m=r[2],k=f(a),p=c(a,k["padding"+l])||0,q=c(a,k["padding"+m])||0,e=c(a,k["border"+l+"Width"])||0,g=c(a,k["border"+m+"Width"])||0,i=k["margin"+l],j=k["margin"+m],n=c(a,i)||0,o=c(a,j)||0,{base:d,padding:p+q,border:e+g,margin:n+o})},g=function(a,b,c){var d,g,h;return g=e(a,b),g.base>0?{base:g.base-g.padding-g.border,outer:g.base,outerfull:g.base+g.margin}[c]:(d=f(a),h=d[b],(0>h||null===h)&&(h=a.style[b]||0),h=parseFloat(h)||0,{base:h-g.padding-g.border,outer:h,outerfull:h+g.padding+g.border+g.margin}[c])},angular.forEach({before:function(a){var b,c,d,e,f,g,h;if(f=this,c=f[0],e=f.parent(),b=e.contents(),b[0]===c)return e.prepend(a);for(d=g=1,h=b.length-1;h>=1?h>=g:g>=h;d=h>=1?++g:--g)if(b[d]===c)return void angular.element(b[d-1]).after(a);throw new Error("invalid DOM structure "+c.outerHTML)},height:function(a){var b;return b=this,angular.isDefined(a)?(angular.isNumber(a)&&(a+="px"),d.call(b,"height",a)):g(this[0],"height","base")},outerHeight:function(a){return g(this[0],"height",a?"outerfull":"outer")},offset:function(a){var b,c,d,e,f,g;return f=this,arguments.length?void 0===a?f:a:(b={top:0,left:0},e=f[0],(c=e&&e.ownerDocument)?(d=c.documentElement,e.getBoundingClientRect&&(b=e.getBoundingClientRect()),g=c.defaultView||c.parentWindow,{top:b.top+(g.pageYOffset||d.scrollTop)-(d.clientTop||0),left:b.left+(g.pageXOffset||d.scrollLeft)-(d.clientLeft||0)}):void 0)},scrollTop:function(a){return i(this,"top",a)},scrollLeft:function(a){return i(this,"left",a)}},function(b,c){return a.prototype[c]?void 0:a.prototype[c]=b})}}}]).run(["$log","$window","jqLiteExtras",function(a,b,c){return b.jQuery?void 0:c.registerFor(angular.element)}]),angular.module("ui.scroll",[]).directive("ngScrollViewport",["$log",function(){return{controller:["$scope","$element",function(a,b){return b}]}}]).directive("ngScroll",["$log","$injector","$rootScope","$timeout",function(a,b,c,d){return{require:["?^ngScrollViewport"],transclude:"element",priority:1e3,terminal:!0,compile:function(e,f,g){return function(f,h,i,j){var k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T;if(H=i.ngScroll.match(/^\s*(\w+)\s+in\s+(\w+)\s*$/),!H)throw new Error('Expected ngScroll in form of "item_ in _datasource_" but got "'+i.ngScroll+'"');if(F=H[1],v=H[2],D=function(a){return angular.isObject(a)&&a.get&&angular.isFunction(a.get)},u=f[v],!D(u)&&(u=b.get(v),!D(u)))throw new Error(v+" is not a valid datasource");return r=Math.max(3,+i.bufferSize||10),q=function(){return T.height()*Math.max(.1,+i.padding||.1)},O=function(a){return a[0].scrollHeight||a[0].document.documentElement.scrollHeight},k=null,g(R=f.$new(),function(a){var b,c,d,f,g,h;if(f=a[0].localName,"dl"===f)throw new Error("ng-scroll directive does not support <"+a[0].localName+"> as a repeating tag: "+a[0].outerHTML);return"li"!==f&&"tr"!==f&&(f="div"),h=j[0]||angular.element(window),h.css({"overflow-y":"auto",display:"block"}),d=function(a){var b,c,d;switch(a){case"tr":return d=angular.element("<table><tr><td><div></div></td></tr></table>"),b=d.find("div"),c=d.find("tr"),c.paddingHeight=function(){return b.height.apply(b,arguments)},c;default:return c=angular.element("<"+a+"></"+a+">"),c.paddingHeight=c.height,c}},c=function(a,b,c){return b[{top:"before",bottom:"after"}[c]](a),{paddingHeight:function(){return a.paddingHeight.apply(a,arguments)},insert:function(b){return a[{top:"after",bottom:"before"}[c]](b)}}},g=c(d(f),e,"top"),b=c(d(f),e,"bottom"),R.$destroy(),k={viewport:h,topPadding:g.paddingHeight,bottomPadding:b.paddingHeight,append:b.insert,prepend:g.insert,bottomDataPos:function(){return O(h)-b.paddingHeight()},topDataPos:function(){return g.paddingHeight()}}}),T=k.viewport,B=1,I=1,p=[],J=[],x=!1,n=!1,G=u.loading||function(){},E=!1,L=function(a,b){var c,d;for(c=d=a;b>=a?b>d:d>b;c=b>=a?++d:--d)p[c].scope.$destroy(),p[c].element.remove();return p.splice(a,b-a)},K=function(){return B=1,I=1,L(0,p.length),k.topPadding(0),k.bottomPadding(0),J=[],x=!1,n=!1,l(!1)},o=function(){return T.scrollTop()+T.height()},S=function(){return T.scrollTop()},P=function(){return!x&&k.bottomDataPos()<o()+q()},s=function(){var b,c,d,e,f,g;for(b=0,e=0,c=f=g=p.length-1;(0>=g?0>=f:f>=0)&&(d=p[c].element.outerHeight(!0),k.bottomDataPos()-b-d>o()+q());c=0>=g?++f:--f)b+=d,e++,x=!1;return e>0?(k.bottomPadding(k.bottomPadding()+b),L(p.length-e,p.length),I-=e,a.log("clipped off bottom "+e+" bottom padding "+k.bottomPadding())):void 0},Q=function(){return!n&&k.topDataPos()>S()-q()},t=function(){var b,c,d,e,f,g;for(e=0,d=0,f=0,g=p.length;g>f&&(b=p[f],c=b.element.outerHeight(!0),k.topDataPos()+e+c<S()-q());f++)e+=c,d++,n=!1;return d>0?(k.topPadding(k.topPadding()+e),L(0,d),B+=d,a.log("clipped off top "+d+" top padding "+k.topPadding())):void 0},w=function(a,b){return E||(E=!0,G(!0)),1===J.push(a)?z(b):void 0},C=function(a,b){var c,d,e;return c=f.$new(),c[F]=b,d=a>B,c.$index=a,d&&c.$index--,e={scope:c},g(c,function(b){return e.element=b,d?a===I?(k.append(b),p.push(e)):(p[a-B].element.after(b),p.splice(a-B+1,0,e)):(k.prepend(b),p.unshift(e))}),{appended:d,wrapper:e}},m=function(a,b){var c;return a?k.bottomPadding(Math.max(0,k.bottomPadding()-b.element.outerHeight(!0))):(c=k.topPadding()-b.element.outerHeight(!0),c>=0?k.topPadding(c):T.scrollTop(T.scrollTop()+b.element.outerHeight(!0)))},l=function(b,c,e){var f;return f=function(){return a.log("top {actual="+k.topDataPos()+" visible from="+S()+" bottom {visible through="+o()+" actual="+k.bottomDataPos()+"}"),P()?w(!0,b):Q()&&w(!1,b),e?e():void 0},c?d(function(){var a,b,d;for(b=0,d=c.length;d>b;b++)a=c[b],m(a.appended,a.wrapper);return f()}):f()},A=function(a,b){return l(a,b,function(){return J.shift(),0===J.length?(E=!1,G(!1)):z(a)})},z=function(b){var c;return c=J[0],c?p.length&&!P()?A(b):u.get(I,r,function(c){var d,e,f,g;if(e=[],0===c.length)x=!0,k.bottomPadding(0),a.log("appended: requested "+r+" records starting from "+I+" recieved: eof");else{for(t(),f=0,g=c.length;g>f;f++)d=c[f],e.push(C(++I,d));a.log("appended: requested "+r+" received "+c.length+" buffer size "+p.length+" first "+B+" next "+I)}return A(b,e)}):p.length&&!Q()?A(b):u.get(B-r,r,function(c){var d,e,f,g;if(e=[],0===c.length)n=!0,k.topPadding(0),a.log("prepended: requested "+r+" records starting from "+(B-r)+" recieved: bof");else{for(s(),d=f=g=c.length-1;0>=g?0>=f:f>=0;d=0>=g?++f:--f)e.unshift(C(--B,c[d]));a.log("prepended: requested "+r+" received "+c.length+" buffer size "+p.length+" first "+B+" next "+I)}return A(b,e)})},M=function(){return c.$$phase||E?void 0:(l(!1),f.$apply())},T.bind("resize",M),N=function(){return c.$$phase||E?void 0:(l(!0),f.$apply())},T.bind("scroll",N),f.$watch(u.revision,function(){return K()}),y=u.scope?u.scope.$new():f.$new(),f.$on("$destroy",function(){return y.$destroy(),T.unbind("resize",M),T.unbind("scroll",N)}),y.$on("update.items",function(a,b,c){var d,e,f,g,h;if(angular.isFunction(b))for(e=function(a){return b(a.scope)},f=0,g=p.length;g>f;f++)d=p[f],e(d);else 0<=(h=b-B-1)&&h<p.length&&(p[b-B-1].scope[F]=c);return null}),y.$on("delete.items",function(a,b){var c,d,e,f,g,h,i,j,k,m,n,o;if(angular.isFunction(b)){for(e=[],h=0,k=p.length;k>h;h++)d=p[h],e.unshift(d);for(g=function(a){return b(a.scope)?(L(e.length-1-c,e.length-c),I--):void 0},c=i=0,m=e.length;m>i;c=++i)f=e[c],g(f)}else 0<=(o=b-B-1)&&o<p.length&&(L(b-B-1,b-B),I--);for(c=j=0,n=p.length;n>j;c=++j)d=p[c],d.scope.$index=B+c;return l(!1)}),y.$on("insert.item",function(a,b,c){var d,e,f,g,h,i,j,k,m,n,o,q;if(e=[],angular.isFunction(b)){for(f=[],i=0,m=p.length;m>i;i++)c=p[i],f.unshift(c);for(h=function(a){var f,g,h,i,j;if(g=b(a.scope)){if(C=function(a,b){return C(a,b),I++},angular.isArray(g)){for(j=[],f=h=0,i=g.length;i>h;f=++h)c=g[f],j.push(e.push(C(d+f,c)));return j}return e.push(C(d,g))}},d=j=0,n=f.length;n>j;d=++j)g=f[d],h(g)}else 0<=(q=b-B-1)&&q<p.length&&(e.push(C(b,c)),I++);for(d=k=0,o=p.length;o>k;d=++k)c=p[d],c.scope.$index=B+d;return l(!1,e)})}}}}]),angular.module("ui.scrollfix",[]).directive("uiScrollfix",["$window",function(a){return{require:"^?uiScrollfixTarget",link:function(b,c,d,e){function f(){var b;if(angular.isDefined(a.pageYOffset))b=a.pageYOffset;else{var e=document.compatMode&&"BackCompat"!==document.compatMode?document.documentElement:document.body;b=e.scrollTop}!c.hasClass("ui-scrollfix")&&b>d.uiScrollfix?c.addClass("ui-scrollfix"):c.hasClass("ui-scrollfix")&&b<d.uiScrollfix&&c.removeClass("ui-scrollfix")}var g=c[0].offsetTop,h=e&&e.$element||angular.element(a);d.uiScrollfix?"string"==typeof d.uiScrollfix&&("-"===d.uiScrollfix.charAt(0)?d.uiScrollfix=g-parseFloat(d.uiScrollfix.substr(1)):"+"===d.uiScrollfix.charAt(0)&&(d.uiScrollfix=g+parseFloat(d.uiScrollfix.substr(1)))):d.uiScrollfix=g,h.on("scroll",f),b.$on("$destroy",function(){h.off("scroll",f)})}}}]).directive("uiScrollfixTarget",[function(){return{controller:["$element",function(a){this.$element=a}]}}]),angular.module("ui.showhide",[]).directive("uiShow",[function(){return function(a,b,c){a.$watch(c.uiShow,function(a){a?b.addClass("ui-show"):b.removeClass("ui-show")})}}]).directive("uiHide",[function(){return function(a,b,c){a.$watch(c.uiHide,function(a){a?b.addClass("ui-hide"):b.removeClass("ui-hide")})}}]).directive("uiToggle",[function(){return function(a,b,c){a.$watch(c.uiToggle,function(a){a?b.removeClass("ui-hide").addClass("ui-show"):b.removeClass("ui-show").addClass("ui-hide")})}}]),angular.module("ui.unique",[]).filter("unique",["$parse",function(a){return function(b,c){if(c===!1)return b;if((c||angular.isUndefined(c))&&angular.isArray(b)){var d=[],e=angular.isString(c)?a(c):function(a){return a},f=function(a){return angular.isObject(a)?e(a):a};angular.forEach(b,function(a){for(var b=!1,c=0;c<d.length;c++)if(angular.equals(f(d[c]),f(a))){b=!0;break}b||d.push(a)}),b=d}return b}}]),angular.module("ui.validate",[]).directive("uiValidate",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(b){return angular.isString(b)?void a.$watch(b,function(){angular.forEach(g,function(a){a(d.$modelValue)})}):angular.isArray(b)?void angular.forEach(b,function(b){a.$watch(b,function(){angular.forEach(g,function(a){a(d.$modelValue)})})}):void(angular.isObject(b)&&angular.forEach(b,function(b,c){angular.isString(b)&&a.$watch(b,function(){g[c](d.$modelValue)}),angular.isArray(b)&&angular.forEach(b,function(b){a.$watch(b,function(){g[c](d.$modelValue)})})}))}var f,g={},h=a.$eval(c.uiValidate);h&&(angular.isString(h)&&(h={validator:h}),angular.forEach(h,function(b,c){f=function(e){var f=a.$eval(b,{$value:e});return angular.isObject(f)&&angular.isFunction(f.then)?(f.then(function(){d.$setValidity(c,!0)},function(){d.$setValidity(c,!1)}),e):f?(d.$setValidity(c,!0),e):(d.$setValidity(c,!1),e)},g[c]=f,d.$formatters.push(f),d.$parsers.push(f)}),c.uiValidateWatch&&e(a.$eval(c.uiValidateWatch)))}}}),angular.module("ui.utils",["ui.event","ui.format","ui.highlight","ui.include","ui.indeterminate","ui.inflector","ui.jq","ui.keypress","ui.mask","ui.reset","ui.route","ui.scrollfix","ui.scroll","ui.scroll.jqlite","ui.showhide","ui.unique","ui.validate"]),angular.module("ngProgress.provider",["ngProgress.directive"]).provider("ngProgress",function(){"use strict";this.autoStyle=!0,this.count=0,this.height="2px",this.color="firebrick",this.$get=["$document","$window","$compile","$rootScope","$timeout",function(a,b,c,d,e){var f=this.count,g=this.height,h=this.color,i=d,j=a.find("body")[0],k=c("<ng-progress></ng-progress>")(i);j.appendChild(k[0]),i.count=f,void 0!==g&&k.eq(0).children().css("height",g),void 0!==h&&(k.eq(0).children().css("background-color",h),k.eq(0).children().css("color",h));var l,m=0;return{start:function(){this.show();var a=this;clearInterval(m),m=setInterval(function(){if(isNaN(f))clearInterval(m),f=0,a.hide();else{var b=100-f;f+=.15*Math.pow(1-Math.sqrt(b),2),a.updateCount(f)}},200)},updateCount:function(a){i.count=a,i.$$phase||i.$apply()},height:function(a){return void 0!==a&&(g=a,i.height=g,i.$$phase||i.$apply()),g},color:function(a){return void 0!==a&&(h=a,i.color=h,i.$$phase||i.$apply()),h},hide:function(){k.children().css("opacity","0");var a=this;a.animate(function(){k.children().css("width","0%"),a.animate(function(){a.show()},500)},500)},show:function(){var a=this;a.animate(function(){k.children().css("opacity","1")},100)},animate:function(a,b){l&&e.cancel(l),l=e(a,b)},status:function(){return f},stop:function(){clearInterval(m)},set:function(a){return this.show(),this.updateCount(a),f=a,clearInterval(m),f},css:function(a){return k.children().css(a)},reset:function(){return clearInterval(m),f=0,this.updateCount(f),0},complete:function(){f=100,this.updateCount(f);var a=this;return clearInterval(m),e(function(){a.hide(),e(function(){f=0,a.updateCount(f)},500)},1e3),f},setParent:function(a){if(null===a||void 0===a)throw new Error("Provide a valid parent of type HTMLElement");null!==j&&void 0!==j&&j.removeChild(k[0]),j=a,j.appendChild(k[0])},getDomElement:function(){return k}}}],this.setColor=function(a){return void 0!==a&&(this.color=a),this.color},this.setHeight=function(a){return void 0!==a&&(this.height=a),this.height}}),angular.module("ngProgress.directive",[]).directive("ngProgress",["$window","$rootScope",function(a,b){var c={replace:!0,restrict:"E",link:function(a,c){b.$watch("count",function(b){(void 0!==b||null!==b)&&(a.counter=b,c.eq(0).children().css("width",b+"%"))}),b.$watch("color",function(b){(void 0!==b||null!==b)&&(a.color=b,c.eq(0).children().css("background-color",b),c.eq(0).children().css("color",b))}),b.$watch("height",function(b){(void 0!==b||null!==b)&&(a.height=b,c.eq(0).children().css("height",b))})},template:'<div id="ngProgress-container"><div id="ngProgress"></div></div>'};return c}]),angular.module("ngProgress",["ngProgress.directive","ngProgress.provider"]),angular.module("gettext",[]),angular.module("gettext").constant("gettext",function(a){
return a}),angular.module("gettext").factory("gettextCatalog",["gettextPlurals","$http","$cacheFactory","$interpolate","$rootScope",function(a,b,c,d,e){function f(){e.$broadcast("gettextLanguageChanged")}var g,h=function(a){return g.debug&&g.currentLanguage!==g.baseLanguage?g.debugPrefix+a:a},i=function(a){return g.showTranslatedMarkers?g.translatedMarkerPrefix+a+g.translatedMarkerSuffix:a};return g={debug:!1,debugPrefix:"[MISSING]: ",showTranslatedMarkers:!1,translatedMarkerPrefix:"[",translatedMarkerSuffix:"]",strings:{},baseLanguage:"en",currentLanguage:"en",cache:c("strings"),setCurrentLanguage:function(a){this.currentLanguage=a,f()},setStrings:function(a,b){this.strings[a]||(this.strings[a]={});for(var c in b){var d=b[c];this.strings[a][c]="string"==typeof d?[d]:d}f()},getStringForm:function(a,b){var c=this.strings[this.currentLanguage]||{},d=c[a]||[];return d[b]},getString:function(a,b){return a=this.getStringForm(a,0)||h(a),a=b?d(a)(b):a,i(a)},getPlural:function(b,c,e,f){var g=a(this.currentLanguage,b);return c=this.getStringForm(c,g)||h(1===b?c:e),c=f?d(c)(f):c,i(c)},loadRemote:function(a){return b({method:"GET",url:a,cache:g.cache}).success(function(a){for(var b in a)g.setStrings(b,a[b])})}}}]),angular.module("gettext").directive("translate",["gettextCatalog","$parse","$animate","$compile",function(a,b,c,d){function e(a,b,c){if(!a)throw new Error("You should add a "+b+" attribute whenever you add a "+c+" attribute.")}var f=function(){return String.prototype.trim?function(a){return"string"==typeof a?a.trim():a}:function(a){return"string"==typeof a?a.replace(/^\s*/,"").replace(/\s*$/,""):a}}();return{restrict:"A",terminal:!0,compile:function(g,h){e(!h.translatePlural||h.translateN,"translate-n","translate-plural"),e(!h.translateN||h.translatePlural,"translate-plural","translate-n");var i=f(g.html()),j=h.translatePlural;return{post:function(e,f,g){function h(){var b;j?(e=l||(l=e.$new()),e.$count=k(e),b=a.getPlural(e.$count,i,j)):b=a.getString(i);var g=angular.element("<span>"+b+"</span>");d(g.contents())(e);var h=f.contents(),m=g.contents();c.enter(m,f),c.leave(h)}var k=b(g.translateN),l=null;g.translateN&&e.$watch(g.translateN,h),e.$on("gettextLanguageChanged",h),h()}}}}}]),angular.module("gettext").filter("translate",["gettextCatalog",function(a){function b(b){return a.getString(b)}return b.$stateful=!0,b}]),angular.module("gettext").factory("gettextPlurals",function(){return function(a,b){switch(a){case"ay":case"bo":case"cgg":case"dz":case"fa":case"id":case"ja":case"jbo":case"ka":case"kk":case"km":case"ko":case"ky":case"lo":case"ms":case"my":case"sah":case"su":case"th":case"tt":case"ug":case"vi":case"wo":case"zh":return 0;case"is":return b%10!=1||b%100==11?1:0;case"jv":return 0!=b?1:0;case"mk":return 1==b||b%10==1?0:1;case"ach":case"ak":case"am":case"arn":case"br":case"fil":case"fr":case"gun":case"ln":case"mfe":case"mg":case"mi":case"oc":case"pt_BR":case"tg":case"ti":case"tr":case"uz":case"wa":case"zh":return b>1?1:0;case"lv":return b%10==1&&b%100!=11?0:0!=b?1:2;case"lt":return b%10==1&&b%100!=11?0:b%10>=2&&(10>b%100||b%100>=20)?1:2;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return b%10==1&&b%100!=11?0:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?1:2;case"mnk":return 0==b?0:1==b?1:2;case"ro":return 1==b?0:0==b||b%100>0&&20>b%100?1:2;case"pl":return 1==b?0:b%10>=2&&4>=b%10&&(10>b%100||b%100>=20)?1:2;case"cs":case"sk":return 1==b?0:b>=2&&4>=b?1:2;case"sl":return b%100==1?1:b%100==2?2:b%100==3||b%100==4?3:0;case"mt":return 1==b?0:0==b||b%100>1&&11>b%100?1:b%100>10&&20>b%100?2:3;case"gd":return 1==b||11==b?0:2==b||12==b?1:b>2&&20>b?2:3;case"cy":return 1==b?0:2==b?1:8!=b&&11!=b?2:3;case"kw":return 1==b?0:2==b?1:3==b?2:3;case"ga":return 1==b?0:2==b?1:7>b?2:11>b?3:4;case"ar":return 0==b?0:1==b?1:2==b?2:b%100>=3&&10>=b%100?3:b%100>=11?4:5;default:return 1!=b?1:0}}}),!function(){"use strict";function a(a,b){return a.module("angularMoment",[]).constant("angularMomentConfig",{preprocess:null,timezone:"",format:null}).constant("moment",b).constant("amTimeAgoConfig",{withoutSuffix:!1,serverTime:null,titleFormat:null}).directive("amTimeAgo",["$window","moment","amMoment","amTimeAgoConfig","angularMomentConfig",function(b,c,d,e,f){return function(g,h,i){function j(){var a;if(e.serverTime){var b=(new Date).getTime(),d=b-u+e.serverTime;a=c(d)}else a=c();return a}function k(){q&&(b.clearTimeout(q),q=null)}function l(a){if(h.text(a.from(j(),s)),t&&!h.attr("title")&&h.attr("title",a.local().format(t)),!x){var c=Math.abs(j().diff(a,"minute")),d=3600;1>c?d=1:60>c?d=30:180>c&&(d=300),q=b.setTimeout(function(){l(a)},1e3*d)}}function m(a){y&&h.attr("datetime",a)}function n(){if(k(),o){var a=d.preprocessDate(o,v,r);l(a),m(a.toISOString())}}var o,p,q=null,r=f.format,s=e.withoutSuffix,t=e.titleFormat,u=(new Date).getTime(),v=f.preprocess,w=i.amTimeAgo.replace(/^::/,""),x=0===i.amTimeAgo.indexOf("::"),y="TIME"===h[0].nodeName.toUpperCase();p=g.$watch(w,function(a){return"undefined"==typeof a||null===a||""===a?(k(),void(o&&(h.text(""),m(""),o=null))):(o=a,n(),void(void 0!==a&&x&&p()))}),a.isDefined(i.amWithoutSuffix)&&g.$watch(i.amWithoutSuffix,function(a){"boolean"==typeof a?(s=a,n()):s=e.withoutSuffix}),i.$observe("amFormat",function(a){"undefined"!=typeof a&&(r=a,n())}),i.$observe("amPreprocess",function(a){v=a,n()}),g.$on("$destroy",function(){k()}),g.$on("amMoment:localeChanged",function(){n()})}}]).service("amMoment",["moment","$rootScope","$log","angularMomentConfig",function(b,c,d,e){var f=this;this.preprocessors={utc:b.utc,unix:b.unix},this.changeLocale=function(d){var e=(b.locale||b.lang)(d);return a.isDefined(d)&&(c.$broadcast("amMoment:localeChanged"),c.$broadcast("amMoment:languageChange")),e},this.changeLanguage=function(a){return d.warn("angular-moment: Usage of amMoment.changeLanguage() is deprecated. Please use changeLocale()"),f.changeLocale(a)},this.preprocessDate=function(c,f,g){return a.isUndefined(f)&&(f=e.preprocess),this.preprocessors[f]?this.preprocessors[f](c,g):(f&&d.warn("angular-moment: Ignoring unsupported value for preprocess: "+f),!isNaN(parseFloat(c))&&isFinite(c)?b(parseInt(c,10)):b(c,g))},this.applyTimezone=function(a){var b=e.timezone;return a&&b&&(a.tz?a=a.tz(b):d.warn("angular-moment: timezone specified but moment.tz() is undefined. Did you forget to include moment-timezone.js?")),a}}]).filter("amCalendar",["moment","amMoment",function(a,b){return function(c,d){if("undefined"==typeof c||null===c)return"";c=b.preprocessDate(c,d);var e=a(c);return e.isValid()?b.applyTimezone(e).calendar():""}}]).filter("amDateFormat",["moment","amMoment",function(a,b){return function(c,d,e){if("undefined"==typeof c||null===c)return"";c=b.preprocessDate(c,e);var f=a(c);return f.isValid()?b.applyTimezone(f).format(d):""}}]).filter("amDurationFormat",["moment",function(a){return function(b,c,d){return"undefined"==typeof b||null===b?"":a.duration(b,c).humanize(d)}}]).filter("amTimeAgo",["moment","amMoment",function(a,b){return function(c,d,e){if("undefined"==typeof c||null===c)return"";c=b.preprocessDate(c,d);var f=a(c);return f.isValid()?b.applyTimezone(f).fromNow(e):""}}])}"function"==typeof define&&define.amd?define("angular-moment",["angular","moment"],a):"undefined"!=typeof module&&module&&module.exports?a(angular,require("moment")):a(angular,window.moment)}();