From 1bff5914b27ce3c07f1244a1a88cf3024f2da61f Mon Sep 17 00:00:00 2001 From: Chris Brame Date: Mon, 30 May 2022 14:15:02 -0400 Subject: [PATCH 1/8] chore(core): start of migrating config to yml --- .gitignore | 1 + .yarnclean | 2 +- app.js | 5 +++-- package.json | 4 +++- src/controllers/install.js | 6 +++--- src/settings/defaults.js | 6 +++--- yarn.lock | 14 +++++++++++++- 7 files changed, 27 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index d7e2fb92f..a31927462 100644 --- a/.gitignore +++ b/.gitignore @@ -31,6 +31,7 @@ node_modules #custom package-lock.json config.json +config.yml import.csv /src/mailer/templates/promo/ *.pem diff --git a/.yarnclean b/.yarnclean index 0446e553a..2e7df6036 100644 --- a/.yarnclean +++ b/.yarnclean @@ -6,7 +6,7 @@ powered-test # asset directories docs -doc +#doc website # examples diff --git a/app.js b/app.js index 423297e9e..665bf7f0e 100644 --- a/app.js +++ b/app.js @@ -46,7 +46,7 @@ if (!process.env.FORK) { winston.info('Server Time: ' + new Date()) } -let configFile = path.join(__dirname, '/config.json') +let configFile = path.join(__dirname, '/config.yml') nconf.defaults({ base_dir: __dirname, @@ -75,7 +75,8 @@ if (nconf.get('install') || (!configExists && !isDocker)) { function loadConfig () { nconf.file({ - file: configFile + file: configFile, + format: require('nconf-yaml') }) } diff --git a/package.json b/package.json index f283a8284..70d1df934 100644 --- a/package.json +++ b/package.json @@ -76,6 +76,7 @@ "mongoose-autopopulate": "0.16.0", "mongoose-lean-virtuals": "0.9.0", "nconf": "0.12.0", + "nconf-yaml": "1.0.2", "netmask": "2.0.2", "node-cache": "5.1.2", "node-sass": "7.0.1", @@ -121,7 +122,8 @@ "util": "0.12.4", "velocity-react": "1.4.3", "winston": "3.6.0", - "xss": "1.0.10" + "xss": "1.0.10", + "yaml": "2.1.1" }, "devDependencies": { "@babel/core": "7.17.4", diff --git a/src/controllers/install.js b/src/controllers/install.js index 769952b91..4d2fb82c3 100644 --- a/src/controllers/install.js +++ b/src/controllers/install.js @@ -91,8 +91,8 @@ installController.existingdb = function (req, res) { // Write Configfile const fs = require('fs') const chance = new Chance() - const configFile = path.join(__dirname, '../../config.json') - + const configFile = path.join(__dirname, '../../config.yml') + const YAML = require('yaml') const conf = { mongo: { host: host, @@ -107,7 +107,7 @@ installController.existingdb = function (req, res) { } } - fs.writeFile(configFile, JSON.stringify(conf, null, 4), function (err) { + fs.writeFile(configFile, YAML.stringify(conf), function (err) { if (err) { winston.error('FS Error: ' + err.message) return res.status(400).json({ success: false, error: err.message }) diff --git a/src/settings/defaults.js b/src/settings/defaults.js index 3e1e9cb37..49eb455c1 100644 --- a/src/settings/defaults.js +++ b/src/settings/defaults.js @@ -592,11 +592,11 @@ function elasticSearchConfToDB (callback) { const nconf = require('nconf') const elasticsearch = { enable: nconf.get('elasticsearch:enable') || false, - host: nconf.get('elasticsearch:host'), - port: nconf.get('elasticsearch:port') + host: nconf.get('elasticsearch:host') || "", + port: nconf.get('elasticsearch:port') || 9200 } - nconf.set('elasticsearch', undefined) + nconf.set('elasticsearch', {}) async.parallel( [ diff --git a/yarn.lock b/yarn.lock index 7e10022fe..2cd094dec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8800,7 +8800,7 @@ js-yaml@4.1.0, js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -js-yaml@^3.13.1, js-yaml@~3.14.0: +js-yaml@^3.13.1, js-yaml@^3.2.3, js-yaml@~3.14.0: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -10592,6 +10592,13 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +nconf-yaml@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nconf-yaml/-/nconf-yaml-1.0.2.tgz#fea065333cf42b77a5e8060517969799d4156575" + integrity sha1-/qBlMzz0K3el6AYFF5aXmdQVZXU= + dependencies: + js-yaml "^3.2.3" + nconf@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/nconf/-/nconf-0.12.0.tgz#9cf70757aae4d440d43ed53c42f87da18471b8bf" @@ -15977,6 +15984,11 @@ yaml@1.8.3: dependencies: "@babel/runtime" "^7.8.7" +yaml@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.1.1.tgz#1e06fb4ca46e60d9da07e4f786ea370ed3c3cfec" + integrity sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw== + yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.1: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" From 2c85e3693134995ac4f7560cb27efebdb27c07cc Mon Sep 17 00:00:00 2001 From: Chris Brame Date: Mon, 30 May 2022 21:59:40 -0400 Subject: [PATCH 2/8] chore(core): updates for configuration changes --- kubernetes/configmap.yaml | 6 +++--- kubernetes/trudesk-deployment.yaml | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/kubernetes/configmap.yaml b/kubernetes/configmap.yaml index 2c052649a..2c2433e43 100644 --- a/kubernetes/configmap.yaml +++ b/kubernetes/configmap.yaml @@ -1,13 +1,13 @@ apiVersion: v1 kind: ConfigMap metadata: - name: trudesk-config-json + name: trudesk-config-yml namespace: default data: - config.json: |- + config.yml: |- { "tokens": { "secret": "SECRET_USED_TO_HASH" } - } \ No newline at end of file + } diff --git a/kubernetes/trudesk-deployment.yaml b/kubernetes/trudesk-deployment.yaml index bbf4d5084..66bc3a3a2 100644 --- a/kubernetes/trudesk-deployment.yaml +++ b/kubernetes/trudesk-deployment.yaml @@ -58,10 +58,10 @@ spec: name: trudesk-uploads - mountPath: /usr/src/trudesk/backups name: trudesk-backups - - mountPath: /usr/src/trudesk/config.json - name: trudesk-config-json + - mountPath: /usr/src/trudesk/config.yml + name: trudesk-config-yml readOnly: true - subPath: config.json + subPath: config.yml restartPolicy: Always volumes: - name: trudesk-uploads @@ -70,9 +70,9 @@ spec: - name: trudesk-backups persistentVolumeClaim: claimName: trudesk-backups - - name: trudesk-config-json + - name: trudesk-config-yml configMap: - name: trudesk-config-json + name: trudesk-config-yml status: {} From 62dd5453e5576dda8fec6594144fee7f95a12ae4 Mon Sep 17 00:00:00 2001 From: Chris Brame Date: Mon, 30 May 2022 22:00:07 -0400 Subject: [PATCH 3/8] chore(cache): use new configuration yml --- src/cache/cache.js | 8 +++++++- src/cache/index.js | 5 +++-- src/controllers/install.js | 5 +++-- src/routes/index.js | 9 +++------ 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/cache/cache.js b/src/cache/cache.js index 4a42084bc..a3b7513be 100644 --- a/src/cache/cache.js +++ b/src/cache/cache.js @@ -24,7 +24,11 @@ cache.init = function () { cache.env = _.merge(cache.env, env) spawnCache() - setInterval(spawnCache, 55 * 60 * 1000) + setInterval(spawnCache, 5 * 60 * 1000) +} + +cache.forceRefresh = function() { + spawnCache() } function spawnCache () { @@ -35,6 +39,8 @@ function spawnCache () { env: cache.env }) + cache.fork = n + global.forks.push({ name: 'cache', fork: n }) n.on('message', function (data) { diff --git a/src/cache/index.js b/src/cache/index.js index bf402e82d..4b30a2ce7 100644 --- a/src/cache/index.js +++ b/src/cache/index.js @@ -27,7 +27,8 @@ global.env = process.env.NODE_ENV || 'production' function loadConfig () { nconf.file({ - file: path.join(__dirname, '/../../config.json') + file: path.join(__dirname, '/../../config.yml'), + format: require('nconf-yaml') }) nconf.defaults({ @@ -61,7 +62,7 @@ function restartRefreshClock () { refreshTimer = setInterval(function () { truCache.refreshCache() winston.debug('Refreshing Cache...') - }, 55 * 60 * 1000) + }, 5 * 60 * 1000) } truCache.refreshCache = function (callback) { diff --git a/src/controllers/install.js b/src/controllers/install.js index 4d2fb82c3..3236722f9 100644 --- a/src/controllers/install.js +++ b/src/controllers/install.js @@ -404,8 +404,9 @@ installController.install = function (req, res) { if (process.env.TRUDESK_DOCKER) return next() // Write Configfile const fs = require('fs') - const configFile = path.join(__dirname, '../../config.json') + const configFile = path.join(__dirname, '../../config.yml') const chance = new Chance() + const YAML = require('yaml') const conf = { mongo: { @@ -422,7 +423,7 @@ installController.install = function (req, res) { } } - fs.writeFile(configFile, JSON.stringify(conf, null, 4), function (err) { + fs.writeFile(configFile, YAML.stringify(conf), function (err) { if (err) { winston.error('FS Error: ' + err.message) return next('FS Error: ' + err.message) diff --git a/src/routes/index.js b/src/routes/index.js index 54a84c277..f9b2dd588 100644 --- a/src/routes/index.js +++ b/src/routes/index.js @@ -405,12 +405,9 @@ function mainRoutes (router, middleware, controllers) { }) router.get('/debug/cache/refresh', function (req, res) { - const _ = require('lodash') - - const forkProcess = _.find(global.forks, { name: 'cache' }) - forkProcess.fork.send({ name: 'cache:refresh' }) - - res.send('OK') + const cache = require('../cache/cache.js') + cache.forceRefresh() + return res.send('OK') }) router.get('/debug/restart', function (req, res) { From 9d673bea171e5930ad5b6b78fcd6d5598cac5e1e Mon Sep 17 00:00:00 2001 From: Chris Brame Date: Mon, 30 May 2022 23:00:20 -0400 Subject: [PATCH 4/8] chore(core): convert and rename old config file --- app.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/app.js b/app.js index 665bf7f0e..8e070138d 100644 --- a/app.js +++ b/app.js @@ -60,6 +60,9 @@ if (nconf.get('config')) { configFile = path.resolve(__dirname, nconf.get('config')) } +// Make sure we convert the .json file to .yml +checkForOldConfig() + const configExists = fs.existsSync(configFile) function launchInstallServer () { @@ -80,8 +83,23 @@ function loadConfig () { }) } +function checkForOldConfig() { + const oldConfigFile = path.join(__dirname, '/config.json') + if (fs.existsSync(oldConfigFile)) { + // Convert config to yaml. + const content = fs.readFileSync(oldConfigFile) + const YAML = require('yaml') + const data = JSON.parse(content) + + fs.writeFileSync(configFile, YAML.stringify(data)) + + // Rename the old config.json to config.json.bk + fs.renameSync(oldConfigFile, path.join(__dirname, '/config.json.bk')) + } +} + function start () { - if (!isDocker) loadConfig() + if (!isDocker)loadConfig() const _db = require('./src/database') From 9a684e570ead58cea2eb8ecade5e3521f719d5cf Mon Sep 17 00:00:00 2001 From: Chris Brame Date: Mon, 30 May 2022 18:50:31 -0400 Subject: [PATCH 5/8] ci(build): files --- public/js/3.js | 2 +- public/js/4.js | 2 +- public/js/6.js | 2 +- public/js/7.js | 2 +- public/js/8.js | 2 +- public/js/truRequire.js | 2 +- public/js/trudesk.min.js | 2 +- public/js/vendor.js | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/public/js/3.js b/public/js/3.js index 5859ab1dc..0d57e8c0c 100644 --- a/public/js/3.js +++ b/public/js/3.js @@ -1 +1 @@ -(self.webpackChunktrudesk=self.webpackChunktrudesk||[]).push([[3],{14:(module,__unused_webpack_exports,__webpack_require__)=>{var __webpack_provided_window_dot_jQuery=__webpack_require__(0);!function(Q,X,w){"use strict";function I(b){return function(){var c,a=arguments[0];for(c="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.4.7/"+(b?b+"/":"")+a,a=1;a").append(b).html();try{return b[0].nodeType===Pa?F(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,(function(a,b){return"<"+F(b)}))}catch(d){return F(c)}}function xc(b){try{return decodeURIComponent(b)}catch(a){}}function yc(b){var a={};return m((b||"").split("&"),(function(b){var d,e,f;b&&(e=b=b.replace(/\+/g,"%20"),-1!==(d=b.indexOf("="))&&(e=b.substring(0,d),f=b.substring(d+1)),A(e=xc(e))&&(f=!A(f)||xc(f),ta.call(a,e)?J(a[e])?a[e].push(f):a[e]=[a[e],f]:a[e]=f))})),a}function Pb(b){var a=[];return m(b,(function(b,d){J(b)?m(b,(function(b){a.push(la(d,!0)+(!0===b?"":"="+la(b,!0)))})):a.push(la(d,!0)+(!0===b?"":"="+la(b,!0)))})),a.length?a.join("&"):""}function ob(b){return la(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function la(b,a){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function Zd(b,a){var c,d,e={};m(Qa,(function(a){a+="app",!c&&b.hasAttribute&&b.hasAttribute(a)&&(c=b,d=b.getAttribute(a))})),m(Qa,(function(a){var e;a+="app",!c&&(e=b.querySelector("["+a.replace(":","\\:")+"]"))&&(c=e,d=e.getAttribute(a))})),c&&(e.strictDi=null!==function(b,a){var c,d,e=Qa.length;for(d=0;d/,">"))}return(a=a||[]).unshift(["$provide",function(a){a.value("$rootElement",b)}]),c.debugInfoEnabled&&a.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]),a.unshift("ng"),(d=fb(a,c.strictDi)).invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply((function(){b.data("$injector",d),c(b)(a)}))}]),d},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;if(Q&&e.test(Q.name)&&(c.debugInfoEnabled=!0,Q.name=Q.name.replace(e,"")),Q&&!f.test(Q.name))return d();Q.name=Q.name.replace(f,""),da.resumeBootstrap=function(b){return m(b,(function(b){a.push(b)})),d()},x(da.resumeDeferredBootstrap)&&da.resumeDeferredBootstrap()}function $d(){Q.name="NG_ENABLE_DEBUG_INFO!"+Q.name,Q.location.reload()}function ae(b){if(!(b=da.element(b).injector()))throw Ea("test");return b.get("$$testability")}function Ac(b,a){return a=a||"_",b.replace(be,(function(b,d){return(d?a:"")+b.toLowerCase()}))}function qb(b,a,c){if(!b)throw Ea("areq",a||"?",c||"required");return b}function Sa(b,a,c){return c&&J(b)&&(b=b[b.length-1]),qb(x(b),a,"not a function, got "+(b&&"object"==typeof b?b.constructor.name||"Object":typeof b)),b}function Ta(b,a){if("hasOwnProperty"===b)throw Ea("badname",a)}function Cc(b,a,c){if(!a)return b;for(var d,e=b,f=(a=a.split(".")).length,h=0;h")+d[2],d=d[0];d--;)c=c.lastChild;f=db(f,c.childNodes),(c=e.firstChild).textContent=""}else f.push(a.createTextNode(b));return e.textContent="",e.innerHTML="",m(f,(function(a){e.appendChild(a)})),e}function R(b){if(b instanceof R)return b;var a,c;if(G(b)&&(b=T(b),a=!0),!(this instanceof R)){if(a&&"<"!=b.charAt(0))throw Tb("nosel");return new R(b)}a&&(a=X,b=(c=Ef.exec(b))?[a.createElement(c[1])]:(c=Mc(b,a))?c.childNodes:[]);Nc(this,b)}function Ub(b){return b.cloneNode(!0)}function ub(b,a){if(a||vb(b),b.querySelectorAll)for(var c=b.querySelectorAll("*"),d=0,e=c.length;dk&&this.remove(r.key),b}},get:function(a){if(k").parent()[0])}));var f=S(a,b,a,c,d,e);W.$$addScopeClass(a);var g=null;return function(b,c,d){qb(b,"scope");var e=(d=d||{}).parentBoundTranscludeFn,h=d.transcludeControllers;if(d=d.futureParentElement,e&&e.$$boundTransclude&&(e=e.$$boundTransclude),g||(g=(d=d&&d[0])&&"foreignobject"!==wa(d)&&d.toString().match(/SVG/)?"svg":"html"),d="html"!==g?B(Xb(g,B("
").append(a).html())):c?Ra.clone.call(a):a,h)for(var k in h)d.data("$"+k+"Controller",h[k].instance);return W.$$addScopeInfo(d,b),c&&c(d,b),f&&f(b,d,d,e),d}}function S(a,b,c,d,e,f){for(var k,l,r,n,q,h=[],t=0;tD.priority)break;if((M=D.scope)&&(D.templateUrl||(C(M)?(Q("new/isolated scope",u||S,D,v),u=D):Q("new/isolated scope",u,D,v)),S=S||D),y=D.name,!D.templateUrl&&D.controller&&(M=D.controller,ba=ba||fa(),Q("'"+y+"' controller",ba[y],D,v),ba[y]=D),(M=D.transclude)&&(N=!0,D.$$tlb||(Q("transclusion",z,D,v),z=D),"element"==M?(ia=!0,H=D.priority,M=v,v=d.$$element=B(X.createComment(" "+y+": "+d[y]+" ")),b=v[0],U(f,ua.call(M,0),b),Ka=W(M,e,H,g&&g.name,{nonTlbTranscludeDirective:z})):(M=B(Ub(b)).contents(),v.empty(),Ka=W(M,e))),D.template)if(m=!0,Q("template",L,D,v),L=D,M=x(D.template)?D.template(v,d):D.template,M=ha(M),D.replace){if(g=D,M=Sb.test(M)?Xc(Xb(D.templateNamespace,T(M))):[],b=M[0],1!=M.length||b.nodeType!==pa)throw ga("tplrt",y,"");U(f,v,b),M=ca(b,[],F={$attr:{}});var Lf=a.splice(I+1,a.length-(I+1));u&&A(M),a=a.concat(M).concat(Lf),Yc(d,F),F=a.length}else v.html(M);if(D.templateUrl)m=!0,Q("template",L,D,v),L=D,D.replace&&(g=D),K=Mf(a.splice(I,a.length-I),v,d,f,N&&Ka,h,k,{controllerDirectives:ba,newScopeDirective:S!==D&&S,newIsolateScopeDirective:u,templateDirective:L,nonTlbTranscludeDirective:z}),F=a.length;else if(D.compile)try{x(na=D.compile(v,d,Ka))?n(null,na,P,R):na&&n(na.pre,na.post,P,R)}catch(V){c(V,xa(v))}D.terminal&&(K.terminal=!0,H=Math.max(H,D.priority))}return K.scope=S&&!0===S.scope,K.transcludeOnThisElement=N,K.templateOnThisElement=m,K.transclude=Ka,r.hasElementTranscludeDirective=ia,K}function A(a){for(var b=0,c=a.length;bn.priority)&&-1!=n.restrict.indexOf(f)&&(k&&(n=Nb(n,{$$start:k,$$end:l})),b.push(n),h=n)}catch(H){c(H)}return h}function I(b){if(e.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,f=c.length;d"+b+"",c.childNodes[0].childNodes;default:return b}}function V(a,c,d,e,f){var h=function(a,b){if("srcdoc"==b)return ia.HTML;var c=wa(a);return"xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b)?ia.RESOURCE_URL:void 0}(a,e);f=g[e]||f;var l=b(d,!0,h,f);if(l){if("multiple"===e&&"select"===wa(a))throw ga("selmulti",xa(a));c.push({priority:100,compile:function(){return{pre:function(a,c,g){if(c=g.$$observers||(g.$$observers=fa()),k.test(e))throw ga("nodomevents");var r=g[e];r!==d&&(l=r&&b(r,!0,h,f),d=r),l&&(g[e]=l(a),(c[e]||(c[e]=[])).$$inter=!0,(g.$$observers&&g.$$observers[e].$$scope||a).$watch(l,(function(a,b){"class"===e&&a!=b?g.$updateClass(a,b):g.$set(e,a)})))}}}})}}function U(a,b,c){var g,h,d=b[0],e=b.length,f=d.parentNode;if(a)for(g=0,h=a.length;g=a)return b;for(;a--;)8===b[a].nodeType&&Nf.call(b,a,1);return b}function Xe(){var b={},a=!1;this.register=function(a,d){Ta(a,"controller"),C(a)?P(b,a):b[a]=d},this.allowGlobals=function(){a=!0},this.$get=["$injector","$window",function(c,d){function e(a,b,c,d){if(!a||!C(a.$scope))throw I("$controller")("noscp",d,b);a.$scope[b]=c}return function(f,h,g,l){var k,n,p;if(g=!0===g,l&&G(l)&&(p=l),G(f)){if(!(l=f.match(Vc)))throw Of("ctrlfmt",f);n=l[1],p=p||l[3],Sa(f=b.hasOwnProperty(n)?b[n]:Cc(h.$scope,n,!0)||(a?Cc(d,n,!0):w),n,!0)}return g?(g=(J(f)?f[f.length-1]:f).prototype,k=Object.create(g||null),p&&e(h,p,k,n||f.name),P((function(){var a=c.invoke(f,k,h,n);return a!==k&&(C(a)||x(a))&&(k=a,p&&e(h,p,k,n||f.name)),k}),{instance:k,identifier:p})):(k=c.instantiate(f,h,n),p&&e(h,p,k,n||f.name),k)}}]}function Ye(){this.$get=["$window",function(b){return B(b.document)}]}function Ze(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Yb(b){return C(b)?ea(b)?b.toISOString():eb(b):b}function df(){this.$get=function(){return function(b){if(!b)return"";var a=[];return nc(b,(function(b,d){null===b||v(b)||(J(b)?m(b,(function(b,c){a.push(la(d)+"="+la(Yb(b)))})):a.push(la(d)+"="+la(Yb(b))))})),a.join("&")}}}function ef(){this.$get=function(){return function(b){if(!b)return"";var c=[];return function a(b,e,f){null===b||v(b)||(J(b)?m(b,(function(b,c){a(b,e+"["+(C(b)?c:"")+"]")})):C(b)&&!ea(b)?nc(b,(function(b,c){a(b,e+(f?"":"[")+c+(f?"":"]"))})):c.push(la(e)+"="+la(Yb(b))))}(b,"",!0),c.join("&")}}}function Zb(b,a){if(G(b)){var c=b.replace(Pf,"").trim();if(c){var d=a("Content-Type");(d=d&&0===d.indexOf(ad))||(d=(d=c.match(Qf))&&Rf[d[0]].test(c)),d&&(b=vc(c))}}return b}function bd(b){var c,a=fa();return G(b)?m(b.split("\n"),(function(b){c=b.indexOf(":");var e=F(T(b.substr(0,c)));b=T(b.substr(c+1)),e&&(a[e]=a[e]?a[e]+", "+b:b)})):C(b)&&m(b,(function(b,c){var f=F(c),h=T(b);f&&(a[f]=a[f]?a[f]+", "+h:h)})),a}function cd(b){var a;return function(c){return a||(a=bd(b)),c?(void 0===(c=a[F(c)])&&(c=null),c):a}}function dd(b,a,c,d){return x(d)?d(b,a,c):(m(d,(function(d){b=d(b,a,c)})),b)}function cf(){var b=this.defaults={transformResponse:[Zb],transformRequest:[function(a){return C(a)&&"[object File]"!==va.call(a)&&"[object Blob]"!==va.call(a)&&"[object FormData]"!==va.call(a)?eb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ja($b),put:ja($b),patch:ja($b)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},a=!1;this.useApplyAsync=function(b){return A(b)?(a=!!b,this):a};var c=!0;this.useLegacyPromiseExtensions=function(a){return A(a)?(c=!!a,this):c};var d=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(e,f,h,g,l,k){function n(a){function d(a){var b=P({},a);return b.data=a.data?dd(a.data,a.headers,a.status,f.transformResponse):a.data,200<=(a=a.status)&&300>a?b:l.reject(b)}if(!da.isObject(a))throw I("$http")("badreq",a);var f=P({method:"get",transformRequest:b.transformRequest,transformResponse:b.transformResponse,paramSerializer:b.paramSerializer},a);f.headers=function(a){var f,g,h,c=b.headers,d=P({},a.headers);c=P({},c.common,c[F(a.method)]);a:for(f in c){for(h in g=F(f),d)if(F(h)===g)continue a;d[f]=c[f]}return function(a,b){var c,d={};return m(a,(function(a,e){x(a)?null!=(c=a(b))&&(d[e]=c):d[e]=a})),d}(d,ja(a))}(a),f.method=sb(f.method),f.paramSerializer=G(f.paramSerializer)?k.get(f.paramSerializer):f.paramSerializer;var g=[function(a){var c=a.headers,e=dd(a.data,cd(c),w,a.transformRequest);return v(e)&&m(c,(function(a,b){"content-type"===F(b)&&delete c[b]})),v(a.withCredentials)&&!v(b.withCredentials)&&(a.withCredentials=b.withCredentials),p(a,e).then(d,d)},w],h=l.when(f);for(m(E,(function(a){(a.request||a.requestError)&&g.unshift(a.request,a.requestError),(a.response||a.responseError)&&g.push(a.response,a.responseError)}));g.length;){a=g.shift();var r=g.shift();h=h.then(a,r)}return c?(h.success=function(a){return Sa(a,"fn"),h.then((function(b){a(b.data,b.status,b.headers,f)})),h},h.error=function(a){return Sa(a,"fn"),h.then(null,(function(b){a(b.data,b.status,b.headers,f)})),h}):(h.success=ed("success"),h.error=ed("error")),h}function p(c,d){function k(a,b,d,e){(200<=(b=-1<=b?b:0)&&300>b?O.resolve:O.reject)({data:a,status:b,headers:cd(d),config:c,statusText:e})}function p(a){k(a.data,a.status,ja(a.headers()),a.statusText)}function E(){var a=n.pendingRequests.indexOf(c);-1!==a&&n.pendingRequests.splice(a,1)}var L,m,O=l.defer(),H=O.promise,S=c.headers,ba=function(a,b){return 0b?L.put(ba,[b,c,bd(d),e]):L.remove(ba)),a?g.$applyAsync(f):(f(),g.$$phase||g.$apply())}),S,c.timeout,c.withCredentials,c.responseType)),H}var t=h("$http");b.paramSerializer=G(b.paramSerializer)?k.get(b.paramSerializer):b.paramSerializer;var E=[];return m(d,(function(a){E.unshift(G(a)?k.get(a):k.invoke(a))})),n.pendingRequests=[],function(a){m(arguments,(function(a){n[a]=function(b,c){return n(P({},c||{},{method:a,url:b}))}}))}("get","delete","head","jsonp"),function(a){m(arguments,(function(a){n[a]=function(b,c,d){return n(P({},d||{},{method:a,url:b,data:c}))}}))}("post","put","patch"),n.defaults=b,n}]}function gf(){this.$get=function(){return function(){return new Q.XMLHttpRequest}}}function ff(){this.$get=["$browser","$window","$document","$xhrFactory",function(b,a,c,d){return function(b,a,c,d,e){function f(a,b,c){var f=e.createElement("script"),n=null;return f.type="text/javascript",f.src=a,f.async=!0,n=function(a){f.removeEventListener("load",n,!1),f.removeEventListener("error",n,!1),e.body.removeChild(f),f=null;var h=-1,t="unknown";a&&("load"!==a.type||d[b].called||(a={type:"error"}),t=a.type,h="error"===a.type?404:200),c&&c(h,t)},f.addEventListener("load",n,!1),f.addEventListener("error",n,!1),e.body.appendChild(f),n}return function(e,g,l,k,n,p,r,t){function E(){q&&q(),z&&z.abort()}function K(a,d,e,f,g){A(s)&&c.cancel(s),q=z=null,a(d,e,f,g),b.$$completeOutstandingRequest(y)}if(b.$$incOutstandingRequestCount(),g=g||b.url(),"jsonp"==F(e)){var u="_"+(d.counter++).toString(36);d[u]=function(a){d[u].data=a,d[u].called=!0};var q=f(g.replace("JSON_CALLBACK","angular.callbacks."+u),u,(function(a,b){K(k,a,d[u].data,"",b),d[u]=y}))}else{var z=a(e,g);if(z.open(e,g,!0),m(n,(function(a,b){A(a)&&z.setRequestHeader(b,a)})),z.onload=function(){var a=z.statusText||"",b="response"in z?z.response:z.responseText,c=1223===z.status?204:z.status;0===c&&(c=b?200:"file"==Aa(g).protocol?404:0),K(k,c,b,z.getAllResponseHeaders(),a)},e=function(){K(k,-1,null,null,"")},z.onerror=e,z.onabort=e,r&&(z.withCredentials=!0),t)try{z.responseType=t}catch(N){if("json"!==t)throw N}z.send(v(l)?null:l)}if(0=l&&(u.resolve(E),t(q.$$intervalId),delete f[q.$$intervalId]),K||b.$apply()}),g),f[q.$$intervalId]=u,q}var f={};return e.cancel=function(b){return!(!b||!(b.$$intervalId in f))&&(f[b.$$intervalId].reject("canceled"),a.clearInterval(b.$$intervalId),delete f[b.$$intervalId],!0)},e}]}function ac(b){for(var a=(b=b.split("/")).length;a--;)b[a]=ob(b[a]);return b.join("/")}function gd(b,a){var c=Aa(b);a.$$protocol=c.protocol,a.$$host=c.hostname,a.$$port=Y(c.port)||Tf[c.protocol]||null}function hd(b,a){var c="/"!==b.charAt(0);c&&(b="/"+b);var d=Aa(b);a.$$path=decodeURIComponent(c&&"/"===d.pathname.charAt(0)?d.pathname.substring(1):d.pathname),a.$$search=yc(d.search),a.$$hash=decodeURIComponent(d.hash),a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function sa(b,a){if(0===a.indexOf(b))return a.substr(b.length)}function Ja(b){var a=b.indexOf("#");return-1==a?b:b.substr(0,a)}function Cb(b){return b.replace(/(#.+)|#$/,"$1")}function bc(b,a,c){this.$$html5=!0,c=c||"",gd(b,this),this.$$parse=function(b){var c=sa(a,b);if(!G(c))throw Db("ipthprfx",b,a);hd(c,this),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var b=Pb(this.$$search),c=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=ac(this.$$path)+(b?"?"+b:"")+c,this.$$absUrl=a+this.$$url.substr(1)},this.$$parseLinkUrl=function(d,e){return e&&"#"===e[0]?(this.hash(e.slice(1)),!0):(A(f=sa(b,d))?(h=f,h=A(f=sa(c,f))?a+(sa("/",f)||f):b+h):A(f=sa(a,d))?h=a+f:a==d+"/"&&(h=a),h&&this.$$parse(h),!!h);var f,h}}function cc(b,a,c){gd(b,this),this.$$parse=function(d){var f;v(e=sa(b,d)||sa(a,d))||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",v(e)&&(b=d,this.replace())):v(f=sa(c,e))&&(f=e),hd(f,this),d=this.$$path;var e=b,h=/^\/[A-Z]:(\/.*)/;0===f.indexOf(e)&&(f=f.replace(e,"")),h.exec(f)||(d=(f=h.exec(d))?f[1]:d),this.$$path=d,this.$$compose()},this.$$compose=function(){var a=Pb(this.$$search),e=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=ac(this.$$path)+(a?"?"+a:"")+e,this.$$absUrl=b+(this.$$url?c+this.$$url:"")},this.$$parseLinkUrl=function(a,c){return Ja(b)==Ja(a)&&(this.$$parse(a),!0)}}function id(b,a,c){this.$$html5=!0,cc.apply(this,arguments),this.$$parseLinkUrl=function(d,e){return e&&"#"===e[0]?(this.hash(e.slice(1)),!0):(b==Ja(d)?f=d:(h=sa(a,d))?f=b+c+h:a===d+"/"&&(f=a),f&&this.$$parse(f),!!f);var f,h},this.$$compose=function(){var a=Pb(this.$$search),e=this.$$hash?"#"+ob(this.$$hash):"";this.$$url=ac(this.$$path)+(a?"?"+a:"")+e,this.$$absUrl=b+c+this.$$url}}function Eb(b){return function(){return this[b]}}function jd(b,a){return function(c){return v(c)?this[b]:(this[b]=a(c),this.$$compose(),this)}}function hf(){var b="",a={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(a){return A(a)?(b=a,this):b},this.html5Mode=function(b){return bb(b)?(a.enabled=b,this):C(b)?(bb(b.enabled)&&(a.enabled=b.enabled),bb(b.requireBase)&&(a.requireBase=b.requireBase),bb(b.rewriteLinks)&&(a.rewriteLinks=b.rewriteLinks),this):a},this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(c,d,e,f,h){function g(a,b,c){var e=k.url(),f=k.$$state;try{d.url(a,b,c),k.$$state=d.state()}catch(g){throw k.url(e),k.$$state=f,g}}function l(a,b){c.$broadcast("$locationChangeSuccess",k.absUrl(),a,k.$$state,b)}var k,n;n=d.baseHref();var r,p=d.url();if(a.enabled){if(!n&&a.requireBase)throw Db("nobase");r=p.substring(0,p.indexOf("/",p.indexOf("//")+2))+(n||"/"),n=e.history?bc:id}else r=Ja(p),n=cc;var t=r.substr(0,Ja(r).lastIndexOf("/")+1);(k=new n(r,t,"#"+b)).$$parseLinkUrl(p,p),k.$$state=d.state();var E=/^\s*(javascript|mailto):/i;f.on("click",(function(b){if(a.rewriteLinks&&!b.ctrlKey&&!b.metaKey&&!b.shiftKey&&2!=b.which&&2!=b.button){for(var e=B(b.target);"a"!==wa(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var g=e.prop("href"),l=e.attr("href")||e.attr("xlink:href");C(g)&&"[object SVGAnimatedString]"===g.toString()&&(g=Aa(g.animVal).href),E.test(g)||!g||e.attr("target")||b.isDefaultPrevented()||!k.$$parseLinkUrl(g,l)||(b.preventDefault(),k.absUrl()!=d.url()&&(c.$apply(),h.angular["ff-684208-preventDefault"]=!0))}})),Cb(k.absUrl())!=Cb(p)&&d.url(k.absUrl(),!0);var K=!0;return d.onUrlChange((function(a,b){v(sa(t,a))?h.location.href=a:(c.$evalAsync((function(){var f,d=k.absUrl(),e=k.$$state;k.$$parse(a),k.$$state=b,f=c.$broadcast("$locationChangeStart",a,d,b,e).defaultPrevented,k.absUrl()===a&&(f?(k.$$parse(d),k.$$state=e,g(d,!1,e)):(K=!1,l(d,e)))})),c.$$phase||c.$digest())})),c.$watch((function(){var a=Cb(d.url()),b=Cb(k.absUrl()),f=d.state(),h=k.$$replace,r=a!==b||k.$$html5&&e.history&&f!==k.$$state;(K||r)&&(K=!1,c.$evalAsync((function(){var b=k.absUrl(),d=c.$broadcast("$locationChangeStart",b,a,k.$$state,f).defaultPrevented;k.absUrl()===b&&(d?(k.$$parse(a),k.$$state=f):(r&&g(b,h,f===k.$$state?null:k.$$state),l(a,f)))}))),k.$$replace=!1})),k}]}function jf(){var b=!0,a=this;this.debugEnabled=function(a){return A(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||y;a=!1;try{a=!!e.apply}catch(l){}return a?function(){var a=[];return m(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 Xa(b,a){if("__defineGetter__"===b||"__defineSetter__"===b||"__lookupGetter__"===b||"__lookupSetter__"===b||"__proto__"===b)throw Z("isecfld",a);return b}function kd(b,a){if(!G(b+=""))throw Z("iseccst",a);return b}function Ba(b,a){if(b){if(b.constructor===b)throw Z("isecfn",a);if(b.window===b)throw Z("isecwindow",a);if(b.children&&(b.nodeName||b.prop&&b.attr&&b.find))throw Z("isecdom",a);if(b===Object)throw Z("isecobj",a)}return b}function ld(b,a){if(b){if(b.constructor===b)throw Z("isecfn",a);if(b===Uf||b===Vf||b===Wf)throw Z("isecff",a)}}function md(b,a){if(b&&(b===(0).constructor||b===(!1).constructor||b==="".constructor||b==={}.constructor||b===[].constructor||b===Function.constructor))throw Z("isecaf",a)}function Xf(b,a){return void 0!==b?b:a}function nd(b,a){return void 0===b?a:void 0===a?b:b+a}function U(b,a){var c,d;switch(b.type){case s.Program:c=!0,m(b.body,(function(b){U(b.expression,a),c=c&&b.expression.constant})),b.constant=c;break;case s.Literal:b.constant=!0,b.toWatch=[];break;case s.UnaryExpression:U(b.argument,a),b.constant=b.argument.constant,b.toWatch=b.argument.toWatch;break;case s.BinaryExpression:U(b.left,a),U(b.right,a),b.constant=b.left.constant&&b.right.constant,b.toWatch=b.left.toWatch.concat(b.right.toWatch);break;case s.LogicalExpression:U(b.left,a),U(b.right,a),b.constant=b.left.constant&&b.right.constant,b.toWatch=b.constant?[]:[b];break;case s.ConditionalExpression:U(b.test,a),U(b.alternate,a),U(b.consequent,a),b.constant=b.test.constant&&b.alternate.constant&&b.consequent.constant,b.toWatch=b.constant?[]:[b];break;case s.Identifier:b.constant=!1,b.toWatch=[b];break;case s.MemberExpression:U(b.object,a),b.computed&&U(b.property,a),b.constant=b.object.constant&&(!b.computed||b.property.constant),b.toWatch=[b];break;case s.CallExpression:c=!!b.filter&&!a(b.callee.name).$stateful,d=[],m(b.arguments,(function(b){U(b,a),c=c&&b.constant,b.constant||d.push.apply(d,b.toWatch)})),b.constant=c,b.toWatch=b.filter&&!a(b.callee.name).$stateful?d:[b];break;case s.AssignmentExpression:U(b.left,a),U(b.right,a),b.constant=b.left.constant&&b.right.constant,b.toWatch=[b];break;case s.ArrayExpression:c=!0,d=[],m(b.elements,(function(b){U(b,a),c=c&&b.constant,b.constant||d.push.apply(d,b.toWatch)})),b.constant=c,b.toWatch=d;break;case s.ObjectExpression:c=!0,d=[],m(b.properties,(function(b){U(b.value,a),c=c&&b.value.constant,b.value.constant||d.push.apply(d,b.value.toWatch)})),b.constant=c,b.toWatch=d;break;case s.ThisExpression:b.constant=!1,b.toWatch=[]}}function od(b){if(1==b.length){var a=(b=b[0].expression).toWatch;return 1!==a.length||a[0]!==b?a:w}}function pd(b){return b.type===s.Identifier||b.type===s.MemberExpression}function qd(b){if(1===b.body.length&&pd(b.body[0].expression))return{type:s.AssignmentExpression,left:b.body[0].expression,right:{type:s.NGValueParameter},operator:"="}}function rd(b){return 0===b.body.length||1===b.body.length&&(b.body[0].expression.type===s.Literal||b.body[0].expression.type===s.ArrayExpression||b.body[0].expression.type===s.ObjectExpression)}function sd(b,a){this.astBuilder=b,this.$filter=a}function td(b,a){this.astBuilder=b,this.$filter=a}function Fb(b){return"constructor"==b}function dc(b){return x(b.valueOf)?b.valueOf():Yf.call(b)}function kf(){var b=fa(),a=fa();this.$get=["$filter",function(c){function d(a,b){return null==a||null==b?a===b:("object"!=typeof a||"object"!=typeof(a=dc(a)))&&(a===b||a!=a&&b!=b)}function e(a,b,c,e,f){var h;if(1===(g=e.inputs).length){var k=d,g=g[0];return a.$watch((function(a){var b=g(a);return d(b,k)||(h=e(a,w,w,[b]),k=b&&dc(b)),h}),b,c,f)}for(var l=[],n=[],p=0,m=g.length;p=this.promise.$$state.status&&d&&d.length&&b((function(){for(var b,e,f=0,g=d.length;fa)for(b in l++,f)ta.call(e,b)||(t--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$stateful=!0;var e,f,h,d=this,k=1t&&(u[D=4-t]||(u[D]=[]),u[D].push({msg:x(b.exp)?"fn: "+(b.exp.name||b.exp.toString()):b.exp,newVal:f,oldVal:g}))}catch(y){h(y)}if(!(k=m.$$watchersCount&&m.$$childHead||m!==this&&m.$$nextSibling))for(;m!==this&&!(k=m.$$nextSibling);)m=m.$parent}while(m=k);if((r||z.length)&&!t--)throw q.$$phase=null,c("infdig",a,u)}while(r||z.length);for(q.$$phase=null;N.length;)try{N.shift()()}catch(A){h(A)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;for(var b in this.$broadcast("$destroy"),this.$$destroyed=!0,this===q&&l.$$applicationDestroyed(),r(this,-this.$$watchersCount),this.$$listenerCount)t(this,this.$$listenerCount[b],b);a&&a.$$childHead==this&&(a.$$childHead=this.$$nextSibling),a&&a.$$childTail==this&&(a.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=y,this.$on=this.$watch=this.$watchGroup=function(){return y},this.$$listeners={},this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=this.$$watchers=null}},$eval:function(a,b){return g(a)(this,b)},$evalAsync:function(a,b){q.$$phase||z.length||l.defer((function(){z.length&&q.$digest()})),z.push({scope:this,expression:a,locals:b})},$$postDigest:function(a){N.push(a)},$apply:function(a){try{p("$apply");try{return this.$eval(a)}finally{q.$$phase=null}}catch(b){h(b)}finally{try{q.$digest()}catch(c){throw h(c),c}}},$applyAsync:function(a){var c=this;a&&w.push((function(){c.$eval(a)})),null===e&&(e=l.defer((function(){q.$apply(s)})))},$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=c.indexOf(b);-1!==d&&(c[d]=null,t(e,1,a))}},$emit:function(a,b){var d,l,n,c=[],e=this,f=!1,g={name:a,targetScope:e,stopPropagation:function(){f=!0},preventDefault:function(){g.defaultPrevented=!0},defaultPrevented:!1},k=db([g],arguments,1);do{for(d=e.$$listeners[a]||c,g.currentScope=e,l=0,n=d.length;lWa)throw Ca("iequirks");var d=ja(oa);d.isEnabled=function(){return b},d.trustAs=c.trustAs,d.getTrusted=c.getTrusted,d.valueOf=c.valueOf,b||(d.trustAs=d.getTrusted=function(a,b){return b},d.valueOf=$a),d.parseAs=function(b,c){var e=a(c);return e.literal&&e.constant?e:a(c,(function(a){return d.getTrusted(b,a)}))};var e=d.parseAs,f=d.getTrusted,h=d.trustAs;return m(oa,(function(a,b){var c=F(b);d[gb("parse_as_"+c)]=function(b){return e(a,b)},d[gb("get_trusted_"+c)]=function(b){return f(a,b)},d[gb("trust_as_"+c)]=function(b){return h(a,b)}})),d}]}function qf(){this.$get=["$window","$document",function(b,a){var h,c={},d=Y((/android (\d+)/.exec(F((b.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((b.navigator||{}).userAgent),f=a[0]||{},g=/^(Moz|webkit|ms)(?=[A-Z])/,l=f.body&&f.body.style,k=!1,n=!1;if(l){for(var p in l)if(k=g.exec(p)){h=(h=k[0]).substr(0,1).toUpperCase()+h.substr(1);break}h||(h="WebkitOpacity"in l&&"webkit"),k=!(!("transition"in l)&&!(h+"Transition"in l)),n=!(!("animation"in l)&&!(h+"Animation"in l)),!d||k&&n||(k=G(l.webkitTransition),n=G(l.webkitAnimation))}return{history:!(!b.history||!b.history.pushState||4>d||e),hasEvent:function(a){if("input"===a&&11>=Wa)return!1;if(v(c[a])){var b=f.createElement("div");c[a]="on"+a in b}return c[a]},csp:Fa(),vendorPrefix:h,transitions:k,animations:n,android:d}}]}function sf(){this.$get=["$templateCache","$http","$q","$sce",function(b,a,c,d){function e(f,h){e.totalPendingRequests++,G(f)&&b.get(f)||(f=d.getTrustedResourceUrl(f));var g=a.defaults&&a.defaults.transformResponse;return J(g)?g=g.filter((function(a){return a!==Zb})):g===Zb&&(g=null),a.get(f,{cache:b,transformResponse:g}).finally((function(){e.totalPendingRequests--})).then((function(a){return b.put(f,a.data),a.data}),(function(a){if(!h)throw ga("tpload",f,a.status,a.statusText);return c.reject(a)}))}return e.totalPendingRequests=0,e}]}function tf(){this.$get=["$rootScope","$browser","$location",function(b,a,c){return{findBindings:function(a,b,c){a=a.getElementsByClassName("ng-binding");var h=[];return m(a,(function(a){var d=da.element(a).data("$binding");d&&m(d,(function(d){c?new RegExp("(^|\\s)"+vd(b)+"(\\s|\\||$)").test(d)&&h.push(a):-1!=d.indexOf(b)&&h.push(a)}))})),h},findModels:function(a,b,c){for(var h=["ng-","data-ng-","ng\\:"],g=0;gb;if(!(h=1/0===(b=Math.abs(b)))&&!isFinite(b))return"";var g=b+"",l="",k=!1,n=[];(h&&(l="∞"),h||-1===g.indexOf("e"))||((p=g.match(/([\d\.]+)e(-?)(\d+)/))&&"-"==p[2]&&p[3]>e+1?b=0:(l=g,k=!0));if(h||k)0b&&(l=b.toFixed(e),b=parseFloat(l),l=l.replace(hc,d));else{h=(g.split(hc)[1]||"").length,v(e)&&(e=Math.min(Math.max(a.minFrac,h),a.maxFrac));g=(h=(""+(b=+(Math.round(+(b.toString()+"e"+e)).toString()+"e"+-e))).split(hc))[0];var h=h[1]||"",p=0,r=a.lgSize,t=a.gSize;if(g.length>=r+t)for(p=g.length-r,k=0;kb&&(d="-",b=-b),b=""+b;b.length-c)&&(e+=c),0===e&&-12==c&&(e=12),Gb(e,a,d)}}function Hb(b,a){return function(c,d){var e=c["get"+b]();return d[sb(a?"SHORT"+b:b)][e]}}function Ed(b){var a=new Date(b,0,1).getDay();return new Date(b,0,(4>=a?5:12)-a)}function Fd(b){return function(a){var c=Ed(a.getFullYear());return a=+new Date(a.getFullYear(),a.getMonth(),a.getDate()+(4-a.getDay()))-+c,Gb(a=1+Math.round(a/6048e5),b)}}function ic(b,a){return 0>=b.getFullYear()?a.ERAS[0]:a.ERAS[1]}function Ad(b){function a(a){var b;if(b=a.match(c)){a=new Date(0);var f=0,h=0,g=b[8]?a.setUTCFullYear:a.setFullYear,l=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=Y(b[9]+b[10]),h=Y(b[9]+b[11])),g.call(a,Y(b[1]),Y(b[2])-1,Y(b[3])),f=Y(b[4]||0)-f,h=Y(b[5]||0)-h,g=Y(b[6]||0),b=Math.round(1e3*parseFloat("0."+(b[7]||0))),l.call(a,f,h,g,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,f){var l,k,h="",g=[];if(e=e||"mediumDate",e=b.DATETIME_FORMATS[e]||e,G(c)&&(c=fg.test(c)?Y(c):a(c)),V(c)&&(c=new Date(c)),!ea(c)||!isFinite(c.getTime()))return c;for(;e;)(k=gg.exec(e))?e=(g=db(g,k,1)).pop():(g.push(e),e=null);var n=c.getTimezoneOffset();return f&&(n=wc(f,c.getTimezoneOffset()),c=Ob(c,f,!0)),m(g,(function(a){l=hg[a],h+=l?l(c,b.DATETIME_FORMATS,n):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")})),h}}function ag(){return function(b,a){return v(a)&&(a=2),eb(b,a)}}function bg(){return function(b,a,c){return a=1/0===Math.abs(Number(a))?Number(a):Y(a),isNaN(a)?b:(V(b)&&(b=b.toString()),J(b)||G(b)?(c=0>(c=!c||isNaN(c)?0:Y(c))&&c>=-b.length?b.length+c:c,0<=a?b.slice(c,c+a):0===c?b.slice(a,b.length):b.slice(Math.max(0,c+a),c)):b)}}function Cd(b){function a(a,c){return c=c?-1:1,a.map((function(a){var d=1,g=$a;if(x(a))g=a;else if(G(a)&&("+"!=a.charAt(0)&&"-"!=a.charAt(0)||(d="-"==a.charAt(0)?-1:1,a=a.substring(1)),""!==a&&(g=b(a)).constant)){var l=g();g=function(a){return a[l]}}return{get:g,descending:d*c}}))}function c(a){switch(typeof a){case"number":case"boolean":case"string":return!0;default:return!1}}return function(b,e,f){if(!Da(b))return b;J(e)||(e=[e]),0===e.length&&(e=["+"]);var h=a(e,f);return h.push({get:function(){return{}},descending:f?-1:1}),b=Array.prototype.map.call(b,(function(a,b){return{value:a,predicateValues:h.map((function(d){var e=d.get(a);return d=typeof e,null===e?(d="string",e="null"):"string"===d?e=e.toLowerCase():"object"===d&&("function"==typeof e.valueOf&&c(e=e.valueOf())||qc(e)&&c(e=e.toString())||(e=b)),{value:e,type:d}}))}})),b.sort((function(a,b){for(var c=0,d=0,e=h.length;db||37<=b&&40>=b||n(a,this,this.value)})),e.hasEvent("paste")&&a.on("paste cut",n)}a.on("change",l),d.$render=function(){var b=d.$isEmpty(d.$viewValue)?"":d.$viewValue;a.val()!==b&&a.val(b)}}function Kb(b,a){return function(c,d){var e,f;if(ea(c))return c;if(G(c)){if('"'==c.charAt(0)&&'"'==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1)),ig.test(c))return new Date(c);if(b.lastIndex=0,e=b.exec(c))return e.shift(),f=d?{yyyy:d.getFullYear(),MM:d.getMonth()+1,dd:d.getDate(),HH:d.getHours(),mm:d.getMinutes(),ss:d.getSeconds(),sss:d.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},m(e,(function(b,c){c=s},h.$observe("min",(function(a){s=r(a),g.$validate()})));(A(h.max)||h.ngMax)&&(g.$validators.max=function(a){return!p(a)||v(u)||c(a)<=u},h.$observe("max",(function(a){u=r(a),g.$validate()})))}}function Id(b,a,c,d){(d.$$hasNativeValidators=C(a[0].validity))&&d.$parsers.push((function(b){var c=a.prop("validity")||{};return c.badInput&&!c.typeMismatch?w:b}))}function Jd(b,a,c,d,e){if(A(d)){if(!(b=b(d)).constant)throw lb("constexpr",c,d);return b(a)}return e}function kc(b,a){return b="ngClass"+b,["$animate",function(c){function d(a,b){var c=[],d=0;a:for(;d(?:<\/\1>|)$/,Sb=/<|&#?\w+;/,Cf=/<([\w:-]+)/,Df=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ma={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ma.optgroup=ma.option,ma.tbody=ma.tfoot=ma.colgroup=ma.caption=ma.thead,ma.th=ma.td;var Ra=R.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;"complete"===X.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),R(Q).on("load",a))},toString:function(){var b=[];return m(this,(function(a){b.push(""+a)})),"["+b.join(", ")+"]"},eq:function(b){return B(0<=b?this[b]:this[this.length+b])},length:0,push:kg,sort:[].sort,splice:[].splice},Bb={};m("multiple selected checked disabled readOnly required open".split(" "),(function(b){Bb[F(b)]=b}));var Sc={};m("input select option textarea button form details".split(" "),(function(b){Sc[b]=!0}));var $c={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};m({data:Vb,removeData:vb,hasData:function(b){for(var a in hb[b.ng339])return!0;return!1}},(function(b,a){R[a]=b})),m({data:Vb,inheritedData:Ab,scope:function(b){return B.data(b,"$scope")||Ab(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return B.data(b,"$isolateScope")||B.data(b,"$isolateScopeNoTemplate")},controller:Pc,injector:function(b){return Ab(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:xb,css:function(b,a,c){if(a=gb(a),!A(c))return b.style[a];b.style[a]=c},attr:function(b,a,c){var d=b.nodeType;if(d!==Pa&&2!==d&&8!==d)if(d=F(a),Bb[d]){if(!A(c))return b[a]||(b.attributes.getNamedItem(a)||y).specified?d:w;c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d))}else if(A(c))b.setAttribute(a,c);else if(b.getAttribute)return null===(b=b.getAttribute(a,2))?w:b},prop:function(b,a,c){if(!A(c))return b[a];b[a]=c},text:function(){function b(a,b){if(v(b)){var d=a.nodeType;return d===pa||d===Pa?a.textContent:""}a.textContent=b}return b.$dv="",b}(),val:function(b,a){if(v(a)){if(b.multiple&&"select"===wa(b)){var c=[];return m(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(v(a))return b.innerHTML;ub(b,!0),b.innerHTML=a},empty:Qc},(function(b,a){R.prototype[a]=function(a,d){var e,f,h=this.length;if(b!==Qc&&v(2==b.length&&b!==xb&&b!==Pc?a:d)){if(C(a)){for(e=0;e <= >= && || ! = |".split(" "),(function(a){Lb[a]=!0}));var rg={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},ec=function(a){this.options=a};ec.prototype={constructor:ec,lex:function(a){for(this.text=a,this.index=0,this.tokens=[];this.index=a&&"string"==typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===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=A(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d,Z("lexerr",a,c,this.text)},readNumber:function(){for(var a="",c=this.index;this.index","<=",">=");)a={type:s.BinaryExpression,operator:c.text,left:a,right:this.additive()};return a},additive:function(){for(var c,a=this.multiplicative();c=this.expect("+","-");)a={type:s.BinaryExpression,operator:c.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var c,a=this.unary();c=this.expect("*","/","%");)a={type:s.BinaryExpression,operator:c.text,left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+","-","!"))?{type:s.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a,c;for(this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")?a=this.object():this.constants.hasOwnProperty(this.peek().text)?a=ha(this.constants[this.consume().text]):this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());c=this.expect("(","[",".");)"("===c.text?(a={type:s.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")):"["===c.text?(a={type:s.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===c.text?a={type:s.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var c={type:s.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return c},parseArguments:function(){var a=[];if(")"!==this.peekToken().text)do{a.push(this.expression())}while(this.expect(","));return a},identifier:function(){var a=this.consume();return a.identifier||this.throwError("is not a valid identifier",a),{type:s.Identifier,name:a.text}},constant:function(){return{type:s.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","));return this.consume("]"),{type:s.ArrayExpression,elements:a}},object:function(){var c,a=[];if("}"!==this.peekToken().text)do{if(this.peek("}"))break;c={type:s.Property,kind:"init"},this.peek().constant?c.key=this.constant():this.peek().identifier?c.key=this.identifier():this.throwError("invalid key",this.peek()),this.consume(":"),c.value=this.expression(),a.push(c)}while(this.expect(","));return this.consume("}"),{type:s.ObjectExpression,properties:a}},throwError:function(a,c){throw Z("syntax",c.text,a,c.index+1,this.text,this.text.substring(c.index))},consume:function(a){if(0===this.tokens.length)throw Z("ueoe",this.text);var c=this.expect(a);return c||this.throwError("is unexpected, expecting ["+a+"]",this.peek()),c},peekToken:function(){if(0===this.tokens.length)throw Z("ueoe",this.text);return this.tokens[0]},peek:function(a,c,d,e){return this.peekAhead(0,a,c,d,e)},peekAhead:function(a,c,d,e,f){if(this.tokens.length>a){var h=(a=this.tokens[a]).text;if(h===c||h===d||h===e||h===f||!(c||d||e||f))return a}return!1},expect:function(a,c,d,e){return!!(a=this.peek(a,c,d,e))&&(this.tokens.shift(),a)},constants:{true:{type:s.Literal,value:!0},false:{type:s.Literal,value:!1},null:{type:s.Literal,value:null},undefined:{type:s.Literal,value:w},this:{type:s.ThisExpression}}},sd.prototype={compile:function(a,c){var d=this,e=this.astBuilder.ast(a);this.state={nextId:0,filters:{},expensiveChecks:c,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},U(e,d.$filter);var h,f="";return this.stage="assign",(h=qd(e))&&(this.state.computing="assign",f=this.nextId(),this.recurse(h,f),this.return_(f),f="fn.assign="+this.generateFunction("assign","s,v,l")),h=od(e.body),d.stage="inputs",m(h,(function(a,c){var e="fn"+c;d.state[e]={vars:[],body:[],own:{}},d.state.computing=e;var f=d.nextId();d.recurse(a,f),d.return_(f),d.state.inputs.push(e),a.watchId=c})),this.state.computing="fn",this.stage="main",this.recurse(e),f='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+f+this.watchFns()+"return fn;",f=new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined","plus","text",f)(this.$filter,Xa,Ba,ld,kd,md,Xf,nd,a),this.state=this.stage=w,f.literal=rd(e),f.constant=e.constant,f},USE:"use",STRICT:"strict",watchFns:function(){var a=[],c=this.state.inputs,d=this;return m(c,(function(c){a.push("var "+c+"="+d.generateFunction(c,"s"))})),c.length&&a.push("fn.inputs=["+c.join(",")+"];"),a.join("")},generateFunction:function(a,c){return"function("+c+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],c=this;return m(this.state.filters,(function(d,e){a.push(d+"=$filter("+c.escape(e)+")")})),a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,c,d,e,f,h){var g,l,n,p,k=this;if(e=e||y,!h&&A(a.watchId))c=c||this.nextId(),this.if_("i",this.lazyAssign(c,this.computedMember("i",a.watchId)),this.lazyRecurse(a,c,d,e,f,!0));else switch(a.type){case s.Program:m(a.body,(function(c,d){k.recurse(c.expression,w,w,(function(a){l=a})),d!==a.body.length-1?k.current().body.push(l,";"):k.return_(l)}));break;case s.Literal:p=this.escape(a.value),this.assign(c,p),e(p);break;case s.UnaryExpression:this.recurse(a.argument,w,w,(function(a){l=a})),p=a.operator+"("+this.ifDefined(l,0)+")",this.assign(c,p),e(p);break;case s.BinaryExpression:this.recurse(a.left,w,w,(function(a){g=a})),this.recurse(a.right,w,w,(function(a){l=a})),p="+"===a.operator?this.plus(g,l):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(l,0):"("+g+")"+a.operator+"("+l+")",this.assign(c,p),e(p);break;case s.LogicalExpression:c=c||this.nextId(),k.recurse(a.left,c),k.if_("&&"===a.operator?c:k.not(c),k.lazyRecurse(a.right,c)),e(c);break;case s.ConditionalExpression:c=c||this.nextId(),k.recurse(a.test,c),k.if_(c,k.lazyRecurse(a.alternate,c),k.lazyRecurse(a.consequent,c)),e(c);break;case s.Identifier:c=c||this.nextId(),d&&(d.context="inputs"===k.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name),Xa(a.name),k.if_("inputs"===k.stage||k.not(k.getHasOwnProperty("l",a.name)),(function(){k.if_("inputs"===k.stage||"s",(function(){f&&1!==f&&k.if_(k.not(k.nonComputedMember("s",a.name)),k.lazyAssign(k.nonComputedMember("s",a.name),"{}")),k.assign(c,k.nonComputedMember("s",a.name))}))}),c&&k.lazyAssign(c,k.nonComputedMember("l",a.name))),(k.state.expensiveChecks||Fb(a.name))&&k.addEnsureSafeObject(c),e(c);break;case s.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId(),c=c||this.nextId(),k.recurse(a.object,g,w,(function(){k.if_(k.notNull(g),(function(){a.computed?(l=k.nextId(),k.recurse(a.property,l),k.getStringValue(l),k.addEnsureSafeMemberName(l),f&&1!==f&&k.if_(k.not(k.computedMember(g,l)),k.lazyAssign(k.computedMember(g,l),"{}")),p=k.ensureSafeObject(k.computedMember(g,l)),k.assign(c,p),d&&(d.computed=!0,d.name=l)):(Xa(a.property.name),f&&1!==f&&k.if_(k.not(k.nonComputedMember(g,a.property.name)),k.lazyAssign(k.nonComputedMember(g,a.property.name),"{}")),p=k.nonComputedMember(g,a.property.name),(k.state.expensiveChecks||Fb(a.property.name))&&(p=k.ensureSafeObject(p)),k.assign(c,p),d&&(d.computed=!1,d.name=a.property.name))}),(function(){k.assign(c,"undefined")})),e(c)}),!!f);break;case s.CallExpression:c=c||this.nextId(),a.filter?(l=k.filter(a.callee.name),n=[],m(a.arguments,(function(a){var c=k.nextId();k.recurse(a,c),n.push(c)})),p=l+"("+n.join(",")+")",k.assign(c,p),e(c)):(l=k.nextId(),g={},n=[],k.recurse(a.callee,l,g,(function(){k.if_(k.notNull(l),(function(){k.addEnsureSafeFunction(l),m(a.arguments,(function(a){k.recurse(a,k.nextId(),w,(function(a){n.push(k.ensureSafeObject(a))}))})),g.name?(k.state.expensiveChecks||k.addEnsureSafeObject(g.context),p=k.member(g.context,g.name,g.computed)+"("+n.join(",")+")"):p=l+"("+n.join(",")+")",p=k.ensureSafeObject(p),k.assign(c,p)}),(function(){k.assign(c,"undefined")})),e(c)})));break;case s.AssignmentExpression:if(l=this.nextId(),g={},!pd(a.left))throw Z("lval");this.recurse(a.left,w,g,(function(){k.if_(k.notNull(g.context),(function(){k.recurse(a.right,l),k.addEnsureSafeObject(k.member(g.context,g.name,g.computed)),k.addEnsureSafeAssignContext(g.context),p=k.member(g.context,g.name,g.computed)+a.operator+l,k.assign(c,p),e(c||p)}))}),1);break;case s.ArrayExpression:n=[],m(a.elements,(function(a){k.recurse(a,k.nextId(),w,(function(a){n.push(a)}))})),p="["+n.join(",")+"]",this.assign(c,p),e(p);break;case s.ObjectExpression:n=[],m(a.properties,(function(a){k.recurse(a.value,k.nextId(),w,(function(c){n.push(k.escape(a.key.type===s.Identifier?a.key.name:""+a.key.value)+":"+c)}))})),p="{"+n.join(",")+"}",this.assign(c,p),e(p);break;case s.ThisExpression:this.assign(c,"s"),e("s");break;case s.NGValueParameter:this.assign(c,"v"),e("v")}},getHasOwnProperty:function(a,c){var d=a+"."+c,e=this.current().own;return e.hasOwnProperty(d)||(e[d]=this.nextId(!1,a+"&&("+this.escape(c)+" in "+a+")")),e[d]},assign:function(a,c){if(a)return this.current().body.push(a,"=",c,";"),a},filter:function(a){return this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0)),this.state.filters[a]},ifDefined:function(a,c){return"ifDefined("+a+","+this.escape(c)+")"},plus:function(a,c){return"plus("+a+","+c+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,c,d){if(!0===a)c();else{var e=this.current().body;e.push("if(",a,"){"),c(),e.push("}"),d&&(e.push("else{"),d(),e.push("}"))}},not:function(a){return"!("+a+")"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,c){return a+"."+c},computedMember:function(a,c){return a+"["+c+"]"},member:function(a,c,d){return d?this.computedMember(a,c):this.nonComputedMember(a,c)},addEnsureSafeObject:function(a){this.current().body.push(this.ensureSafeObject(a),";")},addEnsureSafeMemberName:function(a){this.current().body.push(this.ensureSafeMemberName(a),";")},addEnsureSafeFunction:function(a){this.current().body.push(this.ensureSafeFunction(a),";")},addEnsureSafeAssignContext:function(a){this.current().body.push(this.ensureSafeAssignContext(a),";")},ensureSafeObject:function(a){return"ensureSafeObject("+a+",text)"},ensureSafeMemberName:function(a){return"ensureSafeMemberName("+a+",text)"},ensureSafeFunction:function(a){return"ensureSafeFunction("+a+",text)"},getStringValue:function(a){this.assign(a,"getStringValue("+a+",text)")},ensureSafeAssignContext:function(a){return"ensureSafeAssignContext("+a+",text)"},lazyRecurse:function(a,c,d,e,f,h){var g=this;return function(){g.recurse(a,c,d,e,f,h)}},lazyAssign:function(a,c){var d=this;return function(){d.assign(a,c)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(G(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(V(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if(void 0===a)return"undefined";throw Z("esc")},nextId:function(a,c){var d="v"+this.state.nextId++;return a||this.current().vars.push(d+(c?"="+c:"")),d},current:function(){return this.state[this.state.computing]}},td.prototype={compile:function(a,c){var f,h,g,d=this,e=this.astBuilder.ast(a);this.expression=a,this.expensiveChecks=c,U(e,d.$filter),(f=qd(e))&&(h=this.recurse(f)),(f=od(e.body))&&(g=[],m(f,(function(a,c){var e=d.recurse(a);a.input=e,g.push(e),a.watchId=c})));var l=[];return m(e.body,(function(a){l.push(d.recurse(a.expression))})),f=0===e.body.length?function(){}:1===e.body.length?l[0]:function(a,c){var d;return m(l,(function(e){d=e(a,c)})),d},h&&(f.assign=function(a,c,d){return h(a,d,c)}),g&&(f.inputs=g),f.literal=rd(e),f.constant=e.constant,f},recurse:function(a,c,d){var e,f,g,h=this;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case s.Literal:return this.value(a.value,c);case s.UnaryExpression:return f=this.recurse(a.argument),this["unary"+a.operator](f,c);case s.BinaryExpression:case s.LogicalExpression:return e=this.recurse(a.left),f=this.recurse(a.right),this["binary"+a.operator](e,f,c);case s.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),c);case s.Identifier:return Xa(a.name,h.expression),h.identifier(a.name,h.expensiveChecks||Fb(a.name),c,d,h.expression);case s.MemberExpression:return e=this.recurse(a.object,!1,!!d),a.computed||(Xa(a.property.name,h.expression),f=a.property.name),a.computed&&(f=this.recurse(a.property)),a.computed?this.computedMember(e,f,c,d,h.expression):this.nonComputedMember(e,f,h.expensiveChecks,c,d,h.expression);case s.CallExpression:return g=[],m(a.arguments,(function(a){g.push(h.recurse(a))})),a.filter&&(f=this.$filter(a.callee.name)),a.filter||(f=this.recurse(a.callee,!0)),a.filter?function(a,d,e,h){for(var r=[],m=0;m":function(a,c,d){return function(e,f,h,g){return e=a(e,f,h,g)>c(e,f,h,g),d?{value:e}:e}},"binary<=":function(a,c,d){return function(e,f,h,g){return e=a(e,f,h,g)<=c(e,f,h,g),d?{value:e}:e}},"binary>=":function(a,c,d){return function(e,f,h,g){return e=a(e,f,h,g)>=c(e,f,h,g),d?{value:e}:e}},"binary&&":function(a,c,d){return function(e,f,h,g){return e=a(e,f,h,g)&&c(e,f,h,g),d?{value:e}:e}},"binary||":function(a,c,d){return function(e,f,h,g){return e=a(e,f,h,g)||c(e,f,h,g),d?{value:e}:e}},"ternary?:":function(a,c,d,e){return function(f,h,g,l){return f=a(f,h,g,l)?c(f,h,g,l):d(f,h,g,l),e?{value:f}:f}},value:function(a,c){return function(){return c?{context:w,name:w,value:a}:a}},identifier:function(a,c,d,e,f){return function(h,g,l,k){return h=g&&a in g?g:h,e&&1!==e&&h&&!h[a]&&(h[a]={}),g=h?h[a]:w,c&&Ba(g,f),d?{context:h,name:a,value:g}:g}},computedMember:function(a,c,d,e,f){return function(h,g,l,k){var p,m,n=a(h,g,l,k);return null!=n&&(Xa(p=kd(p=c(h,g,l,k)),f),e&&1!==e&&n&&!n[p]&&(n[p]={}),Ba(m=n[p],f)),d?{context:n,name:p,value:m}:m}},nonComputedMember:function(a,c,d,e,f,h){return function(g,l,k,n){return g=a(g,l,k,n),f&&1!==f&&g&&!g[c]&&(g[c]={}),l=null!=g?g[c]:w,(d||Fb(c))&&Ba(l,h),e?{context:g,name:c,value:l}:l}},inputs:function(a,c){return function(d,e,f,h){return h?h[c]:a(d,e,f)}}};var fc=function(a,c,d){this.lexer=a,this.$filter=c,this.options=d,this.ast=new s(this.lexer),this.astCompiler=d.csp?new td(this.ast,c):new sd(this.ast,c)};fc.prototype={constructor:fc,parse:function(a){return this.astCompiler.compile(a,this.options.expensiveChecks)}},fa(),fa();var Yf=Object.prototype.valueOf,Ca=I("$sce"),oa={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},$=(ga=I("$compile"),X.createElement("a")),xd=Aa(Q.location.href);yd.$inject=["$document"],Kc.$inject=["$provide"],zd.$inject=["$locale"],Bd.$inject=["$locale"];var hc=".",hg={yyyy:aa("FullYear",4),yy:aa("FullYear",2,0,!0),y:aa("FullYear",1),MMMM:Hb("Month"),MMM:Hb("Month",!0),MM:aa("Month",2,1),M:aa("Month",1,1),dd:aa("Date",2),d:aa("Date",1),HH:aa("Hours",2),H:aa("Hours",1),hh:aa("Hours",2,-12),h:aa("Hours",1,-12),mm:aa("Minutes",2),m:aa("Minutes",1),ss:aa("Seconds",2),s:aa("Seconds",1),sss:aa("Milliseconds",3),EEEE:Hb("Day"),EEE:Hb("Day",!0),a:function(a,c){return 12>a.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a,c,d){return(0<=(a=-1*d)?"+":"")+(Gb(Math[0=a.getFullYear()?c.ERANAMES[0]:c.ERANAMES[1]}},gg=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,fg=/^\-?\d+$/;Ad.$inject=["$locale"];var cg=qa(F),dg=qa(sb);Cd.$inject=["$parse"];var he=qa({restrict:"E",compile:function(a,c){if(!c.href&&!c.xlinkHref)return function(a,c){if("a"===c[0].nodeName.toLowerCase()){var f="[object SVGAnimatedString]"===va.call(c.prop("href"))?"xlink:href":"href";c.on("click",(function(a){c.attr(f)||a.preventDefault()}))}}}}),tb={};m(Bb,(function(a,c){function d(a,d,f){a.$watch(f[e],(function(a){f.$set(c,!!a)}))}if("multiple"!=a){var e=ya("ng-"+c),f=d;"checked"===a&&(f=function(a,c,f){f.ngModel!==f[e]&&d(a,0,f)}),tb[e]=function(){return{restrict:"A",priority:100,link:f}}}})),m($c,(function(a,c){tb[c]=function(){return{priority:100,link:function(a,e,f){"ngPattern"===c&&"/"==f.ngPattern.charAt(0)&&(e=f.ngPattern.match(jg))?f.$set("ngPattern",new RegExp(e[1],e[2])):a.$watch(f[c],(function(a){f.$set(c,a)}))}}}})),m(["src","srcset","href"],(function(a){var c=ya("ng-"+a);tb[c]=function(){return{priority:99,link:function(d,e,f){var h=a,g=a;"href"===a&&"[object SVGAnimatedString]"===va.call(e.prop("href"))&&(g="xlinkHref",f.$attr[g]="xlink:href",h=null),f.$observe(c,(function(c){c?(f.$set(g,c),Wa&&h&&e.prop(h,f[g])):"href"===a&&f.$set(g,null)}))}}}}));var Ib={$addControl:y,$$renameControl:function(a,c){a.$name=c},$removeControl:y,$setValidity:y,$setDirty:y,$setPristine:y,$setSubmitted:y};Gd.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var Od=function(a){return["$timeout","$parse",function(c,d){function e(a){return""===a?d('this[""]').assign:d(a).assign||y}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Gd,compile:function(d,h){d.addClass(Ya).addClass(mb);var g=h.name?"name":!(!a||!h.ngForm)&&"ngForm";return{pre:function(a,d,f,h){var m=h[0];if(!("action"in f)){var t=function(c){a.$apply((function(){m.$commitViewValue(),m.$setSubmitted()})),c.preventDefault()};d[0].addEventListener("submit",t,!1),d.on("$destroy",(function(){c((function(){d[0].removeEventListener("submit",t,!1)}),0,!1)}))}(h[1]||m.$$parentForm).$addControl(m);var s=g?e(m.$name):y;g&&(s(a,m),f.$observe(g,(function(c){m.$name!==c&&(s(a,w),m.$$parentForm.$$renameControl(m,c),(s=e(m.$name))(a,m))}))),d.on("$destroy",(function(){m.$$parentForm.$removeControl(m),s(a,w),P(m,Ib)}))}}}}}]},ie=Od(),ve=Od(!0),ig=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,sg=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,tg=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,ug=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Pd=/^(\d{4})-(\d{2})-(\d{2})$/,Qd=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,lc=/^(\d{4})-W(\d\d)$/,Rd=/^(\d{4})-(\d\d)$/,Sd=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Td={text:function(a,c,d,e,f,h){jb(0,c,d,e,f,h),jc(e)},date:kb("date",Pd,Kb(Pd,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":kb("datetimelocal",Qd,Kb(Qd,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:kb("time",Sd,Kb(Sd,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:kb("week",lc,(function(a,c){if(ea(a))return a;if(G(a)){lc.lastIndex=0;var d=lc.exec(a);if(d){var e=+d[1],f=+d[2],h=d=0,g=0,l=0,k=Ed(e);f=7*(f-1);return c&&(d=c.getHours(),h=c.getMinutes(),g=c.getSeconds(),l=c.getMilliseconds()),new Date(e,0,k.getDate()+f,d,h,g,l)}}return NaN}),"yyyy-Www"),month:kb("month",Rd,Kb(Rd,["yyyy","MM"]),"yyyy-MM"),number:function(a,c,d,e,f,h){var g,l;(Id(0,c,0,e),jb(0,c,d,e,f,h),e.$$parserName="number",e.$parsers.push((function(a){return e.$isEmpty(a)?null:ug.test(a)?parseFloat(a):w})),e.$formatters.push((function(a){if(!e.$isEmpty(a)){if(!V(a))throw lb("numfmt",a);a=a.toString()}return a})),A(d.min)||d.ngMin)&&(e.$validators.min=function(a){return e.$isEmpty(a)||v(g)||a>=g},d.$observe("min",(function(a){A(a)&&!V(a)&&(a=parseFloat(a,10)),g=V(a)&&!isNaN(a)?a:w,e.$validate()})));(A(d.max)||d.ngMax)&&(e.$validators.max=function(a){return e.$isEmpty(a)||v(l)||a<=l},d.$observe("max",(function(a){A(a)&&!V(a)&&(a=parseFloat(a,10)),l=V(a)&&!isNaN(a)?a:w,e.$validate()})))},url:function(a,c,d,e,f,h){jb(0,c,d,e,f,h),jc(e),e.$$parserName="url",e.$validators.url=function(a,c){var d=a||c;return e.$isEmpty(d)||sg.test(d)}},email:function(a,c,d,e,f,h){jb(0,c,d,e,f,h),jc(e),e.$$parserName="email",e.$validators.email=function(a,c){var d=a||c;return e.$isEmpty(d)||tg.test(d)}},radio:function(a,c,d,e){v(d.name)&&c.attr("name",++nb),c.on("click",(function(a){c[0].checked&&e.$setViewValue(d.value,a&&a.type)})),e.$render=function(){c[0].checked=d.value==e.$viewValue},d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,h,g,l){var k=Jd(l,a,"ngTrueValue",d.ngTrueValue,!0),n=Jd(l,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",(function(a){e.$setViewValue(c[0].checked,a&&a.type)})),e.$render=function(){c[0].checked=e.$viewValue},e.$isEmpty=function(a){return!1===a},e.$formatters.push((function(a){return ka(a,k)})),e.$parsers.push((function(a){return a?k:n}))},hidden:y,button:y,submit:y,reset:y,file:y},Ec=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,h,g,l){l[0]&&(Td[F(g.type)]||Td.text)(f,h,g,l[0],c,a,d,e)}}}}],vg=/^(true|false|\d+)$/,Ne=function(){return{restrict:"A",priority:100,compile:function(a,c){return vg.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)}))}}}},ne=["$compile",function(a){return{restrict:"AC",compile:function(c){return a.$$addBindingClass(c),function(c,e,f){a.$$addBindingInfo(e,f.ngBind),e=e[0],c.$watch(f.ngBind,(function(a){e.textContent=v(a)?"":a}))}}}}],pe=["$interpolate","$compile",function(a,c){return{compile:function(d){return c.$$addBindingClass(d),function(d,f,h){d=a(f.attr(h.$attr.ngBindTemplate)),c.$$addBindingInfo(f,d.expressions),f=f[0],h.$observe("ngBindTemplate",(function(a){f.textContent=v(a)?"":a}))}}}}],oe=["$sce","$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var h=c(f.ngBindHtml),g=c(f.ngBindHtml,(function(a){return(a||"").toString()}));return d.$$addBindingClass(e),function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml),c.$watch(g,(function(){e.html(a.getTrustedHtml(h(c))||"")}))}}}}],Me=qa({restrict:"A",require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push((function(){a.$eval(d.ngChange)}))}}),qe=kc("",!0),se=kc("Odd",0),re=kc("Even",1),te=Na({compile:function(a,c){c.$set("ngCloak",w),a.removeClass("ng-cloak")}}),ue=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Jc={},wg={blur:!0,focus:!0};m("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),(function(a){var c=ya("ng-"+a);Jc[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,h){var g=d(h[c],null,!0);return function(c,d){d.on(a,(function(d){var f=function(){g(c,{$event:d})};wg[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)}))}}}}]}));var xe=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,h){var g,l,k;c.$watch(e.ngIf,(function(c){c?l||h((function(c,f){l=f,c[c.length++]=X.createComment(" end ngIf: "+e.ngIf+" "),g={clone:c},a.enter(c,d.parent(),d)})):(k&&(k.remove(),k=null),l&&(l.$destroy(),l=null),g&&(k=rb(g.clone),a.leave(k).then((function(){k=null})),g=null))}))}}}],ye=["$templateRequest","$anchorScroll","$animate",function(a,c,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:da.noop,compile:function(e,f){var h=f.ngInclude||f.src,g=f.onload||"",l=f.autoscroll;return function(e,f,m,r,t){var v,u,q,s=0,z=function(){u&&(u.remove(),u=null),v&&(v.$destroy(),v=null),q&&(d.leave(q).then((function(){u=null})),u=q,q=null)};e.$watch(h,(function(h){var m=function(){!A(l)||l&&!e.$eval(l)||c()},p=++s;h?(a(h,!0).then((function(a){if(p===s){var c=e.$new();r.template=a,a=t(c,(function(a){z(),d.enter(a,null,f).then(m)})),q=a,(v=c).$emit("$includeContentLoaded",h),e.$eval(g)}}),(function(){p===s&&(z(),e.$emit("$includeContentError",h))})),e.$emit("$includeContentRequested",h)):(z(),r.template=null)}))}}}}],Pe=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Mc(f.template,X).childNodes)(c,(function(a){d.append(a)}),{futureParentElement:d})):(d.html(f.template),a(d.contents())(c))}}}],ze=Na({priority:450,compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),Le=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",h="false"!==d.ngTrim,g=h?T(f):f;e.$parsers.push((function(a){if(!v(a)){var c=[];return a&&m(a.split(g),(function(a){a&&c.push(h?T(a):a)})),c}})),e.$formatters.push((function(a){return J(a)?a.join(f):w})),e.$isEmpty=function(a){return!a||!a.length}}}},mb="ng-valid",Kd="ng-invalid",Ya="ng-pristine",Jb="ng-dirty",Md="ng-pending",lb=I("ngModel"),xg=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,h,g,l,k,n){this.$modelValue=this.$viewValue=Number.NaN,this.$$rawModelValue=w,this.$validators={},this.$asyncValidators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$error={},this.$$success={},this.$pending=w,this.$name=n(d.name||"",!1)(a),this.$$parentForm=Ib;var u,p=f(d.ngModel),r=p.assign,t=p,s=r,K=null,q=this;this.$$setOptions=function(a){if((q.$options=a)&&a.getterSetter){var c=f(d.ngModel+"()"),g=f(d.ngModel+"($$$p)");t=function(a){var d=p(a);return x(d)&&(d=c(a)),d},s=function(a,c){x(p(a))?g(a,{$$$p:q.$modelValue}):r(a,q.$modelValue)}}else if(!p.assign)throw lb("nonassign",d.ngModel,xa(e))},this.$render=y,this.$isEmpty=function(a){return v(a)||""===a||null===a||a!=a};var z=0;Hd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},$animate:h}),this.$setPristine=function(){q.$dirty=!1,q.$pristine=!0,h.removeClass(e,Jb),h.addClass(e,Ya)},this.$setDirty=function(){q.$dirty=!0,q.$pristine=!1,h.removeClass(e,Ya),h.addClass(e,Jb),q.$$parentForm.$setDirty()},this.$setUntouched=function(){q.$touched=!1,q.$untouched=!0,h.setClass(e,"ng-untouched","ng-touched")},this.$setTouched=function(){q.$touched=!0,q.$untouched=!1,h.setClass(e,"ng-touched","ng-untouched")},this.$rollbackViewValue=function(){g.cancel(K),q.$viewValue=q.$$lastCommittedViewValue,q.$render()},this.$validate=function(){if(!V(q.$modelValue)||!isNaN(q.$modelValue)){var a=q.$$rawModelValue,c=q.$valid,d=q.$modelValue,e=q.$options&&q.$options.allowInvalid;q.$$runValidators(a,q.$$lastCommittedViewValue,(function(f){e||c===f||(q.$modelValue=f?a:w,q.$modelValue!==d&&q.$$writeModelToScope())}))}},this.$$runValidators=function(a,c,d){function g(a,c){l===z&&q.$setValidity(a,c)}function h(a){l===z&&d(a)}var l=++z;!function(){var a=q.$$parserName||"parse";return v(u)?(g(a,null),!0):(u||(m(q.$validators,(function(a,c){g(c,null)})),m(q.$asyncValidators,(function(a,c){g(c,null)}))),g(a,u),u)}()?h(!1):function(){var d=!0;return m(q.$validators,(function(e,f){var h=e(a,c);d=d&&h,g(f,h)})),!!d||(m(q.$asyncValidators,(function(a,c){g(c,null)})),!1)}()?function(){var d=[],e=!0;m(q.$asyncValidators,(function(f,h){var k=f(a,c);if(!k||!x(k.then))throw lb("$asyncValidators",k);g(h,w),d.push(k.then((function(){g(h,!0)}),(function(a){e=!1,g(h,!1)})))})),d.length?k.all(d).then((function(){h(e)}),y):h(!0)}():h(!1)},this.$commitViewValue=function(){var a=q.$viewValue;g.cancel(K),(q.$$lastCommittedViewValue!==a||""===a&&q.$$hasNativeValidators)&&(q.$$lastCommittedViewValue=a,q.$pristine&&this.$setDirty(),this.$$parseAndValidate())},this.$$parseAndValidate=function(){var c=q.$$lastCommittedViewValue;if(u=!v(c)||w)for(var d=0;df||e.$isEmpty(c)||c.length<=f}}}}},Hc=function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){if(e){var f=0;d.$observe("minlength",(function(a){f=Y(a)||0,e.$validate()})),e.$validators.minlength=function(a,c){return e.$isEmpty(c)||c.length>=f}}}}};Q.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):(function(){var b;if(!Bc){var a=pb();(ra=v(a)?__webpack_provided_window_dot_jQuery:a?Q[a]:w)&&ra.fn.on?(B=ra,P(ra.fn,{scope:Ra.scope,isolateScope:Ra.isolateScope,controller:Ra.controller,injector:Ra.injector,inheritedData:Ra.inheritedData}),b=ra.cleanData,ra.cleanData=function(a){var d;if(Qb)Qb=!1;else for(var f,e=0;null!=(f=a[e]);e++)(d=ra._data(f,"events"))&&d.$destroy&&ra(f).triggerHandler("$destroy");b(a)}):B=R,da.element=B,Bc=!0}}(),P(da,{bootstrap:zc,copy:ha,extend:P,merge:Vd,equals:ka,element:B,forEach:m,injector:fb,noop:y,bind:uc,toJson:eb,fromJson:vc,identity:$a,isUndefined:v,isDefined:A,isString:G,isFunction:x,isObject:C,isNumber:V,isElement:sc,isArray:J,version:fe,isDate:ea,lowercase:F,uppercase:sb,callbacks:{counter:0},getTestability:ae,$$minErr:I,$$csp:Fa,reloadWithDebugInfo:$d}),Rb=function(b){function a(a,b,c){return a[b]||(a[b]=c())}var c=I("$injector"),d=I("ng");return(b=a(b,"angular",Object)).$$minErr=b.$$minErr||I,a(b,"module",(function(){var b={};return function(f,h,g){if("hasOwnProperty"===f)throw d("badname","module");return h&&b.hasOwnProperty(f)&&(b[f]=null),a(b,f,(function(){function a(b,c,e,f){return f||(f=d),function(){return f[e||"push"]([b,c,arguments]),E}}function b(a,c){return function(b,e){return e&&x(e)&&(e.$$moduleName=f),d.push([a,c,arguments]),E}}if(!h)throw c("nomod",f);var d=[],e=[],r=[],t=a("$injector","invoke","push",e),E={_invokeQueue:d,_configBlocks:e,_runBlocks:r,requires:h,name:f,provider:b("$provide","provider"),factory:b("$provide","factory"),service:b("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),decorator:b("$provide","decorator"),animation:b("$animateProvider","register"),filter:b("$filterProvider","register"),controller:b("$controllerProvider","register"),directive:b("$compileProvider","directive"),config:t,run:function(a){return r.push(a),this}};return g&&t(g),E}))}}))}(Q),Rb("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:ge}),a.provider("$compile",Dc).directive({a:he,input:Ec,textarea:Ec,form:ie,script:je,select:ke,style:le,option:me,ngBind:ne,ngBindHtml:oe,ngBindTemplate:pe,ngClass:qe,ngClassEven:re,ngClassOdd:se,ngCloak:te,ngController:ue,ngForm:ve,ngHide:we,ngIf:xe,ngInclude:ye,ngInit:ze,ngNonBindable:Ae,ngPluralize:Be,ngRepeat:Ce,ngShow:De,ngStyle:Ee,ngSwitch:Fe,ngSwitchWhen:Ge,ngSwitchDefault:He,ngOptions:Ie,ngTransclude:Je,ngModel:Ke,ngList:Le,ngChange:Me,pattern:Fc,ngPattern:Fc,required:Gc,ngRequired:Gc,minlength:Hc,ngMinlength:Hc,maxlength:Ic,ngMaxlength:Ic,ngValue:Ne,ngModelOptions:Oe}).directive({ngInclude:Pe}).directive(tb).directive(Jc),a.provider({$anchorScroll:Qe,$animate:Re,$animateCss:Se,$$animateQueue:Te,$$AnimateRunner:Ue,$browser:Ve,$cacheFactory:We,$controller:Xe,$document:Ye,$exceptionHandler:Ze,$filter:Kc,$$forceReflow:$e,$interpolate:af,$interval:bf,$http:cf,$httpParamSerializer:df,$httpParamSerializerJQLike:ef,$httpBackend:ff,$xhrFactory:gf,$location:hf,$log:jf,$parse:kf,$rootScope:lf,$q:mf,$$q:nf,$sce:of,$sceDelegate:pf,$sniffer:qf,$templateCache:rf,$templateRequest:sf,$$testability:tf,$timeout:uf,$window:vf,$$rAF:wf,$$jqLite:xf,$$HashMap:yf,$$cookieReader:zf})}]),da.module("ngLocale",[],["$provide",function(a){a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a",short:"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-¤",negSuf:"",posPre:"¤",posSuf:""}]},id:"en-us",pluralCat:function(a,e){var f=0|a,h=e;return w===h&&(h=Math.min(function(a){var c=(a+="").indexOf(".");return-1==c?0:a.length-c-1}(a),3)),Math.pow(10,h),1==f&&0==h?"one":"other"}})}]),B(X).ready((function(){Zd(X,zc)})))}(window,document),!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(''),module.exports=angular},5:(module,exports,__webpack_require__)=>{var __WEBPACK_LOCAL_MODULE_0__,__WEBPACK_LOCAL_MODULE_0__module,__WEBPACK_LOCAL_MODULE_16__,__WEBPACK_LOCAL_MODULE_16__exports,__WEBPACK_AMD_DEFINE_RESULT__,addon,component,__webpack_provided_window_dot_jQuery=__webpack_require__(0),jQuery=__webpack_require__(0),__webpack_provided_window_dot_moment=__webpack_require__(7),$=__webpack_require__(0),Modernizr=__webpack_require__(10);!function(core){if(__WEBPACK_LOCAL_MODULE_0__=function(){var uikit=window.UIkit||core(window,__webpack_provided_window_dot_jQuery,window.document);return uikit.load=function(res,req,onload,config){var i,resources=res.split(","),load=[],base=(config.config&&config.config.uikit&&config.config.uikit.base?config.config.uikit.base:"").replace(/\/+$/g,"");if(!base)throw new Error("Please define base path to UIkit in the requirejs config.");for(i=0;imemory.x?1:-1:memory.dir.x=0,wpyo!=memory.y?memory.dir.y=wpyo>memory.y?1:-1:memory.dir.y=0,memory.x=wpxo,memory.y=wpyo,UI.$doc.trigger("scrolling.uk.document",[{dir:{x:memory.dir.x,y:memory.dir.y},x:wpxo,y:wpyo}])),requestAnimationFrame(fn)},UI.support.touch&&UI.$html.on("touchmove touchend MSPointerMove MSPointerUp pointermove pointerup",fn),(memory.x||memory.y)&&fn(),fn)),UI.trigger("domready.uk.dom"),UI.support.touch&&navigator.userAgent.match(/(iPad|iPhone|iPod)/g)&&UI.$win.on("load orientationchange resize",UI.Utils.debounce(function(){var fn=function(){return $(".uk-height-viewport").css("height",window.innerHeight),fn};return fn()}(),100)),UI.trigger("afterready.uk.dom"),UI.domready=!0}return!/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)&&window.requestAnimationFrame&&window.cancelAnimationFrame||(lastTime=0,window.requestAnimationFrame=function(callback){var now=Date.now(),nextTime=Math.max(lastTime+16,now);return setTimeout((function(){callback(lastTime=nextTime)}),nextTime-now)},window.cancelAnimationFrame=clearTimeout),UI.support.touch="ontouchstart"in document||global.DocumentTouch&&document instanceof global.DocumentTouch||global.navigator.msPointerEnabled&&0=window_top&&offset-options.topoffset<=window_top+UI.$win.height()&&left+element.width()>=window_left&&left-options.leftoffset<=window_left+UI.$win.width()},UI.Utils.checkDisplay=function(context,initanimation){var elements=UI.$("[data-uk-margin], [data-uk-grid-match], [data-uk-grid-margin], [data-uk-check-display]",context||document);return(elements=context&&!elements.length?$(context):elements).trigger("display.uk.check"),initanimation&&elements.find(initanimation="string"!=typeof initanimation?'[class*="uk-animation-"]':initanimation).each((function(){var ele=UI.$(this),anim=ele.attr("class").match(/uk\-animation\-(.+)/);ele.removeClass(anim[0]).width(),ele.addClass(anim[0])})),elements},UI.Utils.options=function(string){if("string"!=$.type(string))return string;var start=(string=-1!=string.indexOf(":")&&"}"!=string.trim().substr(-1)?"{"+string+"}":string)?string.indexOf("{"):-1,options={};if(-1!=start)try{options=UI.Utils.str2json(string.substr(start))}catch(e){}return options},UI.Utils.animate=function(element,cls){var d=$.Deferred();return(element=UI.$(element)).css("display","none").addClass(cls).one(UI.support.animation.end,(function(){element.removeClass(cls),d.resolve()})),element.css("display",""),d.promise()},UI.Utils.uid=function(prefix){return(prefix||"id")+(new Date).getTime()+"RAND"+Math.ceil(1e5*Math.random())},UI.Utils.template=function(str,data){for(var toc,cmd,prop,tokens=str.replace(/\n/g,"\\n").replace(/\{\{\{\s*(.+?)\s*\}\}\}/g,"{{!$1}}").split(/(\{\{\s*(.+?)\s*\}\})/g),i=0,output=[],openblocks=0;i/g, '>');}"].join("\n")),data?str(data):str},UI.Utils.events={},UI.Utils.events.click=UI.support.touch?"tap":"click",(global.UIkit=UI).fn=function(command,options){var args=arguments,component=(command=command.match(/^([a-z\-]+)(?:\.([a-z]+))?/i))[1],method=command[2];return UI[component]?this.each((function(){var $this=$(this),data=$this.data(component);data||$this.data(component,data=UI[component](this,method?void 0:options)),method&&data[method].apply(data,Array.prototype.slice.call(args,1))})):($.error("UIkit component ["+component+"] does not exist."),this)},$.UIkit=UI,$.fn.uk=UI.fn,UI.langdirection="rtl"==UI.$html.attr("dir")?"right":"left",UI.components={},UI.component=function(name,def){function fn(element,options){var $this=this;return this.UIkit=UI,this.element=element?UI.$(element):null,this.options=$.extend(!0,{},this.defaults,options),this.plugins={},this.element&&this.element.data(name,this),this.init(),(this.options.plugins.length?this.options.plugins:Object.keys(fn.plugins)).forEach((function(plugin){fn.plugins[plugin].init&&(fn.plugins[plugin].init($this),$this.plugins[plugin]=!0)})),this.trigger("init.uk.component",[name,this]),this}return fn.plugins={},$.extend(!0,fn.prototype,{defaults:{plugins:[]},boot:function(){},init:function(){},on:function(a1,a2,a3){return UI.$(this.element||this).on(a1,a2,a3)},one:function(a1,a2,a3){return UI.$(this.element||this).one(a1,a2,a3)},off:function(evt){return UI.$(this.element||this).off(evt)},trigger:function(evt,params){return UI.$(this.element||this).trigger(evt,params)},find:function(selector){return UI.$(this.element||[]).find(selector)},proxy:function(obj,methods){var $this=this;methods.split(" ").forEach((function(method){$this[method]||($this[method]=function(){return obj[method].apply(obj,arguments)})}))},mixin:function(obj,methods){var $this=this;methods.split(" ").forEach((function(method){$this[method]||($this[method]=obj[method].bind($this))}))},option:function(){if(1==arguments.length)return this.options[arguments[0]]||void 0;2==arguments.length&&(this.options[arguments[0]]=arguments[1])}},def),this.components[name]=fn,this[name]=function(){var element,options;if(arguments.length)switch(arguments.length){case 1:"string"==typeof arguments[0]||arguments[0].nodeType||arguments[0]instanceof jQuery?element=$(arguments[0]):options=arguments[0];break;case 2:element=$(arguments[0]),options=arguments[1]}return element&&element.data(name)?element.data(name):new UI.components[name](element,options)},UI.domready&&UI.component.boot(name),fn},UI.plugin=function(component,name,def){this.components[component].plugins[name]=def},UI.component.boot=function(name){UI.components[name].prototype&&UI.components[name].prototype.boot&&!UI.components[name].booted&&(UI.components[name].prototype.boot.apply(UI,[]),UI.components[name].booted=!0)},UI.component.bootComponents=function(){for(var component in UI.components)UI.component.boot(component)},UI.domObservers=[],UI.domready=!1,UI.ready=function(fn){UI.domObservers.push(fn),UI.domready&&fn(document)},UI.on=function(a1,a2,a3){return a1&&-1=Math.abs(y1-y2)?0=offset&&(skip=column.addClass(options.cls)))}))},UI.Utils.matchHeights=function(elements,options){function matchHeights(group){var max;group.length<2||(max=0,group.each((function(){max=Math.max(max,UI.$(this).outerHeight())})).each((function(){var element=UI.$(this),height=max-("border-box"==element.css("box-sizing")?0:element.outerHeight()-element.height());element.css("min-height",height+"px")})))}elements=UI.$(elements).css("min-height",""),(options=UI.$.extend({row:!0},options)).row?(elements.first().width(),setTimeout((function(){var lastoffset=!1,group=[];elements.each((function(){var ele=UI.$(this),offset=ele.offset().top;offset!=lastoffset&&group.length&&(matchHeights(UI.$(group)),group=[],offset=ele.offset().top),group.push(ele),lastoffset=offset})),group.length&&matchHeights(UI.$(group))}),0)):matchHeights(elements)},cacheSvgs={},UI.Utils.inlineSvg=function(selector,root){UI.$(selector||'img[src$=".svg"]',root||document).each((function(){var d,img=UI.$(this),src=img.attr("src");cacheSvgs[src]||(d=UI.$.Deferred(),UI.$.get(src,{nc:Math.random()},(function(data){d.resolve(UI.$(data).find("svg"))})),cacheSvgs[src]=d.promise()),cacheSvgs[src].then((function(svg){svg=UI.$(svg).clone(),img.attr("id")&&svg.attr("id",img.attr("id")),img.attr("class")&&svg.attr("class",img.attr("class")),img.attr("style")&&svg.attr("style",img.attr("style")),img.attr("width")&&(svg.attr("width",img.attr("width")),img.attr("height")||svg.removeAttr("height")),img.attr("height")&&(svg.attr("height",img.attr("height")),img.attr("width")||svg.removeAttr("width")),img.replaceWith(svg)}))}))},UI.ready((function(context){UI.Utils.inlineSvg("[data-uk-svg]",context)}))}(UIkit),function(UI){"use strict";function scrollToElement(ele,options){options=UI.$.extend({duration:1e3,transition:"easeOutExpo",offset:0,complete:function(){}},options);ele=ele.offset().top-options.offset;var docheight=UI.$doc.height(),winheight=window.innerHeight;docheight=scrollTop)return inviews[i]}())&&(navitems=$this.options.closest?(links.blur().closest(clsClosest).removeClass(clsActive),links.filter("a[href='#"+target.attr("id")+"']").closest(clsClosest).addClass(clsActive)):links.removeClass(clsActive).filter("a[href='#"+target.attr("id")+"']").addClass(clsActive),$this.element.trigger("inview.uk.scrollspynav",[target,navitems])))}var inviews,ids=[],links=this.find("a[href^='#']").each((function(){"#"!==this.getAttribute("href").trim()&&ids.push(this.getAttribute("href"))})),targets=UI.$(ids.join(",")),clsActive=this.options.cls,clsClosest=this.options.closest||this.options.closest,$this=this;this.options.smoothscroll&&UI.smoothScroll&&links.each((function(){UI.smoothScroll(this,$this.options.smoothscroll)})),fn(),this.element.data("scrollspynav",this),this.check=fn,scrollspynavs.push(this)}})}(UIkit),function(UI){"use strict";var toggles=[];UI.component("toggle",{defaults:{target:!1,cls:"uk-hidden",animation:!1,duration:200},boot:function(){UI.ready((function(context){UI.$("[data-uk-toggle]",context).each((function(){var ele=UI.$(this);ele.data("toggle")||UI.toggle(ele,UI.Utils.options(ele.attr("data-uk-toggle")))})),setTimeout((function(){toggles.forEach((function(toggle){toggle.getToggles()}))}),0)}))},init:function(){var $this=this;this.aria=-1!==this.options.cls.indexOf("uk-hidden"),this.getToggles(),this.on("click",(function(e){$this.element.is('a[href="#"]')&&e.preventDefault(),$this.toggle()})),toggles.push(this)},toggle:function(){var $this,animations;this.totoggle.length&&(this.options.animation&&UI.support.animation?(1==(animations=($this=this).options.animation.split(",")).length&&(animations[1]=animations[0]),animations[0]=animations[0].trim(),animations[1]=animations[1].trim(),this.totoggle.css("animation-duration",this.options.duration+"ms"),this.totoggle.each((function(){var ele=UI.$(this);ele.hasClass($this.options.cls)?(ele.toggleClass($this.options.cls),UI.Utils.animate(ele,animations[0]).then((function(){ele.css("animation-duration",""),UI.Utils.checkDisplay(ele)}))):UI.Utils.animate(this,animations[1]+" uk-animation-reverse").then((function(){ele.toggleClass($this.options.cls).css("animation-duration",""),UI.Utils.checkDisplay(ele)}))}))):(this.totoggle.toggleClass(this.options.cls),UI.Utils.checkDisplay(this.totoggle)),this.updateAria())},getToggles:function(){this.totoggle=this.options.target?UI.$(this.options.target):[],this.updateAria()},updateAria:function(){this.aria&&this.totoggle.length&&this.totoggle.each((function(){UI.$(this).attr("aria-hidden",UI.$(this).hasClass("uk-hidden"))}))}})}(UIkit),function(UI){"use strict";UI.component("alert",{defaults:{fade:!0,duration:200,trigger:".uk-alert-close"},boot:function(){UI.$html.on("click.alert.uikit","[data-uk-alert]",(function(e){var ele=UI.$(this);ele.data("alert")||(ele=UI.alert(ele,UI.Utils.options(ele.attr("data-uk-alert"))),UI.$(e.target).is(ele.options.trigger)&&(e.preventDefault(),ele.close()))}))},init:function(){var $this=this;this.on("click",this.options.trigger,(function(e){e.preventDefault(),$this.close()}))},close:function(){var element=this.trigger("close.uk.alert"),removeElement=function(){this.trigger("closed.uk.alert").remove()}.bind(this);this.options.fade?element.css("overflow","hidden").css("max-height",element.height()).animate({height:0,opacity:0,"padding-top":0,"padding-bottom":0,"margin-top":0,"margin-bottom":0},this.options.duration,removeElement):removeElement()}})}(UIkit),function(UI){"use strict";UI.component("buttonRadio",{defaults:{activeClass:"uk-active",target:".uk-button"},boot:function(){UI.$html.on("click.buttonradio.uikit","[data-uk-button-radio]",(function(e){var ele=UI.$(this);ele.data("buttonRadio")||(ele=UI.buttonRadio(ele,UI.Utils.options(ele.attr("data-uk-button-radio"))),(e=UI.$(e.target)).is(ele.options.target)&&e.trigger("click"))}))},init:function(){var $this=this;this.find($this.options.target).attr("aria-checked","false").filter("."+$this.options.activeClass).attr("aria-checked","true"),this.on("click",this.options.target,(function(e){var ele=UI.$(this);ele.is('a[href="#"]')&&e.preventDefault(),$this.find($this.options.target).not(ele).removeClass($this.options.activeClass).blur(),ele.addClass($this.options.activeClass),$this.find($this.options.target).not(ele).attr("aria-checked","false"),ele.attr("aria-checked","true"),$this.trigger("change.uk.button",[ele])}))},getSelected:function(){return this.find("."+this.options.activeClass)}}),UI.component("buttonCheckbox",{defaults:{activeClass:"uk-active",target:".uk-button"},boot:function(){UI.$html.on("click.buttoncheckbox.uikit","[data-uk-button-checkbox]",(function(e){var ele=UI.$(this);ele.data("buttonCheckbox")||(ele=UI.buttonCheckbox(ele,UI.Utils.options(ele.attr("data-uk-button-checkbox"))),(e=UI.$(e.target)).is(ele.options.target)&&e.trigger("click"))}))},init:function(){var $this=this;this.find($this.options.target).attr("aria-checked","false").filter("."+$this.options.activeClass).attr("aria-checked","true"),this.on("click",this.options.target,(function(e){var ele=UI.$(this);ele.is('a[href="#"]')&&e.preventDefault(),ele.toggleClass($this.options.activeClass).blur(),ele.attr("aria-checked",ele.hasClass($this.options.activeClass)),$this.trigger("change.uk.button",[ele])}))},getSelected:function(){return this.find("."+this.options.activeClass)}}),UI.component("button",{defaults:{},boot:function(){UI.$html.on("click.button.uikit","[data-uk-button]",(function(e){var ele=UI.$(this);ele.data("button")||(UI.button(ele,UI.Utils.options(ele.attr("data-uk-button"))),ele.trigger("click"))}))},init:function(){var $this=this;this.element.attr("aria-pressed",this.element.hasClass("uk-active")),this.on("click",(function(e){$this.element.is('a[href="#"]')&&e.preventDefault(),$this.toggle(),$this.trigger("change.uk.button",[$this.element.blur().hasClass("uk-active")])}))},toggle:function(){this.element.toggleClass("uk-active"),this.element.attr("aria-pressed",this.element.hasClass("uk-active"))}})}(UIkit),function(UI){"use strict";var hoverIdle,active=!1,flips={x:{"bottom-left":"bottom-right","bottom-right":"bottom-left","bottom-center":"bottom-center","top-left":"top-right","top-right":"top-left","top-center":"top-center","left-top":"right-top","left-bottom":"right-bottom","left-center":"right-center","right-top":"left-top","right-bottom":"left-bottom","right-center":"left-center"},y:{"bottom-left":"top-left","bottom-right":"top-right","bottom-center":"top-center","top-left":"bottom-left","top-right":"bottom-right","top-center":"bottom-center","left-top":"left-bottom","left-bottom":"left-top","left-center":"left-center","right-top":"right-bottom","right-bottom":"right-top","right-center":"right-center"},xy:{"bottom-left":"top-right","bottom-right":"top-left","bottom-center":"top-center","top-left":"bottom-right","top-right":"bottom-left","top-center":"bottom-center","left-top":"right-bottom","left-bottom":"right-top","left-center":"right-center","right-top":"left-bottom","right-bottom":"left-top","right-center":"left-center"}};function justify(ele,justifyTo,boundarywidth,offset){var jwidth;ele=UI.$(ele),justifyTo=UI.$(justifyTo),boundarywidth=boundarywidth||window.innerWidth,offset=offset||ele.offset(),justifyTo.length&&(jwidth=justifyTo.outerWidth(),ele.css("min-width",jwidth),"right"==UI.langdirection?(jwidth=boundarywidth-(justifyTo.offset().left+jwidth),boundarywidth-=ele.offset().left+ele.outerWidth(),ele.css("margin-right",jwidth-boundarywidth)):ele.css("margin-left",justifyTo.offset().left-offset.left))}UI.component("dropdown",{defaults:{mode:"hover",pos:"bottom-left",offset:0,remaintime:800,justify:!1,boundary:UI.$win,delay:0,dropdownSelector:".uk-dropdown,.uk-dropdown-blank",hoverDelayIdle:250,preventflip:!1},remainIdle:!1,boot:function(){var triggerevent=UI.support.touch?"click":"mouseenter";UI.$html.on(triggerevent+".dropdown.uikit","[data-uk-dropdown]",(function(e){var ele=UI.$(this);ele.data("dropdown")||(ele=UI.dropdown(ele,UI.Utils.options(ele.attr("data-uk-dropdown"))),("click"==triggerevent||"mouseenter"==triggerevent&&"hover"==ele.options.mode)&&ele.element.trigger(triggerevent),ele.element.find(ele.options.dropdownSelector).length&&e.preventDefault())}))},init:function(){var $this=this;this.dropdown=this.find(this.options.dropdownSelector),this.offsetParent=this.dropdown.parents().filter((function(){return-1!==UI.$.inArray(UI.$(this).css("position"),["relative","fixed","absolute"])})).slice(0,1),this.centered=this.dropdown.hasClass("uk-dropdown-center"),this.justified=!!this.options.justify&&UI.$(this.options.justify),this.boundary=UI.$(this.options.boundary),this.boundary.length||(this.boundary=UI.$win),this.dropdown.hasClass("uk-dropdown-up")&&(this.options.pos="top-left"),this.dropdown.hasClass("uk-dropdown-flip")&&(this.options.pos=this.options.pos.replace("left","right")),this.dropdown.hasClass("uk-dropdown-center")&&(this.options.pos=this.options.pos.replace(/(left|right)/,"center")),this.element.attr("aria-haspopup","true"),this.element.attr("aria-expanded",this.element.hasClass("uk-open")),"click"==this.options.mode||UI.support.touch?this.on("click.uk.dropdown",(function(e){var $target=UI.$(e.target);$target.parents($this.options.dropdownSelector).length||(($target.is("a[href='#']")||$target.parent().is("a[href='#']")||$this.dropdown.length&&!$this.dropdown.is(":visible"))&&e.preventDefault(),$target.blur()),$this.element.hasClass("uk-open")?$this.dropdown.find(e.target).length&&!$target.is(".uk-dropdown-close")&&!$target.parents(".uk-dropdown-close").length||$this.hide():$this.show()})):this.on("mouseenter",(function(e){$this.trigger("pointerenter.uk.dropdown",[$this]),$this.remainIdle&&clearTimeout($this.remainIdle),hoverIdle&&clearTimeout(hoverIdle),active&&active==$this||(hoverIdle=active&&active!=$this?setTimeout((function(){hoverIdle=setTimeout($this.show.bind($this),$this.options.delay)}),$this.options.hoverDelayIdle):setTimeout($this.show.bind($this),$this.options.delay))})).on("mouseleave",(function(){hoverIdle&&clearTimeout(hoverIdle),$this.remainIdle=setTimeout((function(){active&&active==$this&&$this.hide()}),$this.options.remaintime),$this.trigger("pointerleave.uk.dropdown",[$this])})).on("click",(function(e){var $target=UI.$(e.target);$this.remainIdle&&clearTimeout($this.remainIdle),active&&active==$this?$this.dropdown.find(e.target).length&&!$target.is(".uk-dropdown-close")&&!$target.parents(".uk-dropdown-close").length||$this.hide():(($target.is("a[href='#']")||$target.parent().is("a[href='#']"))&&e.preventDefault(),$this.show())}))},show:function(){UI.$html.off("click.outer.dropdown"),active&&active!=this&&active.hide(!0),hoverIdle&&clearTimeout(hoverIdle),this.trigger("beforeshow.uk.dropdown",[this]),this.checkDimensions(),this.element.addClass("uk-open"),this.element.attr("aria-expanded","true"),this.trigger("show.uk.dropdown",[this]),UI.Utils.checkDisplay(this.dropdown,!0),(active=this).registerOuterClick()},hide:function(force){this.trigger("beforehide.uk.dropdown",[this,force]),this.element.removeClass("uk-open"),this.remainIdle&&clearTimeout(this.remainIdle),this.remainIdle=!1,this.element.attr("aria-expanded","false"),this.trigger("hide.uk.dropdown",[this,force]),active==this&&(active=!1)},registerOuterClick:function(){var $this=this;UI.$html.off("click.outer.dropdown"),setTimeout((function(){UI.$html.on("click.outer.dropdown",(function(e){hoverIdle&&clearTimeout(hoverIdle),UI.$(e.target),active!=$this||$this.element.find(e.target).length||($this.hide(!0),UI.$html.off("click.outer.dropdown"))}))}),10)},checkDimensions:function(){if(this.dropdown.length){this.dropdown.removeClass("uk-dropdown-top uk-dropdown-bottom uk-dropdown-left uk-dropdown-right uk-dropdown-stack").css({"top-left":"",left:"","margin-left":"","margin-right":""}),this.justified&&this.justified.length&&this.dropdown.css("min-width","");var fdpos,pos=UI.$.extend({},this.offsetParent.offset(),{width:this.offsetParent[0].offsetWidth,height:this.offsetParent[0].offsetHeight}),posoffset=this.options.offset,dropdown=this.dropdown,width=(dropdown.show().offset(),dropdown.outerWidth()),height=dropdown.outerHeight(),boundarywidth=this.boundary.width(),dpos=(this.boundary[0]!==window&&this.boundary.offset()&&this.boundary.offset(),this.options.pos),css=(posoffset={"bottom-left":{top:0+pos.height+posoffset,left:0},"bottom-right":{top:0+pos.height+posoffset,left:0+pos.width-width},"bottom-center":{top:0+pos.height+posoffset,left:0+pos.width/2-width/2},"top-left":{top:0-height-posoffset,left:0},"top-right":{top:0-height-posoffset,left:0+pos.width-width},"top-center":{top:0-height-posoffset,left:0+pos.width/2-width/2},"left-top":{top:0,left:0-width-posoffset},"left-bottom":{top:0+pos.height-height,left:0-width-posoffset},"left-center":{top:0+pos.height/2-height/2,left:0-width-posoffset},"right-top":{top:0,left:0+pos.width+posoffset},"right-bottom":{top:0+pos.height-height,left:0+pos.width+posoffset},"right-center":{top:0+pos.height/2-height/2,left:0+pos.width+posoffset}},{}),pp=dpos.split("-");css=posoffset[dpos]||posoffset["bottom-left"];if(this.justified&&this.justified.length)justify(dropdown.css({left:0}),this.justified,boundarywidth);else if(!0!==this.options.preventflip){switch(this.checkBoundary(pos.left+css.left,pos.top+css.top,width,height,boundarywidth)){case"x":"x"!==this.options.preventflip&&(fdpos=flips.x[dpos]||"right-top");break;case"y":"y"!==this.options.preventflip&&(fdpos=flips.y[dpos]||"top-left");break;case"xy":this.options.preventflip||(fdpos=flips.xy[dpos]||"right-bottom")}fdpos&&(pp=fdpos.split("-"),this.checkBoundary(pos.left+(css=posoffset[fdpos]||posoffset["bottom-left"]).left,pos.top+css.top,width,height,boundarywidth)&&(pp=dpos.split("-"),css=posoffset[dpos]||posoffset["bottom-left"]))}boundarywidthboundarywidth)&&(axis+="x"),(top-UI.$win.scrollTop()<0||top-UI.$win.scrollTop()+height>window.innerHeight)&&(axis+="y"),axis}}),UI.component("dropdownOverlay",{defaults:{justify:!1,cls:"",duration:200},boot:function(){UI.ready((function(context){UI.$("[data-uk-dropdown-overlay]",context).each((function(){var ele=UI.$(this);ele.data("dropdownOverlay")||UI.dropdownOverlay(ele,UI.Utils.options(ele.attr("data-uk-dropdown-overlay")))}))}))},init:function(){var $this=this;this.justified=!!this.options.justify&&UI.$(this.options.justify),this.overlay=this.element.find("uk-dropdown-overlay"),this.overlay.length||(this.overlay=UI.$('
').appendTo(this.element)),this.overlay.addClass(this.options.cls),this.on({"beforeshow.uk.dropdown":function(e,dropdown){$this.dropdown=dropdown,$this.justified&&$this.justified.length&&justify($this.overlay.css({display:"block","margin-left":"","margin-right":""}),$this.justified,$this.justified.outerWidth())},"show.uk.dropdown":function(e,dropdown){var h=$this.dropdown.dropdown.outerHeight(!0);$this.dropdown.element.removeClass("uk-open"),$this.overlay.stop().css("display","block").animate({height:h},$this.options.duration,(function(){$this.dropdown.dropdown.css("visibility",""),$this.dropdown.element.addClass("uk-open"),UI.Utils.checkDisplay($this.dropdown.dropdown,!0)})),$this.pointerleave=!1},"hide.uk.dropdown":function(){$this.overlay.stop().animate({height:0},$this.options.duration)},"pointerenter.uk.dropdown":function(e,dropdown){clearTimeout($this.remainIdle)},"pointerleave.uk.dropdown":function(e,dropdown){$this.pointerleave=!0}}),this.overlay.on({mouseenter:function(){$this.remainIdle&&(clearTimeout($this.dropdown.remainIdle),clearTimeout($this.remainIdle))},mouseleave:function(){$this.pointerleave&&active&&($this.remainIdle=setTimeout((function(){active&&active.hide()}),active.options.remaintime))}})}})}(UIkit),function(UI){"use strict";var grids=[];UI.component("gridMatchHeight",{defaults:{target:!1,row:!0,ignorestacked:!1},boot:function(){UI.ready((function(context){UI.$("[data-uk-grid-match]",context).each((function(){var grid=UI.$(this);grid.data("gridMatchHeight")||UI.gridMatchHeight(grid,UI.Utils.options(grid.attr("data-uk-grid-match")))}))}))},init:function(){var $this=this;function fn(){$this.match()}this.columns=this.element.children(),this.elements=this.options.target?this.find(this.options.target):this.columns,this.columns.length&&(UI.$win.on("load resize orientationchange",(UI.$((function(){fn()})),UI.Utils.debounce(fn,50))),UI.$html.on("changed.uk.dom",(function(e){$this.columns=$this.element.children(),$this.elements=$this.options.target?$this.find($this.options.target):$this.columns,$this.match()})),this.on("display.uk.check",function(e){this.element.is(":visible")&&this.match()}.bind(this)),grids.push(this))},match:function(){var firstvisible=this.columns.filter(":visible:first");if(firstvisible.length)return 100<=Math.ceil(100*parseFloat(firstvisible.css("width"))/parseFloat(firstvisible.parent().css("width")))&&!this.options.ignorestacked?this.revert():UI.Utils.matchHeights(this.elements,this.options),this},revert:function(){return this.elements.css("min-height",""),this}}),UI.component("gridMargin",{defaults:{cls:"uk-grid-margin",rowfirst:"uk-row-first"},boot:function(){UI.ready((function(context){UI.$("[data-uk-grid-margin]",context).each((function(){var grid=UI.$(this);grid.data("gridMargin")||UI.gridMargin(grid,UI.Utils.options(grid.attr("data-uk-grid-margin")))}))}))},init:function(){UI.stackMargin(this.element,this.options)}})}(UIkit),function(UI){"use strict";var body,active=!1,activeCount=0,$html=UI.$html;UI.component("modal",{defaults:{keyboard:!0,bgclose:!0,minScrollHeight:150,center:!1,modal:!0},scrollable:!1,transition:!1,hasTransitioned:!0,init:function(){var $this;body=body||UI.$("body"),this.element.length&&(($this=this).paddingdir="padding-"+("left"==UI.langdirection?"right":"left"),this.dialog=this.find(".uk-modal-dialog"),this.active=!1,this.element.attr("aria-hidden",this.element.hasClass("uk-open")),this.on("click",".uk-modal-close",(function(e){e.preventDefault(),$this.hide()})).on("click",(function(e){UI.$(e.target)[0]==$this.element[0]&&$this.options.bgclose&&$this.hide()})))},toggle:function(){return this[this.isActive()?"hide":"show"]()},show:function(){if(this.element.length){var $this=this;if(!this.isActive())return this.options.modal&&active&&active.hide(!0),this.element.removeClass("uk-open").show(),this.resize(),this.options.modal&&(active=this),this.active=!0,activeCount++,UI.support.transition?(this.hasTransitioned=!1,this.element.one(UI.support.transition.end,(function(){$this.hasTransitioned=!0})).addClass("uk-open")):this.element.addClass("uk-open"),$html.addClass("uk-modal-page").height(),this.element.attr("aria-hidden","false"),this.element.trigger("show.uk.modal"),UI.Utils.checkDisplay(this.dialog,!0),this}},hide:function(force){var $this;return!force&&UI.support.transition&&this.hasTransitioned?($this=this).one(UI.support.transition.end,(function(){$this._hide()})).removeClass("uk-open"):this._hide(),this},resize:function(){var pad,bodywidth=body.width();this.scrollbarwidth=window.innerWidth-bodywidth,body.css(this.paddingdir,this.scrollbarwidth),this.element.css("overflow-y",this.scrollbarwidth?"scroll":"auto"),!this.updateScrollable()&&this.options.center&&((bodywidth=this.dialog.outerHeight())+(pad=parseInt(this.dialog.css("margin-top"),10)+parseInt(this.dialog.css("margin-bottom"),10))
").html(content):UI.$("
").html("UIkit.modal Error: Unsupported data type: "+typeof content),content.appendTo(modal.element.find(".uk-modal-dialog")))}(content,modal),modal},UI.modal.dialog.template='
',UI.modal.alert=function(content,options){options=UI.$.extend(!0,{bgclose:!1,keyboard:!1,modal:!1,labels:UI.modal.labels},options);var modal=UI.modal.dialog(['
'+String(content)+"
",'"].join(""),options);return modal.on("show.uk.modal",(function(){setTimeout((function(){modal.element.find("button:first").focus()}),50)})),modal.show()},UI.modal.confirm=function(content,onconfirm,oncancel){var options=1'+String(content)+"",'"].join(""),options));return modal.element.find(".js-modal-confirm, .js-modal-confirm-cancel").on("click",(function(){(UI.$(this).is(".js-modal-confirm")?onconfirm:oncancel)(),modal.hide()})),modal.on("show.uk.modal",(function(){setTimeout((function(){modal.element.find(".js-modal-confirm").focus()}),50)})),modal.show()},UI.modal.prompt=function(text,value,onsubmit,options){onsubmit=UI.$.isFunction(onsubmit)?onsubmit:function(value){},options=UI.$.extend(!0,{bgclose:!1,keyboard:!1,modal:!1,labels:UI.modal.labels},options);var modal=UI.modal.dialog([text?'
'+String(text)+"
":"",'

','"].join(""),options),input=modal.element.find("input[type='text']").val(value||"").on("keyup",(function(e){13==e.keyCode&&modal.element.find(".js-modal-ok").trigger("click")}));return modal.element.find(".js-modal-ok").on("click",(function(){!1!==onsubmit(input.val())&&modal.hide()})),modal.on("show.uk.modal",(function(){setTimeout((function(){input.focus()}),50)})),modal.show()},UI.modal.blockUI=function(content,options){return(content=UI.modal.dialog(['
'+String(content||'
...
')+"
"].join(""),UI.$.extend({bgclose:!1,keyboard:!1,modal:!1},options))).content=content.element.find(".uk-modal-content:first"),content.show()},UI.modal.labels={Ok:"Ok",Cancel:"Cancel"}}(UIkit),function(UI){"use strict";UI.component("nav",{defaults:{toggle:">li.uk-parent > a[href='#']",lists:">li.uk-parent > ul",multiple:!1},boot:function(){UI.ready((function(context){UI.$("[data-uk-nav]",context).each((function(){var nav=UI.$(this);nav.data("nav")||UI.nav(nav,UI.Utils.options(nav.attr("data-uk-nav")))}))}))},init:function(){var $this=this;this.on("click.uk.nav",this.options.toggle,(function(e){e.preventDefault(),e=UI.$(this),$this.open(e.parent()[0]==$this.element[0]?e:e.parent("li"))})),this.find(this.options.lists).each((function(){var $ele=UI.$(this),parent=$ele.parent(),active=parent.hasClass("uk-active");$ele.wrap('
'),parent.data("list-container",$ele.parent()[active?"removeClass":"addClass"]("uk-hidden")),parent.attr("aria-expanded",parent.hasClass("uk-open")),active&&$this.open(parent,!0)}))},open:function(li,noanimation){var ele,tmp,height,$this=this,element=this.element,$li=UI.$(li),$container=$li.data("list-container");this.options.multiple||element.children(".uk-open").not(li).each((function(){var ele=UI.$(this);ele.data("list-container")&&ele.data("list-container").stop().animate({height:0},(function(){UI.$(this).parent().removeClass("uk-open").end().addClass("uk-hidden")}))})),$li.toggleClass("uk-open"),$li.attr("aria-expanded",$li.hasClass("uk-open")),$container&&($li.hasClass("uk-open")&&$container.removeClass("uk-hidden"),noanimation?($container.stop().height($li.hasClass("uk-open")?"auto":0),$li.hasClass("uk-open")||$container.addClass("uk-hidden"),this.trigger("display.uk.check")):$container.stop().animate({height:$li.hasClass("uk-open")?(ele=$container.find("ul:first"),height="auto",(ele=UI.$(ele)).is(":visible")?height=ele.outerHeight():(tmp={position:ele.css("position"),visibility:ele.css("visibility"),display:ele.css("display")},height=ele.css({position:"absolute",visibility:"hidden",display:"block"}).outerHeight(),ele.css(tmp)),height):0},(function(){$li.hasClass("uk-open")?$container.css("height",""):$container.addClass("uk-hidden"),$this.trigger("display.uk.check")})))}})}(UIkit),function(UI){"use strict";var scrollpos={x:window.scrollX,y:window.scrollY},$html=(UI.$win,UI.$doc,UI.$html),Offcanvas={show:function(element,options){var $body,bar,rtl,dir,scrollbarwidth;(element=UI.$(element)).length&&(options=UI.$.extend({mode:"push"},options),$body=UI.$("body"),bar=element.find(".uk-offcanvas-bar:first"),rtl="right"==UI.langdirection,dir=(bar.hasClass("uk-offcanvas-bar-flip")?-1:1)*(rtl?-1:1),scrollbarwidth=window.innerWidth-$body.width(),scrollpos={x:window.pageXOffset,y:window.pageYOffset},bar.attr("mode",options.mode),element.addClass("uk-active"),$body.css({width:window.innerWidth-scrollbarwidth,height:window.innerHeight}).addClass("uk-offcanvas-page"),"push"!=options.mode&&"reveal"!=options.mode||$body.css(rtl?"margin-right":"margin-left",(rtl?-1:1)*(bar.outerWidth()*dir)),"reveal"==options.mode&&bar.css("clip","rect(0, "+bar.outerWidth()+"px, 100vh, 0)"),$html.css("margin-top",-1*scrollpos.y).width(),bar.addClass("uk-offcanvas-bar-show"),this._initElement(element),bar.trigger("show.uk.offcanvas",[element,bar]),element.attr("aria-hidden","false"))},hide:function(force){function finalize(){$body.removeClass("uk-offcanvas-page").css({width:"",height:"",marginLeft:"",marginRight:""}),panel.removeClass("uk-active"),bar.removeClass("uk-offcanvas-bar-show"),$html.css("margin-top",""),window.scrollTo(scrollpos.x,scrollpos.y),bar.trigger("hide.uk.offcanvas",[panel,bar]),panel.attr("aria-hidden","true")}var $body=UI.$("body"),panel=UI.$(".uk-offcanvas.uk-active"),rtl="right"==UI.langdirection,bar=panel.find(".uk-offcanvas-bar:first");panel.length&&("none"==bar.attr("mode")&&(force=!0),UI.support.transition&&!force?($body.one(UI.support.transition.end,(function(){finalize()})).css(rtl?"margin-right":"margin-left",""),"reveal"==bar.attr("mode")&&bar.css("clip",""),setTimeout((function(){bar.removeClass("uk-offcanvas-bar-show")}),0)):finalize())},_initElement:function(element){element.data("OffcanvasInit")||(element.on("click.uk.offcanvas swipeRight.uk.offcanvas swipeLeft.uk.offcanvas",(function(e){var target=UI.$(e.target);if(!e.type.match(/swipe/)&&!target.hasClass("uk-offcanvas-close")){if(target.hasClass("uk-offcanvas-bar"))return;if(target.parents(".uk-offcanvas-bar:first").length)return}e.stopImmediatePropagation(),Offcanvas.hide()})),element.on("click",'a[href*="#"]',(function(e){var link=UI.$(this),href=link.attr("href");"#"!=href&&(UI.$doc.one("hide.uk.offcanvas",(function(){var target;try{target=UI.$(link[0].hash)}catch(e){target=""}(target=target.length?target:UI.$('[name="'+link[0].hash.replace("#","")+'"]')).length&&UI.Utils.scrollToElement?UI.Utils.scrollToElement(target,UI.Utils.options(link.attr("data-uk-smooth-scroll")||"{}")):window.location.href=href})),Offcanvas.hide())})),element.data("OffcanvasInit",!0))}};UI.component("offcanvasTrigger",{boot:function(){$html.on("click.offcanvas.uikit","[data-uk-offcanvas]",(function(e){e.preventDefault(),(e=UI.$(this)).data("offcanvasTrigger")||(UI.offcanvasTrigger(e,UI.Utils.options(e.attr("data-uk-offcanvas"))),e.trigger("click"))})),$html.on("keydown.uk.offcanvas",(function(e){27===e.keyCode&&Offcanvas.hide()}))},init:function(){var $this=this;this.options=UI.$.extend({target:!!$this.element.is("a")&&$this.element.attr("href"),mode:"push"},this.options),this.on("click",(function(e){e.preventDefault(),Offcanvas.show($this.options.target,$this.options)}))}}),UI.offcanvas=Offcanvas}(UIkit),function(UI){"use strict";var Animations;function coreAnimation(cls,current,next){var release,d=UI.$.Deferred(),clsIn=cls,clsOut=cls;return next[0]===current[0]?d.resolve():("object"==typeof cls&&(clsIn=cls[0],clsOut=cls[1]||cls[0]),UI.$body.css("overflow-x","hidden"),release=function(){current&¤t.hide().removeClass("uk-active "+clsOut+" uk-animation-reverse"),next.addClass(clsIn).one(UI.support.animation.end,function(){next.removeClass(""+clsIn).css({opacity:"",display:""}),d.resolve(),UI.$body.css("overflow-x",""),current&¤t.css({opacity:"",display:""})}.bind(this)).show()},next.css("animation-duration",this.options.duration+"ms"),current&¤t.length?(current.css("animation-duration",this.options.duration+"ms"),current.css("display","none").addClass(clsOut+" uk-animation-reverse").one(UI.support.animation.end,function(){release()}.bind(this)).css("display","")):(next.addClass("uk-active"),release())),d.promise()}UI.component("switcher",{defaults:{connect:!1,toggle:">*",active:0,animation:!1,duration:200,swiping:!0},animating:!1,boot:function(){UI.ready((function(context){UI.$("[data-uk-switcher]",context).each((function(){var switcher=UI.$(this);switcher.data("switcher")||UI.switcher(switcher,UI.Utils.options(switcher.attr("data-uk-switcher")))}))}))},init:function(){var $this=this;if(this.on("click.uk.switcher",this.options.toggle,(function(e){e.preventDefault(),$this.show(this)})),this.options.connect){this.connect=UI.$(this.options.connect),this.connect.find(".uk-active").removeClass(".uk-active"),this.connect.length&&(this.connect.children().attr("aria-hidden","true"),this.connect.on("click","[data-uk-switcher-item]",(function(e){e.preventDefault();var item=UI.$(this).attr("data-uk-switcher-item");if($this.index!=item)switch(item){case"next":case"previous":$this.show($this.index+("next"==item?1:-1));break;default:$this.show(parseInt(item,10))}})),this.options.swiping&&this.connect.on("swipeRight swipeLeft",(function(e){e.preventDefault(),window.getSelection().toString()||$this.show($this.index+("swipeLeft"==e.type?1:-1))})));var toggles=this.find(this.options.toggle),active=toggles.filter(".uk-active");if(active.length)this.show(active,!1);else{if(!1===this.options.active)return;active=toggles.eq(this.options.active),this.show(active.length?active:toggles.eq(0),!1)}toggles.not(active).attr("aria-expanded","false"),active.attr("aria-expanded","true"),this.on("changed.uk.dom",(function(){$this.connect=UI.$($this.options.connect)}))}},show:function(tab,animate){var $this,toggles,animation;this.animating||(tab=isNaN(tab)?UI.$(tab):(toggles=this.find(this.options.toggle),tab=tab<0?toggles.length-1:tab,toggles.eq(toggles[tab]?tab:0)),toggles=($this=this).find(this.options.toggle),tab=UI.$(tab),animation=Animations[this.options.animation]||function(current,next){if(!$this.options.animation)return Animations.none.apply($this);var anim=$this.options.animation.split(",");return 1==anim.length&&(anim[1]=anim[0]),anim[0]=anim[0].trim(),anim[1]=anim[1].trim(),coreAnimation.apply($this,[anim,current,next])},!1!==animate&&UI.support.animation||(animation=Animations.none),tab.hasClass("uk-disabled")||(toggles.attr("aria-expanded","false"),tab.attr("aria-expanded","true"),toggles.filter(".uk-active").removeClass("uk-active"),tab.addClass("uk-active"),this.options.connect&&this.connect.length&&(this.index=this.find(this.options.toggle).index(tab),-1==this.index&&(this.index=0),this.connect.each((function(){var container=UI.$(this),current=(container=UI.$(container.children()),UI.$(container.filter(".uk-active"))),next=UI.$(container.eq($this.index));$this.animating=!0,animation.apply($this,[current,next]).then((function(){current.removeClass("uk-active"),next.addClass("uk-active"),current.attr("aria-hidden","true"),next.attr("aria-hidden","false"),UI.Utils.checkDisplay(next,!0),$this.animating=!1}))}))),this.trigger("show.uk.switcher",[tab])))}}),Animations={none:function(){var d=UI.$.Deferred();return d.resolve(),d.promise()},fade:function(current,next){return coreAnimation.apply(this,["uk-animation-fade",current,next])},"slide-bottom":function(current,next){return coreAnimation.apply(this,["uk-animation-slide-bottom",current,next])},"slide-top":function(current,next){return coreAnimation.apply(this,["uk-animation-slide-top",current,next])},"slide-vertical":function(current,next,dir){var anim=["uk-animation-slide-top","uk-animation-slide-bottom"];return current&¤t.index()>next.index()&&anim.reverse(),coreAnimation.apply(this,[anim,current,next])},"slide-left":function(current,next){return coreAnimation.apply(this,["uk-animation-slide-left",current,next])},"slide-right":function(current,next){return coreAnimation.apply(this,["uk-animation-slide-right",current,next])},"slide-horizontal":function(current,next,dir){var anim=["uk-animation-slide-right","uk-animation-slide-left"];return current&¤t.index()>next.index()&&anim.reverse(),coreAnimation.apply(this,[anim,current,next])},scale:function(current,next){return coreAnimation.apply(this,["uk-animation-scale-up",current,next])}},UI.switcher.animations=Animations}(UIkit),function(UI){"use strict";UI.component("tab",{defaults:{target:">li:not(.uk-tab-responsive, .uk-disabled)",connect:!1,active:0,animation:!1,duration:200,swiping:!0},boot:function(){UI.ready((function(context){UI.$("[data-uk-tab]",context).each((function(){var tab=UI.$(this);tab.data("tab")||UI.tab(tab,UI.Utils.options(tab.attr("data-uk-tab")))}))}))},init:function(){var $this=this;this.current=!1,this.on("click.uk.tab",this.options.target,(function(e){e.preventDefault(),$this.switcher&&$this.switcher.animating||((e=$this.find($this.options.target).not(this)).removeClass("uk-active").blur(),$this.trigger("change.uk.tab",[UI.$(this).addClass("uk-active"),$this.current]),$this.current=UI.$(this),$this.options.connect||(e.attr("aria-expanded","false"),UI.$(this).attr("aria-expanded","true")))})),this.options.connect&&(this.connect=UI.$(this.options.connect)),this.responsivetab=UI.$('
  • ').append('
      '),this.responsivetab.dropdown=this.responsivetab.find(".uk-dropdown"),this.responsivetab.lst=this.responsivetab.dropdown.find("ul"),this.responsivetab.caption=this.responsivetab.find("a:first"),this.element.hasClass("uk-tab-bottom")&&this.responsivetab.dropdown.addClass("uk-dropdown-up"),this.responsivetab.lst.on("click.uk.tab","a",(function(e){e.preventDefault(),e.stopPropagation(),e=UI.$(this),$this.element.children("li:not(.uk-tab-responsive)").eq(e.data("index")).trigger("click")})),this.on("show.uk.switcher change.uk.tab",(function(e,tab){$this.responsivetab.caption.html(tab.text())})),this.element.append(this.responsivetab),this.options.connect&&(this.switcher=UI.switcher(this.element,{toggle:">li:not(.uk-tab-responsive)",connect:this.options.connect,active:this.options.active,animation:this.options.animation,duration:this.options.duration,swiping:this.options.swiping})),UI.dropdown(this.responsivetab,{mode:"click",preventflip:"y"}),$this.trigger("change.uk.tab",[this.element.find(this.options.target).not(".uk-tab-responsive").filter(".uk-active")]),this.check(),UI.$win.on("resize orientationchange",UI.Utils.debounce((function(){$this.element.is(":visible")&&$this.check()}),100)),this.on("display.uk.check",(function(){$this.element.is(":visible")&&$this.check()}))},check:function(){var children=this.element.children("li:not(.uk-tab-responsive)").removeClass("uk-hidden");if(children.length){var item,clone,top=children.eq(0).offset().top+Math.ceil(children.eq(0).height()/2),doresponsive=!1;if(this.responsivetab.lst.empty(),children.each((function(){UI.$(this).offset().top>top&&(doresponsive=!0)})),doresponsive)for(var i=0;i
      ').parent()).attr("aria-expanded","false"),$toggle=$this.toggle.eq(index),$wrapper.data("toggle",$toggle),$wrapper.data("content",$content),$toggle.data("wrapper",$wrapper),$content.data("wrapper",$wrapper)})),this.element.trigger("update.uk.accordion",[this])}}),UI.accordion},window.UIkit&&(component=addon(UIkit)),void 0===(__WEBPACK_AMD_DEFINE_RESULT__=function(){return component||addon(UIkit)}.apply(exports,[__WEBPACK_LOCAL_MODULE_0__]))||(module.exports=__WEBPACK_AMD_DEFINE_RESULT__),function(addon){var component;window.UIkit&&(component=addon(UIkit)),void 0===(__WEBPACK_AMD_DEFINE_RESULT__=function(){return component||addon(UIkit)}.apply(exports,[__WEBPACK_LOCAL_MODULE_0__]))||(module.exports=__WEBPACK_AMD_DEFINE_RESULT__)}((function(UI){"use strict";var active;return UI.component("autocomplete",{defaults:{minLength:3,param:"search",method:"post",delay:300,loadingClass:"uk-loading",flipDropdown:!1,skipClass:"uk-skip",hoverClass:"uk-active",source:null,renderer:null,template:''},visible:!1,value:null,selected:null,boot:function(){UI.$html.on("focus.autocomplete.uikit","[data-uk-autocomplete]",(function(e){var ele=UI.$(this);ele.data("autocomplete")||UI.autocomplete(ele,UI.Utils.options(ele.attr("data-uk-autocomplete")))})),UI.$html.on("click.autocomplete.uikit",(function(e){active&&e.target!=active.input[0]&&active.hide()}))},init:function(){var $this=this,select=!1,trigger=UI.Utils.debounce((function(e){if(select)return select=!1;$this.handle()}),this.options.delay);this.dropdown=this.find(".uk-dropdown"),this.template=this.find('script[type="text/autocomplete"]').html(),this.template=UI.Utils.template(this.template||this.options.template),this.input=this.find("input:first").attr("autocomplete","off"),this.dropdown.length||(this.dropdown=UI.$('
      ').appendTo(this.element)),this.options.flipDropdown&&this.dropdown.addClass("uk-dropdown-flip"),this.dropdown.attr("aria-expanded","false"),this.input.on({keydown:function(e){if(e&&e.which&&!e.shiftKey)switch(e.which){case 13:select=!0,$this.selected&&(e.preventDefault(),$this.select());break;case 38:e.preventDefault(),$this.pick("prev",!0);break;case 40:e.preventDefault(),$this.pick("next",!0);break;case 27:case 9:$this.hide()}},keyup:trigger}),this.dropdown.on("click",".uk-autocomplete-results > *",(function(){$this.select()})),this.dropdown.on("mouseover",".uk-autocomplete-results > *",(function(){$this.pick(UI.$(this))})),this.triggercomplete=trigger},handle:function(){var old=this.value;return this.value=this.input.val(),this.value.length')+'';if(UI.formSelect){for(var months,minYear,maxYear,currentyear=(new Date).getFullYear(),options=[],i=0;i'+opts.i18n.months[i]+""):options.push('");for(months=''+opts.i18n.months[data.month]+'",options=[],minYear=data.minDate?data.minDate.year():currentyear-50,maxYear=data.maxDate?data.maxDate.year():currentyear+20,i=minYear;i<=maxYear;i++)i==data.year?options.push('"):options.push('");content+='
      '+months+' '+data.year+'
      "}else content+='
      '+opts.i18n.months[data.month]+" "+data.year+"
      ";for(content=(content+="
      ")+'',i=0;i"+data.weekdays[i]+"");for(content+="",i=0;i";for(var day,cls,d=0;d'+day.day.format("D")+"");content+=""}return content+"
      "}},boot:function(){UI.$win.on("resize orientationchange",(function(){active&&active.hide()})),UI.$html.on("focus.datepicker.uikit","[data-uk-datepicker]",(function(e){var ele=UI.$(this);ele.data("datepicker")||(e.preventDefault(),UI.datepicker(ele,UI.Utils.options(ele.attr("data-uk-datepicker"))),ele.trigger("focus"))})),UI.$html.on("click focus","*",(function(e){e=UI.$(e.target),!active||e[0]==dropdown[0]||e.data("datepicker")||e.parents(".uk-datepicker:first").length||active.hide()}))},init:function(){var $this;UI.support.touch&&"date"==this.element.attr("type")&&!this.options.mobile||(($this=this).current=this.element.val()?moment(this.element.val(),this.options.format):moment(),this.on("click focus",(function(){active!==$this&&$this.pick(this.value||$this.options.minDate||"")})).on("change",(function(){$this.element.val()&&!moment($this.element.val(),$this.options.format).isValid()&&$this.element.val(moment().format($this.options.format))})),dropdown||((dropdown=UI.$('
      ')).on("click",".uk-datepicker-next, .uk-datepicker-previous, [data-date]",(function(e){if(e.stopPropagation(),e.preventDefault(),(e=UI.$(this)).hasClass("uk-datepicker-date-disabled"))return!1;e.is("[data-date]")?(active.current=moment(e.data("date")),active.element.val(active.current.format(active.options.format)).trigger("change"),active.hide()):active.add(e.hasClass("uk-datepicker-next")?1:-1,"months")})),dropdown.on("change",".update-picker-month, .update-picker-year",(function(){var select=UI.$(this);active[select.is(".update-picker-year")?"setYear":"setMonth"](Number(select.val()))})),dropdown.appendTo("body")))},pick:function(initdate){var css={left:(offset=this.element.offset()).left,right:""},offset=(initdate=(this.current=isNaN(initdate)?moment(initdate,this.options.format):moment(),this.initdate=this.current.format("YYYY-MM-DD"),this.update(),"right"==UI.langdirection&&(css.right=window.innerWidth-(css.left+this.element.outerWidth()),css.left=""),offset.top-this.element.outerHeight()+this.element.height()-this.options.offsettop-dropdown.outerHeight()),offset.top+this.element.outerHeight()+this.options.offsettop);css.top=offset,("top"==this.options.pos||"auto"==this.options.pos&&window.innerHeight-offset-dropdown.outerHeight()<0&&0<=initdate)&&(css.top=initdate),dropdown.css(css).show(),this.trigger("show.uk.datepicker"),active=this},add:function(unit,value){this.current.add(unit,value),this.update()},setMonth:function(month){this.current.month(month),this.update()},setYear:function(year){this.current.year(year),this.update()},update:function(){var data=this.getRows(this.current.year(),this.current.month());data=this.options.template(data,this.options);dropdown.html(data),this.trigger("update.uk.datepicker")},getRows:function(year,month){for(var day,isDisabled,isSelected,isToday,isInMonth,opts=this.options,now=moment().format("YYYY-MM-DD"),days=[31,year%4==0&&year%100!=0||year%400==0?29:28,31,30,31,30,31,31,30,31,30,31][month],before=new Date(year,month,1,12).getDay(),data={month,year,weekdays:[],days:[],maxDate:!1,minDate:!1},row=[],cells=(!1!==opts.maxDate&&(data.maxDate=isNaN(opts.maxDate)?moment(opts.maxDate,opts.format):moment().add(opts.maxDate,"days")),!1!==opts.minDate&&(data.minDate=isNaN(opts.minDate)?moment(opts.minDate,opts.format):moment().add(opts.minDate-1,"days")),data.weekdays=function(){for(var i=0,arr=[];i<7;i++){for(var day=i+(opts.weekstart||0);7<=day;)day-=7;arr.push(opts.i18n.weekdays[day])}return arr}(),opts.weekstart&&0day||data.maxDate&&day>data.maxDate,isInMonth=!(ispan:first",activeClass:"uk-active"},boot:function(){UI.ready((function(context){UI.$("[data-uk-form-select]",context).each((function(){var ele=UI.$(this);ele.data("formSelect")||UI.formSelect(ele,UI.Utils.options(ele.attr("data-uk-form-select")))}))}))},init:function(){var select,$this=this;this.target=this.find(this.options.target),this.select=this.find("select"),this.select.on("change",(select=$this.select[0],function fn(){try{$this.target.text(select.options[select.selectedIndex].text)}catch(e){}return $this.element[$this.select.val()?"addClass":"removeClass"]($this.options.activeClass),fn}())),this.element.data("formSelect",this)}}),UI.formSelect})),function(addon){var component;window.UIkit&&(component=addon(UIkit)),void 0===(__WEBPACK_AMD_DEFINE_RESULT__=function(){return component||addon(UIkit)}.apply(exports,[__WEBPACK_LOCAL_MODULE_0__]))||(module.exports=__WEBPACK_AMD_DEFINE_RESULT__)}((function(UI){"use strict";UI.component("grid",{defaults:{colwidth:"auto",animation:!0,duration:300,gutter:0,controls:!1,filter:!1},boot:function(){UI.ready((function(context){UI.$("[data-uk-grid]",context).each((function(){var ele=UI.$(this);ele.data("grid")||UI.grid(ele,UI.Utils.options(ele.attr("data-uk-grid")))}))}))},init:function(){var $this=this,gutter=String(this.options.gutter).trim().split(" ");this.gutterv=parseInt(gutter[0],10),this.gutterh=parseInt(gutter[1]||gutter[0],10),this.element.css({position:"relative"}),this.controls=null,this.options.controls&&(this.controls=UI.$(this.options.controls),this.controls.on("click","[data-uk-filter]",(function(e){e.preventDefault(),$this.filter(UI.$(this).data("ukFilter"))})),this.controls.on("click","[data-uk-sort]",(function(e){e.preventDefault(),e=UI.$(this).attr("data-uk-sort").split(":"),$this.sort(e[0],e[1])}))),UI.$win.on("load resize orientationchange",UI.Utils.debounce(function(){$this.currentfilter?$this.filter($this.currentfilter):this.updateLayout()}.bind(this),100)),this.on("display.uk.check",(function(){$this.element.is(":visible")&&$this.updateLayout()})),UI.$html.on("changed.uk.dom",(function(e){$this.updateLayout()})),!1!==this.options.filter?this.filter(this.options.filter):this.updateLayout()},_prepareElements:function(){var css,children=this.element.children(":not([data-grid-prepared])");children.length&&(css={position:"absolute","box-sizing":"border-box",width:"auto"==this.options.colwidth?"":this.options.colwidth},this.options.gutter&&(css["padding-left"]=this.gutterh,css["padding-bottom"]=this.gutterv,this.element.css("margin-left",-1*this.gutterh)),children.attr("data-grid-prepared","true").css(css))},updateLayout:function(elements){this._prepareElements();elements=elements=elements||this.element.children(":visible");var item,width,pos,z,size,maxwidth=this.element.width()+2*this.gutterh+2,left=0,top=0,positions=[];this.trigger("beforeupdate.uk.grid",[elements]),elements.each((function(index){for(size=_getSize(this),item=UI.$(this),width=size.outerWidth,size=size.outerHeight,i=top=left=0,max=positions.length;i