From f12e5a28b1cd86d5de95e53fcef56dedf55e0475 Mon Sep 17 00:00:00 2001 From: Manuel Bachmann Date: Tue, 5 Jan 2016 11:32:05 +0100 Subject: [PATCH] Add "dist.prod" directory, modify .gitignore "dist.prod" is a snapshot of compiled application ; it is useful for demos, and because compiling AngularJS code (using npm, gulp...) within Yocto means lots of efforts for little gain. Signed-off-by: Manuel Bachmann --- afb-client/.gitignore | 4 ++-- .../dist.prod/bower_components/foundation-icons.woff | Bin 0 -> 32020 bytes afb-client/dist.prod/bower_components/vendor.min.js | 12 ++++++++++++ afb-client/dist.prod/favicon.ico | Bin 0 -> 1150 bytes .../dist.prod/global_styles/foundation-conf.min.css | 2 ++ afb-client/dist.prod/global_styles/ibz-global.min.css | 2 ++ afb-client/dist.prod/opa/AFBclient.min.css | 9 +++++++++ afb-client/dist.prod/opa/AFBclient.min.js | 2 ++ afb-client/dist.prod/opa/images/appli/isnotvalid.png | Bin 0 -> 11124 bytes afb-client/dist.prod/opa/images/appli/istoobig.png | Bin 0 -> 15144 bytes afb-client/dist.prod/opa/images/appli/upload-appli.png | Bin 0 -> 10094 bytes afb-client/dist.prod/opa/images/audio/istoobig.png | Bin 0 -> 15144 bytes afb-client/dist.prod/opa/images/audio/upload-music.png | Bin 0 -> 19411 bytes afb-client/dist.prod/opa/images/avatars/istoobig.jpg | Bin 0 -> 7204 bytes afb-client/dist.prod/opa/images/avatars/istoobig.png | Bin 0 -> 15144 bytes afb-client/dist.prod/opa/images/avatars/tux-admin.png | Bin 0 -> 15107 bytes afb-client/dist.prod/opa/images/avatars/tux-bzh.png | Bin 0 -> 18451 bytes afb-client/dist.prod/opa/images/avatars/tux-visitor.png | Bin 0 -> 29307 bytes afb-client/dist.prod/opa/images/login/fb-logo.png | Bin 0 -> 2092 bytes afb-client/dist.prod/opa/images/login/gg-logo.png | Bin 0 -> 2465 bytes afb-client/dist.prod/opa/images/login/gh-logo.png | Bin 0 -> 2779 bytes afb-client/dist.prod/opa/images/login/iot-logo.png | Bin 0 -> 2349 bytes afb-client/dist.prod/opa/images/login/lk-logo.png | Bin 0 -> 2511 bytes afb-client/dist.prod/opa/images/login/ms-logo.png | Bin 0 -> 3024 bytes afb-client/dist.prod/opa/images/login/og-logo.png | Bin 0 -> 2181 bytes afb-client/dist.prod/opa/images/login/pp-logo.png | Bin 0 -> 2236 bytes afb-client/dist.prod/opa/images/login/yh-logo.png | Bin 0 -> 3309 bytes afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg | 1 + .../dist.prod/opa/images/logo/logo_iot_bzhx350.png | Bin 0 -> 9416 bytes .../dist.prod/opa/images/logo/tampon-iot-bzhx450.png | Bin 0 -> 19420 bytes .../dist.prod/opa/images/logo/triskel_iot_bzh.png | Bin 0 -> 30976 bytes .../dist.prod/opa/images/logo/triskel_iot_bzh.svg | 1 + .../dist.prod/opa/images/logo/triskel_iot_bzhx250.png | Bin 0 -> 9799 bytes afb-client/dist.prod/opa/index.html | 3 +++ 34 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 afb-client/dist.prod/bower_components/foundation-icons.woff create mode 100644 afb-client/dist.prod/bower_components/vendor.min.js create mode 100644 afb-client/dist.prod/favicon.ico create mode 100644 afb-client/dist.prod/global_styles/foundation-conf.min.css create mode 100644 afb-client/dist.prod/global_styles/ibz-global.min.css create mode 100644 afb-client/dist.prod/opa/AFBclient.min.css create mode 100644 afb-client/dist.prod/opa/AFBclient.min.js create mode 100644 afb-client/dist.prod/opa/images/appli/isnotvalid.png create mode 100644 afb-client/dist.prod/opa/images/appli/istoobig.png create mode 100644 afb-client/dist.prod/opa/images/appli/upload-appli.png create mode 100644 afb-client/dist.prod/opa/images/audio/istoobig.png create mode 100644 afb-client/dist.prod/opa/images/audio/upload-music.png create mode 100644 afb-client/dist.prod/opa/images/avatars/istoobig.jpg create mode 100644 afb-client/dist.prod/opa/images/avatars/istoobig.png create mode 100644 afb-client/dist.prod/opa/images/avatars/tux-admin.png create mode 100644 afb-client/dist.prod/opa/images/avatars/tux-bzh.png create mode 100644 afb-client/dist.prod/opa/images/avatars/tux-visitor.png create mode 100644 afb-client/dist.prod/opa/images/login/fb-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/gg-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/gh-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/iot-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/lk-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/ms-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/og-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/pp-logo.png create mode 100644 afb-client/dist.prod/opa/images/login/yh-logo.png create mode 100644 afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg create mode 100644 afb-client/dist.prod/opa/images/logo/logo_iot_bzhx350.png create mode 100644 afb-client/dist.prod/opa/images/logo/tampon-iot-bzhx450.png create mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.png create mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg create mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzhx250.png create mode 100644 afb-client/dist.prod/opa/index.html diff --git a/afb-client/.gitignore b/afb-client/.gitignore index bb6f2ab..ba5820b 100644 --- a/afb-client/.gitignore +++ b/afb-client/.gitignore @@ -1,7 +1,7 @@ -bower_components/ +#bower_components/ node_modules/ dist.dev/ -dist.prod/ +#dist.prod/ *.DS_Store nbproject/private/ .noderc* diff --git a/afb-client/dist.prod/bower_components/foundation-icons.woff b/afb-client/dist.prod/bower_components/foundation-icons.woff new file mode 100644 index 0000000000000000000000000000000000000000..e2cfe25dd392203f910d5deadd19beebe7e99984 GIT binary patch literal 32020 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 in t}function o(t,e,n){var r,a;if(t)if(x(t))for(r in t)"prototype"==r||"length"==r||"name"==r||t.hasOwnProperty&&!t.hasOwnProperty(r)||e.call(n,t[r],r,t);else if(dr(t)||i(t)){var s="object"!=typeof t;for(r=0,a=t.length;a>r;r++)(s||r in t)&&e.call(n,t[r],r,t)}else if(t.forEach&&t.forEach!==o)t.forEach(e,n,t);else for(r in t)t.hasOwnProperty(r)&&e.call(n,t[r],r,t);return t}function a(t){return Object.keys(t).sort()}function s(t,e,n){for(var r=a(t),i=0;in;n++){var i=arguments[n];if(i)for(var o=Object.keys(i),a=0,s=o.length;s>a;a++){var u=o[a];t[u]=i[u]}}return l(t,e),t}function h(t){return parseInt(t,10)}function d(t,e){return f(Object.create(t),e)}function p(){}function m(t){return t}function v(t){return function(){return t}}function g(t){return"undefined"==typeof t}function $(t){return"undefined"!=typeof t}function y(t){return null!==t&&"object"==typeof t}function b(t){return"string"==typeof t}function w(t){return"number"==typeof t}function _(t){return"[object Date]"===ur.call(t)}function x(t){return"function"==typeof t}function C(t){return"[object RegExp]"===ur.call(t)}function E(t){return t&&t.window===t}function k(t){return t&&t.$evalAsync&&t.$watch}function A(t){return"[object File]"===ur.call(t)}function S(t){return"[object FormData]"===ur.call(t)}function T(t){return"[object Blob]"===ur.call(t)}function O(t){return"boolean"==typeof t}function I(t){return t&&x(t.then)}function z(t){return!(!t||!(t.nodeName||t.prop&&t.attr&&t.find))}function M(t){var e,n={},r=t.split(",");for(e=0;e=0&&t.splice(n,1),e}function N(t,e,n,r){if(E(t)||k(t))throw cr("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");if(e){if(t===e)throw cr("cpi","Can't copy! Source and destination are identical.");if(n=n||[],r=r||[],y(t)){var i=n.indexOf(t);if(-1!==i)return r[i];n.push(t),r.push(e)}var a;if(dr(t)){e.length=0;for(var s=0;sn;n++)e[n]=t[n]}else if(y(t)){e=e||{};for(var i in t)("$"!==i.charAt(0)||"$"!==i.charAt(1))&&(e[i]=t[i])}return e||t}function P(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!==t&&e!==e)return!0;var r,i,o,a=typeof t,s=typeof e;if(a==s&&"object"==a){if(!dr(t)){if(_(t))return _(e)?P(t.getTime(),e.getTime()):!1;if(C(t))return C(e)?t.toString()==e.toString():!1;if(k(t)||k(e)||E(t)||E(e)||dr(e)||_(e)||C(e))return!1;o={};for(i in t)if("$"!==i.charAt(0)&&!x(t[i])){if(!P(t[i],e[i]))return!1;o[i]=!0}for(i in e)if(!o.hasOwnProperty(i)&&"$"!==i.charAt(0)&&e[i]!==n&&!x(e[i]))return!1;return!0}if(!dr(e))return!1;if((r=t.length)==e.length){for(i=0;r>i;i++)if(!P(t[i],e[i]))return!1;return!0}}return!1}function F(t,e,n){return t.concat(or.call(e,n))}function B(t,e){return or.call(t,e||0)}function L(t,e){var n=arguments.length>2?B(arguments,2):[];return!x(e)||e instanceof RegExp?e:n.length?function(){return arguments.length?e.apply(t,F(n,arguments,0)):e.apply(t,n)}:function(){return arguments.length?e.apply(t,arguments):e.call(t)}}function U(t,r){var i=r;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?i=n:E(r)?i="$WINDOW":r&&e===r?i="$DOCUMENT":k(r)&&(i="$SCOPE"),i}function V(t,e){return"undefined"==typeof t?n:(w(e)||(e=e?2:null),JSON.stringify(t,U,e))}function q(t){return b(t)?JSON.parse(t):t}function H(t){t=nr(t).clone();try{t.empty()}catch(e){}var n=nr("
").append(t).html();try{return t[0].nodeType===_r?Gn(n):n.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(t,e){return"<"+Gn(e)})}catch(e){return Gn(n)}}function W(t){try{return decodeURIComponent(t)}catch(e){}}function X(t){var e,n,r={};return o((t||"").split("&"),function(t){if(t&&(e=t.replace(/\+/g,"%20").split("="),n=W(e[0]),$(n))){var i=$(e[1])?W(e[1]):!0;Kn.call(r,n)?dr(r[n])?r[n].push(i):r[n]=[r[n],i]:r[n]=i}}),r}function Y(t){var e=[];return o(t,function(t,n){dr(t)?o(t,function(t){e.push(G(n,!0)+(t===!0?"":"="+G(t,!0)))}):e.push(G(n,!0)+(t===!0?"":"="+G(t,!0)))}),e.length?e.join("&"):""}function Z(t){return G(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function G(t,e){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,e?"%20":"+")}function K(t,e){var n,r,i=gr.length;for(t=nr(t),r=0;i>r;++r)if(n=gr[r]+e,b(n=t.attr(n)))return n;return null}function J(t,e){var n,r,i={};o(gr,function(e){var i=e+"app";!n&&t.hasAttribute&&t.hasAttribute(i)&&(n=t,r=t.getAttribute(i))}),o(gr,function(e){var i,o=e+"app";!n&&(i=t.querySelector("["+o.replace(":","\\:")+"]"))&&(n=i,r=i.getAttribute(o))}),n&&(i.strictDi=null!==K(n,"strict-di"),e(n,r?[r]:[],i))}function Q(n,r,i){y(i)||(i={});var a={strictDi:!1};i=f(a,i);var s=function(){if(n=nr(n),n.injector()){var t=n[0]===e?"document":H(n);throw cr("btstrpd","App Already Bootstrapped with this Element '{0}'",t.replace(//,">"))}r=r||[],r.unshift(["$provide",function(t){t.value("$rootElement",n)}]),i.debugInfoEnabled&&r.push(["$compileProvider",function(t){t.debugInfoEnabled(!0)}]),r.unshift("ng");var o=qt(r,i.strictDi);return o.invoke(["$rootScope","$rootElement","$compile","$injector",function(t,e,n,r){t.$apply(function(){e.data("$injector",r),n(e)(t)})}]),o},u=/^NG_ENABLE_DEBUG_INFO!/,c=/^NG_DEFER_BOOTSTRAP!/;return t&&u.test(t.name)&&(i.debugInfoEnabled=!0,t.name=t.name.replace(u,"")),t&&!c.test(t.name)?s():(t.name=t.name.replace(c,""),lr.resumeBootstrap=function(t){return o(t,function(t){r.push(t)}),s()},void(x(lr.resumeDeferredBootstrap)&&lr.resumeDeferredBootstrap()))}function tt(){t.name="NG_ENABLE_DEBUG_INFO!"+t.name,t.location.reload()}function et(t){var e=lr.element(t).injector();if(!e)throw cr("test","no injector found for element argument to getTestability");return e.get("$$testability")}function nt(t,e){return e=e||"_",t.replace($r,function(t,n){return(n?e:"")+t.toLowerCase()})}function rt(){var e;yr||(rr=t.jQuery,rr&&rr.fn.on?(nr=rr,f(rr.fn,{scope:Br.scope,isolateScope:Br.isolateScope,controller:Br.controller,injector:Br.injector,inheritedData:Br.inheritedData}),e=rr.cleanData,rr.cleanData=function(t){var n;if(hr)hr=!1;else for(var r,i=0;null!=(r=t[i]);i++)n=rr._data(r,"events"),n&&n.$destroy&&rr(r).triggerHandler("$destroy");e(t)}):nr=bt,lr.element=nr,yr=!0)}function it(t,e,n){if(!t)throw cr("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function ot(t,e,n){return n&&dr(t)&&(t=t[t.length-1]),it(x(t),e,"not a function, got "+(t&&"object"==typeof t?t.constructor.name||"Object":typeof t)),t}function at(t,e){if("hasOwnProperty"===t)throw cr("badname","hasOwnProperty is not a valid {0} name",e)}function st(t,e,n){if(!e)return t;for(var r,i=e.split("."),o=t,a=i.length,s=0;a>s;s++)r=i[s],t&&(t=(o=t)[r]);return!n&&x(t)?L(o,t):t}function ut(t){var e=t[0],n=t[t.length-1],r=[e];do{if(e=e.nextSibling,!e)break;r.push(e)}while(e!==n);return nr(r)}function ct(){return Object.create(null)}function lt(t){function e(t,e,n){return t[e]||(t[e]=n())}var n=r("$injector"),i=r("ng"),o=e(t,"angular",Object);return o.$$minErr=o.$$minErr||r,e(o,"module",function(){var t={};return function(r,o,a){var s=function(t,e){if("hasOwnProperty"===t)throw i("badname","hasOwnProperty is not a valid {0} name",e)};return s(r,"module"),o&&t.hasOwnProperty(r)&&(t[r]=null),e(t,r,function(){function t(t,n,r,i){return i||(i=e),function(){return i[r||"push"]([t,n,arguments]),c}}if(!o)throw n("nomod","Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.",r);var e=[],i=[],s=[],u=t("$injector","invoke","push",i),c={_invokeQueue:e,_configBlocks:i,_runBlocks:s,requires:o,name:r,provider:t("$provide","provider"),factory:t("$provide","factory"),service:t("$provide","service"),value:t("$provide","value"),constant:t("$provide","constant","unshift"),animation:t("$animateProvider","register"),filter:t("$filterProvider","register"),controller:t("$controllerProvider","register"),directive:t("$compileProvider","directive"),config:u,run:function(t){return s.push(t),this}};return a&&u(a),c})}})}function ft(t){var e=[];return JSON.stringify(t,function(t,n){if(n=U(t,n),y(n)){if(e.indexOf(n)>=0)return"<>";e.push(n)}return n})}function ht(t){return"function"==typeof t?t.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof t?"undefined":"string"!=typeof t?ft(t):t}function dt(e){f(e,{bootstrap:Q,copy:N,extend:f,equals:P,element:nr,forEach:o,injector:qt,noop:p,bind:L,toJson:V,fromJson:q,identity:m,isUndefined:g,isDefined:$,isString:b,isFunction:x,isObject:y,isNumber:w,isElement:z,isArray:dr,version:kr,isDate:_,lowercase:Gn,uppercase:Jn,callbacks:{counter:0},getTestability:et,$$minErr:r,$$csp:vr,reloadWithDebugInfo:tt}),ir=lt(t);try{ir("ngLocale")}catch(n){ir("ngLocale",[]).provider("$locale",ve)}ir("ng",["ngLocale"],["$provide",function(t){t.provider({$$sanitizeUri:Ze}),t.provider("$compile",Kt).directive({a:zi,input:Zi,textarea:Zi,form:Ri,script:Fo,select:Uo,style:qo,option:Vo,ngBind:Ji,ngBindHtml:to,ngBindTemplate:Qi,ngClass:no,ngClassEven:io,ngClassOdd:ro,ngCloak:oo,ngController:ao,ngForm:Pi,ngHide:Mo,ngIf:co,ngInclude:lo,ngInit:ho,ngNonBindable:Ao,ngPluralize:So,ngRepeat:To,ngShow:zo,ngStyle:Do,ngSwitch:jo,ngSwitchWhen:No,ngSwitchDefault:Ro,ngOptions:Lo,ngTransclude:Po,ngModel:Co,ngList:po,ngChange:eo,pattern:Wo,ngPattern:Wo,required:Ho,ngRequired:Ho,minlength:Yo,ngMinlength:Yo,maxlength:Xo,ngMaxlength:Xo,ngValue:Ki,ngModelOptions:ko}).directive({ngInclude:fo}).directive(Mi).directive(so),t.provider({$anchorScroll:Ht,$animate:Gr,$browser:Yt,$cacheFactory:Zt,$controller:ee,$document:ne,$exceptionHandler:re,$filter:un,$interpolate:pe,$interval:me,$http:le,$httpBackend:he,$location:Oe,$log:Ie,$parse:Ve,$rootScope:Ye,$q:qe,$$q:He,$sce:Qe,$sceDelegate:Je,$sniffer:tn,$templateCache:Gt,$templateRequest:en,$$testability:nn,$timeout:rn,$window:sn,$$rAF:Xe,$$asyncCallback:Wt,$$jqLite:Ft})}])}function pt(){return++Sr}function mt(t){return t.replace(Ir,function(t,e,n,r){return r?n.toUpperCase():n}).replace(zr,"Moz$1")}function vt(t){return!Nr.test(t)}function gt(t){var e=t.nodeType;return e===br||!e||e===Cr}function $t(t,e){var n,r,i,a,s=e.createDocumentFragment(),u=[];if(vt(t))u.push(e.createTextNode(t));else{for(n=n||s.appendChild(e.createElement("div")),r=(Rr.exec(t)||["",""])[1].toLowerCase(),i=Fr[r]||Fr._default,n.innerHTML=i[1]+t.replace(Pr,"<$1>")+i[2],a=i[0];a--;)n=n.lastChild;u=F(u,n.childNodes),n=s.firstChild,n.textContent=""}return s.textContent="",s.innerHTML="",o(u,function(t){s.appendChild(t)}),s}function yt(t,n){n=n||e;var r;return(r=jr.exec(t))?[n.createElement(r[1])]:(r=$t(t,n))?r.childNodes:[]}function bt(t){if(t instanceof bt)return t;var e;if(b(t)&&(t=pr(t),e=!0),!(this instanceof bt)){if(e&&"<"!=t.charAt(0))throw Dr("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new bt(t)}e?Ot(this,yt(t)):Ot(this,t)}function wt(t){return t.cloneNode(!0)}function _t(t,e){if(e||Ct(t),t.querySelectorAll)for(var n=t.querySelectorAll("*"),r=0,i=n.length;i>r;r++)Ct(n[r])}function xt(t,e,n,r){if($(r))throw Dr("offargs","jqLite#off() does not support the `selector` argument");var i=Et(t),a=i&&i.events,s=i&&i.handle;if(s)if(e)o(e.split(" "),function(e){if($(n)){var r=a[e];if(j(r||[],n),r&&r.length>0)return}Or(t,e,s),delete a[e]});else for(e in a)"$destroy"!==e&&Or(t,e,s),delete a[e]}function Ct(t,e){var r=t.ng339,i=r&&Ar[r];if(i){if(e)return void delete i.data[e];i.handle&&(i.events.$destroy&&i.handle({},"$destroy"),xt(t)),delete Ar[r],t.ng339=n}}function Et(t,e){var r=t.ng339,i=r&&Ar[r];return e&&!i&&(t.ng339=r=pt(),i=Ar[r]={events:{},data:{},handle:n}),i}function kt(t,e,n){if(gt(t)){var r=$(n),i=!r&&e&&!y(e),o=!e,a=Et(t,!i),s=a&&a.data;if(r)s[e]=n;else{if(o)return s;if(i)return s&&s[e];f(s,e)}}}function At(t,e){return t.getAttribute?(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+e+" ")>-1:!1}function St(t,e){e&&t.setAttribute&&o(e.split(" "),function(e){t.setAttribute("class",pr((" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+pr(e)+" "," ")))})}function Tt(t,e){if(e&&t.setAttribute){var n=(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");o(e.split(" "),function(t){t=pr(t),-1===n.indexOf(" "+t+" ")&&(n+=t+" ")}),t.setAttribute("class",pr(n))}}function Ot(t,e){if(e)if(e.nodeType)t[t.length++]=e;else{var n=e.length;if("number"==typeof n&&e.window!==e){if(n)for(var r=0;n>r;r++)t[t.length++]=e[r]}else t[t.length++]=e}}function It(t,e){return zt(t,"$"+(e||"ngController")+"Controller")}function zt(t,e,r){t.nodeType==Cr&&(t=t.documentElement);for(var i=dr(e)?e:[e];t;){for(var o=0,a=i.length;a>o;o++)if((r=nr.data(t,i[o]))!==n)return r;t=t.parentNode||t.nodeType===Er&&t.host}}function Mt(t){for(_t(t,!0);t.firstChild;)t.removeChild(t.firstChild)}function Dt(t,e){e||_t(t);var n=t.parentNode;n&&n.removeChild(t)}function jt(e,n){n=n||t,"complete"===n.document.readyState?n.setTimeout(e):nr(n).on("load",e)}function Nt(t,e){var n=Lr[e.toLowerCase()];return n&&Ur[D(t)]&&n}function Rt(t,e){var n=t.nodeName;return("INPUT"===n||"TEXTAREA"===n)&&Vr[e]}function Pt(t,e){var n=function(n,r){n.isDefaultPrevented=function(){return n.defaultPrevented};var i=e[r||n.type],o=i?i.length:0;if(o){if(g(n.immediatePropagationStopped)){var a=n.stopImmediatePropagation;n.stopImmediatePropagation=function(){n.immediatePropagationStopped=!0,n.stopPropagation&&n.stopPropagation(),a&&a.call(n)}}n.isImmediatePropagationStopped=function(){return n.immediatePropagationStopped===!0},o>1&&(i=R(i));for(var s=0;o>s;s++)n.isImmediatePropagationStopped()||i[s].call(t,n)}};return n.elem=t,n}function Ft(){this.$get=function(){return f(bt,{hasClass:function(t,e){return t.attr&&(t=t[0]),At(t,e)},addClass:function(t,e){return t.attr&&(t=t[0]),Tt(t,e)},removeClass:function(t,e){return t.attr&&(t=t[0]),St(t,e)}})}}function Bt(t,e){var n=t&&t.$$hashKey;if(n)return"function"==typeof n&&(n=t.$$hashKey()),n;var r=typeof t;return n="function"==r||"object"==r&&null!==t?t.$$hashKey=r+":"+(e||c)():r+":"+t}function Lt(t,e){if(e){var n=0;this.nextUid=function(){return++n}}o(t,this.put,this)}function Ut(t){var e=t.toString().replace(Xr,""),n=e.match(qr);return n?"function("+(n[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function Vt(t,e,n){var r,i,a,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw b(n)&&n||(n=t.name||Ut(t)),Yr("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=t.toString().replace(Xr,""),a=i.match(qr),o(a[1].split(Hr),function(t){t.replace(Wr,function(t,e,n){r.push(n)})})}t.$inject=r}}else dr(t)?(s=t.length-1,ot(t[s],"fn"),r=t.slice(0,s)):ot(t,"fn",!0);return r}function qt(t,e){function r(t){return function(e,n){return y(e)?void o(e,u(t)):t(e,n)}}function i(t,e){if(at(t,"service"),(x(e)||dr(e))&&(e=k.instantiate(e)),!e.$get)throw Yr("pget","Provider '{0}' must define $get factory method.",t);return E[t+w]=e}function a(t,e){return function(){var n=S.invoke(e,this);if(g(n))throw Yr("undef","Provider '{0}' must return a value from $get factory method.",t);return n}}function s(t,e,n){return i(t,{$get:n!==!1?a(t,e):e})}function c(t,e){return s(t,["$injector",function(t){return t.instantiate(e)}])}function l(t,e){return s(t,v(e),!1)}function f(t,e){at(t,"constant"),E[t]=e,A[t]=e}function h(t,e){var n=k.get(t+w),r=n.$get;n.$get=function(){var t=S.invoke(r,n);return S.invoke(e,null,{$delegate:t})}}function d(t){var e,n=[];return o(t,function(t){function r(t){var e,n;for(e=0,n=t.length;n>e;e++){var r=t[e],i=k.get(r[0]);i[r[1]].apply(i,r[2])}}if(!C.get(t)){C.put(t,!0);try{b(t)?(e=ir(t),n=n.concat(d(e.requires)).concat(e._runBlocks),r(e._invokeQueue),r(e._configBlocks)):x(t)?n.push(k.invoke(t)):dr(t)?n.push(k.invoke(t)):ot(t,"module")}catch(i){throw dr(t)&&(t=t[t.length-1]),i.message&&i.stack&&-1==i.stack.indexOf(i.message)&&(i=i.message+"\n"+i.stack),Yr("modulerr","Failed to instantiate module {0} due to:\n{1}",t,i.stack||i.message||i)}}}),n}function m(t,n){function r(e,r){if(t.hasOwnProperty(e)){if(t[e]===$)throw Yr("cdep","Circular dependency found: {0}",e+" <- "+_.join(" <- "));return t[e]}try{return _.unshift(e),t[e]=$,t[e]=n(e,r)}catch(i){throw t[e]===$&&delete t[e],i}finally{_.shift()}}function i(t,n,i,o){"string"==typeof i&&(o=i,i=null);var a,s,u,c=[],l=qt.$$annotate(t,e,o);for(s=0,a=l.length;a>s;s++){if(u=l[s],"string"!=typeof u)throw Yr("itkn","Incorrect injection token! Expected service name as string, got {0}",u);c.push(i&&i.hasOwnProperty(u)?i[u]:r(u,o))}return dr(t)&&(t=t[a]),t.apply(n,c)}function o(t,e,n){var r=Object.create((dr(t)?t[t.length-1]:t).prototype||null),o=i(t,r,e,n);return y(o)||x(o)?o:r}return{invoke:i,instantiate:o,get:r,annotate:qt.$$annotate,has:function(e){return E.hasOwnProperty(e+w)||t.hasOwnProperty(e)}}}e=e===!0;var $={},w="Provider",_=[],C=new Lt([],!0),E={$provide:{provider:r(i),factory:r(s),service:r(c),value:r(l),constant:r(f),decorator:h}},k=E.$injector=m(E,function(t,e){throw lr.isString(e)&&_.push(e),Yr("unpr","Unknown provider: {0}",_.join(" <- "))}),A={},S=A.$injector=m(A,function(t,e){var r=k.get(t+w,e);return S.invoke(r.$get,r,n,t)});return o(d(t),function(t){S.invoke(t||p)}),S}function Ht(){var t=!0;this.disableAutoScrolling=function(){t=!1},this.$get=["$window","$location","$rootScope",function(e,n,r){function i(t){var e=null;return Array.prototype.some.call(t,function(t){return"a"===D(t)?(e=t,!0):void 0}),e}function o(){var t=s.yOffset;if(x(t))t=t();else if(z(t)){var n=t[0],r=e.getComputedStyle(n);t="fixed"!==r.position?0:n.getBoundingClientRect().bottom}else w(t)||(t=0);return t}function a(t){if(t){t.scrollIntoView();var n=o();if(n){var r=t.getBoundingClientRect().top;e.scrollBy(0,r-n)}}else e.scrollTo(0,0)}function s(){var t,e=n.hash();e?(t=u.getElementById(e))?a(t):(t=i(u.getElementsByName(e)))?a(t):"top"===e&&a(null):a(null)}var u=e.document;return t&&r.$watch(function(){return n.hash()},function(t,e){(t!==e||""!==t)&&jt(function(){r.$evalAsync(s)})}),s}]}function Wt(){this.$get=["$$rAF","$timeout",function(t,e){return t.supported?function(e){return t(e)}:function(t){return e(t,0,!1)}}]}function Xt(t,e,r,i){function a(t){try{t.apply(null,B(arguments,1))}finally{if(C--,0===C)for(;E.length;)try{E.pop()()}catch(e){r.error(e)}}}function s(t){var e=t.indexOf("#");return-1===e?"":t.substr(e)}function u(t,e){!function n(){o(A,function(t){t()}),k=e(n,t)}()}function c(){f(),h()}function l(){try{return y.state}catch(t){}}function f(){S=l(),S=g(S)?null:S,P(S,j)&&(S=j),j=S}function h(){(O!==m.url()||T!==S)&&(O=m.url(),T=S,o(M,function(t){t(m.url(),S)}))}function d(t){try{return decodeURIComponent(t)}catch(e){return t}}var m=this,v=e[0],$=t.location,y=t.history,w=t.setTimeout,_=t.clearTimeout,x={};m.isMock=!1;var C=0,E=[];m.$$completeOutstandingRequest=a,m.$$incOutstandingRequestCount=function(){C++},m.notifyWhenNoOutstandingRequests=function(t){o(A,function(t){t()}),0===C?t():E.push(t)};var k,A=[];m.addPollFn=function(t){return g(k)&&u(100,w),A.push(t),t};var S,T,O=$.href,I=e.find("base"),z=null;f(),T=S,m.url=function(e,n,r){if(g(r)&&(r=null),$!==t.location&&($=t.location),y!==t.history&&(y=t.history),e){var o=T===r;if(O===e&&(!i.history||o))return m;var a=O&&we(O)===we(e);return O=e,T=r,!i.history||a&&o?((!a||z)&&(z=e),n?$.replace(e):a?$.hash=s(e):$.href=e):(y[n?"replaceState":"pushState"](r,"",e),f(),T=S),m}return z||$.href.replace(/%27/g,"'")},m.state=function(){return S};var M=[],D=!1,j=null;m.onUrlChange=function(e){return D||(i.history&&nr(t).on("popstate",c),nr(t).on("hashchange",c),D=!0),M.push(e),e},m.$$checkUrlChange=h,m.baseHref=function(){var t=I.attr("href");return t?t.replace(/^(https?\:)?\/\/[^\/]*/,""):""};var N={},R="",F=m.baseHref();m.cookies=function(t,e){var i,o,a,s,u;if(!t){if(v.cookie!==R)for(R=v.cookie,o=R.split("; "),N={},s=0;s0&&(t=d(a.substring(0,u)),N[t]===n&&(N[t]=d(a.substring(u+1))));return N}e===n?v.cookie=encodeURIComponent(t)+"=;path="+F+";expires=Thu, 01 Jan 1970 00:00:00 GMT":b(e)&&(i=(v.cookie=encodeURIComponent(t)+"="+encodeURIComponent(e)+";path="+F).length+1,i>4096&&r.warn("Cookie '"+t+"' possibly not set or overflowed because it was too large ("+i+" > 4096 bytes)!"))},m.defer=function(t,e){var n;return C++,n=w(function(){delete x[n],a(t)},e||0),x[n]=!0,n},m.defer.cancel=function(t){return x[t]?(delete x[t],_(t),a(p),!0):!1}}function Yt(){this.$get=["$window","$log","$sniffer","$document",function(t,e,n,r){return new Xt(t,r,e,n)}]}function Zt(){this.$get=function(){function t(t,n){function i(t){t!=h&&(d?d==t&&(d=t.n):d=t,o(t.n,t.p),o(t,h),h=t,h.n=null)}function o(t,e){t!=e&&(t&&(t.p=e),e&&(e.n=t))}if(t in e)throw r("$cacheFactory")("iid","CacheId '{0}' is already taken!",t);var a=0,s=f({},n,{id:t}),u={},c=n&&n.capacity||Number.MAX_VALUE,l={},h=null,d=null;return e[t]={put:function(t,e){if(cc&&this.remove(d.key),e},get:function(t){if(c").parent()[0])});var a=M(t,e,t,n,r,i);I.$$addScopeClass(t);var s=null;return function(e,n,r){it(e,"scope"),r=r||{};var i=r.parentBoundTranscludeFn,o=r.transcludeControllers,u=r.futureParentElement;i&&i.$$boundTransclude&&(i=i.$$boundTransclude),s||(s=z(u));var c;if(c="html"!==s?nr(J(s,nr("
").append(t).html())):n?Br.clone.call(t):t,o)for(var l in o)c.data("$"+l+"Controller",o[l].instance);return I.$$addScopeInfo(c,e),n&&n(c,e),a&&a(e,c,c,i),c}}function z(t){var e=t&&t[0];return e&&"foreignobject"!==D(e)&&e.toString().match(/SVG/)?"svg":"html"}function M(t,e,r,i,o,a){function s(t,r,i,o){var a,s,u,c,l,f,h,d,v;if(p){var g=r.length;for(v=new Array(g),l=0;ll;)u=v[m[l++]],a=m[l++],s=m[l++],a?(a.scope?(c=t.$new(),I.$$addScopeInfo(nr(u),c)):c=t,d=a.transcludeOnThisElement?N(t,a.transclude,o,a.elementTranscludeOnThisElement):!a.templateOnThisElement&&o?o:!o&&e?N(t,e):null,a(s,c,u,i,d)):s&&s(t,u.childNodes,n,o)}for(var u,c,l,f,h,d,p,m=[],v=0;v$;$++){var _=!1,x=!1;f=g[$],h=f.name,m=pr(f.value),p=Jt(h),(v=ft.test(p))&&(h=h.replace(Jr,"").substr(8).replace(/_(.)/g,function(t,e){return e.toUpperCase()}));var C=p.replace(/(Start|End)$/,"");W(C)&&p===C+"Start"&&(_=h,x=h.substr(0,h.length-5)+"end",h=h.substr(0,h.length-6)),d=Jt(h.toLowerCase()),u[d]=h,(v||!n.hasOwnProperty(d))&&(n[d]=m,Nt(t,d)&&(n[d]=!0)),tt(t,e,m,d,v),q(e,d,"A",r,i,_,x)}if(a=t.className,y(a)&&(a=a.animVal),b(a)&&""!==a)for(;o=l.exec(a);)d=Jt(o[2]),q(e,d,"C",r,i)&&(n[d]=pr(o[3])),a=a.substr(o.index+o[0].length);break;case _r:K(e,t.nodeValue);break;case xr:try{o=c.exec(t.nodeValue),o&&(d=Jt(o[1]),q(e,d,"M",r,i)&&(n[d]=pr(o[2])))}catch(E){}}return e.sort(Z),e}function F(t,e,n){var r=[],i=0;if(e&&t.hasAttribute&&t.hasAttribute(e)){do{if(!t)throw Kr("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",e,n);t.nodeType==br&&(t.hasAttribute(e)&&i++,t.hasAttribute(n)&&i--),r.push(t),t=t.nextSibling}while(i>0)}else r.push(t);return nr(r)}function L(t,e,n){return function(r,i,o,a,s){return i=F(i[0],e,n),t(r,i,o,a,s)}}function U(t,a,s,u,c,l,f,h,d){function p(t,e,n,r){t&&(n&&(t=L(t,n,r)),t.require=E.require,t.directiveName=A,(D===E||E.$$isolateScope)&&(t=rt(t,{isolateScope:!0})),f.push(t)),e&&(n&&(e=L(e,n,r)),e.require=E.require,e.directiveName=A,(D===E||E.$$isolateScope)&&(e=rt(e,{isolateScope:!0})),h.push(e))}function m(t,e,n,r){var i,a,s="data",u=!1,c=n;if(b(e)){if(a=e.match(g),e=e.substring(a[0].length),a[3]&&(a[1]?a[3]=null:a[1]=a[3]),"^"===a[1]?s="inheritedData":"^^"===a[1]&&(s="inheritedData",c=n.parent()),"?"===a[2]&&(u=!0),i=null,r&&"data"===s&&(i=r[e])&&(i=i.instance),i=i||c[s]("$"+e+"Controller"),!i&&!u)throw Kr("ctreq","Controller '{0}', required by directive '{1}', can't be found!",e,t);return i||null}return dr(e)&&(i=[],o(e,function(e){i.push(m(t,e,n,r))})),i}function w(t,e,i,u,c){function l(t,e,r){var i;return k(t)||(r=e,e=t,t=n),W&&(i=w),r||(r=W?x.parent():x),c(t,e,i,r,T)}var d,p,g,y,b,w,_,x,E;if(a===i?(E=s,x=s.$$element):(x=nr(i),E=new at(x,s)),D&&(b=e.$new(!0)),c&&(_=l,_.$$boundTransclude=c),M&&(C={},w={},o(M,function(t){var n,r={$scope:t===D||t.$$isolateScope?b:e,$element:x,$attrs:E,$transclude:_};y=t.controller,"@"==y&&(y=E[t.name]),n=$(y,r,!0,t.controllerAs),w[t.name]=n,W||x.data("$"+t.name+"Controller",n.instance),C[t.name]=n})),D){I.$$addScopeInfo(x,b,!0,!(j&&(j===D||j===D.$$originalDirective))),I.$$addScopeClass(x,!0);var A=C&&C[D.name],S=b;A&&A.identifier&&D.bindToController===!0&&(S=A.instance),o(b.$$isolateBindings=D.$$isolateBindings,function(t,n){var i,o,a,s,u=t.attrName,c=t.optional,l=t.mode;switch(l){case"@":E.$observe(u,function(t){S[n]=t}),E.$$observers[u].$$scope=e,E[u]&&(S[n]=r(E[u])(e));break;case"=":if(c&&!E[u])return;o=v(E[u]),s=o.literal?P:function(t,e){return t===e||t!==t&&e!==e},a=o.assign||function(){throw i=S[n]=o(e),Kr("nonassign","Expression '{0}' used with directive '{1}' is non-assignable!",E[u],D.name)},i=S[n]=o(e);var f=function(t){return s(t,S[n])||(s(t,i)?a(e,t=S[n]):S[n]=t),i=t};f.$stateful=!0;var h;h=t.collection?e.$watchCollection(E[u],f):e.$watch(v(E[u],f),null,o.literal),b.$on("$destroy",h);break;case"&":o=v(E[u]),S[n]=function(t){return o(e,t)}}})}for(C&&(o(C,function(t){t()}),C=null),d=0,p=f.length;p>d;d++)g=f[d],ot(g,g.isolateScope?b:e,x,E,g.require&&m(g.directiveName,g.require,x,w),_);var T=e;for(D&&(D.template||null===D.templateUrl)&&(T=b),t&&t(T,i.childNodes,n,c),d=h.length-1;d>=0;d--)g=h[d],ot(g,g.isolateScope?b:e,x,E,g.require&&m(g.directiveName,g.require,x,w),_)}d=d||{};for(var _,C,E,A,S,T,O,z=-Number.MAX_VALUE,M=d.controllerDirectives,D=d.newIsolateScopeDirective,j=d.templateDirective,N=d.nonTlbTranscludeDirective,U=!1,q=!1,W=d.hasElementTranscludeDirective,Z=s.$$element=nr(a),K=l,Q=u,tt=0,nt=t.length;nt>tt;tt++){E=t[tt];var it=E.$$start,st=E.$$end;if(it&&(Z=F(a,it,st)),S=n,z>E.priority)break;if((O=E.scope)&&(E.templateUrl||(y(O)?(G("new/isolated scope",D||_,E,Z),D=E):G("new/isolated scope",D,E,Z)),_=_||E),A=E.name,!E.templateUrl&&E.controller&&(O=E.controller,M=M||{},G("'"+A+"' controller",M[A],E,Z),M[A]=E),(O=E.transclude)&&(U=!0,E.$$tlb||(G("transclusion",N,E,Z),N=E),"element"==O?(W=!0,z=E.priority,S=Z,Z=s.$$element=nr(e.createComment(" "+A+": "+s[A]+" ")),a=Z[0],et(c,B(S),a),Q=I(S,u,z,K&&K.name,{nonTlbTranscludeDirective:N})):(S=nr(wt(a)).contents(),Z.empty(),Q=I(S,u))),E.template)if(q=!0,G("template",j,E,Z),j=E,O=x(E.template)?E.template(Z,s):E.template,O=lt(O),E.replace){if(K=E,S=vt(O)?[]:te(J(E.templateNamespace,pr(O))),a=S[0],1!=S.length||a.nodeType!==br)throw Kr("tplrt","Template for directive '{0}' must have exactly one root element. {1}",A,"");et(c,Z,a);var ut={$attr:{}},ct=R(a,[],ut),ft=t.splice(tt+1,t.length-(tt+1));D&&V(ct),t=t.concat(ct).concat(ft),X(s,ut),nt=t.length}else Z.html(O);if(E.templateUrl)q=!0,G("template",j,E,Z),j=E,E.replace&&(K=E),w=Y(t.splice(tt,t.length-tt),Z,s,c,U&&Q,f,h,{controllerDirectives:M,newIsolateScopeDirective:D,templateDirective:j,nonTlbTranscludeDirective:N}),nt=t.length;else if(E.compile)try{T=E.compile(Z,s,Q),x(T)?p(null,T,it,st):T&&p(T.pre,T.post,it,st)}catch(ht){i(ht,H(Z))}E.terminal&&(w.terminal=!0,z=Math.max(z,E.priority))}return w.scope=_&&_.scope===!0,w.transcludeOnThisElement=U,w.elementTranscludeOnThisElement=W,w.templateOnThisElement=q,w.transclude=Q,d.hasElementTranscludeDirective=W,w}function V(t){for(var e=0,n=t.length;n>e;e++)t[e]=d(t[e],{$$isolateScope:!0})}function q(e,r,o,u,c,l,f){if(r===c)return null;var h=null;if(a.hasOwnProperty(r))for(var p,m=t.get(r+s),v=0,g=m.length;g>v;v++)try{p=m[v],(u===n||u>p.priority)&&-1!=p.restrict.indexOf(o)&&(l&&(p=d(p,{ +$$start:l,$$end:f})),e.push(p),h=p)}catch($){i($)}return h}function W(e){if(a.hasOwnProperty(e))for(var n,r=t.get(e+s),i=0,o=r.length;o>i;i++)if(n=r[i],n.multiElement)return!0;return!1}function X(t,e){var n=e.$attr,r=t.$attr,i=t.$$element;o(t,function(r,i){"$"!=i.charAt(0)&&(e[i]&&e[i]!==r&&(r+=("style"===i?";":" ")+e[i]),t.$set(i,r,!0,n[i]))}),o(e,function(e,o){"class"==o?(O(i,e),t["class"]=(t["class"]?t["class"]+" ":"")+e):"style"==o?(i.attr("style",i.attr("style")+";"+e),t.style=(t.style?t.style+";":"")+e):"$"==o.charAt(0)||t.hasOwnProperty(o)||(t[o]=e,r[o]=n[o])})}function Y(t,e,n,r,i,a,s,c){var l,f,h=[],p=e[0],m=t.shift(),v=d(m,{templateUrl:null,transclude:null,replace:null,$$originalDirective:m}),g=x(m.templateUrl)?m.templateUrl(e,n):m.templateUrl,$=m.templateNamespace;return e.empty(),u(g).then(function(u){var d,b,w,_;if(u=lt(u),m.replace){if(w=vt(u)?[]:te(J($,pr(u))),d=w[0],1!=w.length||d.nodeType!==br)throw Kr("tplrt","Template for directive '{0}' must have exactly one root element. {1}",m.name,g);b={$attr:{}},et(r,e,d);var x=R(d,[],b);y(m.scope)&&V(x),t=x.concat(t),X(n,b)}else d=p,e.html(u);for(t.unshift(v),l=U(t,d,n,i,e,m,a,s,c),o(r,function(t,n){t==d&&(r[n]=e[0])}),f=M(e[0].childNodes,i);h.length;){var C=h.shift(),E=h.shift(),k=h.shift(),A=h.shift(),S=e[0];if(!C.$$destroyed){if(E!==p){var T=E.className;c.hasElementTranscludeDirective&&m.replace||(S=wt(d)),et(k,nr(E),S),O(nr(S),T)}_=l.transcludeOnThisElement?N(C,l.transclude,A):A,l(f,C,S,r,_)}}h=null}),function(t,e,n,r,i){var o=i;e.$$destroyed||(h?h.push(e,n,r,o):(l.transcludeOnThisElement&&(o=N(e,l.transclude,i)),l(f,e,n,r,o)))}}function Z(t,e){var n=e.priority-t.priority;return 0!==n?n:t.name!==e.name?t.name"+n+"",r.childNodes[0].childNodes;default:return n}}function Q(t,e){if("srcdoc"==e)return A.HTML;var n=D(t);return"xlinkHref"==e||"form"==n&&"action"==e||"img"!=n&&("src"==e||"ngSrc"==e)?A.RESOURCE_URL:void 0}function tt(t,e,n,i,o){var a=Q(t,i);o=h[i]||o;var s=r(n,!0,a,o);if(s){if("multiple"===i&&"select"===D(t))throw Kr("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",H(t));e.push({priority:100,compile:function(){return{pre:function(t,e,u){var c=u.$$observers||(u.$$observers={});if(w.test(i))throw Kr("nodomevents","Interpolations for HTML DOM event attributes are disallowed. Please use the ng- versions (such as ng-click instead of onclick) instead.");var l=u[i];l!==n&&(s=l&&r(l,!0,a,o),n=l),s&&(u[i]=s(t),(c[i]||(c[i]=[])).$$inter=!0,(u.$$observers&&u.$$observers[i].$$scope||t).$watch(s,function(t,e){"class"===i&&t!=e?u.$updateClass(t,e):u.$set(i,t)}))}}}})}}function et(t,n,r){var i,o,a=n[0],s=n.length,u=a.parentNode;if(t)for(i=0,o=t.length;o>i;i++)if(t[i]==a){t[i++]=r;for(var c=i,l=c+s-1,f=t.length;f>c;c++,l++)f>l?t[c]=t[l]:delete t[c];t.length-=s-1,t.context===a&&(t.context=r);break}u&&u.replaceChild(r,a);var h=e.createDocumentFragment();h.appendChild(a),nr(r).data(nr(a).data()),rr?(hr=!0,rr.cleanData([a])):delete nr.cache[a[nr.expando]];for(var d=1,p=n.length;p>d;d++){var m=n[d];nr(m).remove(),h.appendChild(m),delete n[d]}n[0]=r,n.length=1}function rt(t,e){return f(function(){return t.apply(null,arguments)},t,e)}function ot(t,e,n,r,o,a){try{t(e,n,r,o,a)}catch(s){i(s,H(n))}}var at=function(t,e){if(e){var n,r,i,o=Object.keys(e);for(n=0,r=o.length;r>n;n++)i=o[n],this[i]=e[i]}else this.$attr={};this.$$element=t};at.prototype={$normalize:Jt,$addClass:function(t){t&&t.length>0&&S.addClass(this.$$element,t)},$removeClass:function(t){t&&t.length>0&&S.removeClass(this.$$element,t)},$updateClass:function(t,e){var n=Qt(t,e);n&&n.length&&S.addClass(this.$$element,n);var r=Qt(e,t);r&&r.length&&S.removeClass(this.$$element,r)},$set:function(t,e,r,a){var s,u=this.$$element[0],c=Nt(u,t),l=Rt(u,t),f=t;if(c?(this.$$element.prop(t,e),a=c):l&&(this[l]=e,f=l),this[t]=e,a?this.$attr[t]=a:(a=this.$attr[t],a||(this.$attr[t]=a=nt(t,"-"))),s=D(this.$$element),"a"===s&&"href"===t||"img"===s&&"src"===t)this[t]=e=T(e,"src"===t);else if("img"===s&&"srcset"===t){for(var h="",d=pr(e),p=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,m=/\s/.test(d)?p:/(,)/,v=d.split(m),g=Math.floor(v.length/2),$=0;g>$;$++){var y=2*$;h+=T(pr(v[y]),!0),h+=" "+pr(v[y+1])}var b=pr(v[2*$]).split(/\s/);h+=T(pr(b[0]),!0),2===b.length&&(h+=" "+pr(b[1])),this[t]=e=h}r!==!1&&(null===e||e===n?this.$$element.removeAttr(a):this.$$element.attr(a,e));var w=this.$$observers;w&&o(w[f],function(t){try{t(e)}catch(n){i(n)}})},$observe:function(t,e){var n=this,r=n.$$observers||(n.$$observers=ct()),i=r[t]||(r[t]=[]);return i.push(e),C.$evalAsync(function(){!i.$$inter&&n.hasOwnProperty(t)&&e(n[t])}),function(){j(i,e)}}};var st=r.startSymbol(),ut=r.endSymbol(),lt="{{"==st||"}}"==ut?m:function(t){return t.replace(/\{\{/g,st).replace(/}}/g,ut)},ft=/^ngAttr[A-Z]/;return I.$$addBindingInfo=_?function(t,e){var n=t.data("$binding")||[];dr(e)?n=n.concat(e):n.push(e),t.data("$binding",n)}:p,I.$$addBindingClass=_?function(t){O(t,"ng-binding")}:p,I.$$addScopeInfo=_?function(t,e,n,r){var i=n?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope";t.data(i,e)}:p,I.$$addScopeClass=_?function(t,e){O(t,e?"ng-isolate-scope":"ng-scope")}:p,I}]}function Jt(t){return mt(t.replace(Jr,""))}function Qt(t,e){var n="",r=t.split(/\s+/),i=e.split(/\s+/);t:for(var o=0;o0?" ":"")+a}return n}function te(t){t=nr(t);var e=t.length;if(1>=e)return t;for(;e--;){var n=t[e];n.nodeType===xr&&ar.call(t,e,1)}return t}function ee(){var t={},e=!1,i=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(e,n){at(e,"controller"),y(e)?f(t,e):t[e]=n},this.allowGlobals=function(){e=!0},this.$get=["$injector","$window",function(o,a){function s(t,e,n,i){if(!t||!y(t.$scope))throw r("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",i,e);t.$scope[e]=n}return function(r,u,c,l){var h,d,p,m;if(c=c===!0,l&&b(l)&&(m=l),b(r)){if(d=r.match(i),!d)throw Qr("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",r);p=d[1],m=m||d[3],r=t.hasOwnProperty(p)?t[p]:st(u.$scope,p,!0)||(e?st(a,p,!0):n),ot(r,p,!0)}if(c){var v=(dr(r)?r[r.length-1]:r).prototype;return h=Object.create(v||null),m&&s(u,m,h,p||r.name),f(function(){return o.invoke(r,h,u,p),h},{instance:h,identifier:m})}return h=o.instantiate(r,u,p),m&&s(u,m,h,p||r.name),h}}]}function ne(){this.$get=["$window",function(t){return nr(t.document)}]}function re(){this.$get=["$log",function(t){return function(e,n){t.error.apply(t,arguments)}}]}function ie(t,e){if(b(t)){var n=t.replace(ii,"").trim();if(n){var r=e("Content-Type");(r&&0===r.indexOf(ti)||oe(n))&&(t=q(n))}}return t}function oe(t){var e=t.match(ni);return e&&ri[e[0]].test(t)}function ae(t){var e,n,r,i=ct();return t?(o(t.split("\n"),function(t){r=t.indexOf(":"),e=Gn(pr(t.substr(0,r))),n=pr(t.substr(r+1)),e&&(i[e]=i[e]?i[e]+", "+n:n)}),i):i}function se(t){var e=y(t)?t:n;return function(n){if(e||(e=ae(t)),n){var r=e[Gn(n)];return void 0===r&&(r=null),r}return e}}function ue(t,e,n,r){return x(r)?r(t,e,n):(o(r,function(r){t=r(t,e,n)}),t)}function ce(t){return t>=200&&300>t}function le(){var t=this.defaults={transformResponse:[ie],transformRequest:[function(t){return!y(t)||A(t)||T(t)||S(t)?t:V(t)}],headers:{common:{Accept:"application/json, text/plain, */*"},post:R(ei),put:R(ei),patch:R(ei)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},e=!1;this.useApplyAsync=function(t){return $(t)?(e=!!t,this):e};var i=this.interceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,u,c,l,h,d){function p(e){function i(t){var e=f({},t);return t.data?e.data=ue(t.data,t.headers,t.status,u.transformResponse):e.data=t.data,ce(t.status)?e:h.reject(e)}function a(t){var e,n={};return o(t,function(t,r){x(t)?(e=t(),null!=e&&(n[r]=e)):n[r]=t}),n}function s(e){var n,r,i,o=t.headers,s=f({},e.headers);o=f({},o.common,o[Gn(e.method)]);t:for(n in o){r=Gn(n);for(i in s)if(Gn(i)===r)continue t;s[n]=o[n]}return a(s)}if(!lr.isObject(e))throw r("$http")("badreq","Http request configuration must be an object. Received: {0}",e);var u=f({method:"get",transformRequest:t.transformRequest,transformResponse:t.transformResponse},e);u.headers=s(e),u.method=Jn(u.method);var c=function(e){var r=e.headers,a=ue(e.data,se(r),n,e.transformRequest);return g(a)&&o(r,function(t,e){"content-type"===Gn(e)&&delete r[e]}),g(e.withCredentials)&&!g(t.withCredentials)&&(e.withCredentials=t.withCredentials),w(e,a).then(i,i)},l=[c,n],d=h.when(u);for(o(k,function(t){(t.request||t.requestError)&&l.unshift(t.request,t.requestError),(t.response||t.responseError)&&l.push(t.response,t.responseError)});l.length;){var p=l.shift(),m=l.shift();d=d.then(p,m)}return d.success=function(t){return ot(t,"fn"),d.then(function(e){t(e.data,e.status,e.headers,u)}),d},d.error=function(t){return ot(t,"fn"),d.then(null,function(e){t(e.data,e.status,e.headers,u)}),d},d}function m(t){o(arguments,function(t){p[t]=function(e,n){return p(f(n||{},{method:t,url:e}))}})}function v(t){o(arguments,function(t){p[t]=function(e,n,r){return p(f(r||{},{method:t,url:e,data:n}))}})}function w(r,i){function o(t,n,r,i){function o(){s(n,t,r,i)}d&&(ce(t)?d.put(_,[t,n,ae(r),i]):d.remove(_)),e?l.$applyAsync(o):(o(),l.$$phase||l.$apply())}function s(t,e,n,i){e=e>=-1?e:0,(ce(e)?v.resolve:v.reject)({data:t,status:e,headers:se(n),config:r,statusText:i})}function c(t){s(t.data,t.status,R(t.headers()),t.statusText)}function f(){var t=p.pendingRequests.indexOf(r);-1!==t&&p.pendingRequests.splice(t,1)}var d,m,v=h.defer(),b=v.promise,w=r.headers,_=C(r.url,r.params);if(p.pendingRequests.push(r),b.then(f,f),!r.cache&&!t.cache||r.cache===!1||"GET"!==r.method&&"JSONP"!==r.method||(d=y(r.cache)?r.cache:y(t.cache)?t.cache:E),d&&(m=d.get(_),$(m)?I(m)?m.then(c,c):dr(m)?s(m[1],m[0],R(m[2]),m[3]):s(m,200,{},"OK"):d.put(_,b)),g(m)){var x=an(r.url)?u.cookies()[r.xsrfCookieName||t.xsrfCookieName]:n;x&&(w[r.xsrfHeaderName||t.xsrfHeaderName]=x),a(r.method,_,i,o,w,r.timeout,r.withCredentials,r.responseType)}return b}function C(t,e){if(!e)return t;var n=[];return s(e,function(t,e){null===t||g(t)||(dr(t)||(t=[t]),o(t,function(t){y(t)&&(t=_(t)?t.toISOString():V(t)),n.push(G(e)+"="+G(t))}))}),n.length>0&&(t+=(-1==t.indexOf("?")?"?":"&")+n.join("&")),t}var E=c("$http"),k=[];return o(i,function(t){k.unshift(b(t)?d.get(t):d.invoke(t))}),p.pendingRequests=[],m("get","delete","head","jsonp"),v("post","put","patch"),p.defaults=t,p}]}function fe(){return new t.XMLHttpRequest}function he(){this.$get=["$browser","$window","$document",function(t,e,n){return de(t,fe,t.defer,e.angular.callbacks,n[0])}]}function de(t,e,r,i,a){function s(t,e,n){var r=a.createElement("script"),o=null;return r.type="text/javascript",r.src=t,r.async=!0,o=function(t){Or(r,"load",o),Or(r,"error",o),a.body.removeChild(r),r=null;var s=-1,u="unknown";t&&("load"!==t.type||i[e].called||(t={type:"error"}),u=t.type,s="error"===t.type?404:200),n&&n(s,u)},Tr(r,"load",o),Tr(r,"error",o),a.body.appendChild(r),o}return function(a,u,c,l,f,h,d,m){function v(){b&&b(),w&&w.abort()}function g(e,i,o,a,s){C!==n&&r.cancel(C),b=w=null,e(i,o,a,s),t.$$completeOutstandingRequest(p)}if(t.$$incOutstandingRequestCount(),u=u||t.url(),"jsonp"==Gn(a)){var y="_"+(i.counter++).toString(36);i[y]=function(t){i[y].data=t,i[y].called=!0};var b=s(u.replace("JSON_CALLBACK","angular.callbacks."+y),y,function(t,e){g(l,t,i[y].data,"",e),i[y]=p})}else{var w=e();w.open(a,u,!0),o(f,function(t,e){$(t)&&w.setRequestHeader(e,t)}),w.onload=function(){var t=w.statusText||"",e="response"in w?w.response:w.responseText,n=1223===w.status?204:w.status;0===n&&(n=e?200:"file"==on(u).protocol?404:0),g(l,n,e,w.getAllResponseHeaders(),t)};var _=function(){g(l,-1,null,null,"")};if(w.onerror=_,w.onabort=_,d&&(w.withCredentials=!0),m)try{w.responseType=m}catch(x){if("json"!==m)throw x}w.send(c||null)}if(h>0)var C=r(v,h);else I(h)&&h.then(v)}}function pe(){var t="{{",e="}}";this.startSymbol=function(e){return e?(t=e,this):t},this.endSymbol=function(t){return t?(e=t,this):e},this.$get=["$parse","$exceptionHandler","$sce",function(n,r,i){function o(t){return"\\\\\\"+t}function a(o,a,h,d){function p(n){return n.replace(c,t).replace(l,e)}function m(t){try{return t=T(t),d&&!$(t)?t:O(t)}catch(e){var n=oi("interr","Can't interpolate: {0}\n{1}",o,e.toString());r(n)}}d=!!d;for(var v,y,b,w=0,_=[],C=[],E=o.length,k=[],A=[];E>w;){if(-1==(v=o.indexOf(t,w))||-1==(y=o.indexOf(e,v+s))){w!==E&&k.push(p(o.substring(w)));break}w!==v&&k.push(p(o.substring(w,v))),b=o.substring(v+s,y),_.push(b),C.push(n(b,m)),w=y+u,A.push(k.length),k.push("")}if(h&&k.length>1)throw oi("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce",o);if(!a||_.length){var S=function(t){for(var e=0,n=_.length;n>e;e++){if(d&&g(t[e]))return;k[A[e]]=t[e]}return k.join("")},T=function(t){return h?i.getTrusted(h,t):i.valueOf(t)},O=function(t){if(null==t)return"";switch(typeof t){case"string":break;case"number":t=""+t;break;default:t=V(t)}return t};return f(function(t){var e=0,n=_.length,i=new Array(n);try{for(;n>e;e++)i[e]=C[e](t);return S(i)}catch(a){var s=oi("interr","Can't interpolate: {0}\n{1}",o,a.toString());r(s)}},{exp:o,expressions:_,$$watchDelegate:function(t,e,n){var r;return t.$watchGroup(C,function(n,i){var o=S(n);x(e)&&e.call(this,o,n!==i?r:o,t),r=o},n)}})}}var s=t.length,u=e.length,c=new RegExp(t.replace(/./g,o),"g"),l=new RegExp(e.replace(/./g,o),"g");return a.startSymbol=function(){return t},a.endSymbol=function(){return e},a}]}function me(){this.$get=["$rootScope","$window","$q","$$q",function(t,e,n,r){function i(i,a,s,u){var c=e.setInterval,l=e.clearInterval,f=0,h=$(u)&&!u,d=(h?r:n).defer(),p=d.promise;return s=$(s)?s:0,p.then(null,null,i),p.$$intervalId=c(function(){d.notify(f++),s>0&&f>=s&&(d.resolve(f),l(p.$$intervalId),delete o[p.$$intervalId]),h||t.$apply()},a),o[p.$$intervalId]=d,p}var o={};return i.cancel=function(t){return t&&t.$$intervalId in o?(o[t.$$intervalId].reject("canceled"),e.clearInterval(t.$$intervalId),delete o[t.$$intervalId],!0):!1},i}]}function ve(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"¤",posSuf:"",negPre:"(¤",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a",ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"]},pluralCat:function(t){return 1===t?"one":"other"}}}}function ge(t){for(var e=t.split("/"),n=e.length;n--;)e[n]=Z(e[n]);return e.join("/")}function $e(t,e){var n=on(t);e.$$protocol=n.protocol,e.$$host=n.hostname,e.$$port=h(n.port)||si[n.protocol]||null}function ye(t,e){var n="/"!==t.charAt(0);n&&(t="/"+t);var r=on(t);e.$$path=decodeURIComponent(n&&"/"===r.pathname.charAt(0)?r.pathname.substring(1):r.pathname),e.$$search=X(r.search),e.$$hash=decodeURIComponent(r.hash),e.$$path&&"/"!=e.$$path.charAt(0)&&(e.$$path="/"+e.$$path)}function be(t,e){return 0===e.indexOf(t)?e.substr(t.length):void 0}function we(t){var e=t.indexOf("#");return-1==e?t:t.substr(0,e)}function _e(t){return t.replace(/(#.+)|#$/,"$1")}function xe(t){return t.substr(0,we(t).lastIndexOf("/")+1)}function Ce(t){return t.substring(0,t.indexOf("/",t.indexOf("//")+2))}function Ee(t,e,r){this.$$html5=!0,r=r||"",$e(t,this),this.$$parse=function(t){var n=be(e,t);if(!b(n))throw ui("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',t,e);ye(n,this),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var t=Y(this.$$search),n=this.$$hash?"#"+Z(this.$$hash):"";this.$$url=ge(this.$$path)+(t?"?"+t:"")+n,this.$$absUrl=e+this.$$url.substr(1)},this.$$parseLinkUrl=function(i,o){if(o&&"#"===o[0])return this.hash(o.slice(1)),!0;var a,s,u;return(a=be(t,i))!==n?(s=a,u=(a=be(r,a))!==n?e+(be("/",a)||a):t+s):(a=be(e,i))!==n?u=e+a:e==i+"/"&&(u=e),u&&this.$$parse(u),!!u}}function ke(t,e,n){$e(t,this),this.$$parse=function(r){function i(t,e,n){var r,i=/^\/[A-Z]:(\/.*)/;return 0===e.indexOf(n)&&(e=e.replace(n,"")),i.exec(e)?t:(r=i.exec(t),r?r[1]:t)}var o,a=be(t,r)||be(e,r);g(a)||"#"!==a.charAt(0)?this.$$html5?o=a:(o="",g(a)&&(t=r,this.replace())):(o=be(n,a),g(o)&&(o=a)),ye(o,this),this.$$path=i(this.$$path,o,t),this.$$compose()},this.$$compose=function(){var e=Y(this.$$search),r=this.$$hash?"#"+Z(this.$$hash):"";this.$$url=ge(this.$$path)+(e?"?"+e:"")+r,this.$$absUrl=t+(this.$$url?n+this.$$url:"")},this.$$parseLinkUrl=function(e,n){return we(t)==we(e)?(this.$$parse(e),!0):!1}}function Ae(t,e,n){this.$$html5=!0,ke.apply(this,arguments),this.$$parseLinkUrl=function(r,i){if(i&&"#"===i[0])return this.hash(i.slice(1)),!0;var o,a;return t==we(r)?o=r:(a=be(e,r))?o=t+n+a:e===r+"/"&&(o=e),o&&this.$$parse(o),!!o},this.$$compose=function(){var e=Y(this.$$search),r=this.$$hash?"#"+Z(this.$$hash):"";this.$$url=ge(this.$$path)+(e?"?"+e:"")+r,this.$$absUrl=t+n+this.$$url}}function Se(t){return function(){return this[t]}}function Te(t,e){return function(n){return g(n)?this[t]:(this[t]=e(n),this.$$compose(),this)}}function Oe(){var t="",e={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(e){return $(e)?(t=e,this):t},this.html5Mode=function(t){return O(t)?(e.enabled=t,this):y(t)?(O(t.enabled)&&(e.enabled=t.enabled),O(t.requireBase)&&(e.requireBase=t.requireBase),O(t.rewriteLinks)&&(e.rewriteLinks=t.rewriteLinks),this):e},this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(n,r,i,o,a){function s(t,e,n){var i=c.url(),o=c.$$state;try{r.url(t,e,n),c.$$state=r.state()}catch(a){throw c.url(i),c.$$state=o,a}}function u(t,e){n.$broadcast("$locationChangeSuccess",c.absUrl(),t,c.$$state,e)}var c,l,f,h=r.baseHref(),d=r.url();if(e.enabled){if(!h&&e.requireBase)throw ui("nobase","$location in HTML5 mode requires a tag to be present!");f=Ce(d)+(h||"/"),l=i.history?Ee:Ae}else f=we(d),l=ke;var p=xe(f);c=new l(f,p,"#"+t),c.$$parseLinkUrl(d,d),c.$$state=r.state();var m=/^\s*(javascript|mailto):/i;o.on("click",function(t){if(e.rewriteLinks&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&2!=t.which&&2!=t.button){for(var i=nr(t.target);"a"!==D(i[0]);)if(i[0]===o[0]||!(i=i.parent())[0])return;var s=i.prop("href"),u=i.attr("href")||i.attr("xlink:href");y(s)&&"[object SVGAnimatedString]"===s.toString()&&(s=on(s.animVal).href),m.test(s)||!s||i.attr("target")||t.isDefaultPrevented()||c.$$parseLinkUrl(s,u)&&(t.preventDefault(),c.absUrl()!=r.url()&&(n.$apply(),a.angular["ff-684208-preventDefault"]=!0))}}),_e(c.absUrl())!=_e(d)&&r.url(c.absUrl(),!0);var v=!0;return r.onUrlChange(function(t,e){return g(be(p,t))?void(a.location.href=t):(n.$evalAsync(function(){var r,i=c.absUrl(),o=c.$$state;c.$$parse(t),c.$$state=e,r=n.$broadcast("$locationChangeStart",t,i,e,o).defaultPrevented,c.absUrl()===t&&(r?(c.$$parse(i),c.$$state=o,s(i,!1,o)):(v=!1,u(i,o)))}),void(n.$$phase||n.$digest()))}),n.$watch(function(){var t=_e(r.url()),e=_e(c.absUrl()),o=r.state(),a=c.$$replace,l=t!==e||c.$$html5&&i.history&&o!==c.$$state;(v||l)&&(v=!1,n.$evalAsync(function(){var e=c.absUrl(),r=n.$broadcast("$locationChangeStart",e,t,c.$$state,o).defaultPrevented;c.absUrl()===e&&(r?(c.$$parse(t),c.$$state=o):(l&&s(e,a,o===c.$$state?null:c.$$state),u(t,o)))})),c.$$replace=!1}),c}]}function Ie(){var t=!0,e=this;this.debugEnabled=function(e){return $(e)?(t=e,this):t},this.$get=["$window",function(n){function r(t){return t instanceof Error&&(t.stack?t=t.message&&-1===t.stack.indexOf(t.message)?"Error: "+t.message+"\n"+t.stack:t.stack:t.sourceURL&&(t=t.message+"\n"+t.sourceURL+":"+t.line)),t}function i(t){var e=n.console||{},i=e[t]||e.log||p,a=!1;try{a=!!i.apply}catch(s){}return a?function(){var t=[];return o(arguments,function(e){t.push(r(e))}),i.apply(e,t)}:function(t,e){i(t,null==e?"":e)}}return{log:i("log"),info:i("info"),warn:i("warn"),error:i("error"),debug:function(){var n=i("debug");return function(){t&&n.apply(e,arguments)}}()}}]}function ze(t,e){if("__defineGetter__"===t||"__defineSetter__"===t||"__lookupGetter__"===t||"__lookupSetter__"===t||"__proto__"===t)throw li("isecfld","Attempting to access a disallowed field in Angular expressions! Expression: {0}",e);return t}function Me(t,e){if(t+="",!b(t))throw li("iseccst","Cannot convert object to primitive value! Expression: {0}",e);return t}function De(t,e){if(t){if(t.constructor===t)throw li("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",e);if(t.window===t)throw li("isecwindow","Referencing the Window in Angular expressions is disallowed! Expression: {0}",e);if(t.children&&(t.nodeName||t.prop&&t.attr&&t.find))throw li("isecdom","Referencing DOM nodes in Angular expressions is disallowed! Expression: {0}",e);if(t===Object)throw li("isecobj","Referencing Object in Angular expressions is disallowed! Expression: {0}",e)}return t}function je(t,e){if(t){if(t.constructor===t)throw li("isecfn","Referencing Function in Angular expressions is disallowed! Expression: {0}",e);if(t===fi||t===hi||t===di)throw li("isecff","Referencing call, apply or bind in Angular expressions is disallowed! Expression: {0}",e)}}function Ne(t){return t.constant}function Re(t,e,n,r,i){De(t,i),De(e,i);for(var o,a=n.split("."),s=0;a.length>1;s++){o=ze(a.shift(),i);var u=0===s&&e&&e[o]||t[o];u||(u={},t[o]=u),t=De(u,i)}return o=ze(a.shift(),i),De(t[o],i),t[o]=r,r}function Pe(t){return"constructor"==t}function Fe(t,e,r,i,o,a,s){ze(t,a),ze(e,a),ze(r,a),ze(i,a),ze(o,a);var u=function(t){return De(t,a)},c=s||Pe(t)?u:m,l=s||Pe(e)?u:m,f=s||Pe(r)?u:m,h=s||Pe(i)?u:m,d=s||Pe(o)?u:m;return function(a,s){var u=s&&s.hasOwnProperty(t)?s:a;return null==u?u:(u=c(u[t]),e?null==u?n:(u=l(u[e]),r?null==u?n:(u=f(u[r]),i?null==u?n:(u=h(u[i]),o?null==u?n:u=d(u[o]):u):u):u):u)}}function Be(t,e){return function(n,r){return t(n,r,De,e)}}function Le(t,e,r){var i=e.expensiveChecks,a=i?bi:yi,s=a[t];if(s)return s;var u=t.split("."),c=u.length;if(e.csp)s=6>c?Fe(u[0],u[1],u[2],u[3],u[4],r,i):function(t,e){var o,a=0;do o=Fe(u[a++],u[a++],u[a++],u[a++],u[a++],r,i)(t,e),e=n,t=o;while(c>a);return o};else{var l="";i&&(l+="s = eso(s, fe);\nl = eso(l, fe);\n");var f=i;o(u,function(t,e){ze(t,r);var n=(e?"s":'((l&&l.hasOwnProperty("'+t+'"))?l:s)')+"."+t;(i||Pe(t))&&(n="eso("+n+", fe)",f=!0),l+="if(s == null) return undefined;\ns="+n+";\n"}),l+="return s;";var h=new Function("s","l","eso","fe",l);h.toString=v(l),f&&(h=Be(h,r)),s=h}return s.sharedGetter=!0,s.assign=function(e,n,r){return Re(e,r,t,n,t)},a[t]=s,s}function Ue(t){return x(t.valueOf)?t.valueOf():wi.call(t)}function Ve(){var t=ct(),e=ct();this.$get=["$filter","$sniffer",function(n,r){function i(t){var e=t;return t.sharedGetter&&(e=function(e,n){return t(e,n)},e.literal=t.literal,e.constant=t.constant,e.assign=t.assign),e}function a(t,e){for(var n=0,r=t.length;r>n;n++){var i=t[n];i.constant||(i.inputs?a(i.inputs,e):-1===e.indexOf(i)&&e.push(i))}return e}function s(t,e){return null==t||null==e?t===e:"object"==typeof t&&(t=Ue(t),"object"==typeof t)?!1:t===e||t!==t&&e!==e}function u(t,e,n,r){var i,o=r.$$inputs||(r.$$inputs=a(r.inputs,[]));if(1===o.length){var u=s;return o=o[0],t.$watch(function(t){var e=o(t);return s(e,u)||(i=r(t),u=e&&Ue(e)),i},e,n)}for(var c=[],l=0,f=o.length;f>l;l++)c[l]=s;return t.$watch(function(t){for(var e=!1,n=0,a=o.length;a>n;n++){var u=o[n](t);(e||(e=!s(u,c[n])))&&(c[n]=u&&Ue(u))}return e&&(i=r(t)),i},e,n)}function c(t,e,n,r){var i,o;return i=t.$watch(function(t){return r(t)},function(t,n,r){o=t,x(e)&&e.apply(this,arguments),$(t)&&r.$$postDigest(function(){$(o)&&i()})},n)}function l(t,e,n,r){function i(t){var e=!0;return o(t,function(t){$(t)||(e=!1)}),e}var a,s;return a=t.$watch(function(t){return r(t)},function(t,n,r){s=t,x(e)&&e.call(this,t,n,r),i(t)&&r.$$postDigest(function(){i(s)&&a()})},n)}function f(t,e,n,r){var i;return i=t.$watch(function(t){return r(t)},function(t,n,r){x(e)&&e.apply(this,arguments),i()},n)}function h(t,e){if(!e)return t;var n=t.$$watchDelegate,r=n!==l&&n!==c,i=r?function(n,r){var i=t(n,r);return e(i,n,r)}:function(n,r){var i=t(n,r),o=e(i,n,r);return $(i)?o:i};return t.$$watchDelegate&&t.$$watchDelegate!==u?i.$$watchDelegate=t.$$watchDelegate:e.$stateful||(i.$$watchDelegate=u,i.inputs=[t]),i}var d={csp:r.csp,expensiveChecks:!1},m={csp:r.csp,expensiveChecks:!0};return function(r,o,a){var s,v,g;switch(typeof r){case"string":g=r=r.trim();var $=a?e:t;if(s=$[g],!s){":"===r.charAt(0)&&":"===r.charAt(1)&&(v=!0,r=r.substring(2));var y=a?m:d,b=new gi(y),w=new $i(b,n,y);s=w.parse(r),s.constant?s.$$watchDelegate=f:v?(s=i(s),s.$$watchDelegate=s.literal?l:c):s.inputs&&(s.$$watchDelegate=u),$[g]=s}return h(s,o);case"function":return h(r,o);default:return h(p,o)}}}]}function qe(){this.$get=["$rootScope","$exceptionHandler",function(t,e){return We(function(e){t.$evalAsync(e)},e)}]}function He(){this.$get=["$browser","$exceptionHandler",function(t,e){return We(function(e){t.defer(e)},e)}]}function We(t,e){function i(t,e,n){function r(e){return function(n){i||(i=!0,e.call(t,n))}}var i=!1;return[r(e),r(n)]}function a(){this.$$state={status:0}}function s(t,e){return function(n){e.call(t,n)}}function u(t){var r,i,o;o=t.pending,t.processScheduled=!1,t.pending=n;for(var a=0,s=o.length;s>a;++a){i=o[a][0],r=o[a][t.status];try{x(r)?i.resolve(r(t.value)):1===t.status?i.resolve(t.value):i.reject(t.value)}catch(u){i.reject(u),e(u)}}}function c(e){!e.processScheduled&&e.pending&&(e.processScheduled=!0,t(function(){u(e)}))}function l(){this.promise=new a,this.resolve=s(this,this.resolve),this.reject=s(this,this.reject),this.notify=s(this,this.notify)}function f(t){var e=new l,n=0,r=dr(t)?[]:{};return o(t,function(t,i){n++,g(t).then(function(t){r.hasOwnProperty(i)||(r[i]=t,--n||e.resolve(r))},function(t){r.hasOwnProperty(i)||e.reject(t)})}),0===n&&e.resolve(r),e.promise}var h=r("$q",TypeError),d=function(){return new l};a.prototype={then:function(t,e,n){var r=new l;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,t,e,n]),this.$$state.status>0&&c(this.$$state),r.promise},"catch":function(t){return this.then(null,t)},"finally":function(t,e){return this.then(function(e){return v(e,!0,t)},function(e){return v(e,!1,t)},e)}},l.prototype={resolve:function(t){this.promise.$$state.status||(t===this.promise?this.$$reject(h("qcycle","Expected promise to be resolved with value other than itself '{0}'",t)):this.$$resolve(t))},$$resolve:function(t){var n,r;r=i(this,this.$$resolve,this.$$reject);try{(y(t)||x(t))&&(n=t&&t.then),x(n)?(this.promise.$$state.status=-1,n.call(t,r[0],r[1],this.notify)):(this.promise.$$state.value=t,this.promise.$$state.status=1,c(this.promise.$$state))}catch(o){r[1](o),e(o)}},reject:function(t){this.promise.$$state.status||this.$$reject(t)},$$reject:function(t){this.promise.$$state.value=t,this.promise.$$state.status=2,c(this.promise.$$state)},notify:function(n){var r=this.promise.$$state.pending;this.promise.$$state.status<=0&&r&&r.length&&t(function(){for(var t,i,o=0,a=r.length;a>o;o++){i=r[o][0],t=r[o][3];try{i.notify(x(t)?t(n):n)}catch(s){e(s)}}})}};var p=function(t){var e=new l;return e.reject(t),e.promise},m=function(t,e){var n=new l;return e?n.resolve(t):n.reject(t),n.promise},v=function(t,e,n){var r=null;try{x(n)&&(r=n())}catch(i){return m(i,!1)}return I(r)?r.then(function(){return m(t,e)},function(t){return m(t,!1)}):m(t,e)},g=function(t,e,n,r){var i=new l;return i.resolve(t),i.promise.then(e,n,r)},$=function b(t){function e(t){r.resolve(t)}function n(t){r.reject(t)}if(!x(t))throw h("norslvr","Expected resolverFn, got '{0}'",t);if(!(this instanceof b))return new b(t);var r=new l;return t(e,n),r.promise};return $.defer=d,$.reject=p,$.when=g,$.all=f,$}function Xe(){this.$get=["$window","$timeout",function(t,e){function n(){for(var t=0;t=0&&(l[e]=null,e=null,0===--c&&u&&(u(),u=null,l.length=0))}}var i=t.requestAnimationFrame||t.webkitRequestAnimationFrame,o=t.cancelAnimationFrame||t.webkitCancelAnimationFrame||t.webkitCancelRequestAnimationFrame,a=!!i,s=a?function(t){var e=i(t);return function(){o(e)}}:function(t){var n=e(t,16.66,!1);return function(){e.cancel(n)}};r.supported=a;var u,c=0,l=[];return r}]}function Ye(){function t(t){function e(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$id=c(),this.$$ChildScope=null}return e.prototype=t,e}var e=10,n=r("$rootScope"),a=null,s=null;this.digestTtl=function(t){return arguments.length&&(e=t),e},this.$get=["$injector","$exceptionHandler","$parse","$browser",function(r,u,l,f){function h(t){t.currentScope.$$destroyed=!0}function d(){this.$id=c(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this.$root=this,this.$$destroyed=!1,this.$$listeners={},this.$$listenerCount={},this.$$isolateBindings=null}function m(t){if(C.$$phase)throw n("inprog","{0} already in progress",C.$$phase);C.$$phase=t}function v(){C.$$phase=null}function $(t,e,n){do t.$$listenerCount[n]-=e,0===t.$$listenerCount[n]&&delete t.$$listenerCount[n];while(t=t.$parent)}function b(){}function w(){for(;A.length;)try{A.shift()()}catch(t){u(t)}s=null}function _(){null===s&&(s=f.defer(function(){C.$apply(w)}))}d.prototype={constructor:d,$new:function(e,n){var r;return n=n||this,e?(r=new d,r.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=t(this)),r=new this.$$ChildScope),r.$parent=n,r.$$prevSibling=n.$$childTail,n.$$childHead?(n.$$childTail.$$nextSibling=r,n.$$childTail=r):n.$$childHead=n.$$childTail=r,(e||n!=this)&&r.$on("$destroy",h),r},$watch:function(t,e,n){var r=l(t);if(r.$$watchDelegate)return r.$$watchDelegate(this,e,n,r);var i=this,o=i.$$watchers,s={fn:e,last:b,get:r,exp:t,eq:!!n};return a=null,x(e)||(s.fn=p),o||(o=i.$$watchers=[]),o.unshift(s),function(){j(o,s),a=null}},$watchGroup:function(t,e){function n(){u=!1,c?(c=!1,e(i,i,s)):e(i,r,s)}var r=new Array(t.length),i=new Array(t.length),a=[],s=this,u=!1,c=!0;if(!t.length){var l=!0;return s.$evalAsync(function(){l&&e(i,i,s)}),function(){l=!1}}return 1===t.length?this.$watch(t[0],function(t,n,o){i[0]=t,r[0]=n,e(i,t===n?i:r,o)}):(o(t,function(t,e){var o=s.$watch(t,function(t,o){i[e]=t,r[e]=o,u||(u=!0,s.$evalAsync(n))});a.push(o)}),function(){for(;a.length;)a.shift()()})},$watchCollection:function(t,e){function n(t){o=t;var e,n,r,s,u;if(!g(o)){if(y(o))if(i(o)){a!==d&&(a=d,v=a.length=0,f++),e=o.length,v!==e&&(f++,a.length=v=e);for(var c=0;e>c;c++)u=a[c],s=o[c],r=u!==u&&s!==s,r||u===s||(f++,a[c]=s)}else{a!==p&&(a=p={},v=0,f++),e=0;for(n in o)o.hasOwnProperty(n)&&(e++,s=o[n],u=a[n],n in a?(r=u!==u&&s!==s,r||u===s||(f++,a[n]=s)):(v++,a[n]=s,f++));if(v>e){f++;for(n in a)o.hasOwnProperty(n)||(v--,delete a[n])}}else a!==o&&(a=o,f++);return f; +}}function r(){if(m?(m=!1,e(o,o,u)):e(o,s,u),c)if(y(o))if(i(o)){s=new Array(o.length);for(var t=0;t1,f=0,h=l(t,n),d=[],p={},m=!0,v=0;return this.$watch(h,r)},$digest:function(){var t,r,i,o,c,l,h,d,p,g,$=e,y=this,_=[];m("$digest"),f.$$checkUrlChange(),this===C&&null!==s&&(f.defer.cancel(s),w()),a=null;do{for(l=!1,d=y;E.length;){try{g=E.shift(),g.scope.$eval(g.expression,g.locals)}catch(A){u(A)}a=null}t:do{if(o=d.$$watchers)for(c=o.length;c--;)try{if(t=o[c])if((r=t.get(d))===(i=t.last)||(t.eq?P(r,i):"number"==typeof r&&"number"==typeof i&&isNaN(r)&&isNaN(i))){if(t===a){l=!1;break t}}else l=!0,a=t,t.last=t.eq?N(r,null):r,t.fn(r,i===b?r:i,d),5>$&&(p=4-$,_[p]||(_[p]=[]),_[p].push({msg:x(t.exp)?"fn: "+(t.exp.name||t.exp.toString()):t.exp,newVal:r,oldVal:i}))}catch(A){u(A)}if(!(h=d.$$childHead||d!==y&&d.$$nextSibling))for(;d!==y&&!(h=d.$$nextSibling);)d=d.$parent}while(d=h);if((l||E.length)&&!$--)throw v(),n("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",e,_)}while(l||E.length);for(v();k.length;)try{k.shift()()}catch(A){u(A)}},$destroy:function(){if(!this.$$destroyed){var t=this.$parent;if(this.$broadcast("$destroy"),this.$$destroyed=!0,this!==C){for(var e in this.$$listenerCount)$(this,this.$$listenerCount[e],e);t.$$childHead==this&&(t.$$childHead=this.$$nextSibling),t.$$childTail==this&&(t.$$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=p,this.$on=this.$watch=this.$watchGroup=function(){return p},this.$$listeners={},this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=this.$root=this.$$watchers=null}}},$eval:function(t,e){return l(t)(this,e)},$evalAsync:function(t,e){C.$$phase||E.length||f.defer(function(){E.length&&C.$digest()}),E.push({scope:this,expression:t,locals:e})},$$postDigest:function(t){k.push(t)},$apply:function(t){try{return m("$apply"),this.$eval(t)}catch(e){u(e)}finally{v();try{C.$digest()}catch(e){throw u(e),e}}},$applyAsync:function(t){function e(){n.$eval(t)}var n=this;t&&A.push(e),_()},$on:function(t,e){var n=this.$$listeners[t];n||(this.$$listeners[t]=n=[]),n.push(e);var r=this;do r.$$listenerCount[t]||(r.$$listenerCount[t]=0),r.$$listenerCount[t]++;while(r=r.$parent);var i=this;return function(){var r=n.indexOf(e);-1!==r&&(n[r]=null,$(i,1,t))}},$emit:function(t,e){var n,r,i,o=[],a=this,s=!1,c={name:t,targetScope:a,stopPropagation:function(){s=!0},preventDefault:function(){c.defaultPrevented=!0},defaultPrevented:!1},l=F([c],arguments,1);do{for(n=a.$$listeners[t]||o,c.currentScope=a,r=0,i=n.length;i>r;r++)if(n[r])try{n[r].apply(null,l)}catch(f){u(f)}else n.splice(r,1),r--,i--;if(s)return c.currentScope=null,c;a=a.$parent}while(a);return c.currentScope=null,c},$broadcast:function(t,e){var n=this,r=n,i=n,o={name:t,targetScope:n,preventDefault:function(){o.defaultPrevented=!0},defaultPrevented:!1};if(!n.$$listenerCount[t])return o;for(var a,s,c,l=F([o],arguments,1);r=i;){for(o.currentScope=r,a=r.$$listeners[t]||[],s=0,c=a.length;c>s;s++)if(a[s])try{a[s].apply(null,l)}catch(f){u(f)}else a.splice(s,1),s--,c--;if(!(i=r.$$listenerCount[t]&&r.$$childHead||r!==n&&r.$$nextSibling))for(;r!==n&&!(i=r.$$nextSibling);)r=r.$parent}return o.currentScope=null,o}};var C=new d,E=C.$$asyncQueue=[],k=C.$$postDigestQueue=[],A=C.$$applyAsyncQueue=[];return C}]}function Ze(){var t=/^\s*(https?|ftp|mailto|tel|file):/,e=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(e){return $(e)?(t=e,this):t},this.imgSrcSanitizationWhitelist=function(t){return $(t)?(e=t,this):e},this.$get=function(){return function(n,r){var i,o=r?e:t;return i=on(n).href,""===i||i.match(o)?n:"unsafe:"+i}}}function Ge(t){if("self"===t)return t;if(b(t)){if(t.indexOf("***")>-1)throw _i("iwcard","Illegal sequence *** in string matcher. String: {0}",t);return t=mr(t).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+t+"$")}if(C(t))return new RegExp("^"+t.source+"$");throw _i("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}function Ke(t){var e=[];return $(t)&&o(t,function(t){e.push(Ge(t))}),e}function Je(){this.SCE_CONTEXTS=xi;var t=["self"],e=[];this.resourceUrlWhitelist=function(e){return arguments.length&&(t=Ke(e)),t},this.resourceUrlBlacklist=function(t){return arguments.length&&(e=Ke(t)),e},this.$get=["$injector",function(r){function i(t,e){return"self"===t?an(e):!!t.exec(e.href)}function o(n){var r,o,a=on(n.toString()),s=!1;for(r=0,o=t.length;o>r;r++)if(i(t[r],a)){s=!0;break}if(s)for(r=0,o=e.length;o>r;r++)if(i(e[r],a)){s=!1;break}return s}function a(t){var e=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(e.prototype=new t),e.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},e.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},e}function s(t,e){var r=h.hasOwnProperty(t)?h[t]:null;if(!r)throw _i("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,e);if(null===e||e===n||""===e)return e;if("string"!=typeof e)throw _i("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t);return new r(e)}function u(t){return t instanceof f?t.$$unwrapTrustedValue():t}function c(t,e){if(null===e||e===n||""===e)return e;var r=h.hasOwnProperty(t)?h[t]:null;if(r&&e instanceof r)return e.$$unwrapTrustedValue();if(t===xi.RESOURCE_URL){if(o(e))return e;throw _i("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",e.toString())}if(t===xi.HTML)return l(e);throw _i("unsafe","Attempting to use an unsafe value in a safe context.")}var l=function(t){throw _i("unsafe","Attempting to use an unsafe value in a safe context.")};r.has("$sanitize")&&(l=r.get("$sanitize"));var f=a(),h={};return h[xi.HTML]=a(f),h[xi.CSS]=a(f),h[xi.URL]=a(f),h[xi.JS]=a(f),h[xi.RESOURCE_URL]=a(h[xi.URL]),{trustAs:s,getTrusted:c,valueOf:u}}]}function Qe(){var t=!0;this.enabled=function(e){return arguments.length&&(t=!!e),t},this.$get=["$parse","$sceDelegate",function(e,n){if(t&&8>er)throw _i("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode. You can fix this by adding the text to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.");var r=R(xi);r.isEnabled=function(){return t},r.trustAs=n.trustAs,r.getTrusted=n.getTrusted,r.valueOf=n.valueOf,t||(r.trustAs=r.getTrusted=function(t,e){return e},r.valueOf=m),r.parseAs=function(t,n){var i=e(n);return i.literal&&i.constant?i:e(n,function(e){return r.getTrusted(t,e)})};var i=r.parseAs,a=r.getTrusted,s=r.trustAs;return o(xi,function(t,e){var n=Gn(e);r[mt("parse_as_"+n)]=function(e){return i(t,e)},r[mt("get_trusted_"+n)]=function(e){return a(t,e)},r[mt("trust_as_"+n)]=function(e){return s(t,e)}}),r}]}function tn(){this.$get=["$window","$document",function(t,e){var n,r,i={},o=h((/android (\d+)/.exec(Gn((t.navigator||{}).userAgent))||[])[1]),a=/Boxee/i.test((t.navigator||{}).userAgent),s=e[0]||{},u=/^(Moz|webkit|ms)(?=[A-Z])/,c=s.body&&s.body.style,l=!1,f=!1;if(c){for(var d in c)if(r=u.exec(d)){n=r[0],n=n.substr(0,1).toUpperCase()+n.substr(1);break}n||(n="WebkitOpacity"in c&&"webkit"),l=!!("transition"in c||n+"Transition"in c),f=!!("animation"in c||n+"Animation"in c),!o||l&&f||(l=b(s.body.style.webkitTransition),f=b(s.body.style.webkitAnimation))}return{history:!(!t.history||!t.history.pushState||4>o||a),hasEvent:function(t){if("input"===t&&11>=er)return!1;if(g(i[t])){var e=s.createElement("div");i[t]="on"+t in e}return i[t]},csp:vr(),vendorPrefix:n,transitions:l,animations:f,android:o}}]}function en(){this.$get=["$templateCache","$http","$q","$sce",function(t,e,n,r){function i(o,a){function s(t){if(!a)throw Kr("tpload","Failed to load template: {0}",o);return n.reject(t)}i.totalPendingRequests++,b(o)&&t.get(o)||(o=r.getTrustedResourceUrl(o));var u=e.defaults&&e.defaults.transformResponse;dr(u)?u=u.filter(function(t){return t!==ie}):u===ie&&(u=null);var c={cache:t,transformResponse:u};return e.get(o,c)["finally"](function(){i.totalPendingRequests--}).then(function(t){return t.data},s)}return i.totalPendingRequests=0,i}]}function nn(){this.$get=["$rootScope","$browser","$location",function(t,e,n){var r={};return r.findBindings=function(t,e,n){var r=t.getElementsByClassName("ng-binding"),i=[];return o(r,function(t){var r=lr.element(t).data("$binding");r&&o(r,function(r){if(n){var o=new RegExp("(^|\\s)"+mr(e)+"(\\s|\\||$)");o.test(r)&&i.push(t)}else-1!=r.indexOf(e)&&i.push(t)})}),i},r.findModels=function(t,e,n){for(var r=["ng-","data-ng-","ng\\:"],i=0;it;t=Math.abs(t);var a=t+"",s="",u=[],c=!1;if(-1!==a.indexOf("e")){var l=a.match(/([\d\.]+)e(-?)(\d+)/);l&&"-"==l[2]&&l[3]>i+1?t=0:(s=a,c=!0)}if(c)i>0&&1>t&&(s=t.toFixed(i),t=parseFloat(s));else{var f=(a.split(ki)[1]||"").length;g(i)&&(i=Math.min(Math.max(e.minFrac,f),e.maxFrac)),t=+(Math.round(+(t.toString()+"e"+i)).toString()+"e"+-i);var h=(""+t).split(ki),d=h[0];h=h[1]||"";var p,m=0,v=e.lgSize,$=e.gSize;if(d.length>=v+$)for(m=d.length-v,p=0;m>p;p++)(m-p)%$===0&&0!==p&&(s+=n),s+=d.charAt(p);for(p=m;pt&&(r="-",t=-t),t=""+t;t.length0||o>-n)&&(o+=n),0===o&&-12==n&&(o=12),mn(o,e,r)}}function gn(t,e){return function(n,r){var i=n["get"+t](),o=Jn(e?"SHORT"+t:t);return r[o][i]}}function $n(t){var e=-1*t.getTimezoneOffset(),n=e>=0?"+":"";return n+=mn(Math[e>0?"floor":"ceil"](e/60),2)+mn(Math.abs(e%60),2)}function yn(t){var e=new Date(t,0,1).getDay();return new Date(t,0,(4>=e?5:12)-e)}function bn(t){return new Date(t.getFullYear(),t.getMonth(),t.getDate()+(4-t.getDay()))}function wn(t){return function(e){var n=yn(e.getFullYear()),r=bn(e),i=+r-+n,o=1+Math.round(i/6048e5);return mn(o,t)}}function _n(t,e){return t.getHours()<12?e.AMPMS[0]:e.AMPMS[1]}function xn(t,e){return t.getFullYear()<=0?e.ERAS[0]:e.ERAS[1]}function Cn(t,e){return t.getFullYear()<=0?e.ERANAMES[0]:e.ERANAMES[1]}function En(t){function e(t){var e;if(e=t.match(n)){var r=new Date(0),i=0,o=0,a=e[8]?r.setUTCFullYear:r.setFullYear,s=e[8]?r.setUTCHours:r.setHours;e[9]&&(i=h(e[9]+e[10]),o=h(e[9]+e[11])),a.call(r,h(e[1]),h(e[2])-1,h(e[3]));var u=h(e[4]||0)-i,c=h(e[5]||0)-o,l=h(e[6]||0),f=Math.round(1e3*parseFloat("0."+(e[7]||0)));return s.call(r,u,c,l,f),r}return t}var n=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(n,r,i){var a,s,u="",c=[];if(r=r||"mediumDate",r=t.DATETIME_FORMATS[r]||r,b(n)&&(n=Ti.test(n)?h(n):e(n)),w(n)&&(n=new Date(n)),!_(n))return n;for(;r;)s=Si.exec(r),s?(c=F(c,s,1),r=c.pop()):(c.push(r),r=null);return i&&"UTC"===i&&(n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+n.getTimezoneOffset())),o(c,function(e){a=Ai[e],u+=a?a(n,t.DATETIME_FORMATS):e.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),u}}function kn(){return function(t,e){return g(e)&&(e=2),V(t,e)}}function An(){return function(t,e){return w(t)&&(t=t.toString()),dr(t)||b(t)?(e=Math.abs(Number(e))===1/0?Number(e):h(e),e?e>0?t.slice(0,e):t.slice(e):b(t)?"":[]):t}}function Sn(t){return function(e,n,r){function o(t,e){for(var r=0;rt?-1:1):r>n?-1:1}return i(e)?(n=dr(n)?n:[n],0===n.length&&(n=["+"]),n=n.map(function(e){var n=!1,r=e||m;if(b(e)){if(("+"==e.charAt(0)||"-"==e.charAt(0))&&(n="-"==e.charAt(0),e=e.substring(1)),""===e)return a(c,n);if(r=t(e),r.constant){var i=r();return a(function(t,e){return c(t[i],e[i])},n)}}return a(function(t,e){return c(r(t),r(e))},n)}),or.call(e).sort(a(o,r))):e}}function Tn(t){return x(t)&&(t={link:t}),t.restrict=t.restrict||"AC",v(t)}function On(t,e){t.$name=e}function In(t,e,r,i,a){var s=this,u=[],c=s.$$parentForm=t.parent().controller("form")||Di;s.$error={},s.$$success={},s.$pending=n,s.$name=a(e.name||e.ngForm||"")(r),s.$dirty=!1,s.$pristine=!0,s.$valid=!0,s.$invalid=!1,s.$submitted=!1,c.$addControl(s),s.$rollbackViewValue=function(){o(u,function(t){t.$rollbackViewValue()})},s.$commitViewValue=function(){o(u,function(t){t.$commitViewValue()})},s.$addControl=function(t){at(t.$name,"input"),u.push(t),t.$name&&(s[t.$name]=t)},s.$$renameControl=function(t,e){var n=t.$name;s[n]===t&&delete s[n],s[e]=t,t.$name=e},s.$removeControl=function(t){t.$name&&s[t.$name]===t&&delete s[t.$name],o(s.$pending,function(e,n){s.$setValidity(n,null,t)}),o(s.$error,function(e,n){s.$setValidity(n,null,t)}),o(s.$$success,function(e,n){s.$setValidity(n,null,t)}),j(u,t)},Wn({ctrl:this,$element:t,set:function(t,e,n){var r=t[e];if(r){var i=r.indexOf(n);-1===i&&r.push(n)}else t[e]=[n]},unset:function(t,e,n){var r=t[e];r&&(j(r,n),0===r.length&&delete t[e])},parentForm:c,$animate:i}),s.$setDirty=function(){i.removeClass(t,go),i.addClass(t,$o),s.$dirty=!0,s.$pristine=!1,c.$setDirty()},s.$setPristine=function(){i.setClass(t,go,$o+" "+ji),s.$dirty=!1,s.$pristine=!0,s.$submitted=!1,o(u,function(t){t.$setPristine()})},s.$setUntouched=function(){o(u,function(t){t.$setUntouched()})},s.$setSubmitted=function(){i.addClass(t,ji),s.$submitted=!0,c.$setSubmitted()}}function zn(t){t.$formatters.push(function(e){return t.$isEmpty(e)?e:e.toString()})}function Mn(t,e,n,r,i,o){Dn(t,e,n,r,i,o),zn(r)}function Dn(t,e,n,r,i,o){var a=Gn(e[0].type);if(!i.android){var s=!1;e.on("compositionstart",function(t){s=!0}),e.on("compositionend",function(){s=!1,u()})}var u=function(t){if(c&&(o.defer.cancel(c),c=null),!s){var i=e.val(),u=t&&t.type;"password"===a||n.ngTrim&&"false"===n.ngTrim||(i=pr(i)),(r.$viewValue!==i||""===i&&r.$$hasNativeValidators)&&r.$setViewValue(i,u)}};if(i.hasEvent("input"))e.on("input",u);else{var c,l=function(t,e,n){c||(c=o.defer(function(){c=null,e&&e.value===n||u(t)}))};e.on("keydown",function(t){var e=t.keyCode;91===e||e>15&&19>e||e>=37&&40>=e||l(t,this,this.value)}),i.hasEvent("paste")&&e.on("paste cut",l)}e.on("change",u),r.$render=function(){e.val(r.$isEmpty(r.$viewValue)?"":r.$viewValue)}}function jn(t,e){if(_(t))return t;if(b(t)){Hi.lastIndex=0;var n=Hi.exec(t);if(n){var r=+n[1],i=+n[2],o=0,a=0,s=0,u=0,c=yn(r),l=7*(i-1);return e&&(o=e.getHours(),a=e.getMinutes(),s=e.getSeconds(),u=e.getMilliseconds()),new Date(r,0,c.getDate()+l,o,a,s,u)}}return NaN}function Nn(t,e){return function(n,r){var i,a;if(_(n))return n;if(b(n)){if('"'==n.charAt(0)&&'"'==n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),Fi.test(n))return new Date(n);if(t.lastIndex=0,i=t.exec(n))return i.shift(),a=r?{yyyy:r.getFullYear(),MM:r.getMonth()+1,dd:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds(),sss:r.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},o(i,function(t,n){n=v},s.$observe("min",function(t){v=d(t),u.$validate()})}if($(s.max)||s.ngMax){var y;u.$validators.max=function(t){return!h(t)||g(y)||r(t)<=y},s.$observe("max",function(t){y=d(t),u.$validate()})}}}function Pn(t,e,r,i){var o=e[0],a=i.$$hasNativeValidators=y(o.validity);a&&i.$parsers.push(function(t){var r=e.prop(Zn)||{};return r.badInput&&!r.typeMismatch?n:t})}function Fn(t,e,r,i,o,a){if(Pn(t,e,r,i),Dn(t,e,r,i,o,a),i.$$parserName="number",i.$parsers.push(function(t){return i.$isEmpty(t)?null:Ui.test(t)?parseFloat(t):n}),i.$formatters.push(function(t){if(!i.$isEmpty(t)){if(!w(t))throw _o("numfmt","Expected `{0}` to be a number",t);t=t.toString()}return t}),$(r.min)||r.ngMin){var s;i.$validators.min=function(t){return i.$isEmpty(t)||g(s)||t>=s},r.$observe("min",function(t){$(t)&&!w(t)&&(t=parseFloat(t,10)),s=w(t)&&!isNaN(t)?t:n,i.$validate()})}if($(r.max)||r.ngMax){var u;i.$validators.max=function(t){return i.$isEmpty(t)||g(u)||u>=t},r.$observe("max",function(t){$(t)&&!w(t)&&(t=parseFloat(t,10)),u=w(t)&&!isNaN(t)?t:n,i.$validate()})}}function Bn(t,e,n,r,i,o){Dn(t,e,n,r,i,o),zn(r),r.$$parserName="url",r.$validators.url=function(t,e){var n=t||e;return r.$isEmpty(n)||Bi.test(n)}}function Ln(t,e,n,r,i,o){Dn(t,e,n,r,i,o),zn(r),r.$$parserName="email",r.$validators.email=function(t,e){var n=t||e;return r.$isEmpty(n)||Li.test(n)}}function Un(t,e,n,r){g(n.name)&&e.attr("name",c());var i=function(t){e[0].checked&&r.$setViewValue(n.value,t&&t.type)};e.on("click",i),r.$render=function(){var t=n.value;e[0].checked=t==r.$viewValue},n.$observe("value",r.$render)}function Vn(t,e,n,r,i){var o;if($(r)){if(o=t(r),!o.constant)throw _o("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return o(e)}return i}function qn(t,e,n,r,i,o,a,s){var u=Vn(s,t,"ngTrueValue",n.ngTrueValue,!0),c=Vn(s,t,"ngFalseValue",n.ngFalseValue,!1),l=function(t){r.$setViewValue(e[0].checked,t&&t.type)};e.on("click",l),r.$render=function(){e[0].checked=r.$viewValue},r.$isEmpty=function(t){return t===!1},r.$formatters.push(function(t){return P(t,u)}),r.$parsers.push(function(t){return t?u:c})}function Hn(t,e){return t="ngClass"+t,["$animate",function(n){function r(t,e){var n=[];t:for(var r=0;r0||n[t])&&(n[t]=(n[t]||0)+e,n[t]===+(e>0)&&r.push(t))}),s.data("$classCounts",n),r.join(" ")}function h(t,e){var i=r(e,t),o=r(t,e);i=f(i,1),o=f(o,-1),i&&i.length&&n.addClass(s,i),o&&o.length&&n.removeClass(s,o)}function d(t){if(e===!0||a.$index%2===e){var n=i(t||[]);if(p){if(!P(t,p)){var r=i(p);h(r,n)}}else c(n)}p=R(t)}var p;a.$watch(u[t],d,!0),u.$observe("class",function(e){d(a.$eval(u[t]))}),"ngClass"!==t&&a.$watch("$index",function(n,r){var o=1&n;if(o!==(1&r)){var s=i(a.$eval(u[t]));o===e?c(s):l(s)}})}}}]}function Wn(t){function e(t,e,u){e===n?r("$pending",t,u):i("$pending",t,u),O(e)?e?(f(s.$error,t,u),l(s.$$success,t,u)):(l(s.$error,t,u),f(s.$$success,t,u)):(f(s.$error,t,u),f(s.$$success,t,u)),s.$pending?(o(wo,!0),s.$valid=s.$invalid=n,a("",null)):(o(wo,!1),s.$valid=Xn(s.$error),s.$invalid=!s.$valid,a("",s.$valid));var c;c=s.$pending&&s.$pending[t]?n:s.$error[t]?!1:s.$$success[t]?!0:null,a(t,c),h.$setValidity(t,c,s)}function r(t,e,n){s[t]||(s[t]={}),l(s[t],e,n)}function i(t,e,r){s[t]&&f(s[t],e,r),Xn(s[t])&&(s[t]=n)}function o(t,e){e&&!c[t]?(d.addClass(u,t),c[t]=!0):!e&&c[t]&&(d.removeClass(u,t),c[t]=!1)}function a(t,e){t=t?"-"+nt(t,"-"):"",o(mo+t,e===!0),o(vo+t,e===!1)}var s=t.ctrl,u=t.$element,c={},l=t.set,f=t.unset,h=t.parentForm,d=t.$animate;c[vo]=!(c[mo]=u.hasClass(mo)),s.$setValidity=e}function Xn(t){if(t)for(var e in t)return!1;return!0}var Yn=/^\/(.+)\/([a-z]*)$/,Zn="validity",Gn=function(t){return b(t)?t.toLowerCase():t},Kn=Object.prototype.hasOwnProperty,Jn=function(t){return b(t)?t.toUpperCase():t},Qn=function(t){return b(t)?t.replace(/[A-Z]/g,function(t){return String.fromCharCode(32|t.charCodeAt(0))}):t},tr=function(t){return b(t)?t.replace(/[a-z]/g,function(t){return String.fromCharCode(-33&t.charCodeAt(0))}):t};"i"!=="I".toLowerCase()&&(Gn=Qn,Jn=tr);var er,nr,rr,ir,or=[].slice,ar=[].splice,sr=[].push,ur=Object.prototype.toString,cr=r("ng"),lr=t.angular||(t.angular={}),fr=0;er=e.documentMode,p.$inject=[],m.$inject=[];var hr,dr=Array.isArray,pr=function(t){return b(t)?t.trim():t},mr=function(t){return t.replace(/([-()\[\]{}+?*.$\^|,:#(?:<\/\1>|)$/,Nr=/<|&#?\w+;/,Rr=/<([\w:]+)/,Pr=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Fr={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Fr.optgroup=Fr.option,Fr.tbody=Fr.tfoot=Fr.colgroup=Fr.caption=Fr.thead,Fr.th=Fr.td;var Br=bt.prototype={ready:function(n){function r(){i||(i=!0,n())}var i=!1;"complete"===e.readyState?setTimeout(r):(this.on("DOMContentLoaded",r),bt(t).on("load",r))},toString:function(){var t=[];return o(this,function(e){t.push(""+e)}),"["+t.join(", ")+"]"},eq:function(t){return nr(t>=0?this[t]:this[this.length+t])},length:0,push:sr,sort:[].sort,splice:[].splice},Lr={};o("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(t){Lr[Gn(t)]=t});var Ur={};o("input,select,option,textarea,button,form,details".split(","),function(t){Ur[t]=!0});var Vr={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};o({data:kt,removeData:Ct},function(t,e){bt[e]=t}),o({data:kt,inheritedData:zt,scope:function(t){return nr.data(t,"$scope")||zt(t.parentNode||t,["$isolateScope","$scope"])},isolateScope:function(t){return nr.data(t,"$isolateScope")||nr.data(t,"$isolateScopeNoTemplate")},controller:It,injector:function(t){return zt(t,"$injector")},removeAttr:function(t,e){t.removeAttribute(e)},hasClass:At,css:function(t,e,n){return e=mt(e),$(n)?void(t.style[e]=n):t.style[e]},attr:function(t,e,r){var i=t.nodeType;if(i!==_r&&i!==wr&&i!==xr){var o=Gn(e);if(Lr[o]){if(!$(r))return t[e]||(t.attributes.getNamedItem(e)||p).specified?o:n;r?(t[e]=!0,t.setAttribute(e,o)):(t[e]=!1,t.removeAttribute(o))}else if($(r))t.setAttribute(e,r);else if(t.getAttribute){var a=t.getAttribute(e,2);return null===a?n:a}}},prop:function(t,e,n){return $(n)?void(t[e]=n):t[e]},text:function(){function t(t,e){if(g(e)){var n=t.nodeType;return n===br||n===_r?t.textContent:""}t.textContent=e}return t.$dv="",t}(),val:function(t,e){if(g(e)){if(t.multiple&&"select"===D(t)){var n=[];return o(t.options,function(t){t.selected&&n.push(t.value||t.text)}),0===n.length?null:n}return t.value}t.value=e},html:function(t,e){return g(e)?t.innerHTML:(_t(t,!0),void(t.innerHTML=e))},empty:Mt},function(t,e){bt.prototype[e]=function(e,r){var i,o,a=this.length;if(t!==Mt&&(2==t.length&&t!==At&&t!==It?e:r)===n){if(y(e)){for(i=0;a>i;i++)if(t===kt)t(this[i],e);else for(o in e)t(this[i],o,e[o]);return this}for(var s=t.$dv,u=s===n?Math.min(a,1):a,c=0;u>c;c++){var l=t(this[c],e,r);s=s?s+l:l}return s}for(i=0;a>i;i++)t(this[i],e,r);return this}}),o({removeData:Ct,on:function Zo(t,e,n,r){if($(r))throw Dr("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(gt(t)){var i=Et(t,!0),o=i.events,a=i.handle;a||(a=i.handle=Pt(t,o));for(var s=e.indexOf(" ")>=0?e.split(" "):[e],u=s.length;u--;){e=s[u];var c=o[e];c||(o[e]=[],"mouseenter"===e||"mouseleave"===e?Zo(t,Mr[e],function(t){var n=this,r=t.relatedTarget;(!r||r!==n&&!n.contains(r))&&a(t,e)}):"$destroy"!==e&&Tr(t,e,a),c=o[e]),c.push(n)}}},off:xt,one:function(t,e,n){t=nr(t),t.on(e,function r(){t.off(e,n),t.off(e,r)}),t.on(e,n)},replaceWith:function(t,e){var n,r=t.parentNode;_t(t),o(new bt(e),function(e){n?r.insertBefore(e,n.nextSibling):r.replaceChild(e,t),n=e})},children:function(t){var e=[];return o(t.childNodes,function(t){t.nodeType===br&&e.push(t)}),e},contents:function(t){return t.contentDocument||t.childNodes||[]},append:function(t,e){var n=t.nodeType;if(n===br||n===Er){e=new bt(e);for(var r=0,i=e.length;i>r;r++){var o=e[r];t.appendChild(o)}}},prepend:function(t,e){if(t.nodeType===br){var n=t.firstChild;o(new bt(e),function(e){t.insertBefore(e,n)})}},wrap:function(t,e){e=nr(e).eq(0).clone()[0];var n=t.parentNode;n&&n.replaceChild(e,t),e.appendChild(t)},remove:Dt,detach:function(t){Dt(t,!0)},after:function(t,e){var n=t,r=t.parentNode;e=new bt(e);for(var i=0,o=e.length;o>i;i++){var a=e[i];r.insertBefore(a,n.nextSibling),n=a}},addClass:Tt,removeClass:St,toggleClass:function(t,e,n){e&&o(e.split(" "),function(e){var r=n;g(r)&&(r=!At(t,e)),(r?Tt:St)(t,e)})},parent:function(t){var e=t.parentNode;return e&&e.nodeType!==Er?e:null},next:function(t){return t.nextElementSibling},find:function(t,e){return t.getElementsByTagName?t.getElementsByTagName(e):[]},clone:wt,triggerHandler:function(t,e,n){var r,i,a,s=e.type||e,u=Et(t),c=u&&u.events,l=c&&c[s];l&&(r={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return this.defaultPrevented===!0},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return this.immediatePropagationStopped===!0},stopPropagation:p,type:s,target:t},e.type&&(r=f(r,e)),i=R(l),a=n?[r].concat(n):[r],o(i,function(e){r.isImmediatePropagationStopped()||e.apply(t,a)}))}},function(t,e){bt.prototype[e]=function(e,n,r){for(var i,o=0,a=this.length;a>o;o++)g(i)?(i=t(this[o],e,n,r),$(i)&&(i=nr(i))):Ot(i,t(this[o],e,n,r));return $(i)?i:this},bt.prototype.bind=bt.prototype.on,bt.prototype.unbind=bt.prototype.off}),Lt.prototype={put:function(t,e){this[Bt(t,this.nextUid)]=e},get:function(t){return this[Bt(t,this.nextUid)]},remove:function(t){var e=this[t=Bt(t,this.nextUid)];return delete this[t],e}};var qr=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,Hr=/,/,Wr=/^\s*(_?)(\S+?)\1\s*$/,Xr=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,Yr=r("$injector");qt.$$annotate=Vt;var Zr=r("$animate"),Gr=["$provide",function(t){this.$$selectors={},this.register=function(e,n){var r=e+"-animation";if(e&&"."!=e.charAt(0))throw Zr("notcsel","Expecting class selector starting with '.' got '{0}'.",e);this.$$selectors[e.substr(1)]=r,t.factory(r,n)},this.classNameFilter=function(t){return 1===arguments.length&&(this.$$classNameFilter=t instanceof RegExp?t:null),this.$$classNameFilter},this.$get=["$$q","$$asyncCallback","$rootScope",function(t,e,n){function r(e){var r,i=t.defer();return i.promise.$$cancelFn=function(){r&&r()},n.$$postDigest(function(){r=e(function(){i.resolve()})}),i.promise}function i(t,e){var n=[],r=[],i=ct();return o((t.attr("class")||"").split(/\s+/),function(t){i[t]=!0}),o(e,function(t,e){var o=i[e];t===!1&&o?r.push(e):t!==!0||o||n.push(e)}),n.length+r.length>0&&[n.length?n:null,r.length?r:null]}function a(t,e,n){for(var r=0,i=e.length;i>r;++r){var o=e[r];t[o]=n}}function s(){return c||(c=t.defer(),e(function(){c.resolve(),c=null})),c.promise}function u(t,e){if(lr.isObject(e)){var n=f(e.from||{},e.to||{});t.css(n)}}var c;return{animate:function(t,e,n){return u(t,{from:e,to:n}),s()},enter:function(t,e,n,r){return u(t,r),n?n.after(t):e.prepend(t),s()},leave:function(t,e){return u(t,e),t.remove(),s()},move:function(t,e,n,r){return this.enter(t,e,n,r)},addClass:function(t,e,n){return this.setClass(t,e,[],n)},$$addClassImmediately:function(t,e,n){return t=nr(t),e=b(e)?e:dr(e)?e.join(" "):"",o(t,function(t){Tt(t,e)}),u(t,n),s()},removeClass:function(t,e,n){return this.setClass(t,[],e,n); +},$$removeClassImmediately:function(t,e,n){return t=nr(t),e=b(e)?e:dr(e)?e.join(" "):"",o(t,function(t){St(t,e)}),u(t,n),s()},setClass:function(t,e,n,o){var s=this,u="$$animateClasses",c=!1;t=nr(t);var l=t.data(u);l?o&&l.options&&(l.options=lr.extend(l.options||{},o)):(l={classes:{},options:o},c=!0);var f=l.classes;return e=dr(e)?e:e.split(" "),n=dr(n)?n:n.split(" "),a(f,e,!0),a(f,n,!1),c&&(l.promise=r(function(e){var n=t.data(u);if(t.removeData(u),n){var r=i(t,n.classes);r&&s.$$setClassImmediately(t,r[0],r[1],n.options)}e()}),t.data(u,l)),l.promise},$$setClassImmediately:function(t,e,n,r){return e&&this.$$addClassImmediately(t,e),n&&this.$$removeClassImmediately(t,n),u(t,r),s()},enabled:p,cancel:p}}]}],Kr=r("$compile");Kt.$inject=["$provide","$$sanitizeUriProvider"];var Jr=/^((?:x|data)[\:\-_])/i,Qr=r("$controller"),ti="application/json",ei={"Content-Type":ti+";charset=utf-8"},ni=/^\[|^\{(?!\{)/,ri={"[":/]$/,"{":/}$/},ii=/^\)\]\}',?\n/,oi=r("$interpolate"),ai=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,si={http:80,https:443,ftp:21},ui=r("$location"),ci={$$html5:!1,$$replace:!1,absUrl:Se("$$absUrl"),url:function(t){if(g(t))return this.$$url;var e=ai.exec(t);return(e[1]||""===t)&&this.path(decodeURIComponent(e[1])),(e[2]||e[1]||""===t)&&this.search(e[3]||""),this.hash(e[5]||""),this},protocol:Se("$$protocol"),host:Se("$$host"),port:Se("$$port"),path:Te("$$path",function(t){return t=null!==t?t.toString():"","/"==t.charAt(0)?t:"/"+t}),search:function(t,e){switch(arguments.length){case 0:return this.$$search;case 1:if(b(t)||w(t))t=t.toString(),this.$$search=X(t);else{if(!y(t))throw ui("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");t=N(t,{}),o(t,function(e,n){null==e&&delete t[n]}),this.$$search=t}break;default:g(e)||null===e?delete this.$$search[t]:this.$$search[t]=e}return this.$$compose(),this},hash:Te("$$hash",function(t){return null!==t?t.toString():""}),replace:function(){return this.$$replace=!0,this}};o([Ae,ke,Ee],function(t){t.prototype=Object.create(ci),t.prototype.state=function(e){if(!arguments.length)return this.$$state;if(t!==Ee||!this.$$html5)throw ui("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=g(e)?null:e,this}});var li=r("$parse"),fi=Function.prototype.call,hi=Function.prototype.apply,di=Function.prototype.bind,pi=ct();o({"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:function(){}},function(t,e){t.constant=t.literal=t.sharedGetter=!0,pi[e]=t}),pi["this"]=function(t){return t},pi["this"].sharedGetter=!0;var mi=f(ct(),{"+":function(t,e,r,i){return r=r(t,e),i=i(t,e),$(r)?$(i)?r+i:r:$(i)?i:n},"-":function(t,e,n,r){return n=n(t,e),r=r(t,e),($(n)?n:0)-($(r)?r:0)},"*":function(t,e,n,r){return n(t,e)*r(t,e)},"/":function(t,e,n,r){return n(t,e)/r(t,e)},"%":function(t,e,n,r){return n(t,e)%r(t,e)},"===":function(t,e,n,r){return n(t,e)===r(t,e)},"!==":function(t,e,n,r){return n(t,e)!==r(t,e)},"==":function(t,e,n,r){return n(t,e)==r(t,e)},"!=":function(t,e,n,r){return n(t,e)!=r(t,e)},"<":function(t,e,n,r){return n(t,e)":function(t,e,n,r){return n(t,e)>r(t,e)},"<=":function(t,e,n,r){return n(t,e)<=r(t,e)},">=":function(t,e,n,r){return n(t,e)>=r(t,e)},"&&":function(t,e,n,r){return n(t,e)&&r(t,e)},"||":function(t,e,n,r){return n(t,e)||r(t,e)},"!":function(t,e,n){return!n(t,e)},"=":!0,"|":!0}),vi={n:"\n",f:"\f",r:"\r",t:" ",v:"\x0B","'":"'",'"':'"'},gi=function(t){this.options=t};gi.prototype={constructor:gi,lex:function(t){for(this.text=t,this.index=0,this.tokens=[];this.index="0"&&"9">=t&&"string"==typeof t},isWhitespace:function(t){return" "===t||"\r"===t||" "===t||"\n"===t||"\x0B"===t||" "===t},isIdent:function(t){return t>="a"&&"z">=t||t>="A"&&"Z">=t||"_"===t||"$"===t},isExpOperator:function(t){return"-"===t||"+"===t||this.isNumber(t)},throwError:function(t,e,n){n=n||this.index;var r=$(e)?"s "+e+"-"+this.index+" ["+this.text.substring(e,n)+"]":" "+n;throw li("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",t,r,this.text)},readNumber:function(){for(var t="",e=this.index;this.indext){var o=this.tokens[t],a=o.text;if(a===e||a===n||a===r||a===i||!e&&!n&&!r&&!i)return o}return!1},expect:function(t,e,n,r){var i=this.peek(t,e,n,r);return i?(this.tokens.shift(),i):!1},consume:function(t){if(0===this.tokens.length)throw li("ueoe","Unexpected end of expression: {0}",this.text);var e=this.expect(t);return e||this.throwError("is unexpected, expecting ["+t+"]",this.peek()),e},unaryFn:function(t,e){var n=mi[t];return f(function(t,r){return n(t,r,e)},{constant:e.constant,inputs:[e]})},binaryFn:function(t,e,n,r){var i=mi[e];return f(function(e,r){return i(e,r,t,n)},{constant:t.constant&&n.constant,inputs:!r&&[t,n]})},identifier:function(){for(var t=this.consume().text;this.peek(".")&&this.peekAhead(1).identifier&&!this.peekAhead(2,"(");)t+=this.consume().text+this.consume().text;return Le(t,this.options,this.text)},constant:function(){var t=this.consume().value;return f(function(){return t},{constant:!0,literal:!0})},statements:function(){for(var t=[];;)if(this.tokens.length>0&&!this.peek("}",")",";","]")&&t.push(this.filterChain()),!this.expect(";"))return 1===t.length?t[0]:function(e,n){for(var r,i=0,o=t.length;o>i;i++)r=t[i](e,n);return r}},filterChain:function(){for(var t,e=this.expression();t=this.expect("|");)e=this.filter(e);return e},filter:function(t){var e,r,i=this.$filter(this.consume().text);if(this.peek(":"))for(e=[],r=[];this.expect(":");)e.push(this.expression());var o=[t].concat(e||[]);return f(function(o,a){var s=t(o,a);if(r){r[0]=s;for(var u=e.length;u--;)r[u+1]=e[u](o,a);return i.apply(n,r)}return i(s)},{constant:!i.$stateful&&o.every(Ne),inputs:!i.$stateful&&o})},expression:function(){return this.assignment()},assignment:function(){var t,e,n=this.ternary();return(e=this.expect("="))?(n.assign||this.throwError("implies assignment but ["+this.text.substring(0,e.index)+"] can not be assigned to",e),t=this.ternary(),f(function(e,r){return n.assign(e,t(e,r),r)},{inputs:[n,t]})):n},ternary:function(){var t,e,n=this.logicalOR();if((e=this.expect("?"))&&(t=this.assignment(),this.consume(":"))){var r=this.assignment();return f(function(e,i){return n(e,i)?t(e,i):r(e,i)},{constant:n.constant&&t.constant&&r.constant})}return n},logicalOR:function(){for(var t,e=this.logicalAND();t=this.expect("||");)e=this.binaryFn(e,t.text,this.logicalAND(),!0);return e},logicalAND:function(){for(var t,e=this.equality();t=this.expect("&&");)e=this.binaryFn(e,t.text,this.equality(),!0);return e},equality:function(){for(var t,e=this.relational();t=this.expect("==","!=","===","!==");)e=this.binaryFn(e,t.text,this.relational());return e},relational:function(){for(var t,e=this.additive();t=this.expect("<",">","<=",">=");)e=this.binaryFn(e,t.text,this.additive());return e},additive:function(){for(var t,e=this.multiplicative();t=this.expect("+","-");)e=this.binaryFn(e,t.text,this.multiplicative());return e},multiplicative:function(){for(var t,e=this.unary();t=this.expect("*","/","%");)e=this.binaryFn(e,t.text,this.unary());return e},unary:function(){var t;return this.expect("+")?this.primary():(t=this.expect("-"))?this.binaryFn($i.ZERO,t.text,this.unary()):(t=this.expect("!"))?this.unaryFn(t.text,this.unary()):this.primary()},fieldAccess:function(t){var e=this.identifier();return f(function(r,i,o){var a=o||t(r,i);return null==a?n:e(a)},{assign:function(n,r,i){var o=t(n,i);return o||t.assign(n,o={},i),e.assign(o,r)}})},objectIndex:function(t){var e=this.text,r=this.expression();return this.consume("]"),f(function(i,o){var a,s=t(i,o),u=Me(r(i,o),e);return ze(u,e),s?a=De(s[u],e):n},{assign:function(n,i,o){var a=ze(Me(r(n,o),e),e),s=De(t(n,o),e);return s||t.assign(n,s={},o),s[a]=i}})},functionCall:function(t,e){var r=[];if(")"!==this.peekToken().text)do r.push(this.expression());while(this.expect(","));this.consume(")");var i=this.text,o=r.length?[]:null;return function(a,s){var u=e?e(a,s):$(e)?n:a,c=t(a,s,u)||p;if(o)for(var l=r.length;l--;)o[l]=De(r[l](a,s),i);De(u,i),je(c,i);var f=c.apply?c.apply(u,o):c(o[0],o[1],o[2],o[3],o[4]);return o&&(o.length=0),De(f,i)}},arrayDeclaration:function(){var t=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;t.push(this.expression())}while(this.expect(","));return this.consume("]"),f(function(e,n){for(var r=[],i=0,o=t.length;o>i;i++)r.push(t[i](e,n));return r},{literal:!0,constant:t.every(Ne),inputs:t})},object:function(){var t=[],e=[];if("}"!==this.peekToken().text)do{if(this.peek("}"))break;var n=this.consume();n.constant?t.push(n.value):n.identifier?t.push(n.text):this.throwError("invalid key",n),this.consume(":"),e.push(this.expression())}while(this.expect(","));return this.consume("}"),f(function(n,r){for(var i={},o=0,a=e.length;a>o;o++)i[t[o]]=e[o](n,r);return i},{literal:!0,constant:e.every(Ne),inputs:e})}};var yi=ct(),bi=ct(),wi=Object.prototype.valueOf,_i=r("$sce"),xi={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},Kr=r("$compile"),Ci=e.createElement("a"),Ei=on(t.location.href);un.$inject=["$provide"],hn.$inject=["$locale"],dn.$inject=["$locale"];var ki=".",Ai={yyyy:vn("FullYear",4),yy:vn("FullYear",2,0,!0),y:vn("FullYear",1),MMMM:gn("Month"),MMM:gn("Month",!0),MM:vn("Month",2,1),M:vn("Month",1,1),dd:vn("Date",2),d:vn("Date",1),HH:vn("Hours",2),H:vn("Hours",1),hh:vn("Hours",2,-12),h:vn("Hours",1,-12),mm:vn("Minutes",2),m:vn("Minutes",1),ss:vn("Seconds",2),s:vn("Seconds",1),sss:vn("Milliseconds",3),EEEE:gn("Day"),EEE:gn("Day",!0),a:_n,Z:$n,ww:wn(2),w:wn(1),G:xn,GG:xn,GGG:xn,GGGG:Cn},Si=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,Ti=/^\-?\d+$/;En.$inject=["$locale"];var Oi=v(Gn),Ii=v(Jn);Sn.$inject=["$parse"];var zi=v({restrict:"E",compile:function(t,e){return e.href||e.xlinkHref||e.name?void 0:function(t,e){if("a"===e[0].nodeName.toLowerCase()){var n="[object SVGAnimatedString]"===ur.call(e.prop("href"))?"xlink:href":"href";e.on("click",function(t){e.attr(n)||t.preventDefault()})}}}}),Mi={};o(Lr,function(t,e){if("multiple"!=t){var n=Jt("ng-"+e);Mi[n]=function(){return{restrict:"A",priority:100,link:function(t,r,i){t.$watch(i[n],function(t){i.$set(e,!!t)})}}}}}),o(Vr,function(t,e){Mi[e]=function(){return{priority:100,link:function(t,n,r){if("ngPattern"===e&&"/"==r.ngPattern.charAt(0)){var i=r.ngPattern.match(Yn);if(i)return void r.$set("ngPattern",new RegExp(i[1],i[2]))}t.$watch(r[e],function(t){r.$set(e,t)})}}}}),o(["src","srcset","href"],function(t){var e=Jt("ng-"+t);Mi[e]=function(){return{priority:99,link:function(n,r,i){var o=t,a=t;"href"===t&&"[object SVGAnimatedString]"===ur.call(r.prop("href"))&&(a="xlinkHref",i.$attr[a]="xlink:href",o=null),i.$observe(e,function(e){return e?(i.$set(a,e),void(er&&o&&r.prop(o,i[a]))):void("href"===t&&i.$set(a,null))})}}}});var Di={$addControl:p,$$renameControl:On,$removeControl:p,$setValidity:p,$setDirty:p,$setPristine:p,$setSubmitted:p},ji="ng-submitted";In.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var Ni=function(t){return["$timeout",function(e){var r={name:"form",restrict:t?"EAC":"E",controller:In,compile:function(r,i){r.addClass(go).addClass(mo);var o=i.name?"name":t&&i.ngForm?"ngForm":!1;return{pre:function(t,r,i,a){if(!("action"in i)){var s=function(e){t.$apply(function(){a.$commitViewValue(),a.$setSubmitted()}),e.preventDefault()};Tr(r[0],"submit",s),r.on("$destroy",function(){e(function(){Or(r[0],"submit",s)},0,!1)})}var u=a.$$parentForm;o&&(Re(t,null,a.$name,a,a.$name),i.$observe(o,function(e){a.$name!==e&&(Re(t,null,a.$name,n,a.$name),u.$$renameControl(a,e),Re(t,null,a.$name,a,a.$name))})),r.on("$destroy",function(){u.$removeControl(a),o&&Re(t,null,i[o],n,a.$name),f(a,Di)})}}}};return r}]},Ri=Ni(),Pi=Ni(!0),Fi=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,Bi=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,Li=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,Ui=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,Vi=/^(\d{4})-(\d{2})-(\d{2})$/,qi=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Hi=/^(\d{4})-W(\d\d)$/,Wi=/^(\d{4})-(\d\d)$/,Xi=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Yi={text:Mn,date:Rn("date",Vi,Nn(Vi,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":Rn("datetimelocal",qi,Nn(qi,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:Rn("time",Xi,Nn(Xi,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:Rn("week",Hi,jn,"yyyy-Www"),month:Rn("month",Wi,Nn(Wi,["yyyy","MM"]),"yyyy-MM"),number:Fn,url:Bn,email:Ln,radio:Un,checkbox:qn,hidden:p,button:p,submit:p,reset:p,file:p},Zi=["$browser","$sniffer","$filter","$parse",function(t,e,n,r){return{restrict:"E",require:["?ngModel"],link:{pre:function(i,o,a,s){s[0]&&(Yi[Gn(a.type)]||Yi.text)(i,o,a,s[0],e,t,n,r)}}}}],Gi=/^(true|false|\d+)$/,Ki=function(){return{restrict:"A",priority:100,compile:function(t,e){return Gi.test(e.ngValue)?function(t,e,n){n.$set("value",t.$eval(n.ngValue))}:function(t,e,n){t.$watch(n.ngValue,function(t){n.$set("value",t)})}}}},Ji=["$compile",function(t){return{restrict:"AC",compile:function(e){return t.$$addBindingClass(e),function(e,r,i){t.$$addBindingInfo(r,i.ngBind),r=r[0],e.$watch(i.ngBind,function(t){r.textContent=t===n?"":t})}}}}],Qi=["$interpolate","$compile",function(t,e){return{compile:function(r){return e.$$addBindingClass(r),function(r,i,o){var a=t(i.attr(o.$attr.ngBindTemplate));e.$$addBindingInfo(i,a.expressions),i=i[0],o.$observe("ngBindTemplate",function(t){i.textContent=t===n?"":t})}}}}],to=["$sce","$parse","$compile",function(t,e,n){return{restrict:"A",compile:function(r,i){var o=e(i.ngBindHtml),a=e(i.ngBindHtml,function(t){return(t||"").toString()});return n.$$addBindingClass(r),function(e,r,i){n.$$addBindingInfo(r,i.ngBindHtml),e.$watch(a,function(){r.html(t.getTrustedHtml(o(e))||"")})}}}}],eo=v({restrict:"A",require:"ngModel",link:function(t,e,n,r){r.$viewChangeListeners.push(function(){t.$eval(n.ngChange)})}}),no=Hn("",!0),ro=Hn("Odd",0),io=Hn("Even",1),oo=Tn({compile:function(t,e){e.$set("ngCloak",n),t.removeClass("ng-cloak")}}),ao=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],so={},uo={blur:!0,focus:!0};o("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(t){var e=Jt("ng-"+t);so[e]=["$parse","$rootScope",function(n,r){return{restrict:"A",compile:function(i,o){var a=n(o[e],null,!0);return function(e,n){n.on(t,function(n){var i=function(){a(e,{$event:n})};uo[t]&&r.$$phase?e.$evalAsync(i):e.$apply(i)})}}}}]});var co=["$animate",function(t){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(n,r,i,o,a){var s,u,c;n.$watch(i.ngIf,function(n){n?u||a(function(n,o){u=o,n[n.length++]=e.createComment(" end ngIf: "+i.ngIf+" "),s={clone:n},t.enter(n,r.parent(),r)}):(c&&(c.remove(),c=null),u&&(u.$destroy(),u=null),s&&(c=ut(s.clone),t.leave(c).then(function(){c=null}),s=null))})}}}],lo=["$templateRequest","$anchorScroll","$animate",function(t,e,n){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:lr.noop,compile:function(r,i){var o=i.ngInclude||i.src,a=i.onload||"",s=i.autoscroll;return function(r,i,u,c,l){var f,h,d,p=0,m=function(){h&&(h.remove(),h=null),f&&(f.$destroy(),f=null),d&&(n.leave(d).then(function(){h=null}),h=d,d=null)};r.$watch(o,function(o){var u=function(){!$(s)||s&&!r.$eval(s)||e()},h=++p;o?(t(o,!0).then(function(t){if(h===p){var e=r.$new();c.template=t;var s=l(e,function(t){m(),n.enter(t,null,i).then(u)});f=e,d=s,f.$emit("$includeContentLoaded",o),r.$eval(a)}},function(){h===p&&(m(),r.$emit("$includeContentError",o))}),r.$emit("$includeContentRequested",o)):(m(),c.template=null)})}}}}],fo=["$compile",function(t){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(n,r,i,o){return/SVG/.test(r[0].toString())?(r.empty(),void t($t(o.template,e).childNodes)(n,function(t){r.append(t)},{futureParentElement:r})):(r.html(o.template),void t(r.contents())(n))}}}],ho=Tn({priority:450,compile:function(){return{pre:function(t,e,n){t.$eval(n.ngInit)}}}}),po=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(t,e,r,i){var a=e.attr(r.$attr.ngList)||", ",s="false"!==r.ngTrim,u=s?pr(a):a,c=function(t){if(!g(t)){var e=[];return t&&o(t.split(u),function(t){t&&e.push(s?pr(t):t)}),e}};i.$parsers.push(c),i.$formatters.push(function(t){return dr(t)?t.join(a):n}),i.$isEmpty=function(t){return!t||!t.length}}}},mo="ng-valid",vo="ng-invalid",go="ng-pristine",$o="ng-dirty",yo="ng-untouched",bo="ng-touched",wo="ng-pending",_o=r("ngModel"),xo=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(t,e,r,i,a,s,u,c,l,f){this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$$rawModelValue=n,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=n,this.$name=f(r.name||"",!1)(t);var h,d=a(r.ngModel),m=d.assign,v=d,y=m,b=null,_=this;this.$$setOptions=function(t){if(_.$options=t,t&&t.getterSetter){var e=a(r.ngModel+"()"),n=a(r.ngModel+"($$$p)");v=function(t){var n=d(t);return x(n)&&(n=e(t)),n},y=function(t,e){x(d(t))?n(t,{$$$p:_.$modelValue}):m(t,_.$modelValue)}}else if(!d.assign)throw _o("nonassign","Expression '{0}' is non-assignable. Element: {1}",r.ngModel,H(i))},this.$render=p,this.$isEmpty=function(t){return g(t)||""===t||null===t||t!==t};var C=i.inheritedData("$formController")||Di,E=0;Wn({ctrl:this,$element:i,set:function(t,e){t[e]=!0},unset:function(t,e){delete t[e]},parentForm:C,$animate:s}),this.$setPristine=function(){_.$dirty=!1,_.$pristine=!0,s.removeClass(i,$o),s.addClass(i,go)},this.$setDirty=function(){_.$dirty=!0,_.$pristine=!1,s.removeClass(i,go),s.addClass(i,$o),C.$setDirty()},this.$setUntouched=function(){_.$touched=!1,_.$untouched=!0,s.setClass(i,yo,bo)},this.$setTouched=function(){_.$touched=!0,_.$untouched=!1,s.setClass(i,bo,yo)},this.$rollbackViewValue=function(){u.cancel(b),_.$viewValue=_.$$lastCommittedViewValue,_.$render()},this.$validate=function(){if(!w(_.$modelValue)||!isNaN(_.$modelValue)){var t=_.$$lastCommittedViewValue,e=_.$$rawModelValue,r=_.$valid,i=_.$modelValue,o=_.$options&&_.$options.allowInvalid;_.$$runValidators(e,t,function(t){o||r===t||(_.$modelValue=t?e:n,_.$modelValue!==i&&_.$$writeModelToScope())})}},this.$$runValidators=function(t,e,r){function i(){var t=_.$$parserName||"parse";return h!==n?(h||(o(_.$validators,function(t,e){u(e,null)}),o(_.$asyncValidators,function(t,e){u(e,null)})),u(t,h),h):(u(t,null),!0)}function a(){var n=!0;return o(_.$validators,function(r,i){var o=r(t,e);n=n&&o,u(i,o)}),n?!0:(o(_.$asyncValidators,function(t,e){u(e,null)}),!1)}function s(){var r=[],i=!0;o(_.$asyncValidators,function(o,a){var s=o(t,e);if(!I(s))throw _o("$asyncValidators","Expected asynchronous validator to return a promise but got '{0}' instead.",s);u(a,n),r.push(s.then(function(){u(a,!0)},function(t){i=!1,u(a,!1)}))}),r.length?l.all(r).then(function(){c(i)},p):c(!0)}function u(t,e){f===E&&_.$setValidity(t,e)}function c(t){f===E&&r(t)}E++;var f=E;return i()&&a()?void s():void c(!1)},this.$commitViewValue=function(){var t=_.$viewValue;u.cancel(b),(_.$$lastCommittedViewValue!==t||""===t&&_.$$hasNativeValidators)&&(_.$$lastCommittedViewValue=t,_.$pristine&&this.$setDirty(),this.$$parseAndValidate())},this.$$parseAndValidate=function(){function e(){_.$modelValue!==a&&_.$$writeModelToScope()}var r=_.$$lastCommittedViewValue,i=r;if(h=g(i)?n:!0)for(var o=0;o<_.$parsers.length;o++)if(i=_.$parsers[o](i),g(i)){h=!1;break}w(_.$modelValue)&&isNaN(_.$modelValue)&&(_.$modelValue=v(t));var a=_.$modelValue,s=_.$options&&_.$options.allowInvalid;_.$$rawModelValue=i,s&&(_.$modelValue=i,e()),_.$$runValidators(i,_.$$lastCommittedViewValue,function(t){s||(_.$modelValue=t?i:n,e())})},this.$$writeModelToScope=function(){y(t,_.$modelValue),o(_.$viewChangeListeners,function(t){try{t()}catch(n){e(n)}})},this.$setViewValue=function(t,e){_.$viewValue=t,(!_.$options||_.$options.updateOnDefault)&&_.$$debounceViewValueCommit(e)},this.$$debounceViewValueCommit=function(e){var n,r=0,i=_.$options;i&&$(i.debounce)&&(n=i.debounce,w(n)?r=n:w(n[e])?r=n[e]:w(n["default"])&&(r=n["default"])),u.cancel(b),r?b=u(function(){_.$commitViewValue()},r):c.$$phase?_.$commitViewValue():t.$apply(function(){_.$commitViewValue()})},t.$watch(function(){var e=v(t);if(e!==_.$modelValue&&(_.$modelValue===_.$modelValue||e===e)){_.$modelValue=_.$$rawModelValue=e,h=n;for(var r=_.$formatters,i=r.length,o=e;i--;)o=r[i](o);_.$viewValue!==o&&(_.$viewValue=_.$$lastCommittedViewValue=o,_.$render(),_.$$runValidators(e,o,p))}return e})}],Co=["$rootScope",function(t){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:xo,priority:1,compile:function(e){return e.addClass(go).addClass(yo).addClass(mo),{pre:function(t,e,n,r){var i=r[0],o=r[1]||Di;i.$$setOptions(r[2]&&r[2].$options),o.$addControl(i),n.$observe("name",function(t){i.$name!==t&&o.$$renameControl(i,t)}),t.$on("$destroy",function(){o.$removeControl(i)})},post:function(e,n,r,i){var o=i[0];o.$options&&o.$options.updateOn&&n.on(o.$options.updateOn,function(t){o.$$debounceViewValueCommit(t&&t.type)}),n.on("blur",function(n){o.$touched||(t.$$phase?e.$evalAsync(o.$setTouched):e.$apply(o.$setTouched))})}}}}}],Eo=/(\s+|^)default(\s+|$)/,ko=function(){return{restrict:"A",controller:["$scope","$attrs",function(t,e){var r=this;this.$options=t.$eval(e.ngModelOptions),this.$options.updateOn!==n?(this.$options.updateOnDefault=!1,this.$options.updateOn=pr(this.$options.updateOn.replace(Eo,function(){return r.$options.updateOnDefault=!0," "}))):this.$options.updateOnDefault=!0}]}},Ao=Tn({terminal:!0,priority:1e3}),So=["$locale","$interpolate",function(t,e){var n=/{}/g,r=/^when(Minus)?(.+)$/;return{restrict:"EA",link:function(i,a,s){function u(t){a.text(t||"")}var c,l=s.count,f=s.$attr.when&&a.attr(s.$attr.when),h=s.offset||0,d=i.$eval(f)||{},p={},m=e.startSymbol(),v=e.endSymbol(),g=m+l+"-"+h+v,$=lr.noop;o(s,function(t,e){var n=r.exec(e);if(n){var i=(n[1]?"-":"")+Gn(n[2]);d[i]=a.attr(s.$attr[e])}}),o(d,function(t,r){p[r]=e(t.replace(n,g))}),i.$watch(l,function(e){var n=parseFloat(e),r=isNaN(n);r||n in d||(n=t.pluralCat(n-h)),n===c||r&&isNaN(c)||($(),$=i.$watch(p[n],u),c=n)})}}}],To=["$parse","$animate",function(t,a){var s="$$NG_REMOVED",u=r("ngRepeat"),c=function(t,e,n,r,i,o,a){t[n]=r,i&&(t[i]=o),t.$index=e,t.$first=0===e,t.$last=e===a-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=0===(1&e))},l=function(t){return t.clone[0]},f=function(t){return t.clone[t.clone.length-1]};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(r,h){var d=h.ngRepeat,p=e.createComment(" end ngRepeat: "+d+" "),m=d.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!m)throw u("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",d);var v=m[1],g=m[2],$=m[3],y=m[4];if(m=v.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/),!m)throw u("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",v);var b=m[3]||m[1],w=m[2];if($&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test($)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test($)))throw u("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",$);var _,x,C,E,k={$id:Bt};return y?_=t(y):(C=function(t,e){return Bt(e)},E=function(t){return t}),function(t,e,r,h,m){_&&(x=function(e,n,r){return w&&(k[w]=e),k[b]=n,k.$index=r,_(t,k)});var v=ct();t.$watchCollection(g,function(r){var h,g,y,_,k,A,S,T,O,I,z,M,D=e[0],j=ct();if($&&(t[$]=r),i(r))O=r,T=x||C;else{T=x||E,O=[];for(var N in r)r.hasOwnProperty(N)&&"$"!=N.charAt(0)&&O.push(N);O.sort()}for(_=O.length,z=new Array(_),h=0;_>h;h++)if(k=r===O?h:O[h],A=r[k],S=T(k,A,h),v[S])I=v[S],delete v[S],j[S]=I,z[h]=I;else{if(j[S])throw o(z,function(t){t&&t.scope&&(v[t.id]=t)}),u("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",d,S,A);z[h]={id:S,scope:n,clone:n},j[S]=!0}for(var R in v){if(I=v[R],M=ut(I.clone),a.leave(M),M[0].parentNode)for(h=0,g=M.length;g>h;h++)M[h][s]=!0;I.scope.$destroy()}for(h=0;_>h;h++)if(k=r===O?h:O[h],A=r[k],I=z[h],I.scope){y=D;do y=y.nextSibling;while(y&&y[s]);l(I)!=y&&a.move(ut(I.clone),null,nr(D)),D=f(I),c(I.scope,h,b,A,w,k,_)}else m(function(t,e){I.scope=e;var n=p.cloneNode(!1);t[t.length++]=n,a.enter(t,null,nr(D)),D=n,I.clone=t,j[I.id]=I,c(I.scope,h,b,A,w,k,_)});v=j})}}}}],Oo="ng-hide",Io="ng-hide-animate",zo=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,r){e.$watch(r.ngShow,function(e){t[e?"removeClass":"addClass"](n,Oo,{tempClasses:Io})})}}}],Mo=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,r){e.$watch(r.ngHide,function(e){t[e?"addClass":"removeClass"](n,Oo,{tempClasses:Io})})}}}],Do=Tn(function(t,e,n){t.$watch(n.ngStyle,function(t,n){n&&t!==n&&o(n,function(t,n){e.css(n,"")}),t&&e.css(t)},!0)}),jo=["$animate",function(t){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(n,r,i,a){var s=i.ngSwitch||i.on,u=[],c=[],l=[],f=[],h=function(t,e){return function(){t.splice(e,1)}};n.$watch(s,function(n){var r,i;for(r=0,i=l.length;i>r;++r)t.cancel(l[r]);for(l.length=0,r=0,i=f.length;i>r;++r){var s=ut(c[r].clone);f[r].$destroy();var d=l[r]=t.leave(s);d.then(h(l,r))}c.length=0,f.length=0,(u=a.cases["!"+n]||a.cases["?"])&&o(u,function(n){n.transclude(function(r,i){f.push(i);var o=n.element;r[r.length++]=e.createComment(" end ngSwitchWhen: ");var a={clone:r};c.push(a),t.enter(r,o.parent(),o)})})})}}}],No=Tn({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,r,i){r.cases["!"+n.ngSwitchWhen]=r.cases["!"+n.ngSwitchWhen]||[],r.cases["!"+n.ngSwitchWhen].push({transclude:i,element:e})}}),Ro=Tn({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,r,i){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:i,element:e})}}),Po=Tn({restrict:"EAC",link:function(t,e,n,i,o){if(!o)throw r("ngTransclude")("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",H(e));o(function(t){e.empty(),e.append(t)})}}),Fo=["$templateCache",function(t){return{restrict:"E",terminal:!0,compile:function(e,n){if("text/ng-template"==n.type){var r=n.id,i=e[0].text;t.put(r,i)}}}}],Bo=r("ngOptions"),Lo=v({restrict:"A",terminal:!0}),Uo=["$compile","$parse",function(t,r){var i=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,s={$setViewValue:p};return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(t,e,n){var r,i,o=this,a={},u=s;o.databound=n.ngModel,o.init=function(t,e,n){u=t,r=e,i=n},o.addOption=function(e,n){at(e,'"option value"'),a[e]=!0,u.$viewValue==e&&(t.val(e),i.parent()&&i.remove()),n&&n[0].hasAttribute("selected")&&(n[0].selected=!0)},o.removeOption=function(t){this.hasOption(t)&&(delete a[t],u.$viewValue===t&&this.renderUnknownOption(t))},o.renderUnknownOption=function(e){var n="? "+Bt(e)+" ?";i.val(n),t.prepend(i),t.val(n),i.prop("selected",!0)},o.hasOption=function(t){return a.hasOwnProperty(t)},e.$on("$destroy",function(){o.renderUnknownOption=p})}],link:function(s,u,c,l){function f(t,e,n,r){n.$render=function(){var t=n.$viewValue;r.hasOption(t)?(C.parent()&&C.remove(),e.val(t),""===t&&p.prop("selected",!0)):null==t&&p?e.val(""):r.renderUnknownOption(t)},e.on("change",function(){t.$apply(function(){C.parent()&&C.remove(),n.$setViewValue(e.val())})})}function h(t,e,n){var r;n.$render=function(){var t=new Lt(n.$viewValue);o(e.find("option"),function(e){e.selected=$(t.get(e.value))})},t.$watch(function(){P(r,n.$viewValue)||(r=R(n.$viewValue),n.$render())}),e.on("change",function(){t.$apply(function(){var t=[];o(e.find("option"),function(e){ +e.selected&&t.push(e.value)}),n.$setViewValue(t)})})}function d(e,s,u){function c(t,n,r){return P[A]=r,O&&(P[O]=n),t(e,P)}function l(){e.$apply(function(){var t,n=M(e)||[];if(g)t=[],o(s.val(),function(e){e=j?N[e]:e,t.push(f(e,n[e]))});else{var r=j?N[s.val()]:s.val();t=f(r,n[r])}u.$setViewValue(t),C()})}function f(t,e){if("?"===t)return n;if(""===t)return null;var r=T?T:z;return c(r,t,e)}function h(){var t,n=M(e);if(n&&dr(n)){t=new Array(n.length);for(var r=0,i=n.length;i>r;r++)t[r]=c(k,r,n[r]);return t}if(n){t={};for(var o in n)n.hasOwnProperty(o)&&(t[o]=c(k,o,n[o]))}return t}function d(t){var e;if(g)if(j&&dr(t)){e=new Lt([]);for(var n=0;nA;A++)h=A,O&&(h=q[A],"$"===h.charAt(0))||(p=V[h],t=c(I,h,p)||"",(n=B[t])||(n=B[t]=[],L.push(t)),S=W(h,p),X=X||S,D=c(k,h,p),D=$(D)?D:"",F=j?j(e,P):O?q[A]:A,j&&(N[F]=h),n.push({id:F,label:D,selected:S}));for(g||(b||null===U?B[""].unshift({id:"",label:"",selected:!X}):X||B[""].unshift({id:"?",label:"",selected:!0})),E=0,y=L.length;y>E;E++){for(t=L[E],n=B[t],R.length<=E?(i={element:x.clone().attr("label",t),label:n.label},l=[i],R.push(l),s.append(i.element)):(l=R[E],i=l[0],i.label!=t&&i.element.attr("label",i.label=t)),T=null,A=0,C=n.length;C>A;A++)r=n[A],(f=l[A+1])?(T=f.element,f.label!==r.label&&(v(H,f.label,!1),v(H,r.label,!0),T.text(f.label=r.label),T.prop("label",f.label)),f.id!==r.id&&T.val(f.id=r.id),T[0].selected!==r.selected&&(T.prop("selected",f.selected=r.selected),er&&T.prop("selected",f.selected))):(""===r.id&&b?z=b:(z=_.clone()).val(r.id).prop("selected",r.selected).attr("selected",r.selected).prop("label",r.label).text(r.label),l.push(f={element:z,label:r.label,id:r.id,selected:r.selected}),v(H,r.label,!0),T?T.after(z):i.element.append(z),T=z);for(A++;l.length>A;)r=l.pop(),v(H,r.label,!1),r.element.remove()}for(;R.length>E;){for(n=R.pop(),A=1;A0?m.addOption(e):0>t&&m.removeOption(e)})}var E;if(!(E=y.match(i)))throw Bo("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",y,H(s));var k=r(E[2]||E[1]),A=E[4]||E[6],S=/ as /.test(E[0])&&E[1],T=S?r(S):null,O=E[5],I=r(E[3]||""),z=r(E[2]?E[1]:A),M=r(E[7]),D=E[8],j=D?r(E[8]):null,N={},R=[[{element:s,label:""}]],P={};b&&(t(b)(e),b.removeClass("ng-scope"),b.remove()),s.empty(),s.on("change",l),u.$render=C,e.$watchCollection(M,p),e.$watchCollection(h,p),g&&e.$watchCollection(function(){return u.$modelValue},p)}if(l[1]){for(var p,m=l[0],v=l[1],g=c.multiple,y=c.ngOptions,b=!1,w=!1,_=nr(e.createElement("option")),x=nr(e.createElement("optgroup")),C=_.clone(),E=0,k=u.children(),A=k.length;A>E;E++)if(""===k[E].value){p=b=k.eq(E);break}m.init(v,b,C),g&&(v.$isEmpty=function(t){return!t||0===t.length}),y?d(s,u,v):g?h(s,u,v):f(s,u,v,m)}}}}],Vo=["$interpolate",function(t){var e={addOption:p,removeOption:p};return{restrict:"E",priority:100,compile:function(n,r){if(g(r.value)){var i=t(n.text(),!0);i||r.$set("value",n.text())}return function(t,n,r){var o="$selectController",a=n.parent(),s=a.data(o)||a.parent().data(o);s&&s.databound||(s=e),i?t.$watch(i,function(t,e){r.$set("value",t),e!==t&&s.removeOption(e),s.addOption(t,n)}):s.addOption(r.value,n),n.on("$destroy",function(){s.removeOption(r.value)})}}}}],qo=v({restrict:"E",terminal:!1}),Ho=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){r&&(n.required=!0,r.$validators.required=function(t,e){return!n.required||!r.$isEmpty(e)},n.$observe("required",function(){r.$validate()}))}}},Wo=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,i,o){if(o){var a,s=i.ngPattern||i.pattern;i.$observe("pattern",function(t){if(b(t)&&t.length>0&&(t=new RegExp("^"+t+"$")),t&&!t.test)throw r("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",s,t,H(e));a=t||n,o.$validate()}),o.$validators.pattern=function(t,e){return o.$isEmpty(e)||g(a)||a.test(e)}}}}},Xo=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){if(r){var i=-1;n.$observe("maxlength",function(t){var e=h(t);i=isNaN(e)?-1:e,r.$validate()}),r.$validators.maxlength=function(t,e){return 0>i||r.$isEmpty(e)||e.length<=i}}}}},Yo=function(){return{restrict:"A",require:"?ngModel",link:function(t,e,n,r){if(r){var i=0;n.$observe("minlength",function(t){i=h(t)||0,r.$validate()}),r.$validators.minlength=function(t,e){return r.$isEmpty(e)||e.length>=i}}}}};return t.angular.bootstrap?void console.log("WARNING: Tried to load angular more than once."):(rt(),dt(lr),void nr(e).ready(function(){J(e,Q)}))}(window,document),!window.angular.$$csp()&&window.angular.element(document.head).prepend(''),function(t,e,n){"use strict";e.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){var t="$$ngAnimateChildren";return function(n,r,i){var o=i.ngAnimateChildren;e.isString(o)&&0===o.length?r.data(t,!0):n.$watch(o,function(e){r.data(t,!!e)})}}).factory("$$animateReflow",["$$rAF","$document",function(t,e){var n=e[0].body;return function(e){return t(function(){e(n.offsetWidth)})}}]).config(["$provide","$animateProvider",function(r,i){function o(t){for(var e=0;e0&&[o.join(" "),a.join(" ")]}function I(t){if(t){var e=[],n={},i=t.substr(1).split(".");(v.transitions||v.animations)&&e.push(r.get(h[""]));for(var o=0;o0&&_(function(){r.triggerHandler(i,{event:t,className:n})})}function d(){h("before")}function p(){h("after")}function m(){h("close"),u()}function v(){v.hasBeenRun||(v.hasBeenRun=!0,a())}function $(){if(!$.hasBeenRun){w&&w.applyStyles(),$.hasBeenRun=!0,s&&s.tempClasses&&f(s.tempClasses,function(t){c.removeClass(r,t)});var e=r.data(g);e&&(w&&w.isClassBased?j(r,n):(_(function(){var e=r.data(g)||{};M==e.index&&j(r,n,t)}),r.data(g,e))),m()}}var b=l,w=z(r,t,n,s);if(!w)return v(),d(),p(),$(),b;t=w.event,n=w.className;var x=e.element._data(w.node);if(x=x&&x.events,i||(i=o?o.parent():r.parent()),N(r,i))return v(),d(),p(),$(),b;var C=r.data(g)||{},E=C.active||{},k=C.totalActive||0,A=C.last,S=!1;if(k>0){var T=[];if(w.isClassBased){if("setClass"==A.event)T.push(A),j(r,n);else if(E[n]){var O=E[n];O.event==t?S=!0:(T.push(O),j(r,n))}}else if("leave"==t&&E["ng-leave"])S=!0;else{for(var I in E)T.push(E[I]);C={},j(r,!0)}T.length>0&&f(T,function(t){t.cancel()})}if(!w.isClassBased||w.isSetClassOperation||"animate"==t||S||(S="addClass"==t==r.hasClass(n)),S)return v(),d(),p(),m(),b;E=C.active||{},k=C.totalActive||0,"leave"==t&&r.one("$destroy",function(t){var n=e.element(this),r=n.data(g);if(r){var i=r.active["ng-leave"];i&&(i.cancel(),j(n,"ng-leave"))}}),c.addClass(r,y),s&&s.tempClasses&&f(s.tempClasses,function(t){c.addClass(r,t)});var M=P++;return k++,E[n]=w,r.data(g,{last:w,active:E,index:M,totalActive:k}),d(),w.before(function(e){var i=r.data(g);e=e||!i||!i.active[n]||w.isClassBased&&i.active[n].event!=t,v(),e===!0?$():(p(),w.after($))}),w.cancel}function D(t){var n=o(t);if(n){var r=e.isFunction(n.getElementsByClassName)?n.getElementsByClassName(y):n.querySelectorAll("."+y);f(r,function(t){t=e.element(t);var n=t.data(g);n&&n.active&&f(n.active,function(t){t.cancel()})})}}function j(t,e){if(u(t,w))b.disabled||(b.running=!1,b.structural=!1);else if(e){var n=t.data(g)||{},r=e===!0;!r&&n.active&&n.active[e]&&(n.totalActive--,delete n.active[e]),(r||!n.totalActive)&&(c.removeClass(t,y),t.removeData(g))}}function N(t,n){if(b.disabled)return!0;if(u(t,w))return b.running;var r,i,o;do{if(0===n.length)break;var a=u(n,w),s=a?b:n.data(g)||{};if(s.disabled)return!0;if(a&&(o=!0),r!==!1){var c=n.data($);e.isDefined(c)&&(r=c)}i=i||s.running||s.last&&!s.last.isClassBased}while(n=n.parent());return!o||!r&&i}c=k,w.data(g,b);var R=x.$watch(function(){return E.totalPendingRequests},function(t,e){0===t&&(R(),x.$$postDigest(function(){x.$$postDigest(function(){b.running=!1})}))}),P=0,F=i.classNameFilter(),B=F?function(t){return F.test(t)}:function(){return!0};return{animate:function(t,e,n,r,i){return r=r||"ng-inline-animate",i=T(i)||{},i.from=n?e:null,i.to=n?n:e,S(function(e){return M("animate",r,s(t),null,null,l,i,e)})},enter:function(n,r,i,o){return o=T(o),n=e.element(n),r=a(r),i=a(i),A(n,!0),t.enter(n,r,i),S(function(t){return M("enter","ng-enter",s(n),r,i,l,o,t)})},leave:function(n,r){return r=T(r),n=e.element(n),D(n),A(n,!0),S(function(e){return M("leave","ng-leave",s(n),null,null,function(){t.leave(n)},r,e)})},move:function(n,r,i,o){return o=T(o),n=e.element(n),r=a(r),i=a(i),D(n),A(n,!0),t.move(n,r,i),S(function(t){return M("move","ng-move",s(n),r,i,l,o,t)})},addClass:function(t,e,n){return this.setClass(t,e,[],n)},removeClass:function(t,e,n){return this.setClass(t,[],e,n)},setClass:function(n,r,i,a){a=T(a);var u="$$animateClasses";if(n=e.element(n),n=s(n),A(n))return t.$$setClassImmediately(n,r,i,a);var c,l=n.data(u),h=!!l;return l||(l={},l.classes={}),c=l.classes,r=d(r)?r:r.split(" "),f(r,function(t){t&&t.length&&(c[t]=!0)}),i=d(i)?i:i.split(" "),f(i,function(t){t&&t.length&&(c[t]=!1)}),h?(a&&l.options&&(l.options=e.extend(l.options||{},a)),l.promise):(n.data(u,l={classes:c,options:a}),l.promise=S(function(e){var r,i,a,s=o(n);if(s&&(r=n.data(u),n.removeData(u),a=n.parent(),i=s.parentNode),!i||i.$$NG_REMOVED||s.$$NG_REMOVED)return void e();var c=n.data(g)||{},l=O(n,r,c.active);return l?M("setClass",l,n,a,null,function(){l[0]&&t.$$addClassImmediately(n,l[0]),l[1]&&t.$$removeClassImmediately(n,l[1])},r.options,e):e()}))},cancel:function(t){t.$$cancelFn()},enabled:function(t,e){switch(arguments.length){case 2:if(t)j(e);else{var n=e.data(g)||{};n.disabled=!0,e.data(g,n)}break;case 1:b.disabled=!t;break;default:t=!b.disabled}return!!t}}}]),i.register("",["$window","$sniffer","$timeout","$$animateReflow",function(r,i,a,s){function u(){j||(j=s(function(){Y=[],j=null,W={}}))}function h(t,e){j&&j(),Y.push(e),j=s(function(){f(Y,function(t){t()}),Y=[],j=null,W={}})}function m(t,n){var r=o(t);t=e.element(r),K.push(t);var i=Date.now()+n;G>=i||(a.cancel(Z),G=i,Z=a(function(){g(K),K=[]},n,!1))}function g(t){f(t,function(t){var e=t.data(U);e&&f(e.closeAnimationFns,function(t){t()})})}function $(t,e){var n=e?W[e]:null;if(!n){var i=0,o=0,a=0,s=0;f(t,function(t){if(t.nodeType==v){var e=r.getComputedStyle(t)||{},n=e[O+N];i=Math.max(y(n),i);var u=e[O+P];o=Math.max(y(u),o);e[z+P];s=Math.max(y(e[z+P]),s);var c=y(e[z+N]);c>0&&(c*=parseInt(e[z+F],10)||1),a=Math.max(c,a)}}),n={total:0,transitionDelay:o,transitionDuration:i,animationDelay:s,animationDuration:a},e&&(W[e]=n)}return n}function y(t){var e=0,n=p(t)?t.split(/\s*,\s*/):[];return f(n,function(t){e=Math.max(parseFloat(t)||0,e)}),e}function b(t){var e=t.parent(),n=e.data(L);return n||(e.data(L,++X),n=X),n+"-"+o(t).getAttribute("class")}function w(t,e,n,r){var i=["ng-enter","ng-leave","ng-move"].indexOf(n)>=0,a=b(e),s=a+" "+n,u=W[s]?++W[s].total:0,l={};if(u>0){var f=n+"-stagger",h=a+" "+f,d=!W[h];d&&c.addClass(e,f),l=$(e,h),d&&c.removeClass(e,f)}c.addClass(e,n);var p=e.data(U)||{},m=$(e,s),v=m.transitionDuration,g=m.animationDuration;if(i&&0===v&&0===g)return c.removeClass(e,n),!1;var y=r||i&&v>0,w=g>0&&l.animationDelay>0&&0===l.animationDuration,_=p.closeAnimationFns||[];e.data(U,{stagger:l,cacheKey:s,running:p.running||0,itemIndex:u,blockTransition:y,closeAnimationFns:_});var E=o(e);return y&&(x(E,!0),r&&e.css(r)),w&&C(E,!0),!0}function _(t,e,n,r,i){function s(){e.off(P,u),c.removeClass(e,d),c.removeClass(e,p),N&&a.cancel(N),S(e,n);var t=o(e);for(var r in g)t.style.removeProperty(g[r])}function u(t){t.stopPropagation();var e=t.originalEvent||t,n=e.$manualTimeStamp||e.timeStamp||Date.now(),i=parseFloat(e.elapsedTime.toFixed(V));Math.max(n-R,0)>=z&&i>=T&&r()}var l=o(e),h=e.data(U);if(-1==l.getAttribute("class").indexOf(n)||!h)return void r();var d="",p="";f(n.split(" "),function(t,e){var n=(e>0?" ":"")+t;d+=n+"-active",p+=n+"-pending"});var v="",g=[],y=h.itemIndex,b=h.stagger,w=0;if(y>0){var _=0;b.transitionDelay>0&&0===b.transitionDuration&&(_=b.transitionDelay*y);var E=0;b.animationDelay>0&&0===b.animationDuration&&(E=b.animationDelay*y,g.push(D+"animation-play-state")),w=Math.round(100*Math.max(_,E))/100}w||(c.addClass(e,d),h.blockTransition&&x(l,!1));var k=h.cacheKey+" "+d,A=$(e,k),T=Math.max(A.transitionDuration,A.animationDuration);if(0===T)return c.removeClass(e,d),S(e,n),void r();!w&&i&&Object.keys(i).length>0&&(A.transitionDuration||(e.css("transition",A.animationDuration+"s linear all"),g.push("transition")),e.css(i));var O=Math.max(A.transitionDelay,A.animationDelay),z=O*H;if(g.length>0){var j=l.getAttribute("style")||"";";"!==j.charAt(j.length-1)&&(j+=";"),l.setAttribute("style",j+" "+v)}var N,R=Date.now(),P=M+" "+I,F=(O+T)*q,B=(w+F)*H;return w>0&&(c.addClass(e,p),N=a(function(){N=null,A.transitionDuration>0&&x(l,!1),A.animationDuration>0&&C(l,!1),c.addClass(e,d),c.removeClass(e,p),i&&(0===A.transitionDuration&&e.css("transition",A.animationDuration+"s linear all"),e.css(i),g.push("transition"))},w*H,!1)),e.on(P,u),h.closeAnimationFns.push(function(){s(),r()}),h.running++,m(e,B),s}function x(t,e){t.style[O+R]=e?"none":""}function C(t,e){t.style[z+B]=e?"paused":""}function E(t,e,n,r){return w(t,e,n,r)?function(t){t&&S(e,n)}:void 0}function k(t,e,n,r,i){return e.data(U)?_(t,e,n,r,i):(S(e,n),void r())}function A(t,e,n,r,i){var o=E(t,e,n,i.from);if(!o)return u(),void r();var a=o;return h(e,function(){a=k(t,e,n,r,i.to)}),function(t){(a||l)(t)}}function S(t,e){c.removeClass(t,e);var n=t.data(U);n&&(n.running&&n.running--,n.running&&0!==n.running||t.removeData(U))}function T(t,e){var n="";return t=d(t)?t:t.split(/\s+/),f(t,function(t,r){t&&t.length>0&&(n+=(r>0?" ":"")+t+e)}),n}var O,I,z,M,D="";t.ontransitionend===n&&t.onwebkittransitionend!==n?(D="-webkit-",O="WebkitTransition",I="webkitTransitionEnd transitionend"):(O="transition",I="transitionend"),t.onanimationend===n&&t.onwebkitanimationend!==n?(D="-webkit-",z="WebkitAnimation",M="webkitAnimationEnd animationend"):(z="animation",M="animationend");var j,N="Duration",R="Property",P="Delay",F="IterationCount",B="PlayState",L="$$ngAnimateKey",U="$$ngAnimateCSS3Data",V=3,q=1.5,H=1e3,W={},X=0,Y=[],Z=null,G=0,K=[];return{animate:function(t,e,n,r,i,o){return o=o||{},o.from=n,o.to=r,A("animate",t,e,i,o)},enter:function(t,e,n){return n=n||{},A("enter",t,"ng-enter",e,n)},leave:function(t,e,n){return n=n||{},A("leave",t,"ng-leave",e,n)},move:function(t,e,n){return n=n||{},A("move",t,"ng-move",e,n)},beforeSetClass:function(t,e,n,r,i){i=i||{};var o=T(n,"-remove")+" "+T(e,"-add"),a=E("setClass",t,o,i.from);return a?(h(t,r),a):(u(),void r())},beforeAddClass:function(t,e,n,r){r=r||{};var i=E("addClass",t,T(e,"-add"),r.from);return i?(h(t,n),i):(u(),void n())},beforeRemoveClass:function(t,e,n,r){r=r||{};var i=E("removeClass",t,T(e,"-remove"),r.from);return i?(h(t,n),i):(u(),void n())},setClass:function(t,e,n,r,i){i=i||{},n=T(n,"-remove"),e=T(e,"-add");var o=n+" "+e;return k("setClass",t,o,r,i.to)},addClass:function(t,e,n,r){return r=r||{},k("addClass",t,T(e,"-add"),n,r.to)},removeClass:function(t,e,n,r){return r=r||{},k("removeClass",t,T(e,"-remove"),n,r.to)}}}])}])}(window,window.angular),function(t,e,n){"use strict";e.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(t,r){function i(){var t,i,o,u;for(t in s)l(a[t])&&(r.cookies(t,n),delete s[t]);for(t in a)i=a[t],e.isString(i)||(i=""+i,a[t]=i),i!==s[t]&&(r.cookies(t,i),s[t]=i,u=!0);if(u){o=r.cookies();for(t in a)a[t]!==o[t]&&(l(o[t])?(delete a[t],delete s[t]):a[t]=s[t]=o[t])}}var o,a={},s={},u=!1,c=e.copy,l=e.isUndefined;return r.addPollFn(function(){var e=r.cookies();o!=e&&(o=e,c(e,s),c(e,a),u&&t.$apply())})(),u=!0,t.$watch(i),a}]).factory("$cookieStore",["$cookies",function(t){return{get:function(n){var r=t[n];return r?e.fromJson(r):r},put:function(n,r){t[n]=e.toJson(r)},remove:function(e){delete t[e]}}}])}(window,window.angular),angular.module("ui-notification",[]),angular.module("ui-notification").provider("Notification",function(){this.options={delay:5e3,startTop:10,startRight:10,verticalSpacing:10,horizontalSpacing:10,positionX:"right",positionY:"top",replaceMessage:!1,templateUrl:"angular-ui-notification.html"},this.setOptions=function(t){if(!angular.isObject(t))throw new Error("Options should be an object!");this.options=angular.extend({},this.options,t)},this.$get=["$timeout","$http","$compile","$templateCache","$rootScope","$injector","$sce","$q","$window",function(t,e,n,r,i,o,a,s,u){var c=this.options,l=c.startTop,f=c.startRight,h=c.verticalSpacing,d=c.horizontalSpacing,p=c.delay,m=[],v=!1,g=function(o,g){var $=s.defer();return"object"!=typeof o&&(o={message:o}),o.scope=o.scope?o.scope:i,o.template=o.templateUrl?o.templateUrl:c.templateUrl,o.delay=angular.isUndefined(o.delay)?p:o.delay,o.type=g?g:"",o.positionY=o.positionY?o.positionY:c.positionY,o.positionX=o.positionX?o.positionX:c.positionX,o.replaceMessage=o.replaceMessage?o.replaceMessage:c.replaceMessage,e.get(o.template,{cache:r}).success(function(e){var r=o.scope.$new();r.message=a.trustAsHtml(o.message),r.title=a.trustAsHtml(o.title),r.t=o.type.substr(0,1),r.delay=o.delay;var i=function(){for(var t=0,e=0,n=l,r=f,i=[],a=m.length-1;a>=0;a--){var s=m[a];if(o.replaceMessage&&awindow.innerHeight&&(p=l,e++,t=0);var v=n=p?0===t?p:p+h:l,g=r+e*(d+c);s.css(s._positionY,v+"px"),"center"==s._positionX?s.css("left",parseInt(window.innerWidth/2-c/2)+"px"):s.css(s._positionX,g+"px"),i[s._positionY+s._positionX]=v+u,t++}}},s=n(e)(r);s._positionY=o.positionY,s._positionX=o.positionX,s.addClass(o.type),s.bind("webkitTransitionEnd oTransitionEnd otransitionend transitionend msTransitionEnd click",function(t){t=t.originalEvent||t,("click"===t.type||"opacity"===t.propertyName&&t.elapsedTime>=1)&&(s.remove(),m.splice(m.indexOf(s),1),i())}),angular.isNumber(o.delay)&&t(function(){s.addClass("killed")},o.delay),angular.element(document.getElementsByTagName("body")).append(s);var c=-(parseInt(s[0].offsetHeight)+50);s.css(s._positionY,c+"px"),m.push(s),r._templateElement=s,r.kill=function(e){e?(m.splice(m.indexOf(r._templateElement),1),r._templateElement.remove(),t(i)):r._templateElement.addClass("killed")},t(i),v||(angular.element(u).bind("resize",function(){t(i)}),v=!0),$.resolve(r)}).error(function(t){throw new Error("Template ("+o.template+") could not be loaded. "+t)}),$.promise};return g.primary=function(t){return this(t,"primary")},g.error=function(t){return this(t,"error")},g.success=function(t){return this(t,"success")},g.info=function(t){return this(t,"info")},g.warning=function(t){return this(t,"warning")},g.clearAll=function(){angular.forEach(m,function(t){t.addClass("killed")})},g}]}),angular.module("ui-notification").run(["$templateCache",function(t){t.put("angular-ui-notification.html",'

')}]),"undefined"!=typeof module&&"undefined"!=typeof exports&&module.exports===exports&&(module.exports="ui.router"),function(t,e,n){"use strict";function r(t,e){return F(new(F(function(){},{prototype:t})),e)}function i(t){return P(arguments,function(e){e!==t&&P(e,function(e,n){t.hasOwnProperty(n)||(t[n]=e)})}),t}function o(t,e){var n=[];for(var r in t.path){if(t.path[r]!==e.path[r])break;n.push(t.path[r])}return n}function a(t){if(Object.keys)return Object.keys(t);var e=[];return P(t,function(t,n){e.push(n)}),e}function s(t,e){if(Array.prototype.indexOf)return t.indexOf(e,Number(arguments[2])||0);var n=t.length>>>0,r=Number(arguments[2])||0;for(r=0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n);n>r;r++)if(r in t&&t[r]===e)return r;return-1}function u(t,e,n,r){var i,u=o(n,r),c={},l=[];for(var f in u)if(u[f].params&&(i=a(u[f].params),i.length))for(var h in i)s(l,i[h])>=0||(l.push(i[h]),c[i[h]]=t[i[h]]);return F({},c,e)}function c(t,e,n){if(!n){n=[];for(var r in t)n.push(r)}for(var i=0;i "));if($[n]=r,j(t))v.push(n,[function(){return e.get(t)}],c);else{var i=e.annotate(t);P(i,function(t){t!==n&&u.hasOwnProperty(t)&&d(u[t],t)}),v.push(n,t,i)}g.pop(),$[n]=o}}function p(t){return N(t)&&t.then&&t.$$promises}if(!N(u))throw new Error("'invocables' must be an object");var m=a(u||{}),v=[],g=[],$={};return P(u,d),u=g=$=null,function(r,o,a){function s(){--b||(w||i(y,o.$$values),g.$$values=y,g.$$promises=g.$$promises||!0,delete g.$$inheritedValues,d.resolve(y))}function u(t){g.$$failure=t,d.reject(t)}function c(n,i,o){function c(t){f.reject(t),u(t)}function l(){if(!M(g.$$failure))try{f.resolve(e.invoke(i,a,y)),f.promise.then(function(t){y[n]=t,s()},c)}catch(t){c(t)}}var f=t.defer(),h=0;P(o,function(t){$.hasOwnProperty(t)&&!r.hasOwnProperty(t)&&(h++,$[t].then(function(e){y[t]=e,--h||l()},c))}),h||l(),$[n]=f.promise}if(p(r)&&a===n&&(a=o,o=r,r=null),r){if(!N(r))throw new Error("'locals' must be an object")}else r=l;if(o){if(!p(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()")}else o=f;var d=t.defer(),g=d.promise,$=g.$$promises={},y=F({},r),b=1+v.length/3,w=!1;if(M(o.$$failure))return u(o.$$failure),g;o.$$inheritedValues&&i(y,h(o.$$inheritedValues,m)),F($,o.$$promises),o.$$values?(w=i(y,h(o.$$values,m)),g.$$inheritedValues=h(o.$$values,m),s()):(o.$$inheritedValues&&(g.$$inheritedValues=h(o.$$inheritedValues,m)),o.then(s,u));for(var _=0,x=v.length;x>_;_+=3)r.hasOwnProperty(v[_])?s():c(v[_],v[_+1],v[_+2]);return g}},this.resolve=function(t,e,n,r){return this.study(t)(e,n,r)}}function v(t,e,n){this.fromConfig=function(t,e,n){return M(t.template)?this.fromString(t.template,e):M(t.templateUrl)?this.fromUrl(t.templateUrl,e):M(t.templateProvider)?this.fromProvider(t.templateProvider,e,n):null},this.fromString=function(t,e){return D(t)?t(e):t},this.fromUrl=function(n,r){return D(n)&&(n=n(r)),null==n?null:t.get(n,{cache:e,headers:{Accept:"text/html"}}).then(function(t){return t.data})},this.fromProvider=function(t,e,r){return n.invoke(t,null,r||{params:e})}}function g(t,e,i){function o(e,n,r,i){if(v.push(e),p[e])return p[e];if(!/^\w+(-+\w+)*(?:\[\])?$/.test(e))throw new Error("Invalid parameter name '"+e+"' in pattern '"+t+"'");if(m[e])throw new Error("Duplicate parameter name '"+e+"' in pattern '"+t+"'");return m[e]=new L.Param(e,n,r,i),m[e]}function a(t,e,n,r){var i=["",""],o=t.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!e)return o;switch(n){case!1:i=["(",")"+(r?"?":"")];break;case!0:i=["?(",")?"];break;default:i=["("+n+"|",")?"]}return o+i[0]+e+i[1]}function s(i,o){var a,s,u,c,l;return a=i[2]||i[3],l=e.params[a],u=t.substring(h,i.index),s=o?i[4]:i[4]||("*"==i[1]?".*":null),c=L.type(s||"string")||r(L.type("string"),{pattern:new RegExp(s,e.caseInsensitive?"i":n)}),{id:a,regexp:s,segment:u,type:c,cfg:l}}e=F({params:{}},N(e)?e:{});var u,c=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,l=/([:]?)([\w\[\]-]+)|\{([\w\[\]-]+)(?:\:((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,f="^",h=0,d=this.segments=[],p=i?i.params:{},m=this.params=i?i.params.$$new():new L.ParamSet,v=[];this.source=t;for(var g,$,y;(u=c.exec(t))&&(g=s(u,!1),!(g.segment.indexOf("?")>=0));)$=o(g.id,g.type,g.cfg,"path"),f+=a(g.segment,$.type.pattern.source,$.squash,$.isOptional),d.push(g.segment),h=c.lastIndex;y=t.substring(h);var b=y.indexOf("?");if(b>=0){var w=this.sourceSearch=y.substring(b);if(y=y.substring(0,b),this.sourcePath=t.substring(0,h+b),w.length>0)for(h=0;u=l.exec(w);)g=s(u,!0),$=o(g.id,g.type,g.cfg,"search"),h=c.lastIndex}else this.sourcePath=t,this.sourceSearch="";f+=a(y)+(e.strict===!1?"/?":"")+"$",d.push(y),this.regexp=new RegExp(f,e.caseInsensitive?"i":n),this.prefix=d[0],this.$$paramNames=v}function $(t){F(this,t)}function y(){function t(t){return null!=t?t.toString().replace(/\//g,"%2F"):t}function i(t){return null!=t?t.toString().replace(/%2F/g,"/"):t}function o(){return{strict:m,caseInsensitive:h}}function u(t){return D(t)||R(t)&&D(t[t.length-1])}function c(){for(;_.length;){var t=_.shift();if(t.pattern)throw new Error("You cannot override a type's .pattern at runtime.");e.extend(b[t.name],f.invoke(t.def))}}function l(t){F(this,t||{})}L=this;var f,h=!1,m=!0,v=!1,b={},w=!0,_=[],x={string:{encode:t,decode:i,is:function(t){return null==t||!M(t)||"string"==typeof t},pattern:/[^\/]*/},"int":{encode:t,decode:function(t){return parseInt(t,10)},is:function(t){return M(t)&&this.decode(t.toString())===t},pattern:/\d+/},bool:{encode:function(t){return t?1:0},decode:function(t){return 0!==parseInt(t,10)},is:function(t){return t===!0||t===!1},pattern:/0|1/},date:{encode:function(t){return this.is(t)?[t.getFullYear(),("0"+(t.getMonth()+1)).slice(-2),("0"+t.getDate()).slice(-2)].join("-"):n},decode:function(t){if(this.is(t))return t;var e=this.capture.exec(t);return e?new Date(e[1],e[2]-1,e[3]):n},is:function(t){return t instanceof Date&&!isNaN(t.valueOf())},equals:function(t,e){return this.is(t)&&this.is(e)&&t.toISOString()===e.toISOString()},pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/},json:{encode:e.toJson,decode:e.fromJson,is:e.isObject,equals:e.equals,pattern:/[^\/]*/},any:{encode:e.identity,decode:e.identity,equals:e.equals,pattern:/.*/}};y.$$getDefaultValue=function(t){if(!u(t.value))return t.value;if(!f)throw new Error("Injectable functions cannot be called at configuration time");return f.invoke(t.value)},this.caseInsensitive=function(t){return M(t)&&(h=t),h},this.strictMode=function(t){return M(t)&&(m=t),m},this.defaultSquashPolicy=function(t){if(!M(t))return v;if(t!==!0&&t!==!1&&!j(t))throw new Error("Invalid squash policy: "+t+". Valid policies: false, true, arbitrary-string");return v=t,t},this.compile=function(t,e){return new g(t,F(o(),e))},this.isMatcher=function(t){if(!N(t))return!1;var e=!0;return P(g.prototype,function(n,r){D(n)&&(e=e&&M(t[r])&&D(t[r]))}),e},this.type=function(t,e,n){if(!M(e))return b[t];if(b.hasOwnProperty(t))throw new Error("A type named '"+t+"' has already been defined.");return b[t]=new $(F({name:t},e)),n&&(_.push({name:t,def:n}),w||c()),this},P(x,function(t,e){b[e]=new $(F({name:e},t))}),b=r(b,{}),this.$get=["$injector",function(t){return f=t,w=!1,c(),P(x,function(t,e){b[e]||(b[e]=new $(t))}),this}],this.Param=function(t,e,r,i){function o(t){var e=N(t)?a(t):[],n=-1===s(e,"value")&&-1===s(e,"type")&&-1===s(e,"squash")&&-1===s(e,"array");return n&&(t={value:t}),t.$$fn=u(t.value)?t.value:function(){return t.value},t}function c(e,n,r){if(e.type&&n)throw new Error("Param '"+t+"' has two type configurations.");return n?n:e.type?e.type instanceof $?e.type:new $(e.type):"config"===r?b.any:b.string}function l(){var e={array:"search"===i?"auto":!1},n=t.match(/\[\]$/)?{array:!0}:{};return F(e,n,r).array}function h(t,e){var n=t.squash;if(!e||n===!1)return!1;if(!M(n)||null==n)return v;if(n===!0||j(n))return n;throw new Error("Invalid squash policy: '"+n+"'. Valid policies: false, true, or arbitrary string")}function m(t,e,r,i){var o,a,u=[{from:"",to:r||e?n:""},{from:null,to:r||e?n:""}];return o=R(t.replace)?t.replace:[],j(i)&&o.push({from:i,to:n}),a=p(o,function(t){return t.from}),d(u,function(t){return-1===s(a,t.from)}).concat(o)}function g(){if(!f)throw new Error("Injectable functions cannot be called at configuration time");var t=f.invoke(r.$$fn);if(null!==t&&t!==n&&!_.type.is(t))throw new Error("Default value ("+t+") for parameter '"+_.id+"' is not an instance of Type ("+_.type.name+")");return t}function y(t){function e(t){return function(e){return e.from===t}}function n(t){var n=p(d(_.replace,e(t)),function(t){return t.to});return n.length?n[0]:t}return t=n(t),M(t)?_.type.$normalize(t):g()}function w(){return"{Param:"+t+" "+e+" squash: '"+E+"' optional: "+C+"}"}var _=this;r=o(r),e=c(r,e,i);var x=l();e=x?e.$asArray(x,"search"===i):e,"string"!==e.name||x||"path"!==i||r.value!==n||(r.value="");var C=r.value!==n,E=h(r,C),k=m(r,x,C,E); +F(this,{id:t,type:e,location:i,array:x,squash:E,replace:k,isOptional:C,value:y,dynamic:n,config:r,toString:w})},l.prototype={$$new:function(){return r(this,F(new l,{$$parent:this}))},$$keys:function(){for(var t=[],e=[],n=this,r=a(l.prototype);n;)e.push(n),n=n.$$parent;return e.reverse(),P(e,function(e){P(a(e),function(e){-1===s(t,e)&&-1===s(r,e)&&t.push(e)})}),t},$$values:function(t){var e={},n=this;return P(n.$$keys(),function(r){e[r]=n[r].value(t&&t[r])}),e},$$equals:function(t,e){var n=!0,r=this;return P(r.$$keys(),function(i){var o=t&&t[i],a=e&&e[i];r[i].type.equals(o,a)||(n=!1)}),n},$$validates:function(t){var r,i,o,a,s,u=this.$$keys();for(r=0;ri;i++)if(e(c[i]))return;l&&e(l)}}function d(){return u=u||i.$on("$locationChangeSuccess",h)}var p,m=a.baseHref(),v=r.url();return f||d(),{sync:function(){h()},listen:function(){return d()},update:function(t){return t?void(v=r.url()):void(r.url()!==v&&(r.url(v),r.replace()))},push:function(t,e,i){var o=t.format(e||{});null!==o&&e&&e["#"]&&(o+="#"+e["#"]),r.url(o),p=i&&i.$$avoidResync?r.url():n,i&&i.replace&&r.replace()},href:function(n,i,o){if(!n.validates(i))return null;var a=t.html5Mode();e.isObject(a)&&(a=a.enabled);var u=n.format(i);if(o=o||{},a||null===u||(u="#"+t.hashPrefix()+u),null!==u&&i&&i["#"]&&(u+="#"+i["#"]),u=s(u,a,o.absolute),!o.absolute||!u)return u;var c=!a&&u?"/":"",l=r.port();return l=80===l||443===l?"":":"+l,[r.protocol(),"://",r.host(),l,c,u].join("")}}}var u,c=[],l=null,f=!1;this.rule=function(t){if(!D(t))throw new Error("'rule' must be a function");return c.push(t),this},this.otherwise=function(t){if(j(t)){var e=t;t=function(){return e}}else if(!D(t))throw new Error("'rule' must be a function");return l=t,this},this.when=function(t,e){var n,s=j(e);if(j(t)&&(t=r.compile(t)),!s&&!D(e)&&!R(e))throw new Error("invalid 'handler' in when()");var u={matcher:function(t,e){return s&&(n=r.compile(e),e=["$match",function(t){return n.format(t)}]),F(function(n,r){return a(n,e,t.exec(r.path(),r.search()))},{prefix:j(t.prefix)?t.prefix:""})},regex:function(t,e){if(t.global||t.sticky)throw new Error("when() RegExp must not be global or sticky");return s&&(n=e,e=["$match",function(t){return o(n,t)}]),F(function(n,r){return a(n,e,t.exec(r.path()))},{prefix:i(t)})}},c={matcher:r.isMatcher(t),regex:t instanceof RegExp};for(var l in c)if(c[l])return this.rule(u[l](t,e));throw new Error("invalid 'what' in when()")},this.deferIntercept=function(t){t===n&&(t=!0),f=t},this.$get=s,s.$inject=["$location","$rootScope","$injector","$browser"]}function w(t,i){function o(t){return 0===t.indexOf(".")||0===t.indexOf("^")}function h(t,e){if(!t)return n;var r=j(t),i=r?t:t.name,a=o(i);if(a){if(!e)throw new Error("No reference point given for path '"+i+"'");e=h(e);for(var s=i.split("."),u=0,c=s.length,l=e;c>u;u++)if(""!==s[u]||0!==u){if("^"!==s[u])break;if(!l.parent)throw new Error("Path '"+i+"' not valid for state '"+e.name+"'");l=l.parent}else l=e;s=s.slice(u).join("."),i=l.name+(l.name&&s?".":"")+s}var f=E[i];return!f||!r&&(r||f!==t&&f.self!==t)?n:f}function d(t,e){k[t]||(k[t]=[]),k[t].push(e)}function m(t){for(var e=k[t]||[];e.length;)v(e.shift())}function v(e){e=r(e,{self:e,resolve:e.resolve||{},toString:function(){return this.name}});var n=e.name;if(!j(n)||n.indexOf("@")>=0)throw new Error("State must have a valid name");if(E.hasOwnProperty(n))throw new Error("State '"+n+"'' is already defined");var i=-1!==n.indexOf(".")?n.substring(0,n.lastIndexOf(".")):j(e.parent)?e.parent:N(e.parent)&&j(e.parent.name)?e.parent.name:"";if(i&&!E[i])return d(i,e.self);for(var o in S)D(S[o])&&(e[o]=S[o](e,S.$delegates[o]));return E[n]=e,!e[A]&&e.url&&t.when(e.url,["$match","$stateParams",function(t,n){C.$current.navigable==e&&c(t,n)||C.transitionTo(e,t,{inherit:!0,location:!1})}]),m(n),e}function g(t){return t.indexOf("*")>-1}function $(t){for(var e=t.split("."),n=C.$current.name.split("."),r=0,i=e.length;i>r;r++)"*"===e[r]&&(n[r]="*");return"**"===e[0]&&(n=n.slice(s(n,e[1])),n.unshift("**")),"**"===e[e.length-1]&&(n.splice(s(n,e[e.length-2])+1,Number.MAX_VALUE),n.push("**")),e.length!=n.length?!1:n.join("")===e.join("")}function y(t,e){return j(t)&&!M(e)?S[t]:D(e)&&j(t)?(S[t]&&!S.$delegates[t]&&(S.$delegates[t]=S[t]),S[t]=e,this):this}function b(t,e){return N(t)?e=t:e.name=t,v(e),this}function w(t,i,o,s,f,d,m,v,y){function b(e,n,r,o){var a=t.$broadcast("$stateNotFound",e,n,r);if(a.defaultPrevented)return m.update(),T;if(!a.retry)return null;if(o.$retry)return m.update(),O;var s=C.transition=i.when(a.retry);return s.then(function(){return s!==C.transition?k:(e.options.$retry=!0,C.transitionTo(e.to,e.toParams,e.options))},function(){return T}),m.update(),s}function w(t,n,r,a,u,c){function h(){var n=[];return P(t.views,function(r,i){var a=r.resolve&&r.resolve!==t.resolve?r.resolve:{};a.$template=[function(){return o.load(i,{view:r,locals:u.globals,params:d,notify:c.notify})||""}],n.push(f.resolve(a,u.globals,u.resolve,t).then(function(n){if(D(r.controllerProvider)||R(r.controllerProvider)){var o=e.extend({},a,u.globals);n.$$controller=s.invoke(r.controllerProvider,null,o)}else n.$$controller=r.controller;n.$$state=t,n.$$controllerAs=r.controllerAs,u[i]=n}))}),i.all(n).then(function(){return u.globals})}var d=r?n:l(t.params.$$keys(),n),p={$stateParams:d};u.resolve=f.resolve(t.resolve,p,u.resolve,t);var m=[u.resolve.then(function(t){u.globals=t})];return a&&m.push(a),i.all(m).then(h).then(function(t){return u})}var k=i.reject(new Error("transition superseded")),S=i.reject(new Error("transition prevented")),T=i.reject(new Error("transition aborted")),O=i.reject(new Error("transition failed"));return x.locals={resolve:null,globals:{$stateParams:{}}},C={params:{},current:x.self,$current:x,transition:null},C.reload=function(t){return C.transitionTo(C.current,d,{reload:t||!0,inherit:!1,notify:!0})},C.go=function(t,e,n){return C.transitionTo(t,e,F({inherit:!0,relative:C.$current},n))},C.transitionTo=function(e,n,o){n=n||{},o=F({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},o||{});var a,c=C.$current,f=C.params,p=c.path,v=h(e,o.relative),g=n["#"];if(!M(v)){var $={to:e,toParams:n,options:o},y=b($,c.self,f,o);if(y)return y;if(e=$.to,n=$.toParams,o=$.options,v=h(e,o.relative),!M(v)){if(!o.relative)throw new Error("No such state '"+e+"'");throw new Error("Could not resolve '"+e+"' from state '"+o.relative+"'")}}if(v[A])throw new Error("Cannot transition to abstract state '"+e+"'");if(o.inherit&&(n=u(d,n||{},C.$current,v)),!v.params.$$validates(n))return O;n=v.params.$$values(n),e=v;var E=e.path,T=0,I=E[T],z=x.locals,D=[];if(o.reload){if(j(o.reload)||N(o.reload)){if(N(o.reload)&&!o.reload.name)throw new Error("Invalid reload state object");var R=o.reload===!0?p[0]:h(o.reload);if(o.reload&&!R)throw new Error("No such reload state '"+(j(o.reload)?o.reload:o.reload.name)+"'");for(;I&&I===p[T]&&I!==R;)z=D[T]=I.locals,T++,I=E[T]}}else for(;I&&I===p[T]&&I.ownParams.$$equals(n,f);)z=D[T]=I.locals,T++,I=E[T];if(_(e,n,c,f,z,o))return g&&(n["#"]=g),C.params=n,B(C.params,d),o.location&&e.navigable&&e.navigable.url&&(m.push(e.navigable.url,n,{$$avoidResync:!0,replace:"replace"===o.location}),m.update(!0)),C.transition=null,i.when(C.current);if(n=l(e.params.$$keys(),n||{}),o.notify&&t.$broadcast("$stateChangeStart",e.self,n,c.self,f).defaultPrevented)return t.$broadcast("$stateChangeCancel",e.self,n,c.self,f),m.update(),S;for(var P=i.when(z),L=T;L=T;r--)a=p[r],a.self.onExit&&s.invoke(a.self.onExit,a.self,a.locals.globals),a.locals=null;for(r=T;r=0?i:i+"@"+(o?o.state.name:"")}function A(t,e){var n,r=t.match(/^\s*({[^}]*})\s*$/);if(r&&(t=e+"("+r[1]+")"),n=t.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/),!n||4!==n.length)throw new Error("Invalid state ref '"+t+"'");return{state:n[1],paramExpr:n[3]||null}}function S(t){var e=t.parent().inheritedData("$uiView");return e&&e.state&&e.state.name?e.state:void 0}function T(t,n){var r=["location","inherit","reload","absolute"];return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(i,o,a,s){var u=A(a.uiSref,t.current.name),c=null,l=S(o)||t.$current,f="[object SVGAnimatedString]"===Object.prototype.toString.call(o.prop("href"))?"xlink:href":"href",h=null,d="A"===o.prop("tagName").toUpperCase(),p="FORM"===o[0].nodeName,m=p?"action":f,v=!0,g={relative:l,inherit:!0},$=i.$eval(a.uiSrefOpts)||{};e.forEach(r,function(t){t in $&&(g[t]=$[t])});var y=function(n){if(n&&(c=e.copy(n)),v){h=t.href(u.state,c,g);var r=s[1]||s[0];return r&&r.$$addStateInfo(u.state,c),null===h?(v=!1,!1):void a.$set(m,h)}};u.paramExpr&&(i.$watch(u.paramExpr,function(t,e){t!==c&&y(t)},!0),c=e.copy(i.$eval(u.paramExpr))),y(),p||o.bind("click",function(e){var r=e.which||e.button;if(!(r>1||e.ctrlKey||e.metaKey||e.shiftKey||o.attr("target"))){var i=n(function(){t.go(u.state,c,g)});e.preventDefault();var a=d&&!h?1:0;e.preventDefault=function(){a--<=0&&n.cancel(i)}}})}}}function O(t,e,n){return{restrict:"A",controller:["$scope","$element","$attrs",function(e,r,i){function o(){a()?r.addClass(u):r.removeClass(u)}function a(){for(var t=0;ti;i++){a=s[i];var f=this.params[a],h=r[i+1];for(o=0;oi;i++)a=s[i],l[a]=this.params[a].value(e[a]);return l},g.prototype.parameters=function(t){return M(t)?this.params[t]||null:this.$$paramNames},g.prototype.validates=function(t){return this.params.$$validates(t)},g.prototype.format=function(t){function e(t){return encodeURIComponent(t).replace(/-/g,function(t){return"%5C%"+t.charCodeAt(0).toString(16).toUpperCase()})}t=t||{};var n=this.segments,r=this.parameters(),i=this.params;if(!this.validates(t))return null;var o,a=!1,s=n.length-1,u=r.length,c=n[0];for(o=0;u>o;o++){var l=s>o,f=r[o],h=i[f],d=h.value(t[f]),m=h.isOptional&&h.type.equals(h.value(),d),v=m?h.squash:!1,g=h.type.encode(d);if(l){var $=n[o+1];if(v===!1)null!=g&&(c+=R(g)?p(g,e).join("-"):encodeURIComponent(g)),c+=$;else if(v===!0){var y=c.match(/\/$/)?/\/?(.*)/:/(.*)/;c+=$.match(y)[1]}else j(v)&&(c+=v+$)}else{if(null==g||m&&v!==!1)continue;R(g)||(g=[g]),g=p(g,encodeURIComponent).join("&"+f+"="),c+=(a?"&":"?")+(f+"="+g),a=!0}}return c},$.prototype.is=function(t,e){return!0},$.prototype.encode=function(t,e){return t},$.prototype.decode=function(t,e){return t},$.prototype.equals=function(t,e){return t==e},$.prototype.$subPattern=function(){var t=this.pattern.toString();return t.substr(1,t.length-2)},$.prototype.pattern=/.*/,$.prototype.toString=function(){return"{Type:"+this.name+"}"},$.prototype.$normalize=function(t){return this.is(t)?t:this.decode(t)},$.prototype.$asArray=function(t,e){function r(t,e){function r(t,e){return function(){return t[e].apply(t,arguments)}}function i(t){return R(t)?t:M(t)?[t]:[]}function o(t){switch(t.length){case 0:return n;case 1:return"auto"===e?t[0]:t;default:return t}}function a(t){return!t}function s(t,e){return function(n){n=i(n);var r=p(n,t);return e===!0?0===d(r,a).length:o(r)}}function u(t){return function(e,n){var r=i(e),o=i(n);if(r.length!==o.length)return!1;for(var a=0;au;u++)s[a[u]]=i(s[a[u]],s);n&&(e.addEventListener("mouseover",this.onMouse,!0),e.addEventListener("mousedown",this.onMouse,!0),e.addEventListener("mouseup",this.onMouse,!0)),e.addEventListener("click",this.onClick,!0),e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1),e.addEventListener("touchcancel",this.onTouchCancel,!1),Event.prototype.stopImmediatePropagation||(e.removeEventListener=function(t,n,r){var i=Node.prototype.removeEventListener;"click"===t?i.call(e,t,n.hijacked||n,r):i.call(e,t,n,r)},e.addEventListener=function(t,n,r){var i=Node.prototype.addEventListener;"click"===t?i.call(e,t,n.hijacked||(n.hijacked=function(t){t.propagationStopped||n(t)}),r):i.call(e,t,n,r)}),"function"==typeof e.onclick&&(o=e.onclick,e.addEventListener("click",function(t){o(t)},!1),e.onclick=null)}}var e=navigator.userAgent.indexOf("Windows Phone")>=0,n=navigator.userAgent.indexOf("Android")>0&&!e,r=/iP(ad|hone|od)/.test(navigator.userAgent)&&!e,i=r&&/OS 4_\d(_\d)?/.test(navigator.userAgent),o=r&&/OS [6-7]_\d/.test(navigator.userAgent),a=navigator.userAgent.indexOf("BB10")>0;t.prototype.needsClick=function(t){switch(t.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(t.disabled)return!0;break;case"input":if(r&&"file"===t.type||t.disabled)return!0;break;case"label":case"iframe":case"video":return!0}return/\bneedsclick\b/.test(t.className)},t.prototype.needsFocus=function(t){switch(t.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!n;case"input":switch(t.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!t.disabled&&!t.readOnly;default:return/\bneedsfocus\b/.test(t.className)}},t.prototype.sendClick=function(t,e){var n,r;document.activeElement&&document.activeElement!==t&&document.activeElement.blur(),r=e.changedTouches[0],n=document.createEvent("MouseEvents"),n.initMouseEvent(this.determineEventType(t),!0,!0,window,1,r.screenX,r.screenY,r.clientX,r.clientY,!1,!1,!1,!1,0,null),n.forwardedTouchEvent=!0,t.dispatchEvent(n)},t.prototype.determineEventType=function(t){return n&&"select"===t.tagName.toLowerCase()?"mousedown":"click"},t.prototype.focus=function(t){var e;r&&t.setSelectionRange&&0!==t.type.indexOf("date")&&"time"!==t.type&&"month"!==t.type?(e=t.value.length,t.setSelectionRange(e,e)):t.focus()},t.prototype.updateScrollParent=function(t){var e,n;if(e=t.fastClickScrollParent,!e||!e.contains(t)){n=t;do{if(n.scrollHeight>n.offsetHeight){e=n,t.fastClickScrollParent=n;break}n=n.parentElement}while(n)}e&&(e.fastClickLastScrollTop=e.scrollTop)},t.prototype.getTargetElementFromEventTarget=function(t){return t.nodeType===Node.TEXT_NODE?t.parentNode:t},t.prototype.onTouchStart=function(t){var e,n,o;if(t.targetTouches.length>1)return!0;if(e=this.getTargetElementFromEventTarget(t.target),n=t.targetTouches[0],r){if(o=window.getSelection(),o.rangeCount&&!o.isCollapsed)return!0;if(!i){if(n.identifier&&n.identifier===this.lastTouchIdentifier)return t.preventDefault(),!1;this.lastTouchIdentifier=n.identifier,this.updateScrollParent(e)}}return this.trackingClick=!0,this.trackingClickStart=t.timeStamp,this.targetElement=e,this.touchStartX=n.pageX,this.touchStartY=n.pageY,t.timeStamp-this.lastClickTimen||Math.abs(e.pageY-this.touchStartY)>n?!0:!1},t.prototype.onTouchMove=function(t){return this.trackingClick?((this.targetElement!==this.getTargetElementFromEventTarget(t.target)||this.touchHasMoved(t))&&(this.trackingClick=!1,this.targetElement=null),!0):!0},t.prototype.findControl=function(t){return void 0!==t.control?t.control:t.htmlFor?document.getElementById(t.htmlFor):t.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},t.prototype.onTouchEnd=function(t){var e,a,s,u,c,l=this.targetElement;if(!this.trackingClick)return!0;if(t.timeStamp-this.lastClickTimethis.tapTimeout)return!0;if(this.cancelNextClick=!1,this.lastClickTime=t.timeStamp,a=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,o&&(c=t.changedTouches[0],l=document.elementFromPoint(c.pageX-window.pageXOffset,c.pageY-window.pageYOffset)||l,l.fastClickScrollParent=this.targetElement.fastClickScrollParent),s=l.tagName.toLowerCase(),"label"===s){if(e=this.findControl(l)){if(this.focus(l),n)return!1;l=e}}else if(this.needsFocus(l))return t.timeStamp-a>100||r&&window.top!==window&&"input"===s?(this.targetElement=null,!1):(this.focus(l),this.sendClick(l,t),r&&"select"===s||(this.targetElement=null,t.preventDefault()),!1);return r&&!i&&(u=l.fastClickScrollParent,u&&u.fastClickLastScrollTop!==u.scrollTop)?!0:(this.needsClick(l)||(t.preventDefault(),this.sendClick(l,t)),!1)},t.prototype.onTouchCancel=function(){this.trackingClick=!1,this.targetElement=null},t.prototype.onMouse=function(t){return this.targetElement?t.forwardedTouchEvent?!0:t.cancelable&&(!this.needsClick(this.targetElement)||this.cancelNextClick)?(t.stopImmediatePropagation?t.stopImmediatePropagation():t.propagationStopped=!0,t.stopPropagation(),t.preventDefault(),!1):!0:!0},t.prototype.onClick=function(t){var e;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===t.target.type&&0===t.detail?!0:(e=this.onMouse(t),e||(this.targetElement=null),e)},t.prototype.destroy=function(){var t=this.layer;n&&(t.removeEventListener("mouseover",this.onMouse,!0),t.removeEventListener("mousedown",this.onMouse,!0),t.removeEventListener("mouseup",this.onMouse,!0)),t.removeEventListener("click",this.onClick,!0),t.removeEventListener("touchstart",this.onTouchStart,!1),t.removeEventListener("touchmove",this.onTouchMove,!1),t.removeEventListener("touchend",this.onTouchEnd,!1),t.removeEventListener("touchcancel",this.onTouchCancel,!1)},t.notNeeded=function(t){var e,r,i,o;if("undefined"==typeof window.ontouchstart)return!0;if(r=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!n)return!0;if(e=document.querySelector("meta[name=viewport]")){if(-1!==e.content.indexOf("user-scalable=no"))return!0;if(r>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(a&&(i=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),i[1]>=10&&i[2]>=3&&(e=document.querySelector("meta[name=viewport]")))){if(-1!==e.content.indexOf("user-scalable=no"))return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===t.style.msTouchAction||"manipulation"===t.style.touchAction?!0:(o=+(/Firefox\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1],o>=27&&(e=document.querySelector("meta[name=viewport]"),e&&(-1!==e.content.indexOf("user-scalable=no")||document.documentElement.scrollWidth<=window.outerWidth))?!0:"none"===t.style.touchAction||"manipulation"===t.style.touchAction?!0:!1)},t.attach=function(e,n){return new t(e,n)},"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){return t}):"undefined"!=typeof module&&module.exports?(module.exports=t.attach,module.exports.FastClick=t):window.FastClick=t}(),!function(t){"object"==typeof exports?module.exports=t():"function"==typeof define&&define.amd?define(t):"undefined"!=typeof window?window.IconicJS=t():"undefined"!=typeof global?global.IconicJS=t():"undefined"!=typeof self&&(self.IconicJS=t())}(function(){var t;return function e(t,n,r){function i(a,s){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!s&&u)return u(a,!0);if(o)return o(a,!0);throw new Error("Cannot find module '"+a+"'")}var c=n[a]={exports:{}};t[a][0].call(c.exports,function(e){var n=t[a][1][e];return i(n?n:e)},c,c.exports,e,t,n,r)}return n[a].exports}for(var o="function"==typeof require&&require,a=0;a>>0;for(n=0;r>n;++n)n in this&&t.call(e,this[n],n,this)}),function(){if(Event.prototype.preventDefault||(Event.prototype.preventDefault=function(){this.returnValue=!1}),Event.prototype.stopPropagation||(Event.prototype.stopPropagation=function(){this.cancelBubble=!0}),!Element.prototype.addEventListener){var t=[],e=function(e,n){var r=this,i=function(t){t.target=t.srcElement,t.currentTarget=r,n.handleEvent?n.handleEvent(t):n.call(r,t)};if("DOMContentLoaded"==e){var o=function(t){"complete"==document.readyState&&i(t)};if(document.attachEvent("onreadystatechange",o),t.push({object:this,type:e,listener:n,wrapper:o}),"complete"==document.readyState){var a=new Event;a.srcElement=window,o(a)}}else this.attachEvent("on"+e,i),t.push({object:this,type:e,listener:n,wrapper:i})},n=function(e,n){for(var r=0;ro?r.width:r.height;var a;a=32>e?"iconic-sm":e>=32&&128>e?"iconic-md":"iconic-lg";var s=t.getAttribute("class"),u=n.test(s)?s.replace(n,a):s+" "+a;t.setAttribute("class",u)}},s=function(){var t=document.querySelectorAll(".injected-svg.iconic-fluid");Array.prototype.forEach.call(t,function(t){a(t)})};document.addEventListener("DOMContentLoaded",function(){o()}),window.addEventListener("resize",function(){s()}),e.exports={refresh:a,refreshAll:s}},{}],8:[function(e,n,r){!function(e,i){"use strict";function o(t){t=t.split(" ");for(var e={},n=t.length,r=[];n--;)e.hasOwnProperty(t[n])||(e[t[n]]=1,r.unshift(t[n]));return r.join(" ")}var a="file:"===e.location.protocol,s=i.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1"),u=Array.prototype.forEach||function(t,e){if(void 0===this||null===this||"function"!=typeof t)throw new TypeError;var n,r=this.length>>>0;for(n=0;r>n;++n)n in this&&t.call(e,this[n],n,this)},c={},l=0,f=[],h=[],d={},p=function(t){return t.cloneNode(!0)},m=function(t,e){h[t]=h[t]||[],h[t].push(e)},v=function(t){for(var e=0,n=h[t].length;n>e;e++)!function(e){setTimeout(function(){h[t][e](p(c[t]))},0)}(e)},g=function(t,n){if(void 0!==c[t])c[t]instanceof SVGSVGElement?n(p(c[t])):m(t,n);else{if(!e.XMLHttpRequest)return n("Browser does not support XMLHttpRequest"),!1;c[t]={},m(t,n);var r=new XMLHttpRequest;r.onreadystatechange=function(){if(4===r.readyState){if(404===r.status||null===r.responseXML)return n("Unable to load SVG file: "+t),a&&n("Note: SVG injection ajax calls do not work locally without adjusting security setting in your browser. Or consider using a local webserver."),n(),!1;if(!(200===r.status||a&&0===r.status))return n("There was a problem injecting the SVG: "+r.status+" "+r.statusText),!1;if(r.responseXML instanceof Document)c[t]=r.responseXML.documentElement;else if(DOMParser&&DOMParser instanceof Function){var e;try{var i=new DOMParser;e=i.parseFromString(r.responseText,"text/xml")}catch(o){e=void 0}if(!e||e.getElementsByTagName("parsererror").length)return n("Unable to parse SVG file: "+t),!1;c[t]=e.documentElement}v(t)}},r.open("GET",t),r.overrideMimeType&&r.overrideMimeType("text/xml"),r.send()}},$=function(t,n,r,i){var a=t.getAttribute("data-src")||t.getAttribute("src");if(!/svg$/i.test(a))return void i("Attempted to inject a file with a non-svg extension: "+a);if(!s){var c=t.getAttribute("data-fallback")||t.getAttribute("data-png");return void(c?(t.setAttribute("src",c),i(null)):r?(t.setAttribute("src",r+"/"+a.split("/").pop().replace(".svg",".png")),i(null)):i("This browser does not support SVG and no PNG fallback was defined."))}-1===f.indexOf(t)&&(f.push(t),t.setAttribute("src",""),g(a,function(r){if("undefined"==typeof r||"string"==typeof r)return i(r),!1;var s=t.getAttribute("id");s&&r.setAttribute("id",s);var c=t.getAttribute("title");c&&r.setAttribute("title",c);var h=[].concat(r.getAttribute("class")||[],"injected-svg",t.getAttribute("class")||[]).join(" ");r.setAttribute("class",o(h));var p=t.getAttribute("style");p&&r.setAttribute("style",p);var m=[].filter.call(t.attributes,function(t){return/^data-\w[\w\-]*$/.test(t.name)});u.call(m,function(t){t.name&&t.value&&r.setAttribute(t.name,t.value)});for(var v,g=r.querySelectorAll("defs clipPath[id]"),$=0,y=g.length;y>$;$++){v=g[$].id+"-"+l;for(var b=r.querySelectorAll('[clip-path*="'+g[$].id+'"]'),w=0,_=b.length;_>w;w++)b[w].setAttribute("clip-path","url(#"+v+")");g[$].id=v}r.removeAttribute("xmlns:a");for(var x,C,E=r.querySelectorAll("script"),k=[],A=0,S=E.length;S>A;A++)C=E[A].getAttribute("type"),C&&"application/ecmascript"!==C&&"application/javascript"!==C||(x=E[A].innerText||E[A].textContent,k.push(x),r.removeChild(E[A]));if(k.length>0&&("always"===n||"once"===n&&!d[a])){for(var T=0,O=k.length;O>T;T++)new Function(k[T])(e);d[a]=!0}t.parentNode.replaceChild(r,t),delete f[f.indexOf(t)],t=null,l++,i(r)}))},y=function(t,e,n){e=e||{};var r=e.evalScripts||"always",i=e.pngFallback||!1,o=e.each;if(void 0!==t.length){var a=0;u.call(t,function(e){$(e,r,i,function(e){o&&"function"==typeof o&&o(e),n&&t.length===++a&&n(a)})})}else t?$(t,r,i,function(e){o&&"function"==typeof o&&o(e),n&&n(1),t=null}):n&&n(0)};"object"==typeof n&&"object"==typeof n.exports?n.exports=r=y:"function"==typeof t&&t.amd?t(function(){return y}):"object"==typeof e&&(e.SVGInjector=y)}(window,document)},{}]},{},[1])(1)}),function(){"use strict";function t(){function t(t,e){e?t.addClass(a):t.removeClass(a)}function e(t,e,r,u){function c(){h(t),p(),t[0].style.transitionDuration="",t.removeClass($?"":a),d(),m=!1}function l(t){h(t),angular.element(t).off(s.join(" ")),m=!1}function f(t){var e={el:t,animation:v},r=n.filter(function(e){return e.el===t});if(r.length>0){var i=r[0].el[0];r[0].animation.cancelAnimation(i)}n.push(e)}function h(t){var e;n.filter(function(n,r){n.el===t&&(e=r)});e>=0&&n.splice(e,1)}function d(){return t[0].offsetWidth}function p(){t[0].style.transitionDuration=0,t.removeClass(i.join(" ")+" "+o.join(" ")+" "+r+" "+u)}var m=!0,v=this;v.cancelAnimation=l;var g=e?r:u,$=e,y=$?i[0]:i[1],b=$?o[0]:o[1];f(t),p(),t.addClass(g),t.addClass(y),t.addClass(a),d(),t[0].style.transitionDuration="",t.addClass(b),t.one(s.join(" "),function(){c()}),setTimeout(function(){m&&c()},3e3)}var n=[],r={},i=["ng-enter","ng-leave"],o=["ng-enter-active","ng-leave-active"],a="is-active",s=["webkitAnimationEnd","mozAnimationEnd","MSAnimationEnd","oanimationend","animationend","webkitTransitionEnd","otransitionend","transitionend"];return r.animate=e,r.toggleAnimation=t,r}angular.module("foundation.core.animation",[]).service("FoundationAnimation",t)}(),function(){"use strict";function t(t){function e(t,e){return l[t]||(l[t]=[]),l[t].push(e),!0}function n(t,e){void 0!==l[t]&&delete l[t],"function"==typeof e&&e.call(this)}function r(t,e){l[t]||(l[t]=[]),l[t].forEach(function(t){t(e)})}function i(){return f}function o(t){return f=angular.extend(f,t)}function a(){var t="";do{t+="zf-uuid-";for(var e=0;15>e;e++)t+=Math.floor(16*Math.random()).toString(16)}while(!h.indexOf(t));return h.push(t),t}function s(e,n){t.toggleAnimate(e,n)}function u(t){var e=this;t=t||{};var n=document.querySelectorAll(".is-active[zf-closable]"),r=document.querySelectorAll("[zf-closable] > .is-active");n.length&&angular.forEach(n,function(n){t.exclude!==n.id&&e.publish(n.id,"close")}),r.length&&angular.forEach(r,function(n){var r=n.parentNode.id;t.exclude!==r&&e.publish(r,"close")})}function c(e,n,r,i){t.animate(e,n,r,i)}var l={},f={},h=[],d={};return d.subscribe=e,d.unsubscribe=n,d.publish=r,d.getSettings=i,d.modifySettings=o,d.generateUuid=a,d.toggleAnimate=s,d.closeActiveElements=u,d.animate=c,d}function e(t){function e(e){t.publish(e,"show")}function n(e){t.publish(e,"hide")}var r={};return r.activate=e,r.deactivate=n,r}function n(){function t(t,e){var n=null;return function(){var r=this,i=arguments;null===n&&(n=setTimeout(function(){t.apply(r,i),n=null},e))}}var e={};return e.throttle=t,e}angular.module("foundation.core",["foundation.core.animation"]).service("FoundationApi",t).service("FoundationAdapter",e).factory("Utils",n),t.$inject=["FoundationAnimation"],e.$inject=["FoundationApi"]}(),function(){"use strict";function t(t,e){function n(n,r){function i(t,e,n,r,i){if(r.animation){if(!r.animation.leave&&!e.animation.leave)return;o(t,e,r)}}function o(t,e,n){p?(f(),r.addClass(n.animation.leave)):(l(),f(),r.removeClass(n.animation.leave))}function a(){d.leave&&r.removeClass(d.leave),l()}function s(){l(),e.includes(c())&&d.enter&&r.addClass(d.enter)}function u(t){t.targetScope===n&&d.enter&&r.removeClass(d.enter),p=!0}function c(){var t=r.data("$uiView"),e=t&&t.state&&t.state.self;return e&&angular.extend(d,e.animation),e}function l(){r.parent().removeClass("position-absolute"),h!==!0&&(r.parent()[0].style.height=null)}function f(){var t=parseInt(r.parent()[0].style.height),e=parseInt(window.getComputedStyle(r[0],null).getPropertyValue("height")),n=t>0?t:e>0?e:"";t>0&&(h=!0),r.parent()[0].style.height=n+"px",r.parent().addClass("position-absolute")}var h,d={},p=!1,m=[t.$on("$stateChangeStart",i),t.$on("$stateChangeError",a),n.$on("$stateChangeSuccess",s),n.$on("$viewContentAnimationEnded",u)],v=n.$on("$destroy",function(){angular.forEach(m,function(t){angular.isFunction(t)&&t()}),v()})}var r={restrict:"ECA",priority:-400,link:n};return r}angular.module("foundation.dynamicRouting.animations",["foundation.dynamicRouting"]).directive("uiView",t),t.$inject=["$rootScope","$state"]}(),function(){"use strict";function t(t){function e(t){var e={vars:{}};return t.data&&("object"==typeof t.data.vars&&(e.vars=t.data.vars),delete t.data.vars,angular.extend(e,t.data)),delete t.data,angular.extend(e.vars,t),e}function n(t,e){return{templateUrl:t,controller:r(e)}}function r(t){var e=t.controller||"DefaultController";return/\w\s+as\s+\w/.test(e)||(e+=" as PageCtrl"),e}function i(t){var e={};return t.animationIn&&(e.enter=t.animationIn),t.animationOut&&(e.leave=t.animationOut),e}var o={};this.registerDynamicRoutes=function(a){var s=a||foundationRoutes;angular.forEach(s,function(n){if(n.hasComposed)angular.isDefined(o[n.parent])||(o[n.parent]={children:{}}),n.controller&&(n.controller=r(n)),o[n.parent].children[n.name]=n;else if(n.composed)angular.isDefined(o[n.name])||(o[n.name]={children:{}}),n.controller&&(n.controller=r(n)),angular.extend(o[n.name],n);else{var a={url:n.url,templateUrl:n.path,"abstract":n["abstract"]||!1,parent:n.parent||"",controller:r(n),data:e(n),animation:i(n)};t.state(n.name,a)}}),angular.forEach(o,function(r){var o={url:r.url,parent:r.parent||"","abstract":r["abstract"]||!1,data:e(r),animation:i(r),views:{"":n(r.path,r)}};angular.forEach(r.children,function(t){o.views[t.name+"@"+r.name]=n(t.path,r)}),t.state(r.name,o)})},this.$get=angular.noop}function e(t,e,n){var r={};angular.forEach(e,function(t,e){r[e]=t}),t.params=r,t.current=n.current.name,n.current.views?(t.vars=n.current.data.vars,t.composed=n.current.data.vars.children):t.vars=n.current.data.vars}function n(t){t.registerDynamicRoutes(foundationRoutes)}function r(t,e,n){t.$state=e,t.$stateParams=n}angular.module("foundation.dynamicRouting",["ui.router"]).provider("$FoundationState",t).controller("DefaultController",e).config(n).run(r),t.$inject=["$stateProvider"],e.$inject=["$scope","$stateParams","$state"],n.$inject=["$FoundationStateProvider"],r.$inject=["$rootScope","$state","$stateParams"]}(),function(){"use strict";function t(t){t.init()}function e(t,e,n){function r(){var r,i;t.headerHelper(["foundation-mq"]),i=t.getStyle(".foundation-mq","font-family"),r=t.parseStyleToObject(i);for(var a in r)r[a]="only screen and (min-width: "+r[a].replace("rem","em")+")";e.modifySettings({mediaQueries:angular.extend(r,o)}),window.addEventListener("resize",n.throttle(function(){e.publish("resize","window resized")},50))}var i={},o={"default":"only screen",landscape:"only screen and (orientation: landscape)",portrait:"only screen and (orientation: portrait)",retina:"only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1),only screen and (min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx)"};return i.init=r,i}function n(){function t(t){for(var e=t.length,n=angular.element(document.querySelectorAll("head"));e--;)n.append('')}function e(t,e){var n=document.querySelectorAll(t)[0],r=window.getComputedStyle(n,null);return r.getPropertyValue("font-family")}function n(t){var e={};return"string"!=typeof t?e:(t=t.trim().slice(1,-1))?e=t.split("&").reduce(function(t,e){var n=e.replace(/\+/g," ").split("="),r=n[0],i=n[1];return r=decodeURIComponent(r),i=void 0===i?null:decodeURIComponent(i),t.hasOwnProperty(r)?Array.isArray(t[r])?t[r].push(i):t[r]=[t[r],i]:t[r]=i,t},{}):e}var r={};return r.headerHelper=t,r.getStyle=e,r.parseStyleToObject=n,r}function r(t){function e(){return t.getSettings().mediaQueries}function n(t){var e=t.length,n=i.getMediaQueries(),r=[];if(e>0)for(;e--;){var o,a=t[e].media;o=n[a]?matchMedia(n[a]):matchMedia(a),o.matches&&r.push({ind:e})}return r}function r(t){var e=[],n=[],r=t.children(),i=0;return angular.forEach(r,function(t){var r=angular.element(t);r.attr("src")&&r.attr("src").match(/.html$/)?e[i]={media:r.attr("media"),src:r.attr("src")}:(n[i]=r,e[i]={media:r.attr("media"),templ:i}),i++}),{scenarios:e,templates:n}}var i=[];return i.getMediaQueries=e,i.match=n,i.collectScenariosFromElement=r,i}angular.module("foundation.mediaquery",["foundation.core"]).run(t).factory("FoundationMQInit",e).factory("mqHelpers",n).service("FoundationMQ",r),t.$inject=["FoundationMQInit"],e.$inject=["mqHelpers","FoundationApi","Utils"],r.$inject=["FoundationApi"]}(),angular.module("markdown",[]).directive("markdown",function(){return{restrict:"A",link:function(t,e,n,r){e.html(marked(e.html()))}}}),function(){var t={};angular.forEach(["clipPath","colorProfile","src","cursor","fill","filter","marker","markerStart","markerMid","markerEnd","mask","stroke"],function(e){t[e]=["$rootScope","$location","$interpolate","$sniffer","urlResolve","computeSVGAttrValue","svgAttrExpressions",function(t,n,r,i,o,a,s){return{restrict:"A",link:function(r,o,u){function c(){var t=a(l);t&&u[e]!==t&&u.$set(e,t)}var l;s.SVG_ELEMENT.test(o[0]&&o[0].toString())&&n.$$html5&&i.history&&(l=u[e],u.$observe(e,c),t.$on("$locationChangeSuccess",c))}}}]}),angular.module("ngSVGAttributes",[]).factory("urlResolve",[function(){var t=document.createElement("a");return function(e){return t.setAttribute("href",e),t}}]).value("svgAttrExpressions",{FUNC_URI:/^url\((.*)\)$/,SVG_ELEMENT:/SVG[a-zA-Z]*Element/,HASH_PART:/#.*/}).factory("computeSVGAttrValue",["$location","$sniffer","svgAttrExpressions","urlResolve",function(t,e,n,r){return function(e){var i,o;return(i=n.FUNC_URI.exec(e))&&(o=0===i[1].indexOf("#")?t.absUrl().replace(n.HASH_PART,"")+i[1]:r(i[1])),o?"url("+o+")":null}}]).directive(t)}(),function(){"use strict";function t(t){var e=this,n=e.sections=t.sections=[],r=(e.multiOpen=t.multiOpen=t.multiOpen||!1,e.collapsible=t.collapsible=t.multiOpen||t.collapsible||!0),i=e.autoOpen=t.autoOpen=t.autoOpen||!0;e.select=function(t){n.forEach(function(n){e.multiOpen?n.scope===t&&(n.scope.active=!n.scope.active):n.scope===t?n.scope.active=r?!n.scope.active:!0:n.scope.active=!1})},e.addSection=function(t){n.push({scope:t}),1===n.length&&i===!0&&(n[0].active=!0,n[0].scope.active=!0)},e.closeAll=function(){n.forEach(function(t){t.scope.active=!1})}}function e(){function t(t,e,n,r){t.multiOpen=r.multiOpen="true"===t.multiOpen?!0:!1,t.collapsible=r.collapsible="true"===t.collapsible?!0:!1,t.autoOpen=r.autoOpen="true"===t.autoOpen?!0:!1}var e={restrict:"EA",transclude:"true",replace:!0,templateUrl:"components/accordion/accordion.html",controller:"ZfAccordionController",scope:{multiOpen:"@?",collapsible:"@?",autoOpen:"@?"},link:t};return e}function n(){function t(t,e,n,r,i){t.active=!1,r.addSection(t),t.activate=function(){r.select(t)}}var e={restrict:"EA",templateUrl:"components/accordion/accordion-item.html",transclude:!0,scope:{title:"@"},require:"^zfAccordion",replace:!0,controller:function(){},link:t};return e}angular.module("foundation.accordion",[]).controller("ZfAccordionController",t).directive("zfAccordion",e).directive("zfAccordionItem",n),t.$inject=["$scope"]}(),function(){"use strict";function t(t){function e(e){t.publish(e,"show")}function n(e){t.publish(e,"hide")}var r={};return r.activate=e,r.deactivate=n,r}function e(t,e){function n(t){var e=t.target,n=!1;do if(e.classList&&e.classList.contains("action-sheet-container")){n=!0;break}while(e=e.parentNode);if(!n){if(t.target.attributes["zf-toggle"]||t.target.attributes["zf-hard-toggle"])return;r()}}function r(){a.hide(),s.hide(),a.$apply(),s.$apply()}function i(){a.toggle(),s.toggle(),a.$apply(),s.$apply()}var o=this,a=o.content=t.content,s=o.container=t.container;angular.element(document.body);o.registerContent=function(t){a=t,a.active=!1},o.registerContainer=function(t){s=t,s.active=!1},o.toggle=i,o.hide=r,o.registerListener=function(){document.body.addEventListener("click",n)},o.deregisterListener=function(){document.body.removeEventListener("click",n)}}function n(t){function e(){function e(t,e,n){n.$set("zf-closable","actionsheet")}function n(e,n,r,i){var o=r.id||t.generateUuid();r.$set("id",o),e.active=!1,t.subscribe(o,function(t){"toggle"===t&&i.toggle(),("hide"===t||"close"===t)&&i.hide()}),i.registerContainer(e),e.toggle=function(){e.active=!e.active},e.hide=function(){e.active=!1}}return{pre:e,post:n}}var n={restrict:"EA",transclude:!0,replace:!0,templateUrl:"components/actionsheet/actionsheet.html",controller:"ZfActionSheetController",compile:e};return n}function r(t){function e(t,e,n,r){t.active=!1,t.position=t.position||"bottom",r.registerContent(t),t.toggle=function(){t.active=!t.active,t.active?r.registerListener():r.deregisterListener()},t.hide=function(){t.active=!1,r.deregisterListener()}}var n={restrict:"EA",transclude:!0,replace:!0,templateUrl:"components/actionsheet/actionsheet-content.html",require:"^zfActionSheet",scope:{position:"@?"},link:e};return n}function i(t){function e(t,e,n,r){e.on("click",function(t){r.toggle(),t.preventDefault()})}var n={restrict:"EA",transclude:!0,replace:!0,templateUrl:"components/actionsheet/actionsheet-button.html",require:"^zfActionSheet",scope:{title:"@?"},link:e};return n}angular.module("foundation.actionsheet",["foundation.core"]).controller("ZfActionSheetController",e).directive("zfActionSheet",n).directive("zfAsContent",r).directive("zfAsButton",i).service("FoundationActionSheet",t),t.$inject=["FoundationApi"],e.$inject=["$scope","FoundationApi"],n.$inject=["FoundationApi"],r.$inject=["FoundationApi"],i.$inject=["FoundationApi"]}(),function(){"use strict";function t(t){function e(e,n,r){var i="";if(r.zfClose)i=r.zfClose;else{for(var o=!1,a=n.parent();o===!1;)"BODY"==a[0].nodeName&&(o=""),"undefined"!=typeof a.attr("zf-closable")&&a.attr("zf-closable")!==!1&&(o=a),a=a.parent();i=o.attr("id")}n.on("click",function(e){t.publish(i,"close"),e.preventDefault()})}var n={restrict:"A",link:e};return n}function e(t){function e(e,n,r){n.on("click",function(e){t.publish(r.zfOpen,"open"),e.preventDefault()})}var n={restrict:"A",link:e};return n}function n(t){function e(e,n,r){n.on("click",function(e){t.publish(r.zfToggle,"toggle"),e.preventDefault()})}var n={restrict:"A",link:e};return n}function r(t){function e(e,n,r){n.on("keyup",function(e){27===e.keyCode&&t.closeActiveElements(),e.preventDefault()})}var n={restrict:"A",link:e};return n}function i(t){function e(e,n,r){var i,o;switch(Hammer&&(o=new Hammer(n[0]),o.get("swipe").set({direction:Hammer.DIRECTION_ALL,threshold:5,velocity:.5})),r.zfSwipeClose){case"right":i="swiperight";break;case"left":i="swipeleft";break;case"up":i="swipeup";break;case"down":i="swipedown";break;default:i="swipe"}o.on(i,function(){t.publish(r.id,"close")})}var n={restrict:"A",link:e};return n}function o(t){function e(e,n,r){n.on("click",function(e){t.closeActiveElements({exclude:r.zfHardToggle}),t.publish(r.zfHardToggle,"toggle"),e.preventDefault()})}var n={restrict:"A",link:e};return n}angular.module("foundation.common",["foundation.core"]).directive("zfClose",t).directive("zfOpen",e).directive("zfToggle",n).directive("zfEscClose",r).directive("zfSwipeClose",i).directive("zfHardToggle",o),t.$inject=["FoundationApi"],e.$inject=["FoundationApi"],n.$inject=["FoundationApi"],r.$inject=["FoundationApi"],i.$inject=["FoundationApi"],o.$inject=["FoundationApi"]}(),function(){"use strict";function t(){var t="assets/img/iconic/";this.setAssetPath=function(e){t=angular.isString(e)?e:t},this.$get=function(){function e(){return r}function n(){return t}var r=new IconicJS,i={getAccess:e,getAssetPath:n};return i}}function e(t,e,n){function r(){function r(e,n,r){if(a=e.iconDir?e.iconDir:t.getAssetPath(),"/"!==a.charAt(a.length-1)&&(a+="/"),e.dynSrc?r.$set("data-src",e.dynSrc):e.dynIcon?r.$set("data-src",a+e.dynIcon+".svg"):e.icon?r.$set("data-src",a+e.icon+".svg"):r.$set("data-src",r.src),!n.hasClass("iconic-sm")&&!n.hasClass("iconic-md")&&!n.hasClass("iconic-lg")){var i;switch(e.size){case"small":i="iconic-sm";break;case"medium":i="iconic-md";break;case"large":i="iconic-lg";break;default:i="iconic-fluid"}n.addClass(i)}o=n[0].outerHTML}function i(r,i,s){function u(t){l&&(l.empty(),l.append(angular.element(o)),l.attr("data-src",t),c(l[0]))}function c(t){f.inject(t,{each:function(t){var e=angular.element(t);l=n(e)(e.scope())}})}var l,f=t.getAccess();c(i[0]),e.subscribe("resize",function(){f.update(i[0])}),r.dynSrc&&r.$watch("dynSrc",function(t,e){t&&t!==e&&u(r.dynSrc)}),r.dynIcon&&r.$watch("dynIcon",function(t,e){t&&t!==e&&u(a+r.dynIcon+".svg")})}var o,a;return{pre:r,post:i}}var i={restrict:"A",template:"",transclude:!0,replace:!0,scope:{dynSrc:"=?",dynIcon:"=?",size:"@?",icon:"@",iconDir:"@?"},compile:r};return i}angular.module("foundation.iconic",[]).provider("Iconic",t).directive("zfIconic",e),e.$inject=["Iconic","FoundationApi","$compile"]}(),function(){"use strict";function t(t,e,n,r,i){function o(o,a,s,u,c){function l(t){return e.get(t,{cache:n})}function f(t){var e=i.collectScenariosFromElement(t);m=e.scenarios,v=e.templates}function h(t){return!p||p!==t}var d,p,m,v;i.getMediaQueries();r.subscribe("resize",function(e){c(function(e,n){m&&v||f(e);var r=i.match(m),o=0===r.length?null:m[r[0].ind];if(o&&h(o)){if(d&&(d.$destroy(),d=null),"undefined"!=typeof o.templ){d=n;var s=document.createElement("div");s.appendChild(v[o.templ][0]),a.html(s.innerHTML),t(a.contents())(d),p=o}else{var u=l(o.src);u.success(function(t){d=n,a.html(t)}).then(function(){t(a.contents())(d),p=o})}}})}),r.publish("resize","initial resize")}var a={restrict:"EA",transclude:"element",scope:{position:"@"},replace:!0,template:"
",link:o};return a}angular.module("foundation.interchange",["foundation.core","foundation.mediaquery"]).directive("zfInterchange",t),t.$inject=["$compile","$http","$templateCache","FoundationApi","FoundationMQ"]}(),function(){"use strict";function t(t,e){function n(e){t.publish(e,"show")}function r(e){t.publish(e,"hide")}function i(t){return new e(t)}var o={};return o.activate=n,o.deactivate=r,o.newModal=i,o}function e(t){function e(e,n,r){function i(t,e,n,r){n.$set("zf-closable",a)}function o(e,n,r){function i(){e.overlay||n.css("background","transparent"),t.animate(n,e.active,c,l),t.animate(a,e.active,s,u)}function o(){e.active&&e.show()}var a=angular.element(n.children()[0]);e.active=e.active||!1,e.overlay="false"===r.overlay?!1:!0,e.overlayClose="false"===r.overlayClose?!1:!0;var s=r.animationIn||"fadeIn",u=r.animationOut||"fadeOut",c="fadeIn",l="fadeOut";e.hideOverlay=function(){e.overlayClose&&e.hide()},e.hide=function(){e.active=!1,i()},e.show=function(){e.active=!0,i(),a.tabIndex=-1,a[0].focus()},e.toggle=function(){e.active=!e.active,i()},o(),t.subscribe(r.id,function(t){"show"===t||"open"===t?e.show():"close"===t||"hide"===t?e.hide():"toggle"===t&&e.toggle(),e.$root&&!e.$root.$$phase&&e.$apply()})}var a="modal";return{pre:i,post:o}}var n={restrict:"EA",templateUrl:"components/modal/modal.html",transclude:!0,scope:!0,replace:!0,compile:e};return n}function n(t,e,n,r,i,o,a){function s(s){function u(){if(C)throw"Error: Modal was destroyed. Delete the object and create a new ModalFactory instance."}function c(){u(),i(function(){h(!0),a.publish(_,"show")},0,!1)}function l(){u(),i(function(){h(!1),a.publish(_,"hide")},0,!1)}function f(){u(),i(function(){h(!0),a.publish(_,"toggle")},0,!1)}function h(t){o.when(g).then(function(){if(!x&&m.length>0){w.append(v);$.active=t,r(v)($),x=!0}})}function d(){if(!document.getElementById(_)){m=''+m+"",v=angular.element(m),$=n.$new();for(var t=0;t0;)t.notifications.pop()}}function n(t){function e(e,n,r,i){e.position=e.position?e.position.split(" ").join("-"):"top-right",t.subscribe(r.id,function(t){"clearall"===t?i.clearAll():(i.addNotification(t),e.$root.$$phase||e.$apply())})}var n={restrict:"EA",templateUrl:"components/notification/notification-set.html",controller:"ZfNotificationController",replace:!0,scope:{position:"@"},link:e};return n}function r(t){function e(){function e(t,e,n){n.$set("zf-closable","notification")}function n(e,n,r,i){e.active=!1;var o,a=r.animationIn||"fadeIn",s=r.animationOut||"fadeOut";setTimeout(function(){e.active=!0,t.animate(n,e.active,a,s)},50),e.hide=function(){e.active=!1,t.animate(n,e.active,a,s),setTimeout(function(){i.removeNotification(e.notifId)},50)},e.autoclose&&setTimeout(function(){e.active&&e.hide()},parseInt(e.autoclose)),Hammer&&(o=new Hammer(n[0]),o.get("swipe").set({direction:Hammer.DIRECTION_ALL,threshold:5,velocity:.5})),o.on("swipe",function(){e.active&&e.hide()})}return{pre:e,post:n}}var n={restrict:"EA",templateUrl:"components/notification/notification.html",replace:!0,transclude:!0,require:"^zfNotificationSet",controller:function(){},scope:{title:"=?",content:"=?",image:"=?",notifId:"=",color:"=?",autoclose:"=?"},compile:e};return n}function i(t){function e(){function e(t,e,n,i){n.$set("zf-closable",r)}function n(e,n,r,i){e.position=r.position?r.position.split(" ").join("-"):"top-right";var o=r.animationIn||"fadeIn",a=r.animationOut||"fadeOut";t.subscribe(r.id,function(r){"show"==r||"open"==r?(e.show(),e.autoclose&&setTimeout(function(){e.active&&e.hide()},parseInt(e.autoclose))):"close"==r||"hide"==r?e.hide():"toggle"==r&&(e.toggle(), +e.autoclose&&setTimeout(function(){e.active&&e.toggle()},parseInt(e.autoclose))),t.animate(n,e.active,o,a),e.$apply()}),e.hide=function(){e.active=!1,t.animate(n,e.active,o,a)},e.show=function(){e.active=!0,t.animate(n,e.active,o,a)},e.toggle=function(){e.active=!e.active,t.animate(n,e.active,o,a)}}var r="notification";return{pre:e,post:n}}var n={restrict:"EA",templateUrl:"components/notification/notification-static.html",replace:!0,transclude:!0,scope:{title:"@?",content:"@?",image:"@?",color:"@?",autoclose:"@?"},compile:e};return n}function o(t){function e(e,n,r,i){n.on("click",function(n){t.publish(r.zfNotify,{title:e.title,content:e.content,color:e.color,image:e.image,autoclose:e.autoclose}),n.preventDefault()})}var n={restrict:"A",scope:{title:"@?",content:"@?",color:"@?",image:"@?",autoclose:"@?"},link:e};return n}function a(t,e,n,r,i,o){function a(t){function e(){if(y)throw"Error: Notification Set was destroyed. Delete the object and create a new NotificationFactory instance."}function a(t){e(),i(function(){o.publish(g,t)},0,!1)}function s(){e(),i(function(){o.publish(g,"clearall")},0,!1)}function u(t){if(!$&&f.length>0){v.append(h);d.active=t,r(h)(d),$=!0}}function c(){if(!document.getElementById(g)){f='',h=angular.element(f),d=n.$new();for(var e=0;e0&&(n.hide(),t.animate(r,n.active,o,a))})}var s="panel";return{pre:o,post:a}}var r={restrict:"EA",templateUrl:"components/panel/panel.html",transclude:!0,scope:{position:"@?"},replace:!0,compile:n};return r}angular.module("foundation.panel",["foundation.core"]).directive("zfPanel",e).service("FoundationPanel",t),t.$inject=["FoundationApi"],e.$inject=["FoundationApi","$window"]}(),function(){"use strict";function t(t){function e(e){t.publish(e,"show")}function n(e){t.publish(e,"hide")}var r={};return r.activate=e,r.deactivate=n,r}function e(t){function e(){function e(t,e,n){n.$set("zf-closable","popup")}function n(e,n,r){function i(t){s||(e.target=e.target?document.getElementById(e.target):document.getElementById(t),u=new Tether({element:n[0],target:e.target,attachment:o,targetAttachment:a,enable:!1}),s=!0)}e.active=!1,e.target=e.target||!1;var o=e.pinTo||"top center",a=e.pinAt||"bottom center",s=!1,u={};t.subscribe(r.id,function(t){"show"===t[0]||"open"===t[0]?e.show(t[1]):"close"===t[0]||"hide"===t[0]?e.hide():"toggle"===t[0]&&e.toggle(t[1]),e.$apply()}),e.hide=function(){e.active=!1,i(),u.disable()},e.show=function(t){e.active=!0,i(t),u.enable()},e.toggle=function(t){e.active=!e.active,i(t),e.active?u.enable():u.disable()}}return{pre:e,post:n}}var n={restrict:"EA",transclude:!0,replace:!0,templateUrl:"components/popup/popup.html",scope:{pinTo:"@?",pinAt:"@?",target:"@?"},compile:e};return n}function n(t){function e(e,n,r){var i=r.zfPopupToggle,o=r.id||t.generateUuid();r.$set("id",o),n.on("click",function(e){t.publish(i,["toggle",o]),e.preventDefault()})}var n={restrict:"A",link:e};return n}angular.module("foundation.popup",["foundation.core"]).directive("zfPopup",e).directive("zfPopupToggle",n).service("FoundationPopup",t),t.$inject=["FoundationApi"],e.$inject=["FoundationApi"],n.$inject=["FoundationApi"]}(),function(){"use strict";function t(t){function e(e){t.publish(e,"show")}var n={};return n.activate=e,n}function e(t,e){var n=this,r=n.tabs=t.tabs=[],i="";n.select=function(t){r.forEach(function(n){n.active=!1,n.scope.active=!1,n.scope===t&&(e.publish(i,["activate",n]),n.active=!0,n.scope.active=!0)})},n.addTab=function(t){r.push({scope:t,active:!1,parentContent:n.id}),1===r.length&&(r[0].active=!0,t.active=!0)},n.getId=function(){return i},n.setId=function(t){i=t}}function n(t){function e(e,n,r,i){e.id=r.id||t.generateUuid(),e.showTabContent="true"!==e.displaced,r.$set("id",e.id),i.setId(e.id);var o=function(){t.publish(e.id+"-tabs",e.tabs)};t.subscribe(e.id+"-get-tabs",function(){o()})}var n={restrict:"EA",transclude:"true",replace:!0,templateUrl:"components/tabs/tabs.html",controller:"ZfTabsController",scope:{displaced:"@?"},link:e};return n}function r(t){function e(e,n,r,i){e.tabs=e.tabs||[];var o=e.target;t.subscribe(o,function(t){if("activate"===t[0]){t[1];e.tabs.forEach(function(t){t.scope.active=!1,t.active=!1,t.scope.id===o&&(t.scope.active=!0,t.active=!0)})}}),0===e.tabs.length&&(t.subscribe(o+"-tabs",function(t){e.tabs=t}),t.publish(o+"-get-tabs",""))}var n={restrict:"A",transclude:"true",replace:!0,scope:{tabs:"=?",target:"@"},templateUrl:"components/tabs/tab-content.html",link:e};return n}function i(t){function e(e,n,r,i,o){e.id=r.id||t.generateUuid(),e.active=!1,e.transcludeFn=o,i.addTab(e),t.subscribe(e.id,function(t){("show"===t||"open"===t||"activate"===t)&&e.makeActive()}),e.makeActive=function(){i.select(e)}}var n={restrict:"EA",templateUrl:"components/tabs/tab.html",transclude:!0,scope:{title:"@"},require:"^zfTabs",replace:!0,link:e};return n}function o(t){function e(e,n,r,i,o){var a=e.$eval(r.tab);a.scope.id;a.scope.transcludeFn(a.scope,function(t){n.append(t)}),t.subscribe(a.scope.id,function(n){t.publish(a.parentContent,["activate",a.scope.id]),e.$apply()})}var n={restrict:"EA",transclude:"true",link:e};return n}function a(t){function e(e,n,r,i){function o(){n.parent().children().removeClass("is-active"),n.addClass("is-active")}var a=r.zfTabHref;t.subscribe(a,function(t){("activate"===t||"show"===t||"open"===t)&&o()}),n.on("click",function(e){t.publish(a,"activate"),o(),e.preventDefault()})}var n={restrict:"A",replace:!1,link:e};return n}function s(t){function e(t,e,n,r,i){var o=e.children();angular.element(o[0]).addClass("is-active")}var n={restrict:"A",replace:!1,link:e};return n}function u(t){function e(e,n,r){function i(t){var e=n.children();angular.forEach(e,function(e){var n=angular.element(e);n.removeClass("is-active"),n.attr("id")===t&&n.addClass("is-active")})}var o=[],a=n.children();angular.forEach(a,function(e){if(e.id){var n=e.id;if(o.push(n),t.subscribe(n,function(t){("activate"===t||"show"===t||"open"===t)&&i(n)}),1===o.length){var r=angular.element(e);r.addClass("is-active")}}})}return{restrict:"A",link:e}}angular.module("foundation.tabs",["foundation.core"]).controller("ZfTabsController",e).directive("zfTabs",n).directive("zfTabContent",r).directive("zfTab",i).directive("zfTabIndividual",o).directive("zfTabHref",a).directive("zfTabCustom",s).directive("zfTabContentCustom",u).service("FoundationTabs",t),t.$inject=["FoundationApi"],e.$inject=["$scope","FoundationApi"],n.$inject=["FoundationApi"],r.$inject=["FoundationApi"],i.$inject=["FoundationApi"],o.$inject=["FoundationApi"],a.$inject=["FoundationApi"],s.$inject=["FoundationApi"],u.$inject=["FoundationApi"]}(),function(){"use strict";angular.module("foundation",["foundation.core","foundation.mediaquery","foundation.accordion","foundation.actionsheet","foundation.common","foundation.iconic","foundation.interchange","foundation.modal","foundation.notification","foundation.offcanvas","foundation.panel","foundation.popup","foundation.tabs"])}(),function(t,e,n,r){"use strict";function i(t,e,n){return setTimeout(c(t,n),e)}function o(t,e,n){return Array.isArray(t)?(a(t,n[e],n),!0):!1}function a(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==r)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=t.console&&(t.console.warn||t.console.log);return o&&o.call(t.console,i,r),e.apply(this,arguments)}}function u(t,e,n){var r,i=e.prototype;r=t.prototype=Object.create(i),r.constructor=t,r._super=i,n&&st(r,n)}function c(t,e){return function(){return t.apply(e,arguments)}}function l(t,e){return typeof t==lt?t.apply(e?e[0]||r:r,e):t}function f(t,e){return t===r?e:t}function h(t,e,n){a(v(e),function(e){t.addEventListener(e,n,!1)})}function d(t,e,n){a(v(e),function(e){t.removeEventListener(e,n,!1)})}function p(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function m(t,e){return t.indexOf(e)>-1}function v(t){return t.trim().split(/\s+/g)}function g(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var r=0;rn[e]}):r.sort()),r}function b(t,e){for(var n,i,o=e[0].toUpperCase()+e.slice(1),a=0;a1&&!n.firstMultiple?n.firstMultiple=T(e):1===i&&(n.firstMultiple=!1);var o=n.firstInput,a=n.firstMultiple,s=a?a.center:o.center,u=e.center=O(r);e.timeStamp=dt(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=D(s,u),e.distance=M(s,u),A(n,e),e.offsetDirection=z(e.deltaX,e.deltaY);var c=I(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=c.x,e.overallVelocityY=c.y,e.overallVelocity=ht(c.x)>ht(c.y)?c.x:c.y,e.scale=a?N(a.pointers,r):1,e.rotation=a?j(a.pointers,r):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,S(n,e);var l=t.element;p(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function A(t,e){var n=e.center,r=t.offsetDelta||{},i=t.prevDelta||{},o=t.prevInput||{};(e.eventType===kt||o.eventType===St)&&(i=t.prevDelta={x:o.deltaX||0,y:o.deltaY||0},r=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=i.x+(n.x-r.x),e.deltaY=i.y+(n.y-r.y)}function S(t,e){var n,i,o,a,s=t.lastInterval||e,u=e.timeStamp-s.timeStamp;if(e.eventType!=Tt&&(u>Et||s.velocity===r)){var c=e.deltaX-s.deltaX,l=e.deltaY-s.deltaY,f=I(u,c,l);i=f.x,o=f.y,n=ht(f.x)>ht(f.y)?f.x:f.y,a=z(c,l),t.lastInterval=e}else n=s.velocity,i=s.velocityX,o=s.velocityY,a=s.direction;e.velocity=n,e.velocityX=i,e.velocityY=o,e.direction=a}function T(t){for(var e=[],n=0;ni;)n+=t[i].clientX,r+=t[i].clientY,i++;return{x:ft(n/e),y:ft(r/e)}}function I(t,e,n){return{x:e/t||0,y:n/t||0}}function z(t,e){return t===e?Ot:ht(t)>=ht(e)?0>t?It:zt:0>e?Mt:Dt}function M(t,e,n){n||(n=Pt);var r=e[n[0]]-t[n[0]],i=e[n[1]]-t[n[1]];return Math.sqrt(r*r+i*i)}function D(t,e,n){n||(n=Pt);var r=e[n[0]]-t[n[0]],i=e[n[1]]-t[n[1]];return 180*Math.atan2(i,r)/Math.PI}function j(t,e){return D(e[1],e[0],Ft)+D(t[1],t[0],Ft)}function N(t,e){return M(e[0],e[1],Ft)/M(t[0],t[1],Ft)}function R(){this.evEl=Lt,this.evWin=Ut,this.allow=!0,this.pressed=!1,x.apply(this,arguments)}function P(){this.evEl=Ht,this.evWin=Wt,x.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function F(){this.evTarget=Yt,this.evWin=Zt,this.started=!1,x.apply(this,arguments)}function B(t,e){var n=$(t.touches),r=$(t.changedTouches);return e&(St|Tt)&&(n=y(n.concat(r),"identifier",!0)),[n,r]}function L(){this.evTarget=Kt,this.targetIds={},x.apply(this,arguments)}function U(t,e){var n=$(t.touches),r=this.targetIds;if(e&(kt|At)&&1===n.length)return r[n[0].identifier]=!0,[n,n];var i,o,a=$(t.changedTouches),s=[],u=this.target;if(o=n.filter(function(t){return p(t.target,u)}),e===kt)for(i=0;is&&(e.push(t),s=e.length-1):i&(St|Tt)&&(n=!0),0>s||(e[s]=t,this.callback(this.manager,i,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),n&&e.splice(s,1))}});var Xt={touchstart:kt,touchmove:At,touchend:St,touchcancel:Tt},Yt="touchstart",Zt="touchstart touchmove touchend touchcancel";u(F,x,{handler:function(t){var e=Xt[t.type];if(e===kt&&(this.started=!0),this.started){var n=B.call(this,t,e);e&(St|Tt)&&n[0].length-n[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:wt,srcEvent:t})}}});var Gt={touchstart:kt,touchmove:At,touchend:St,touchcancel:Tt},Kt="touchstart touchmove touchend touchcancel";u(L,x,{handler:function(t){var e=Gt[t.type],n=U.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:wt,srcEvent:t})}}),u(V,x,{handler:function(t,e,n){var r=n.pointerType==wt,i=n.pointerType==xt;if(r)this.mouse.allow=!1;else if(i&&!this.mouse.allow)return;e&(St|Tt)&&(this.mouse.allow=!0),this.callback(t,e,n)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Jt=b(ct.style,"touchAction"),Qt=Jt!==r,te="compute",ee="auto",ne="manipulation",re="none",ie="pan-x",oe="pan-y";q.prototype={set:function(t){t==te&&(t=this.compute()),Qt&&this.manager.element.style&&(this.manager.element.style[Jt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return a(this.manager.recognizers,function(e){l(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),H(t.join(" "))},preventDefaults:function(t){if(!Qt){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var r=this.actions,i=m(r,re),o=m(r,oe),a=m(r,ie);if(i){var s=1===t.pointers.length,u=t.distance<2,c=t.deltaTime<250;if(s&&u&&c)return}if(!a||!o)return i||o&&n&jt||a&&n&Nt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var ae=1,se=2,ue=4,ce=8,le=ce,fe=16,he=32;W.prototype={defaults:{},set:function(t){return st(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(o(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=Z(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return o(t,"dropRecognizeWith",this)?this:(t=Z(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(o(t,"requireFailure",this))return this;var e=this.requireFail;return t=Z(t,this),-1===g(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(o(t,"dropRequireFailure",this))return this;t=Z(t,this);var e=g(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){n.manager.emit(e,t)}var n=this,r=this.state;ce>r&&e(n.options.event+X(r)),e(n.options.event),t.additionalEvent&&e(t.additionalEvent),r>=ce&&e(n.options.event+X(r))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=he)},canEmit:function(){for(var t=0;to?It:zt,n=o!=this.pX,r=Math.abs(t.deltaX)):(i=0===a?Ot:0>a?Mt:Dt,n=a!=this.pY,r=Math.abs(t.deltaY))),t.direction=i,n&&r>e.threshold&&i&e.direction},attrTest:function(t){return G.prototype.attrTest.call(this,t)&&(this.state&se||!(this.state&se)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Y(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),u(J,G,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[re]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&se)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),u(Q,W,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[ee]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distancee.time;if(this._input=t,!r||!n||t.eventType&(St|Tt)&&!o)this.reset();else if(t.eventType&kt)this.reset(),this._timer=i(function(){this.state=le,this.tryEmit()},e.time,this);else if(t.eventType&St)return le;return he},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===le&&(t&&t.eventType&St?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=dt(),this.manager.emit(this.options.event,this._input)))}}),u(tt,G,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[re]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&se)}}),u(et,G,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:jt|Nt,pointers:1},getTouchAction:function(){return K.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return n&(jt|Nt)?e=t.overallVelocity:n&jt?e=t.overallVelocityX:n&Nt&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&ht(e)>this.options.velocity&&t.eventType&St},emit:function(t){var e=Y(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),u(nt,W,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[ne]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distance>2,s=(3&n)<<4|i>>4,u=(15&i)<<2|o>>6,c=63&o,isNaN(i)?u=c=64:isNaN(o)&&(c=64),l=l+r.charAt(a)+r.charAt(s)+r.charAt(u)+r.charAt(c);return l},n.decode=function(t,e){var n,i,o,a,s,u,c,l="",f=0;for(t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");f>4,i=(15&s)<<4|u>>2,o=(3&u)<<6|c,l+=String.fromCharCode(n),64!=u&&(l+=String.fromCharCode(i)),64!=c&&(l+=String.fromCharCode(o));return l}},{}],2:[function(t,e,n){"use strict";function r(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}r.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},e.exports=r},{}],3:[function(t,e,n){"use strict";n.STORE={magic:"\x00\x00",compress:function(t,e){return t},uncompress:function(t){return t},compressInputType:null,uncompressInputType:null},n.DEFLATE=t("./flate")},{"./flate":8}],4:[function(t,e,n){"use strict";var r=t("./utils"),i=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]; +e.exports=function(t,e){if("undefined"==typeof t||!t.length)return 0;var n="string"!==r.getTypeOf(t);"undefined"==typeof e&&(e=0);var o=0,a=0,s=0;e=-1^e;for(var u=0,c=t.length;c>u;u++)s=n?t[u]:t.charCodeAt(u),a=255&(e^s),o=i[a],e=e>>>8^o;return-1^e}},{"./utils":21}],5:[function(t,e,n){"use strict";function r(t){this.data=null,this.length=0,this.index=0}var i=t("./utils");r.prototype={checkOffset:function(t){this.checkIndex(this.index+t)},checkIndex:function(t){if(this.lengtht)throw new Error("End of data reached (data length = "+this.length+", asked index = "+t+"). Corrupted zip ?")},setIndex:function(t){this.checkIndex(t),this.index=t},skip:function(t){this.setIndex(this.index+t)},byteAt:function(t){},readInt:function(t){var e,n=0;for(this.checkOffset(t),e=this.index+t-1;e>=this.index;e--)n=(n<<8)+this.byteAt(e);return this.index+=t,n},readString:function(t){return i.transformTo("string",this.readData(t))},readData:function(t){},lastIndexOfSignature:function(t){},readDate:function(){var t=this.readInt(4);return new Date((t>>25&127)+1980,(t>>21&15)-1,t>>16&31,t>>11&31,t>>5&63,(31&t)<<1)}},e.exports=r},{"./utils":21}],6:[function(t,e,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!1,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],7:[function(t,e,n){"use strict";var r=t("./utils");n.string2binary=function(t){return r.string2binary(t)},n.string2Uint8Array=function(t){return r.transformTo("uint8array",t)},n.uint8Array2String=function(t){return r.transformTo("string",t)},n.string2Blob=function(t){var e=r.transformTo("arraybuffer",t);return r.arrayBuffer2Blob(e)},n.arrayBuffer2Blob=function(t){return r.arrayBuffer2Blob(t)},n.transformTo=function(t,e){return r.transformTo(t,e)},n.getTypeOf=function(t){return r.getTypeOf(t)},n.checkSupport=function(t){return r.checkSupport(t)},n.MAX_VALUE_16BITS=r.MAX_VALUE_16BITS,n.MAX_VALUE_32BITS=r.MAX_VALUE_32BITS,n.pretty=function(t){return r.pretty(t)},n.findCompression=function(t){return r.findCompression(t)},n.isRegExp=function(t){return r.isRegExp(t)}},{"./utils":21}],8:[function(t,e,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=t("pako");n.uncompressInputType=r?"uint8array":"array",n.compressInputType=r?"uint8array":"array",n.magic="\b\x00",n.compress=function(t,e){return i.deflateRaw(t,{level:e.level||-1})},n.uncompress=function(t){return i.inflateRaw(t)}},{pako:24}],9:[function(t,e,n){"use strict";function r(t,e){return this instanceof r?(this.files={},this.comment=null,this.root="",t&&this.load(t,e),void(this.clone=function(){var t=new r;for(var e in this)"function"!=typeof this[e]&&(t[e]=this[e]);return t})):new r(t,e)}var i=t("./base64");r.prototype=t("./object"),r.prototype.load=t("./load"),r.support=t("./support"),r.defaults=t("./defaults"),r.utils=t("./deprecatedPublicUtils"),r.base64={encode:function(t){return i.encode(t)},decode:function(t){return i.decode(t)}},r.compressions=t("./compressions"),e.exports=r},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(t,e,n){"use strict";var r=t("./base64"),i=t("./zipEntries");e.exports=function(t,e){var n,o,a,s;for(e=e||{},e.base64&&(t=r.decode(t)),o=new i(t,e),n=o.files,a=0;an;n++)r+=String.fromCharCode(255&t),t>>>=8;return r},b=function(){var t,e,n={};for(t=0;t0?t.substring(0,e):""},C=function(t){return"/"!=t.slice(-1)&&(t+="/"),t},E=function(t,e){return e="undefined"!=typeof e?e:!1,t=C(t),this.files[t]||_.call(this,t,null,{dir:!0,createFolders:e}),this.files[t]},k=function(t,e,n){var r,a=new l;return t._data instanceof l?(a.uncompressedSize=t._data.uncompressedSize,a.crc32=t._data.crc32,0===a.uncompressedSize||t.dir?(e=c.STORE,a.compressedContent="",a.crc32=0):t._data.compressionMethod===e.magic?a.compressedContent=t._data.getCompressedContent():(r=t._data.getContent(),a.compressedContent=e.compress(i.transformTo(e.compressInputType,r),n))):(r=v(t),(!r||0===r.length||t.dir)&&(e=c.STORE,r=""),a.uncompressedSize=r.length,a.crc32=o(r),a.compressedContent=e.compress(i.transformTo(e.compressInputType,r),n)),a.compressedSize=a.compressedContent.length,a.compressionMethod=e.magic,a},A=function(t,e){var n=t;return t||(n=e?16893:33204),(65535&n)<<16},S=function(t,e){return 63&(t||0)},T=function(t,e,n,r,s){var u,c,l,f,d=(n.compressedContent,i.transformTo("string",h.utf8encode(e.name))),p=e.comment||"",m=i.transformTo("string",h.utf8encode(p)),v=d.length!==e.name.length,g=m.length!==p.length,$=e.options,b="",w="",_="";l=e._initialMetadata.dir!==e.dir?e.dir:$.dir,f=e._initialMetadata.date!==e.date?e.date:$.date;var x=0,C=0;l&&(x|=16),"UNIX"===s?(C=798,x|=A(e.unixPermissions,l)):(C=20,x|=S(e.dosPermissions,l)),u=f.getHours(),u<<=6,u|=f.getMinutes(),u<<=5,u|=f.getSeconds()/2,c=f.getFullYear()-1980,c<<=4,c|=f.getMonth()+1,c<<=5,c|=f.getDate(),v&&(w=y(1,1)+y(o(d),4)+d,b+="up"+y(w.length,2)+w),g&&(_=y(1,1)+y(this.crc32(m),4)+m,b+="uc"+y(_.length,2)+_);var E="";E+="\n\x00",E+=v||g?"\x00\b":"\x00\x00",E+=n.compressionMethod,E+=y(u,2),E+=y(c,2),E+=y(n.crc32,4),E+=y(n.compressedSize,4),E+=y(n.uncompressedSize,4),E+=y(d.length,2),E+=y(b.length,2);var k=a.LOCAL_FILE_HEADER+E+d+b,T=a.CENTRAL_FILE_HEADER+y(C,2)+E+y(m.length,2)+"\x00\x00\x00\x00"+y(x,4)+y(r,4)+d+b+m;return{fileRecord:k,dirRecord:T,compressedObject:n}},O={load:function(t,e){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(t){var e,n,r,i,o=[];for(e in this.files)this.files.hasOwnProperty(e)&&(r=this.files[e],i=new $(r.name,r._data,b(r.options)),n=e.slice(this.root.length,e.length),e.slice(0,this.root.length)===this.root&&t(n,i)&&o.push(i));return o},file:function(t,e,n){if(1===arguments.length){if(i.isRegExp(t)){var r=t;return this.filter(function(t,e){return!e.dir&&r.test(t)})}return this.filter(function(e,n){return!n.dir&&e===t})[0]||null}return t=this.root+t,_.call(this,t,e,n),this},folder:function(t){if(!t)return this;if(i.isRegExp(t))return this.filter(function(e,n){return n.dir&&t.test(e)});var e=this.root+t,n=E.call(this,e),r=this.clone();return r.root=n.name,r},remove:function(t){t=this.root+t;var e=this.files[t];if(e||("/"!=t.slice(-1)&&(t+="/"),e=this.files[t]),e&&!e.dir)delete this.files[t];else for(var n=this.filter(function(e,n){return n.name.slice(0,t.length)===t}),r=0;r=0;--o)if(this.data[o]===e&&this.data[o+1]===n&&this.data[o+2]===r&&this.data[o+3]===i)return o;return-1},r.prototype.readData=function(t){if(this.checkOffset(t),0===t)return new Uint8Array(0);var e=this.data.subarray(this.index,this.index+t);return this.index+=t,e},e.exports=r},{"./dataReader":5}],19:[function(t,e,n){"use strict";var r=t("./utils"),i=function(t){this.data=new Uint8Array(t),this.index=0};i.prototype={append:function(t){0!==t.length&&(t=r.transformTo("uint8array",t),this.data.set(t,this.index),this.index+=t.length)},finalize:function(){return this.data}},e.exports=i},{"./utils":21}],20:[function(t,e,n){"use strict";for(var r=t("./utils"),i=t("./support"),o=t("./nodeBuffer"),a=new Array(256),s=0;256>s;s++)a[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;a[254]=a[254]=1;var u=function(t){var e,n,r,o,a,s=t.length,u=0;for(o=0;s>o;o++)n=t.charCodeAt(o),55296===(64512&n)&&s>o+1&&(r=t.charCodeAt(o+1),56320===(64512&r)&&(n=65536+(n-55296<<10)+(r-56320),o++)),u+=128>n?1:2048>n?2:65536>n?3:4;for(e=i.uint8array?new Uint8Array(u):new Array(u),a=0,o=0;u>a;o++)n=t.charCodeAt(o),55296===(64512&n)&&s>o+1&&(r=t.charCodeAt(o+1),56320===(64512&r)&&(n=65536+(n-55296<<10)+(r-56320),o++)),128>n?e[a++]=n:2048>n?(e[a++]=192|n>>>6,e[a++]=128|63&n):65536>n?(e[a++]=224|n>>>12,e[a++]=128|n>>>6&63,e[a++]=128|63&n):(e[a++]=240|n>>>18,e[a++]=128|n>>>12&63,e[a++]=128|n>>>6&63,e[a++]=128|63&n);return e},c=function(t,e){var n;for(e=e||t.length,e>t.length&&(e=t.length),n=e-1;n>=0&&128===(192&t[n]);)n--;return 0>n?e:0===n?e:n+a[t[n]]>e?n:e},l=function(t){var e,n,i,o,s=t.length,u=new Array(2*s);for(n=0,e=0;s>e;)if(i=t[e++],128>i)u[n++]=i;else if(o=a[i],o>4)u[n++]=65533,e+=o-1;else{for(i&=2===o?31:3===o?15:7;o>1&&s>e;)i=i<<6|63&t[e++],o--;o>1?u[n++]=65533:65536>i?u[n++]=i:(i-=65536,u[n++]=55296|i>>10&1023,u[n++]=56320|1023&i)}return u.length!==n&&(u.subarray?u=u.subarray(0,n):u.length=n),r.applyFromCharCode(u)};n.utf8encode=function(t){return i.nodebuffer?o(t,"utf-8"):u(t)},n.utf8decode=function(t){if(i.nodebuffer)return r.transformTo("nodebuffer",t).toString("utf-8");t=r.transformTo(i.uint8array?"uint8array":"array",t);for(var e=[],n=0,o=t.length,a=65536;o>n;){var s=c(t,Math.min(n+a,o));i.uint8array?e.push(l(t.subarray(n,s))):e.push(l(t.slice(n,s))),n=s}return e.join("")}},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(t,e,n){"use strict";function r(t){return t}function i(t,e){for(var n=0;na&&e>1;)try{"array"===o||"nodebuffer"===o?r.push(String.fromCharCode.apply(null,t.slice(a,Math.min(a+e,i)))):r.push(String.fromCharCode.apply(null,t.subarray(a,Math.min(a+e,i)))),a+=e}catch(u){e=Math.floor(e/2)}return r.join("")}function a(t,e){for(var n=0;ne?"0":"")+e.toString(16).toUpperCase();return r},n.findCompression=function(t){for(var e in u)if(u.hasOwnProperty(e)&&u[e].magic===t)return u[e];return null},n.isRegExp=function(t){return"[object RegExp]"===Object.prototype.toString.call(t)}},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(t,e,n){"use strict";function r(t,e){this.files=[],this.loadOptions=e,t&&this.load(t)}var i=t("./stringReader"),o=t("./nodeBufferReader"),a=t("./uint8ArrayReader"),s=t("./utils"),u=t("./signature"),c=t("./zipEntry"),l=t("./support"),f=t("./object");r.prototype={checkSignature:function(t){var e=this.reader.readString(4);if(e!==t)throw new Error("Corrupted zip or bug : unexpected signature ("+s.pretty(e)+", expected "+s.pretty(t)+")")},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2),this.zipComment=this.reader.readString(this.zipCommentLength),this.zipComment=f.utf8decode(this.zipComment)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var t,e,n,r=this.zip64EndOfCentralSize-44,i=0;r>i;)t=this.reader.readInt(2),e=this.reader.readInt(4),n=this.reader.readString(e),this.zip64ExtensibleData[t]={id:t,length:e,value:n}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var t,e;for(t=0;t>8;this.dir=16&this.externalFileAttributes?!0:!1,t===u&&(this.dosPermissions=63&this.externalFileAttributes),t===c&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileName.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(t){if(this.extraFields[1]){var e=new i(this.extraFields[1].value);this.uncompressedSize===o.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===o.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===o.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===o.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(t){var e,n,r,i=t.index;for(this.extraFields=this.extraFields||{};t.index0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var n=a.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(n!==d)throw new Error(c[n]);e.header&&a.deflateSetHeader(this.strm,e.header)};$.prototype.push=function(t,e){var n,r,i=this.strm,o=this.options.chunkSize;if(this.ended)return!1;r=e===~~e?e:e===!0?h:f,"string"==typeof t?i.input=u.string2buf(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;do{if(0===i.avail_out&&(i.output=new s.Buf8(o),i.next_out=0,i.avail_out=o),n=a.deflate(i,r),n!==p&&n!==d)return this.onEnd(n),this.ended=!0,!1;(0===i.avail_out||0===i.avail_in&&r===h)&&("string"===this.options.to?this.onData(u.buf2binstring(s.shrinkBuf(i.output,i.next_out))):this.onData(s.shrinkBuf(i.output,i.next_out)))}while((i.avail_in>0||0===i.avail_out)&&n!==p);return r===h?(n=a.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===d):!0},$.prototype.onData=function(t){this.chunks.push(t)},$.prototype.onEnd=function(t){t===d&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=s.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},n.Deflate=$,n.deflate=r,n.deflateRaw=i,n.gzip=o},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(t,e,n){"use strict";function r(t,e){var n=new h(e);if(n.push(t,!0),n.err)throw n.msg;return n.result}function i(t,e){return e=e||{},e.raw=!0,r(t,e)}var o=t("./zlib/inflate.js"),a=t("./utils/common"),s=t("./utils/strings"),u=t("./zlib/constants"),c=t("./zlib/messages"),l=t("./zlib/zstream"),f=t("./zlib/gzheader"),h=function(t){this.options=a.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0===(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var n=o.inflateInit2(this.strm,e.windowBits);if(n!==u.Z_OK)throw new Error(c[n]);this.header=new f,o.inflateGetHeader(this.strm,this.header)};h.prototype.push=function(t,e){var n,r,i,c,l,f=this.strm,h=this.options.chunkSize;if(this.ended)return!1;r=e===~~e?e:e===!0?u.Z_FINISH:u.Z_NO_FLUSH,"string"==typeof t?f.input=s.binstring2buf(t):f.input=t,f.next_in=0,f.avail_in=f.input.length;do{if(0===f.avail_out&&(f.output=new a.Buf8(h),f.next_out=0,f.avail_out=h),n=o.inflate(f,u.Z_NO_FLUSH),n!==u.Z_STREAM_END&&n!==u.Z_OK)return this.onEnd(n),this.ended=!0,!1;f.next_out&&(0===f.avail_out||n===u.Z_STREAM_END||0===f.avail_in&&r===u.Z_FINISH)&&("string"===this.options.to?(i=s.utf8border(f.output,f.next_out),c=f.next_out-i,l=s.buf2string(f.output,i),f.next_out=c,f.avail_out=h-c,c&&a.arraySet(f.output,f.output,i,c,0),this.onData(l)):this.onData(a.shrinkBuf(f.output,f.next_out)))}while(f.avail_in>0&&n!==u.Z_STREAM_END);return n===u.Z_STREAM_END&&(r=u.Z_FINISH),r===u.Z_FINISH?(n=o.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===u.Z_OK):!0},h.prototype.onData=function(t){this.chunks.push(t)},h.prototype.onEnd=function(t){t===u.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=a.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg; +},n.Inflate=h,n.inflate=r,n.inflateRaw=i,n.ungzip=r},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(t,e,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;n.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var n=e.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}}return t},n.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var i={arraySet:function(t,e,n,r,i){if(e.subarray&&t.subarray)return void t.set(e.subarray(n,n+r),i);for(var o=0;r>o;o++)t[i+o]=e[n+o]},flattenChunks:function(t){var e,n,r,i,o,a;for(r=0,e=0,n=t.length;n>e;e++)r+=t[e].length;for(a=new Uint8Array(r),i=0,e=0,n=t.length;n>e;e++)o=t[e],a.set(o,i),i+=o.length;return a}},o={arraySet:function(t,e,n,r,i){for(var o=0;r>o;o++)t[i+o]=e[n+o]},flattenChunks:function(t){return[].concat.apply([],t)}};n.setTyped=function(t){t?(n.Buf8=Uint8Array,n.Buf16=Uint16Array,n.Buf32=Int32Array,n.assign(n,i)):(n.Buf8=Array,n.Buf16=Array,n.Buf32=Array,n.assign(n,o))},n.setTyped(r)},{}],28:[function(t,e,n){"use strict";function r(t,e){if(65537>e&&(t.subarray&&a||!t.subarray&&o))return String.fromCharCode.apply(null,i.shrinkBuf(t,e));for(var n="",r=0;e>r;r++)n+=String.fromCharCode(t[r]);return n}var i=t("./common"),o=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(s){o=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(s){a=!1}for(var u=new i.Buf8(256),c=0;256>c;c++)u[c]=c>=252?6:c>=248?5:c>=240?4:c>=224?3:c>=192?2:1;u[254]=u[254]=1,n.string2buf=function(t){var e,n,r,o,a,s=t.length,u=0;for(o=0;s>o;o++)n=t.charCodeAt(o),55296===(64512&n)&&s>o+1&&(r=t.charCodeAt(o+1),56320===(64512&r)&&(n=65536+(n-55296<<10)+(r-56320),o++)),u+=128>n?1:2048>n?2:65536>n?3:4;for(e=new i.Buf8(u),a=0,o=0;u>a;o++)n=t.charCodeAt(o),55296===(64512&n)&&s>o+1&&(r=t.charCodeAt(o+1),56320===(64512&r)&&(n=65536+(n-55296<<10)+(r-56320),o++)),128>n?e[a++]=n:2048>n?(e[a++]=192|n>>>6,e[a++]=128|63&n):65536>n?(e[a++]=224|n>>>12,e[a++]=128|n>>>6&63,e[a++]=128|63&n):(e[a++]=240|n>>>18,e[a++]=128|n>>>12&63,e[a++]=128|n>>>6&63,e[a++]=128|63&n);return e},n.buf2binstring=function(t){return r(t,t.length)},n.binstring2buf=function(t){for(var e=new i.Buf8(t.length),n=0,r=e.length;r>n;n++)e[n]=t.charCodeAt(n);return e},n.buf2string=function(t,e){var n,i,o,a,s=e||t.length,c=new Array(2*s);for(i=0,n=0;s>n;)if(o=t[n++],128>o)c[i++]=o;else if(a=u[o],a>4)c[i++]=65533,n+=a-1;else{for(o&=2===a?31:3===a?15:7;a>1&&s>n;)o=o<<6|63&t[n++],a--;a>1?c[i++]=65533:65536>o?c[i++]=o:(o-=65536,c[i++]=55296|o>>10&1023,c[i++]=56320|1023&o)}return r(c,i)},n.utf8border=function(t,e){var n;for(e=e||t.length,e>t.length&&(e=t.length),n=e-1;n>=0&&128===(192&t[n]);)n--;return 0>n?e:0===n?e:n+u[t[n]]>e?n:e}},{"./common":27}],29:[function(t,e,n){"use strict";function r(t,e,n,r){for(var i=65535&t|0,o=t>>>16&65535|0,a=0;0!==n;){a=n>2e3?2e3:n,n-=a;do i=i+e[r++]|0,o=o+i|0;while(--a);i%=65521,o%=65521}return i|o<<16|0}e.exports=r},{}],30:[function(t,e,n){e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],31:[function(t,e,n){"use strict";function r(){for(var t,e=[],n=0;256>n;n++){t=n;for(var r=0;8>r;r++)t=1&t?3988292384^t>>>1:t>>>1;e[n]=t}return e}function i(t,e,n,r){var i=o,a=r+n;t=-1^t;for(var s=r;a>s;s++)t=t>>>8^i[255&(t^e[s])];return-1^t}var o=r();e.exports=i},{}],32:[function(t,e,n){"use strict";function r(t,e){return t.msg=z[e],e}function i(t){return(t<<1)-(t>4?9:0)}function o(t){for(var e=t.length;--e>=0;)t[e]=0}function a(t){var e=t.state,n=e.pending;n>t.avail_out&&(n=t.avail_out),0!==n&&(S.arraySet(t.output,e.pending_buf,e.pending_out,n,t.next_out),t.next_out+=n,e.pending_out+=n,t.total_out+=n,t.avail_out-=n,e.pending-=n,0===e.pending&&(e.pending_out=0))}function s(t,e){T._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,a(t.strm)}function u(t,e){t.pending_buf[t.pending++]=e}function c(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function l(t,e,n,r){var i=t.avail_in;return i>r&&(i=r),0===i?0:(t.avail_in-=i,S.arraySet(e,t.input,t.next_in,i,n),1===t.state.wrap?t.adler=O(t.adler,e,i,n):2===t.state.wrap&&(t.adler=I(t.adler,e,i,n)),t.next_in+=i,t.total_in+=i,i)}function f(t,e){var n,r,i=t.max_chain_length,o=t.strstart,a=t.prev_length,s=t.nice_match,u=t.strstart>t.w_size-ct?t.strstart-(t.w_size-ct):0,c=t.window,l=t.w_mask,f=t.prev,h=t.strstart+ut,d=c[o+a-1],p=c[o+a];t.prev_length>=t.good_match&&(i>>=2),s>t.lookahead&&(s=t.lookahead);do if(n=e,c[n+a]===p&&c[n+a-1]===d&&c[n]===c[o]&&c[++n]===c[o+1]){o+=2,n++;do;while(c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&c[++o]===c[++n]&&h>o);if(r=ut-(h-o),o=h-ut,r>a){if(t.match_start=e,a=r,r>=s)break;d=c[o+a-1],p=c[o+a]}}while((e=f[e&l])>u&&0!==--i);return a<=t.lookahead?a:t.lookahead}function h(t){var e,n,r,i,o,a=t.w_size;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=a+(a-ct)){S.arraySet(t.window,t.window,a,a,0),t.match_start-=a,t.strstart-=a,t.block_start-=a,n=t.hash_size,e=n;do r=t.head[--e],t.head[e]=r>=a?r-a:0;while(--n);n=a,e=n;do r=t.prev[--e],t.prev[e]=r>=a?r-a:0;while(--n);i+=a}if(0===t.strm.avail_in)break;if(n=l(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=n,t.lookahead+t.insert>=st)for(o=t.strstart-t.insert,t.ins_h=t.window[o],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(n=t.pending_buf_size-5);;){if(t.lookahead<=1){if(h(t),0===t.lookahead&&e===M)return $t;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var r=t.block_start+n;if((0===t.strstart||t.strstart>=r)&&(t.lookahead=t.strstart-r,t.strstart=r,s(t,!1),0===t.strm.avail_out))return $t;if(t.strstart-t.block_start>=t.w_size-ct&&(s(t,!1),0===t.strm.avail_out))return $t}return t.insert=0,e===N?(s(t,!0),0===t.strm.avail_out?bt:wt):t.strstart>t.block_start&&(s(t,!1),0===t.strm.avail_out)?$t:$t}function p(t,e){for(var n,r;;){if(t.lookahead=st&&(t.ins_h=(t.ins_h<=st)if(r=T._tr_tally(t,t.strstart-t.match_start,t.match_length-st),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=st){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=st&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=st-1)),t.prev_length>=st&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-st,r=T._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-st),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=i&&(t.ins_h=(t.ins_h<=st&&t.strstart>0&&(i=t.strstart-1,r=a[i],r===a[++i]&&r===a[++i]&&r===a[++i])){o=t.strstart+ut;do;while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&o>i);t.match_length=ut-(o-i),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=st?(n=T._tr_tally(t,1,t.match_length-st),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(n=T._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),n&&(s(t,!1),0===t.strm.avail_out))return $t}return t.insert=0,e===N?(s(t,!0),0===t.strm.avail_out?bt:wt):t.last_lit&&(s(t,!1),0===t.strm.avail_out)?$t:yt}function g(t,e){for(var n;;){if(0===t.lookahead&&(h(t),0===t.lookahead)){if(e===M)return $t;break}if(t.match_length=0,n=T._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,n&&(s(t,!1),0===t.strm.avail_out))return $t}return t.insert=0,e===N?(s(t,!0),0===t.strm.avail_out?bt:wt):t.last_lit&&(s(t,!1),0===t.strm.avail_out)?$t:yt}function $(t){t.window_size=2*t.w_size,o(t.head),t.max_lazy_match=A[t.level].max_lazy,t.good_match=A[t.level].good_length,t.nice_match=A[t.level].nice_length,t.max_chain_length=A[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=st-1,t.match_available=0,t.ins_h=0}function y(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=G,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new S.Buf16(2*ot),this.dyn_dtree=new S.Buf16(2*(2*rt+1)),this.bl_tree=new S.Buf16(2*(2*it+1)),o(this.dyn_ltree),o(this.dyn_dtree),o(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new S.Buf16(at+1),this.heap=new S.Buf16(2*nt+1),o(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new S.Buf16(2*nt+1),o(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function b(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=Z,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?ft:vt,t.adler=2===e.wrap?0:1,e.last_flush=M,T._tr_init(e),P):r(t,B)}function w(t){var e=b(t);return e===P&&$(t.state),e}function _(t,e){return t&&t.state?2!==t.state.wrap?B:(t.state.gzhead=e,P):B}function x(t,e,n,i,o,a){if(!t)return B;var s=1;if(e===V&&(e=6),0>i?(s=0,i=-i):i>15&&(s=2,i-=16),1>o||o>K||n!==G||8>i||i>15||0>e||e>9||0>a||a>X)return r(t,B);8===i&&(i=9);var u=new y;return t.state=u,u.strm=t,u.wrap=s,u.gzhead=null,u.w_bits=i,u.w_size=1<>1,u.l_buf=3*u.lit_bufsize,u.level=e,u.strategy=a,u.method=n,w(t)}function C(t,e){return x(t,e,G,J,Q,Y)}function E(t,e){var n,s,l,f;if(!t||!t.state||e>R||0>e)return t?r(t,B):B;if(s=t.state,!t.output||!t.input&&0!==t.avail_in||s.status===gt&&e!==N)return r(t,0===t.avail_out?U:B);if(s.strm=t,n=s.last_flush,s.last_flush=e,s.status===ft)if(2===s.wrap)t.adler=0,u(s,31),u(s,139),u(s,8),s.gzhead?(u(s,(s.gzhead.text?1:0)+(s.gzhead.hcrc?2:0)+(s.gzhead.extra?4:0)+(s.gzhead.name?8:0)+(s.gzhead.comment?16:0)),u(s,255&s.gzhead.time),u(s,s.gzhead.time>>8&255),u(s,s.gzhead.time>>16&255),u(s,s.gzhead.time>>24&255),u(s,9===s.level?2:s.strategy>=H||s.level<2?4:0),u(s,255&s.gzhead.os),s.gzhead.extra&&s.gzhead.extra.length&&(u(s,255&s.gzhead.extra.length),u(s,s.gzhead.extra.length>>8&255)),s.gzhead.hcrc&&(t.adler=I(t.adler,s.pending_buf,s.pending,0)),s.gzindex=0,s.status=ht):(u(s,0),u(s,0),u(s,0),u(s,0),u(s,0),u(s,9===s.level?2:s.strategy>=H||s.level<2?4:0),u(s,_t),s.status=vt);else{var h=G+(s.w_bits-8<<4)<<8,d=-1;d=s.strategy>=H||s.level<2?0:s.level<6?1:6===s.level?2:3,h|=d<<6,0!==s.strstart&&(h|=lt),h+=31-h%31,s.status=vt,c(s,h),0!==s.strstart&&(c(s,t.adler>>>16),c(s,65535&t.adler)),t.adler=1}if(s.status===ht)if(s.gzhead.extra){for(l=s.pending;s.gzindex<(65535&s.gzhead.extra.length)&&(s.pending!==s.pending_buf_size||(s.gzhead.hcrc&&s.pending>l&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),a(t),l=s.pending,s.pending!==s.pending_buf_size));)u(s,255&s.gzhead.extra[s.gzindex]),s.gzindex++;s.gzhead.hcrc&&s.pending>l&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),s.gzindex===s.gzhead.extra.length&&(s.gzindex=0,s.status=dt)}else s.status=dt;if(s.status===dt)if(s.gzhead.name){l=s.pending;do{if(s.pending===s.pending_buf_size&&(s.gzhead.hcrc&&s.pending>l&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),a(t),l=s.pending,s.pending===s.pending_buf_size)){f=1;break}f=s.gzindexl&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),0===f&&(s.gzindex=0,s.status=pt)}else s.status=pt;if(s.status===pt)if(s.gzhead.comment){l=s.pending;do{if(s.pending===s.pending_buf_size&&(s.gzhead.hcrc&&s.pending>l&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),a(t),l=s.pending,s.pending===s.pending_buf_size)){f=1;break}f=s.gzindexl&&(t.adler=I(t.adler,s.pending_buf,s.pending-l,l)),0===f&&(s.status=mt)}else s.status=mt;if(s.status===mt&&(s.gzhead.hcrc?(s.pending+2>s.pending_buf_size&&a(t),s.pending+2<=s.pending_buf_size&&(u(s,255&t.adler),u(s,t.adler>>8&255),t.adler=0,s.status=vt)):s.status=vt),0!==s.pending){if(a(t),0===t.avail_out)return s.last_flush=-1,P}else if(0===t.avail_in&&i(e)<=i(n)&&e!==N)return r(t,U);if(s.status===gt&&0!==t.avail_in)return r(t,U);if(0!==t.avail_in||0!==s.lookahead||e!==M&&s.status!==gt){var p=s.strategy===H?g(s,e):s.strategy===W?v(s,e):A[s.level].func(s,e);if((p===bt||p===wt)&&(s.status=gt),p===$t||p===bt)return 0===t.avail_out&&(s.last_flush=-1),P;if(p===yt&&(e===D?T._tr_align(s):e!==R&&(T._tr_stored_block(s,0,0,!1),e===j&&(o(s.head),0===s.lookahead&&(s.strstart=0,s.block_start=0,s.insert=0))),a(t),0===t.avail_out))return s.last_flush=-1,P}return e!==N?P:s.wrap<=0?F:(2===s.wrap?(u(s,255&t.adler),u(s,t.adler>>8&255),u(s,t.adler>>16&255),u(s,t.adler>>24&255),u(s,255&t.total_in),u(s,t.total_in>>8&255),u(s,t.total_in>>16&255),u(s,t.total_in>>24&255)):(c(s,t.adler>>>16),c(s,65535&t.adler)),a(t),s.wrap>0&&(s.wrap=-s.wrap),0!==s.pending?P:F)}function k(t){var e;return t&&t.state?(e=t.state.status,e!==ft&&e!==ht&&e!==dt&&e!==pt&&e!==mt&&e!==vt&&e!==gt?r(t,B):(t.state=null,e===vt?r(t,L):P)):B}var A,S=t("../utils/common"),T=t("./trees"),O=t("./adler32"),I=t("./crc32"),z=t("./messages"),M=0,D=1,j=3,N=4,R=5,P=0,F=1,B=-2,L=-3,U=-5,V=-1,q=1,H=2,W=3,X=4,Y=0,Z=2,G=8,K=9,J=15,Q=8,tt=29,et=256,nt=et+1+tt,rt=30,it=19,ot=2*nt+1,at=15,st=3,ut=258,ct=ut+st+1,lt=32,ft=42,ht=69,dt=73,pt=91,mt=103,vt=113,gt=666,$t=1,yt=2,bt=3,wt=4,_t=3,xt=function(t,e,n,r,i){this.good_length=t,this.max_lazy=e,this.nice_length=n,this.max_chain=r,this.func=i};A=[new xt(0,0,0,0,d),new xt(4,4,8,4,p),new xt(4,5,16,8,p),new xt(4,6,32,32,p),new xt(4,4,16,16,m),new xt(8,16,32,32,m),new xt(8,16,128,128,m),new xt(8,32,128,256,m),new xt(32,128,258,1024,m),new xt(32,258,258,4096,m)],n.deflateInit=C,n.deflateInit2=x,n.deflateReset=w,n.deflateResetKeep=b,n.deflateSetHeader=_,n.deflate=E,n.deflateEnd=k,n.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(t,e,n){"use strict";function r(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}e.exports=r},{}],34:[function(t,e,n){"use strict";var r=30,i=12;e.exports=function(t,e){var n,o,a,s,u,c,l,f,h,d,p,m,v,g,$,y,b,w,_,x,C,E,k,A,S;n=t.state,o=t.next_in,A=t.input,a=o+(t.avail_in-5),s=t.next_out,S=t.output,u=s-(e-t.avail_out),c=s+(t.avail_out-257),l=n.dmax,f=n.wsize,h=n.whave,d=n.wnext,p=n.window,m=n.hold,v=n.bits,g=n.lencode,$=n.distcode,y=(1<v&&(m+=A[o++]<>>24,m>>>=_,v-=_,_=w>>>16&255,0===_)S[s++]=65535&w;else{if(!(16&_)){if(0===(64&_)){w=g[(65535&w)+(m&(1<<_)-1)];continue e}if(32&_){n.mode=i;break t}t.msg="invalid literal/length code",n.mode=r;break t}x=65535&w,_&=15,_&&(_>v&&(m+=A[o++]<>>=_,v-=_),15>v&&(m+=A[o++]<>>24,m>>>=_,v-=_,_=w>>>16&255,!(16&_)){if(0===(64&_)){w=$[(65535&w)+(m&(1<<_)-1)];continue n}t.msg="invalid distance code",n.mode=r;break t}if(C=65535&w,_&=15,_>v&&(m+=A[o++]<v&&(m+=A[o++]<l){t.msg="invalid distance too far back",n.mode=r;break t}if(m>>>=_,v-=_,_=s-u,C>_){if(_=C-_,_>h&&n.sane){t.msg="invalid distance too far back",n.mode=r;break t}if(E=0,k=p,0===d){if(E+=f-_,x>_){x-=_;do S[s++]=p[E++];while(--_);E=s-C,k=S}}else if(_>d){if(E+=f+d-_,_-=d,x>_){x-=_;do S[s++]=p[E++];while(--_);if(E=0,x>d){_=d,x-=_;do S[s++]=p[E++];while(--_);E=s-C,k=S}}}else if(E+=d-_,x>_){x-=_;do S[s++]=p[E++];while(--_);E=s-C,k=S}for(;x>2;)S[s++]=k[E++],S[s++]=k[E++],S[s++]=k[E++],x-=3;x&&(S[s++]=k[E++],x>1&&(S[s++]=k[E++]))}else{E=s-C;do S[s++]=S[E++],S[s++]=S[E++],S[s++]=S[E++],x-=3;while(x>2);x&&(S[s++]=S[E++],x>1&&(S[s++]=S[E++]))}break}}break}}while(a>o&&c>s);x=v>>3,o-=x,v-=x<<3,m&=(1<o?5+(a-o):5-(o-a),t.avail_out=c>s?257+(c-s):257-(s-c),n.hold=m,n.bits=v}},{}],35:[function(t,e,n){"use strict";function r(t){return(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function i(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new g.Buf16(320),this.work=new g.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function o(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=N,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new g.Buf32(pt),e.distcode=e.distdyn=new g.Buf32(mt),e.sane=1,e.back=-1,S):I}function a(t){var e;return t&&t.state?(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,o(t)):I}function s(t,e){var n,r;return t&&t.state?(r=t.state,0>e?(n=0,e=-e):(n=(e>>4)+1,48>e&&(e&=15)),e&&(8>e||e>15)?I:(null!==r.window&&r.wbits!==e&&(r.window=null),r.wrap=n,r.wbits=e,a(t))):I}function u(t,e){var n,r;return t?(r=new i,t.state=r,r.window=null,n=s(t,e),n!==S&&(t.state=null),n):I}function c(t){return u(t,gt)}function l(t){if($t){var e;for(m=new g.Buf32(512),v=new g.Buf32(32),e=0;144>e;)t.lens[e++]=8;for(;256>e;)t.lens[e++]=9;for(;280>e;)t.lens[e++]=7;for(;288>e;)t.lens[e++]=8;for(w(x,t.lens,0,288,m,0,t.work,{bits:9}),e=0;32>e;)t.lens[e++]=5;w(C,t.lens,0,32,v,0,t.work,{bits:5}),$t=!1}t.lencode=m,t.lenbits=9,t.distcode=v,t.distbits=5}function f(t,e,n,r){var i,o=t.state;return null===o.window&&(o.wsize=1<=o.wsize?(g.arraySet(o.window,e,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>r&&(i=r),g.arraySet(o.window,e,n-r,i,o.wnext),r-=i,r?(g.arraySet(o.window,e,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whaved;){if(0===u)break t;u--,h+=i[a++]<>>8&255,n.check=y(n.check,At,2,0),h=0,d=0,n.mode=R;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",n.mode=ft;break}if((15&h)!==j){t.msg="unknown compression method",n.mode=ft;break}if(h>>>=4,d-=4,_t=(15&h)+8,0===n.wbits)n.wbits=_t;else if(_t>n.wbits){t.msg="invalid window size",n.mode=ft;break}n.dmax=1<<_t,t.adler=n.check=1,n.mode=512&h?H:X,h=0,d=0;break;case R:for(;16>d;){if(0===u)break t;u--,h+=i[a++]<>8&1),512&n.flags&&(At[0]=255&h,At[1]=h>>>8&255,n.check=y(n.check,At,2,0)),h=0,d=0,n.mode=P;case P:for(;32>d;){if(0===u)break t;u--,h+=i[a++]<>>8&255,At[2]=h>>>16&255,At[3]=h>>>24&255,n.check=y(n.check,At,4,0)),h=0,d=0,n.mode=F;case F:for(;16>d;){if(0===u)break t;u--,h+=i[a++]<>8),512&n.flags&&(At[0]=255&h,At[1]=h>>>8&255,n.check=y(n.check,At,2,0)),h=0,d=0,n.mode=B;case B:if(1024&n.flags){for(;16>d;){if(0===u)break t;u--,h+=i[a++]<>>8&255,n.check=y(n.check,At,2,0)),h=0,d=0}else n.head&&(n.head.extra=null);n.mode=L;case L:if(1024&n.flags&&(v=n.length,v>u&&(v=u),v&&(n.head&&(_t=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),g.arraySet(n.head.extra,i,a,v,_t)),512&n.flags&&(n.check=y(n.check,i,v,a)),u-=v,a+=v,n.length-=v),n.length))break t;n.length=0,n.mode=U;case U:if(2048&n.flags){if(0===u)break t;v=0;do _t=i[a+v++],n.head&&_t&&n.length<65536&&(n.head.name+=String.fromCharCode(_t));while(_t&&u>v);if(512&n.flags&&(n.check=y(n.check,i,v,a)),u-=v,a+=v,_t)break t}else n.head&&(n.head.name=null);n.length=0,n.mode=V;case V:if(4096&n.flags){if(0===u)break t;v=0;do _t=i[a+v++],n.head&&_t&&n.length<65536&&(n.head.comment+=String.fromCharCode(_t));while(_t&&u>v);if(512&n.flags&&(n.check=y(n.check,i,v,a)),u-=v,a+=v,_t)break t}else n.head&&(n.head.comment=null);n.mode=q;case q:if(512&n.flags){for(;16>d;){if(0===u)break t;u--,h+=i[a++]<>9&1,n.head.done=!0),t.adler=n.check=0,n.mode=X;break;case H:for(;32>d;){if(0===u)break t;u--,h+=i[a++]<>>=7&d,d-=7&d,n.mode=ut;break}for(;3>d;){if(0===u)break t;u--,h+=i[a++]<>>=1,d-=1,3&h){case 0:n.mode=Z;break;case 1:if(l(n),n.mode=et,e===A){h>>>=2,d-=2;break t}break;case 2:n.mode=J;break;case 3:t.msg="invalid block type",n.mode=ft}h>>>=2,d-=2;break;case Z:for(h>>>=7&d,d-=7&d;32>d;){if(0===u)break t;u--,h+=i[a++]<>>16^65535)){t.msg="invalid stored block lengths",n.mode=ft;break}if(n.length=65535&h,h=0,d=0,n.mode=G,e===A)break t;case G:n.mode=K;case K:if(v=n.length){if(v>u&&(v=u),v>c&&(v=c),0===v)break t;g.arraySet(o,i,a,v,s),u-=v,a+=v,c-=v,s+=v,n.length-=v;break}n.mode=X;break;case J:for(;14>d;){if(0===u)break t;u--,h+=i[a++]<>>=5,d-=5,n.ndist=(31&h)+1,h>>>=5,d-=5,n.ncode=(15&h)+4,h>>>=4,d-=4,n.nlen>286||n.ndist>30){t.msg="too many length or distance symbols",n.mode=ft;break}n.have=0,n.mode=Q;case Q:for(;n.haved;){if(0===u)break t;u--,h+=i[a++]<>>=3,d-=3}for(;n.have<19;)n.lens[St[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,Ct={bits:n.lenbits},xt=w(_,n.lens,0,19,n.lencode,0,n.work,Ct),n.lenbits=Ct.bits,xt){t.msg="invalid code lengths set",n.mode=ft;break}n.have=0,n.mode=tt;case tt:for(;n.have>>24,gt=kt>>>16&255,$t=65535&kt,!(d>=vt);){if(0===u)break t;u--,h+=i[a++]<$t)h>>>=vt,d-=vt,n.lens[n.have++]=$t;else{if(16===$t){for(Et=vt+2;Et>d;){if(0===u)break t;u--,h+=i[a++]<>>=vt,d-=vt,0===n.have){t.msg="invalid bit length repeat",n.mode=ft;break}_t=n.lens[n.have-1],v=3+(3&h),h>>>=2,d-=2}else if(17===$t){for(Et=vt+3;Et>d;){if(0===u)break t;u--,h+=i[a++]<>>=vt,d-=vt,_t=0,v=3+(7&h),h>>>=3,d-=3}else{for(Et=vt+7;Et>d;){if(0===u)break t;u--,h+=i[a++]<>>=vt,d-=vt,_t=0,v=11+(127&h),h>>>=7,d-=7}if(n.have+v>n.nlen+n.ndist){t.msg="invalid bit length repeat",n.mode=ft;break}for(;v--;)n.lens[n.have++]=_t}}if(n.mode===ft)break;if(0===n.lens[256]){t.msg="invalid code -- missing end-of-block",n.mode=ft;break}if(n.lenbits=9,Ct={bits:n.lenbits},xt=w(x,n.lens,0,n.nlen,n.lencode,0,n.work,Ct),n.lenbits=Ct.bits,xt){t.msg="invalid literal/lengths set",n.mode=ft;break}if(n.distbits=6,n.distcode=n.distdyn,Ct={bits:n.distbits},xt=w(C,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,Ct),n.distbits=Ct.bits,xt){t.msg="invalid distances set",n.mode=ft;break}if(n.mode=et,e===A)break t;case et:n.mode=nt;case nt:if(u>=6&&c>=258){t.next_out=s,t.avail_out=c,t.next_in=a,t.avail_in=u,n.hold=h,n.bits=d,b(t,m),s=t.next_out,o=t.output,c=t.avail_out,a=t.next_in,i=t.input,u=t.avail_in,h=n.hold,d=n.bits,n.mode===X&&(n.back=-1);break}for(n.back=0;kt=n.lencode[h&(1<>>24,gt=kt>>>16&255,$t=65535&kt,!(d>=vt);){if(0===u)break t;u--,h+=i[a++]<>yt)],vt=kt>>>24,gt=kt>>>16&255,$t=65535&kt,!(d>=yt+vt);){if(0===u)break t;u--,h+=i[a++]<>>=yt,d-=yt,n.back+=yt}if(h>>>=vt,d-=vt,n.back+=vt,n.length=$t,0===gt){n.mode=st;break}if(32>){n.back=-1,n.mode=X;break}if(64>){t.msg="invalid literal/length code",n.mode=ft;break}n.extra=15>,n.mode=rt;case rt:if(n.extra){for(Et=n.extra;Et>d;){if(0===u)break t;u--,h+=i[a++]<>>=n.extra,d-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=it;case it:for(;kt=n.distcode[h&(1<>>24,gt=kt>>>16&255,$t=65535&kt,!(d>=vt);){if(0===u)break t;u--,h+=i[a++]<>yt)],vt=kt>>>24,gt=kt>>>16&255,$t=65535&kt,!(d>=yt+vt);){if(0===u)break t;u--,h+=i[a++]<>>=yt,d-=yt,n.back+=yt}if(h>>>=vt,d-=vt,n.back+=vt,64>){t.msg="invalid distance code",n.mode=ft;break}n.offset=$t,n.extra=15>,n.mode=ot;case ot:if(n.extra){for(Et=n.extra;Et>d;){if(0===u)break t;u--,h+=i[a++]<>>=n.extra,d-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){t.msg="invalid distance too far back",n.mode=ft;break}n.mode=at;case at:if(0===c)break t;if(v=m-c,n.offset>v){if(v=n.offset-v,v>n.whave&&n.sane){t.msg="invalid distance too far back",n.mode=ft;break}v>n.wnext?(v-=n.wnext,pt=n.wsize-v):pt=n.wnext-v,v>n.length&&(v=n.length),mt=n.window}else mt=o,pt=s-n.offset,v=n.length;v>c&&(v=c),c-=v,n.length-=v;do o[s++]=mt[pt++];while(--v);0===n.length&&(n.mode=nt);break;case st:if(0===c)break t;o[s++]=n.length,c--,n.mode=nt;break;case ut:if(n.wrap){for(;32>d;){if(0===u)break t;u--,h|=i[a++]<d;){if(0===u)break t;u--,h+=i[a++]<=T;T++)L[T]=0;for(O=0;p>O;O++)L[e[n+O]]++;for(M=S,z=i;z>=1&&0===L[z];z--);if(M>z&&(M=z),0===z)return m[v++]=20971520,m[v++]=20971520,$.bits=1,0;for(I=1;z>I&&0===L[I];I++);for(I>M&&(M=I), +N=1,T=1;i>=T;T++)if(N<<=1,N-=L[T],0>N)return-1;if(N>0&&(t===s||1!==z))return-1;for(U[1]=0,T=1;i>T;T++)U[T+1]=U[T]+L[T];for(O=0;p>O;O++)0!==e[n+O]&&(g[U[e[n+O]]++]=O);if(t===s?(F=V=g,C=19):t===u?(F=l,B-=257,V=f,q-=257,C=256):(F=h,V=d,C=-1),P=0,O=0,T=I,x=v,D=M,j=0,w=-1,R=1<o||t===c&&R>a)return 1;for(var H=0;;){H++,E=T-j,g[O]C?(k=V[q+g[O]],A=F[B+g[O]]):(k=96,A=0),y=1<>j)+b]=E<<24|k<<16|A|0;while(0!==b);for(y=1<>=1;if(0!==y?(P&=y-1,P+=y):P=0,O++,0===--L[T]){if(T===z)break;T=e[n+g[O]]}if(T>M&&(P&_)!==w){for(0===j&&(j=M),x+=I,D=T-j,N=1<D+j&&(N-=L[D+j],!(0>=N));)D++,N<<=1;if(R+=1<o||t===c&&R>a)return 1;w=P&_,m[w]=M<<24|D<<16|x-v|0}}return 0!==P&&(m[x+P]=T-j<<24|64<<16|0),$.bits=M,0}},{"../utils/common":27}],37:[function(t,e,n){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(t,e,n){"use strict";function r(t){for(var e=t.length;--e>=0;)t[e]=0}function i(t){return 256>t?at[t]:at[256+(t>>>7)]}function o(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function a(t,e,n){t.bi_valid>X-n?(t.bi_buf|=e<>X-t.bi_valid,t.bi_valid+=n-X):(t.bi_buf|=e<>>=1,n<<=1;while(--e>0);return n>>>1}function c(t){16===t.bi_valid?(o(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}function l(t,e){var n,r,i,o,a,s,u=e.dyn_tree,c=e.max_code,l=e.stat_desc.static_tree,f=e.stat_desc.has_stree,h=e.stat_desc.extra_bits,d=e.stat_desc.extra_base,p=e.stat_desc.max_length,m=0;for(o=0;W>=o;o++)t.bl_count[o]=0;for(u[2*t.heap[t.heap_max]+1]=0,n=t.heap_max+1;H>n;n++)r=t.heap[n],o=u[2*u[2*r+1]+1]+1,o>p&&(o=p,m++),u[2*r+1]=o,r>c||(t.bl_count[o]++,a=0,r>=d&&(a=h[r-d]),s=u[2*r],t.opt_len+=s*(o+a),f&&(t.static_len+=s*(l[2*r+1]+a)));if(0!==m){do{for(o=p-1;0===t.bl_count[o];)o--;t.bl_count[o]--,t.bl_count[o+1]+=2,t.bl_count[p]--,m-=2}while(m>0);for(o=p;0!==o;o--)for(r=t.bl_count[o];0!==r;)i=t.heap[--n],i>c||(u[2*i+1]!==o&&(t.opt_len+=(o-u[2*i+1])*u[2*i],u[2*i+1]=o),r--)}}function f(t,e,n){var r,i,o=new Array(W+1),a=0;for(r=1;W>=r;r++)o[r]=a=a+n[r-1]<<1;for(i=0;e>=i;i++){var s=t[2*i+1];0!==s&&(t[2*i]=u(o[s]++,s))}}function h(){var t,e,n,r,i,o=new Array(W+1);for(n=0,r=0;B-1>r;r++)for(ut[r]=n,t=0;t<1<r;r++)for(ct[r]=i,t=0;t<1<>=7;V>r;r++)for(ct[r]=i<<7,t=0;t<1<=e;e++)o[e]=0;for(t=0;143>=t;)it[2*t+1]=8,t++,o[8]++;for(;255>=t;)it[2*t+1]=9,t++,o[9]++;for(;279>=t;)it[2*t+1]=7,t++,o[7]++;for(;287>=t;)it[2*t+1]=8,t++,o[8]++;for(f(it,U+1,o),t=0;V>t;t++)ot[2*t+1]=5,ot[2*t]=u(t,5);lt=new dt(it,Q,L+1,U,W),ft=new dt(ot,tt,0,V,W),ht=new dt(new Array(0),et,0,q,Y)}function d(t){var e;for(e=0;U>e;e++)t.dyn_ltree[2*e]=0;for(e=0;V>e;e++)t.dyn_dtree[2*e]=0;for(e=0;q>e;e++)t.bl_tree[2*e]=0;t.dyn_ltree[2*Z]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function p(t){t.bi_valid>8?o(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function m(t,e,n,r){p(t),r&&(o(t,n),o(t,~n)),O.arraySet(t.pending_buf,t.window,e,n,t.pending),t.pending+=n}function v(t,e,n,r){var i=2*e,o=2*n;return t[i]n;n++)0!==o[2*n]?(t.heap[++t.heap_len]=c=n,t.depth[n]=0):o[2*n+1]=0;for(;t.heap_len<2;)i=t.heap[++t.heap_len]=2>c?++c:0,o[2*i]=1,t.depth[i]=0,t.opt_len--,s&&(t.static_len-=a[2*i+1]);for(e.max_code=c,n=t.heap_len>>1;n>=1;n--)g(t,o,n);i=u;do n=t.heap[1],t.heap[1]=t.heap[t.heap_len--],g(t,o,1),r=t.heap[1],t.heap[--t.heap_max]=n,t.heap[--t.heap_max]=r,o[2*i]=o[2*n]+o[2*r],t.depth[i]=(t.depth[n]>=t.depth[r]?t.depth[n]:t.depth[r])+1,o[2*n+1]=o[2*r+1]=i,t.heap[1]=i++,g(t,o,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],l(t,e),f(o,c,t.bl_count)}function b(t,e,n){var r,i,o=-1,a=e[1],s=0,u=7,c=4;for(0===a&&(u=138,c=3),e[2*(n+1)+1]=65535,r=0;n>=r;r++)i=a,a=e[2*(r+1)+1],++ss?t.bl_tree[2*i]+=s:0!==i?(i!==o&&t.bl_tree[2*i]++,t.bl_tree[2*G]++):10>=s?t.bl_tree[2*K]++:t.bl_tree[2*J]++,s=0,o=i,0===a?(u=138,c=3):i===a?(u=6,c=3):(u=7,c=4))}function w(t,e,n){var r,i,o=-1,u=e[1],c=0,l=7,f=4;for(0===u&&(l=138,f=3),r=0;n>=r;r++)if(i=u,u=e[2*(r+1)+1],!(++cc){do s(t,i,t.bl_tree);while(0!==--c)}else 0!==i?(i!==o&&(s(t,i,t.bl_tree),c--),s(t,G,t.bl_tree),a(t,c-3,2)):10>=c?(s(t,K,t.bl_tree),a(t,c-3,3)):(s(t,J,t.bl_tree),a(t,c-11,7));c=0,o=i,0===u?(l=138,f=3):i===u?(l=6,f=3):(l=7,f=4)}}function _(t){var e;for(b(t,t.dyn_ltree,t.l_desc.max_code),b(t,t.dyn_dtree,t.d_desc.max_code),y(t,t.bl_desc),e=q-1;e>=3&&0===t.bl_tree[2*nt[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}function x(t,e,n,r){var i;for(a(t,e-257,5),a(t,n-1,5),a(t,r-4,4),i=0;r>i;i++)a(t,t.bl_tree[2*nt[i]+1],3);w(t,t.dyn_ltree,e-1),w(t,t.dyn_dtree,n-1)}function C(t){var e,n=4093624447;for(e=0;31>=e;e++,n>>>=1)if(1&n&&0!==t.dyn_ltree[2*e])return z;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return M;for(e=32;L>e;e++)if(0!==t.dyn_ltree[2*e])return M;return z}function E(t){mt||(h(),mt=!0),t.l_desc=new pt(t.dyn_ltree,lt),t.d_desc=new pt(t.dyn_dtree,ft),t.bl_desc=new pt(t.bl_tree,ht),t.bi_buf=0,t.bi_valid=0,d(t)}function k(t,e,n,r){a(t,(j<<1)+(r?1:0),3),m(t,e,n,!0)}function A(t){a(t,N<<1,3),s(t,Z,it),c(t)}function S(t,e,n,r){var i,o,s=0;t.level>0?(t.strm.data_type===D&&(t.strm.data_type=C(t)),y(t,t.l_desc),y(t,t.d_desc),s=_(t),i=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,i>=o&&(i=o)):i=o=n+5,i>=n+4&&-1!==e?k(t,e,n,r):t.strategy===I||o===i?(a(t,(N<<1)+(r?1:0),3),$(t,it,ot)):(a(t,(R<<1)+(r?1:0),3),x(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),$(t,t.dyn_ltree,t.dyn_dtree)),d(t),r&&p(t)}function T(t,e,n){return t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&n,t.last_lit++,0===e?t.dyn_ltree[2*n]++:(t.matches++,e--,t.dyn_ltree[2*(st[n]+L+1)]++,t.dyn_dtree[2*i(e)]++),t.last_lit===t.lit_bufsize-1}var O=t("../utils/common"),I=4,z=0,M=1,D=2,j=0,N=1,R=2,P=3,F=258,B=29,L=256,U=L+1+B,V=30,q=19,H=2*U+1,W=15,X=16,Y=7,Z=256,G=16,K=17,J=18,Q=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],tt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],et=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],nt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],rt=512,it=new Array(2*(U+2));r(it);var ot=new Array(2*V);r(ot);var at=new Array(rt);r(at);var st=new Array(F-P+1);r(st);var ut=new Array(B);r(ut);var ct=new Array(V);r(ct);var lt,ft,ht,dt=function(t,e,n,r,i){this.static_tree=t,this.extra_bits=e,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=t&&t.length},pt=function(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e},mt=!1;n._tr_init=E,n._tr_stored_block=k,n._tr_flush_block=S,n._tr_tally=T,n._tr_align=A},{"../utils/common":27}],39:[function(t,e,n){"use strict";function r(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}e.exports=r},{}]},{},[9])(9)}),function(t,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e(require,exports,module):t.Tether=e()}(this,function(t,e,n){return function(){var t,e,n,r,i,o,a,s,u,c,l,f,h,d,p,m,v,g={}.hasOwnProperty,$=[].indexOf||function(t){for(var e=0,n=this.length;n>e;e++)if(e in this&&this[e]===t)return e;return-1},y=[].slice;null==this.Tether&&(this.Tether={modules:[]}),l=function(t){var e,n,r,i,o;if(n=getComputedStyle(t).position,"fixed"===n)return t;for(r=void 0,e=t;e=e.parentNode;){try{i=getComputedStyle(e)}catch(a){}if(null==i)return e;if(/(auto|scroll)/.test(i.overflow+i["overflow-y"]+i["overflow-x"])&&("absolute"!==n||"relative"===(o=i.position)||"absolute"===o||"fixed"===o))return e}return document.body},p=function(){var t;return t=0,function(){return t++}}(),v={},u=function(t){var e,r,o,a,s;if(o=t._tetherZeroElement,null==o&&(o=t.createElement("div"),o.setAttribute("data-tether-id",p()),i(o.style,{top:0,left:0,position:"absolute"}),t.body.appendChild(o),t._tetherZeroElement=o),e=o.getAttribute("data-tether-id"),null==v[e]){v[e]={},s=o.getBoundingClientRect();for(r in s)a=s[r],v[e][r]=a;n(function(){return v[e]=void 0})}return v[e]},h=null,a=function(t){var e,n,r,i,o,a,s;t===document?(n=document,t=document.documentElement):n=t.ownerDocument,r=n.documentElement,e={},s=t.getBoundingClientRect();for(i in s)a=s[i],e[i]=a;return o=u(n),e.top-=o.top,e.left-=o.left,null==e.width&&(e.width=document.body.scrollWidth-e.left-e.right),null==e.height&&(e.height=document.body.scrollHeight-e.top-e.bottom),e.top=e.top-r.clientTop,e.left=e.left-r.clientLeft,e.right=n.body.clientWidth-e.width-e.left,e.bottom=n.body.clientHeight-e.height-e.top,e},s=function(t){return t.offsetParent||document.documentElement},c=function(){var t,e,n,r,o;return t=document.createElement("div"),t.style.width="100%",t.style.height="200px",e=document.createElement("div"),i(e.style,{position:"absolute",top:0,left:0,pointerEvents:"none",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),e.appendChild(t),document.body.appendChild(e),r=t.offsetWidth,e.style.overflow="scroll",o=t.offsetWidth,r===o&&(o=e.clientWidth),document.body.removeChild(e),n=r-o,{width:n,height:n}},i=function(t){var e,n,r,i,o,a,s;for(null==t&&(t={}),e=[],Array.prototype.push.apply(e,arguments),s=e.slice(1),o=0,a=s.length;a>o;o++)if(r=s[o])for(n in r)g.call(r,n)&&(i=r[n],t[n]=i);return t},d=function(t,e){var n,r,i,o,a;if(null!=t.classList){for(o=e.split(" "),a=[],r=0,i=o.length;i>r;r++)n=o[r],n.trim()&&a.push(t.classList.remove(n));return a}return t.className=t.className.replace(new RegExp("(^| )"+e.split(" ").join("|")+"( |$)","gi")," ")},e=function(t,e){var n,r,i,o,a;if(null!=t.classList){for(o=e.split(" "),a=[],r=0,i=o.length;i>r;r++)n=o[r],n.trim()&&a.push(t.classList.add(n));return a}return d(t,e),t.className+=" "+e},f=function(t,e){return null!=t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},m=function(t,n,r){var i,o,a,s,u,c;for(o=0,s=r.length;s>o;o++)i=r[o],$.call(n,i)<0&&f(t,i)&&d(t,i);for(c=[],a=0,u=n.length;u>a;a++)i=n[a],f(t,i)?c.push(void 0):c.push(e(t,i));return c},r=[],n=function(t){return r.push(t)},o=function(){var t,e;for(e=[];t=r.pop();)e.push(t());return e},t=function(){function t(){}return t.prototype.on=function(t,e,n,r){var i;return null==r&&(r=!1),null==this.bindings&&(this.bindings={}),null==(i=this.bindings)[t]&&(i[t]=[]),this.bindings[t].push({handler:e,ctx:n,once:r})},t.prototype.once=function(t,e,n){return this.on(t,e,n,!0)},t.prototype.off=function(t,e){var n,r,i;if(null!=(null!=(r=this.bindings)?r[t]:void 0)){if(null==e)return delete this.bindings[t];for(n=0,i=[];n=e&&e>=t-n},C=function(){var t,e,n,r,i;for(t=document.createElement("div"),i=["transform","webkitTransform","OTransform","MozTransform","msTransform"],n=0,r=i.length;r>n;n++)if(e=i[n],void 0!==t.style[e])return e}(),x=[],w=function(){var t,e,n;for(e=0,n=x.length;n>e;e++)t=x[e],t.position(!1);return l()},g=function(){var t;return null!=(t="undefined"!=typeof performance&&null!==performance&&"function"==typeof performance.now?performance.now():void 0)?t:+new Date},function(){var t,e,n,r,i,o,a,s,u;for(e=null,n=null,r=null,i=function(){if(null!=n&&n>16)return n=Math.min(n-16,250),void(r=setTimeout(i,250));if(!(null!=e&&g()-e<10))return null!=r&&(clearTimeout(r),r=null),e=g(),w(),n=g()-e},s=["resize","scroll","touchmove"],u=[],o=0,a=s.length;a>o;o++)t=s[o],u.push(window.addEventListener(t,i));return u}(),t={center:"center",left:"right",right:"left"},e={middle:"middle",top:"bottom",bottom:"top"},n={top:0,left:0,middle:"50%",center:"50%",bottom:"100%",right:"100%"},s=function(n,r){var i,o;return i=n.left,o=n.top,"auto"===i&&(i=t[r.left]),"auto"===o&&(o=e[r.top]),{left:i,top:o}},a=function(t){var e,r;return{left:null!=(e=n[t.left])?e:t.left,top:null!=(r=n[t.top])?r:t.top}},o=function(){var t,e,n,r,i,o,a;for(e=1<=arguments.length?T.call(arguments,0):[],n={top:0,left:0},i=0,o=e.length;o>i;i++)a=e[i],r=a.top,t=a.left,"string"==typeof r&&(r=parseFloat(r,10)),"string"==typeof t&&(t=parseFloat(t,10)),n.top+=r,n.left+=t;return n},$=function(t,e){return"string"==typeof t.left&&-1!==t.left.indexOf("%")&&(t.left=parseFloat(t.left,10)/100*e.width),"string"==typeof t.top&&-1!==t.top.indexOf("%")&&(t.top=parseFloat(t.top,10)/100*e.height),t},y=b=function(t){var e,n,r;return r=t.split(" "),n=r[0],e=r[1],{top:n,left:e}},A=function(){function t(t){this.position=O(this.position,this);var e,n,i,o,a;for(x.push(this),this.history=[],this.setOptions(t,!1),o=r.modules,n=0,i=o.length;i>n;n++)e=o[n],null!=(a=e.initialize)&&a.call(this);this.position()}return t.modules=[],t.prototype.getClass=function(t){var e,n;return(null!=(e=this.options.classes)?e[t]:void 0)?this.options.classes[t]:(null!=(n=this.options.classes)?n[t]:void 0)!==!1?this.options.classPrefix?""+this.options.classPrefix+"-"+t:t:""},t.prototype.setOptions=function(t,e){var n,r,o,a,s,u;for(this.options=t,null==e&&(e=!0),n={offset:"0 0",targetOffset:"0 0",targetAttachment:"auto auto",classPrefix:"tether"},this.options=c(n,this.options),s=this.options,this.element=s.element,this.target=s.target,this.targetModifier=s.targetModifier,"viewport"===this.target?(this.target=document.body,this.targetModifier="visible"):"scroll-handle"===this.target&&(this.target=document.body,this.targetModifier="scroll-handle"),u=["element","target"],o=0,a=u.length;a>o;o++){if(r=u[o],null==this[r])throw new Error("Tether Error: Both element and target must be defined");null!=this[r].jquery?this[r]=this[r][0]:"string"==typeof this[r]&&(this[r]=document.querySelector(this[r]))}if(i(this.element,this.getClass("element")),i(this.target,this.getClass("target")),!this.options.attachment)throw new Error("Tether Error: You must provide an attachment");return this.targetAttachment=y(this.options.targetAttachment),this.attachment=y(this.options.attachment),this.offset=b(this.options.offset),this.targetOffset=b(this.options.targetOffset),null!=this.scrollParent&&this.disable(),"scroll-handle"===this.targetModifier?this.scrollParent=this.target:this.scrollParent=m(this.target),this.options.enabled!==!1?this.enable(e):void 0},t.prototype.getTargetBounds=function(){var t,e,n,r,i,o,a,s,u;if(null==this.targetModifier)return f(this.target);switch(this.targetModifier){case"visible":return this.target===document.body?{top:pageYOffset,left:pageXOffset,height:innerHeight,width:innerWidth}:(t=f(this.target),i={height:t.height,width:t.width,top:t.top,left:t.left},i.height=Math.min(i.height,t.height-(pageYOffset-t.top)),i.height=Math.min(i.height,t.height-(t.top+t.height-(pageYOffset+innerHeight))),i.height=Math.min(innerHeight,i.height),i.height-=2,i.width=Math.min(i.width,t.width-(pageXOffset-t.left)),i.width=Math.min(i.width,t.width-(t.left+t.width-(pageXOffset+innerWidth))),i.width=Math.min(innerWidth,i.width),i.width-=2,i.topu.clientWidth||"scroll"===[s.overflow,s.overflowX]||this.target!==document.body,o=0,n&&(o=15),r=t.height-parseFloat(s.borderTopWidth)-parseFloat(s.borderBottomWidth)-o,i={width:15,height:.975*r*(r/u.scrollHeight),left:t.left+t.width-parseFloat(s.borderLeftWidth)-15},e=0,408>r&&this.target===document.body&&(e=-11e-5*Math.pow(r,2)-.00727*r+22.58),this.target!==document.body&&(i.height=Math.max(i.height,24)),a=this.target.scrollTop/(u.scrollHeight-r),i.top=a*(r-i.height-e)+t.top+parseFloat(s.borderTopWidth),this.target===document.body&&(i.height=Math.max(i.height,24)),i}},t.prototype.clearCache=function(){return this._cache={}},t.prototype.cache=function(t,e){return null==this._cache&&(this._cache={}),null==this._cache[t]&&(this._cache[t]=e.call(this)),this._cache[t]},t.prototype.enable=function(t){return null==t&&(t=!0),i(this.target,this.getClass("enabled")),i(this.element,this.getClass("enabled")),this.enabled=!0,this.scrollParent!==document&&this.scrollParent.addEventListener("scroll",this.position),t?this.position():void 0},t.prototype.disable=function(){return _(this.target,this.getClass("enabled")),_(this.element,this.getClass("enabled")),this.enabled=!1,null!=this.scrollParent?this.scrollParent.removeEventListener("scroll",this.position):void 0},t.prototype.destroy=function(){var t,e,n,r,i;for(this.disable(),i=[],t=n=0,r=x.length;r>n;t=++n){if(e=x[t],e===this){x.splice(t,1);break}i.push(void 0)}return i},t.prototype.updateAttachClasses=function(t,e){var n,r,i,o,a,s,c,l,f,h=this;for(null==t&&(t=this.attachment),null==e&&(e=this.targetAttachment),o=["left","top","bottom","right","middle","center"],(null!=(f=this._addAttachClasses)?f.length:void 0)&&this._addAttachClasses.splice(0,this._addAttachClasses.length),n=null!=this._addAttachClasses?this._addAttachClasses:this._addAttachClasses=[],t.top&&n.push(""+this.getClass("element-attached")+"-"+t.top),t.left&&n.push(""+this.getClass("element-attached")+"-"+t.left),e.top&&n.push(""+this.getClass("target-attached")+"-"+e.top),e.left&&n.push(""+this.getClass("target-attached")+"-"+e.left),r=[],a=0,c=o.length;c>a;a++)i=o[a],r.push(""+this.getClass("element-attached")+"-"+i);for(s=0,l=o.length;l>s;s++)i=o[s],r.push(""+this.getClass("target-attached")+"-"+i);return u(function(){return null!=h._addAttachClasses?(E(h.element,h._addAttachClasses,r),E(h.target,h._addAttachClasses,r),h._addAttachClasses=void 0):void 0})},t.prototype.position=function(t){var e,n,i,u,c,d,m,v,g,y,b,w,_,x,C,E,k,A,S,T,O,I,z,M,D,j,N,R,P,F,B,L,U,V,q,H=this;if(null==t&&(t=!0),this.enabled){for(this.clearCache(),T=s(this.targetAttachment,this.attachment),this.updateAttachClasses(this.attachment,T),e=this.cache("element-bounds",function(){return f(H.element)}),D=e.width,i=e.height,0===D&&0===i&&null!=this.lastSize?(F=this.lastSize,D=F.width,i=F.height):this.lastSize={width:D,height:i},z=I=this.cache("target-bounds",function(){return H.getTargetBounds()}),g=$(a(this.attachment),{width:D,height:i}),O=$(a(T),z),c=$(this.offset,{width:D,height:i}),d=$(this.targetOffset,z),g=o(g,c),O=o(O,d),u=I.left+O.left-g.left,M=I.top+O.top-g.top,B=r.modules,j=0,R=B.length;R>j;j++)if(m=B[j],C=m.position.call(this,{left:u,top:M,targetAttachment:T,targetPos:I,attachment:this.attachment,elementPos:e,offset:g,targetOffset:O,manualOffset:c,manualTargetOffset:d,scrollbarSize:A}),null!=C&&"object"==typeof C){if(C===!1)return!1;M=C.top,u=C.left}if(v={page:{top:M,left:u},viewport:{top:M-pageYOffset,bottom:pageYOffset-M-i+innerHeight,left:u-pageXOffset,right:pageXOffset-u-D+innerWidth}},document.body.scrollWidth>window.innerWidth&&(A=this.cache("scrollbar-size",p),v.viewport.bottom-=A.height),document.body.scrollHeight>window.innerHeight&&(A=this.cache("scrollbar-size",p),v.viewport.right-=A.width),(""!==(L=document.body.style.position)&&"static"!==L||""!==(U=document.body.parentElement.style.position)&&"static"!==U)&&(v.page.bottom=document.body.scrollHeight-M-i,v.page.right=document.body.scrollWidth-u-D),(null!=(V=this.options.optimizations)?V.moveElement:void 0)!==!1&&null==this.targetModifier){for(b=this.cache("target-offsetparent",function(){return h(H.target)}),x=this.cache("target-offsetparent-bounds",function(){return f(b)}),_=getComputedStyle(b),n=getComputedStyle(this.element),w=x,y={},q=["Top","Left","Bottom","Right"],N=0,P=q.length;P>N;N++)S=q[N],y[S.toLowerCase()]=parseFloat(_["border"+S+"Width"]);x.right=document.body.scrollWidth-x.left-w.width+y.right,x.bottom=document.body.scrollHeight-x.top-w.height+y.bottom,v.page.top>=x.top+y.top&&v.page.bottom>=x.bottom&&v.page.left>=x.left+y.left&&v.page.right>=x.right&&(k=b.scrollTop,E=b.scrollLeft,v.offset={top:v.page.top-x.top+k-y.top,left:v.page.left-x.left+E-y.left})}return this.move(v),this.history.unshift(v),this.history.length>3&&this.history.pop(),t&&l(),!0}},t.prototype.move=function(t){var e,n,r,i,o,a,s,l,f,d,p,m,v,g,$,y,b,w=this;if(null!=this.element.parentNode){l={};for(d in t){l[d]={};for(i in t[d]){for(r=!1,y=this.history,g=0,$=y.length;$>g;g++)if(s=y[g],!k(null!=(b=s[d])?b[i]:void 0,t[d][i])){r=!0;break}r||(l[d][i]=!0)}}e={top:"",left:"",right:"",bottom:""},f=function(t,n){var r,i,o;return(null!=(o=w.options.optimizations)?o.gpu:void 0)===!1?(t.top?e.top=""+n.top+"px":e.bottom=""+n.bottom+"px",t.left?e.left=""+n.left+"px":e.right=""+n.right+"px"):(t.top?(e.top=0,i=n.top):(e.bottom=0,i=-n.bottom),t.left?(e.left=0,r=n.left):(e.right=0,r=-n.right),e[C]="translateX("+Math.round(r)+"px) translateY("+Math.round(i)+"px)","msTransform"!==C?e[C]+=" translateZ(0)":void 0)},o=!1,(l.page.top||l.page.bottom)&&(l.page.left||l.page.right)?(e.position="absolute",f(l.page,t.page)):(l.viewport.top||l.viewport.bottom)&&(l.viewport.left||l.viewport.right)?(e.position="fixed",f(l.viewport,t.viewport)):null!=l.offset&&l.offset.top&&l.offset.left?(e.position="absolute",a=this.cache("target-offsetparent",function(){return h(w.target)}),h(this.element)!==a&&u(function(){return w.element.parentNode.removeChild(w.element),a.appendChild(w.element)}),f(l.offset,t.offset),o=!0):(e.position="absolute",f({top:!0,left:!0},t.page)),o||"BODY"===this.element.parentNode.tagName||(this.element.parentNode.removeChild(this.element),document.body.appendChild(this.element)),v={},m=!1;for(i in e)p=e[i],n=this.element.style[i],""===n||""===p||"top"!==i&&"left"!==i&&"bottom"!==i&&"right"!==i||(n=parseFloat(n),p=parseFloat(p)),n!==p&&(m=!0,v[i]=e[i]);return m?u(function(){return c(w.element.style,v)}):void 0}},t}(),r.position=w,this.Tether=c(A,r)}.call(this),function(){var t,e,n,r,i,o,a,s,u,c,l=[].indexOf||function(t){for(var e=0,n=this.length;n>e;e++)if(e in this&&this[e]===t)return e;return-1};c=this.Tether.Utils,a=c.getOuterSize,o=c.getBounds,s=c.getSize,r=c.extend,u=c.updateClasses,n=c.defer,e={left:"right",right:"left",top:"bottom",bottom:"top",middle:"middle"},t=["left","top","right","bottom"],i=function(e,n){var r,i,a,s,u,c,l;if("scrollParent"===n?n=e.scrollParent:"window"===n&&(n=[pageXOffset,pageYOffset,innerWidth+pageXOffset,innerHeight+pageYOffset]),n===document&&(n=n.documentElement),null!=n.nodeType)for(i=s=o(n),u=getComputedStyle(n),n=[i.left,i.top,s.width+i.left,s.height+i.top],r=c=0,l=t.length;l>c;r=++c)a=t[r],a=a[0].toUpperCase()+a.substr(1),"Top"===a||"Left"===a?n[r]+=parseFloat(u["border"+a+"Width"]):n[r]-=parseFloat(u["border"+a+"Width"]);return n},this.Tether.modules.push({position:function(e){var a,s,c,f,h,d,p,m,v,g,$,y,b,w,_,x,C,E,k,A,S,T,O,I,z,M,D,j,N,R,P,F,B,L,U,V,q,H,W,X,Y,Z,G,K,J,Q,tt,et=this;if(M=e.top,$=e.left,S=e.targetAttachment,!this.options.constraints)return!0;for(E=function(e){var n,r,i,o;for(et.removeClass(e),o=[],r=0,i=t.length;i>r;r++)n=t[r],o.push(et.removeClass(""+e+"-"+n));return o},X=this.cache("element-bounds",function(){return o(et.element)}),g=X.height,D=X.width,0===D&&0===g&&null!=this.lastSize&&(Y=this.lastSize,D=Y.width,g=Y.height),O=this.cache("target-bounds",function(){return et.getTargetBounds()}),T=O.height,I=O.width,A={},v={},s=[this.getClass("pinned"),this.getClass("out-of-bounds")],Z=this.options.constraints,j=0,F=Z.length;F>j;j++)m=Z[j],m.outOfBoundsClass&&s.push(m.outOfBoundsClass),m.pinnedClass&&s.push(m.pinnedClass);for(N=0,B=s.length;B>N;N++)for(p=s[N],G=["left","top","right","bottom"],R=0,L=G.length;L>R;R++)k=G[R],s.push(""+p+"-"+k);for(a=[],A=r({},S),v=r({},this.attachment),K=this.options.constraints,P=0,U=K.length;U>P;P++){if(m=K[P],z=m.to,c=m.attachment,_=m.pin,null==c&&(c=""),l.call(c," ")>=0?(J=c.split(" "),d=J[0],h=J[1]):h=d=c,f=i(this,z),("target"===d||"both"===d)&&(Mf[3]&&"bottom"===A.top&&(M-=T,A.top="top")),"together"===d&&(Mf[3]&&"bottom"===A.top&&("top"===v.top?(M-=T,A.top="top",M-=g,v.top="bottom"):"bottom"===v.top&&(M-=T,A.top="top",M+=g,v.top="top")),"middle"===A.top&&(M+g>f[3]&&"top"===v.top?(M-=g,v.top="bottom"):Mf[2]&&"right"===A.left&&($-=I,A.left="left")),"together"===h&&($f[2]&&"right"===A.left?"left"===v.left?($-=I,A.left="left",$-=D,v.left="right"):"right"===v.left&&($-=I,A.left="left",$+=D,v.left="left"):"center"===A.left&&($+D>f[2]&&"left"===v.left?($-=D,v.left="right"):$f[3]&&"top"===v.top&&(M-=g,v.top="bottom")),("element"===h||"both"===h)&&($f[2]&&"left"===v.left&&($-=D,v.left="right")),"string"==typeof _?_=function(){var t,e,n,r;for(n=_.split(","),r=[],e=0,t=n.length;t>e;e++)w=n[e],r.push(w.trim());return r}():_===!0&&(_=["top","left","right","bottom"]),_||(_=[]),x=[],y=[],M=0?(M=f[1],x.push("top")):y.push("top")),M+g>f[3]&&(l.call(_,"bottom")>=0?(M=f[3]-g,x.push("bottom")):y.push("bottom")),$=0?($=f[0],x.push("left")):y.push("left")),$+D>f[2]&&(l.call(_,"right")>=0?($=f[2]-D,x.push("right")):y.push("right")),x.length)for(C=null!=(Q=this.options.pinnedClass)?Q:this.getClass("pinned"),a.push(C),H=0,V=x.length;V>H;H++)k=x[H],a.push(""+C+"-"+k);if(y.length)for(b=null!=(tt=this.options.outOfBoundsClass)?tt:this.getClass("out-of-bounds"),a.push(b),W=0,q=y.length;q>W;W++)k=y[W],a.push(""+b+"-"+k);(l.call(x,"left")>=0||l.call(x,"right")>=0)&&(v.left=A.left=!1),(l.call(x,"top")>=0||l.call(x,"bottom")>=0)&&(v.top=A.top=!1),(A.top!==S.top||A.left!==S.left||v.top!==this.attachment.top||v.left!==this.attachment.left)&&this.updateAttachClasses(v,A)}return n(function(){return u(et.target,a,s),u(et.element,a,s)}),{top:M,left:$}}})}.call(this),function(){var t,e,n,r;r=this.Tether.Utils,e=r.getBounds,n=r.updateClasses,t=r.defer,this.Tether.modules.push({position:function(r){var i,o,a,s,u,c,l,f,h,d,p,m,v,g,$,y,b,w,_,x,C,E,k,A,S,T=this;if(p=r.top,c=r.left,C=this.cache("element-bounds",function(){return e(T.element)}),u=C.height,m=C.width,d=this.getTargetBounds(),s=p+u,l=c+m,i=[],p<=d.bottom&&s>=d.top)for(E=["left","right"],v=0,b=E.length;b>v;v++)f=E[v],((k=d[f])===c||k===l)&&i.push(f);if(c<=d.right&&l>=d.left)for(A=["top","bottom"],g=0,w=A.length;w>g;g++)f=A[g],((S=d[f])===p||S===s)&&i.push(f);for(a=[],o=[],h=["left","top","right","bottom"],a.push(this.getClass("abutted")),$=0,_=h.length;_>$;$++)f=h[$],a.push(""+this.getClass("abutted")+"-"+f);for(i.length&&o.push(this.getClass("abutted")),y=0,x=i.length;x>y;y++)f=i[y],o.push(""+this.getClass("abutted")+"-"+f);return t(function(){return n(T.target,o,a),n(T.element,o,a)}),!0}})}.call(this),function(){this.Tether.modules.push({position:function(t){var e,n,r,i,o,a,s;return a=t.top,e=t.left,this.options.shift?(n=function(t){return"function"==typeof t?t.call(this,{top:a,left:e}):t},r=n(this.options.shift),"string"==typeof r?(r=r.split(" "),r[1]||(r[1]=r[0]),o=r[0],i=r[1],o=parseFloat(o,10),i=parseFloat(i,10)):(s=[r.top,r.left],o=s[0],i=s[1]),a+=o,e+=i,{top:a,left:e}):void 0}})}.call(this),this.Tether}),function(t,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():t.viewportUnitsBuggyfillHacks=e()}(this,function(){"use strict";function t(t,o,u,c){if((e.contentHack||e.behaviorHack)&&("content"===u||"behavior"===u)){var l=e.contentHack&&!s&&"content"===u&&c.indexOf("use_css_content_hack")>-1,f=e.behaviorHack&&!a&&"behavior"===u&&c.indexOf("use_css_behavior_hack")>-1;if(l||f){var h=c.replace(r,"");f&&(h=h.replace(i,"")),h.split(";").forEach(function(e){var r=e.split(":");if(2===r.length){var i=r[0].trim(),a=r[1].trim();if("use_css_content_hack"!==i&&"use_css_behavior_hack"!==i&&(t.push([o,i,a]),n.test(a))){var s=a.replace(n,"-webkit-calc(");t.push([o,i,s])}}})}}}var e,n=/calc\(/g,r=/[\"\']/g,i=/url\([^\)]*\)/g,o=!1,a=!0,s=!0;return{required:function(t){return t.isMobileSafari||o},initialize:function(t){e=t;var n=document.createElement("div");n.style.width="1vmax",a=""!==n.style.width,e.isMobileSafari&&(s=!1)},initializeEvents:function(t,e,n){t.force||o&&!t._listeningToResize&&(window.addEventListener("resize",n,!0),t._listeningToResize=!0)},findDeclarations:function(e,n,r,i){null!==r&&t(e,n,r,i)},overwriteDeclaration:function(t,e,n){return o&&"filter"===e&&(n=n.replace(/px/g,"")),n}}}),function(t,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():t.viewportUnitsBuggyfill=e()}(this,function(){"use strict";function t(t,e){var n;return function(){var r=this,i=arguments,o=function(){t.apply(r,i)};clearTimeout(n),n=setTimeout(o,e)}}function e(){try{return window.self!==window.top}catch(t){return!0}}function n(n){y||(n===!0&&(n={force:!0}),m=n||{},m.isMobileSafari=b,(m.force||b||x||m.hacks&&m.hacks.required(m))&&(m.hacks&&m.hacks.initialize(m),y=!0,$=document.createElement("style"),$.id="patched-viewport",document.head.appendChild($),f(function(){var n=t(i,m.refreshDebounceWait||100);window.addEventListener("orientationchange",n,!0),window.addEventListener("pageshow",n,!0),(m.force||x||e())&&(window.addEventListener("resize",n,!0),m._listeningToResize=!0),m.hacks&&m.hacks.initializeEvents(m,i,n),i()})))}function r(){$.textContent=s()}function i(){y&&(o(),setTimeout(function(){r()},1))}function o(){return g=[],_.call(document.styleSheets,function(t){"patched-viewport"!==t.ownerNode.id&&t.cssRules&&(t.media&&t.media.mediaText&&window.matchMedia&&!window.matchMedia(t.media.mediaText).matches||_.call(t.cssRules,a)); +}),g}function a(t){if(7===t.type){var e=t.cssText;return w.lastIndex=0,void(w.test(e)&&(g.push([t,null,e]),m.hacks&&m.hacks.findDeclarations(g,t,null,e)))}if(!t.style){if(!t.cssRules)return;return void _.call(t.cssRules,function(t){a(t)})}_.call(t.style,function(e){var n=t.style.getPropertyValue(e);w.lastIndex=0,w.test(n)&&(g.push([t,e,n]),m.hacks&&m.hacks.findDeclarations(g,t,e,n))})}function s(){v=l();var t,e,n=[],r=[];return g.forEach(function(i){var o=u.apply(null,i),a=o.selector.length?o.selector.join(" {\n")+" {\n":"",s=new Array(o.selector.length+1).join("\n}");return a&&a===t?(a&&!t&&(t=a,e=s),void r.push(o.content)):(r.length&&(n.push(t+r.join("\n")+e),r.length=0),void(a?(t=a,e=s,r.push(o.content)):(n.push(o.content),t=null,e=null)))}),r.length&&n.push(t+r.join("\n")+e),n.join("\n\n")}function u(t,e,n){var r=n.replace(w,c),i=[];m.hacks&&(r=m.hacks.overwriteDeclaration(t,e,r)),e&&(i.push(t.selectorText),r=e+": "+r+";");for(var o=t.parentRule;o;)i.unshift("@media "+o.media.mediaText),o=o.parentRule;return{selector:i,content:r}}function c(t,e,n){var r=v[n],i=parseFloat(e)/100;return i*r+"px"}function l(){var t=window.innerHeight,e=window.innerWidth;return{vh:t,vw:e,vmax:Math.max(e,t),vmin:Math.min(e,t)}}function f(t){var e=0,n=function(){e--,e||t()};_.call(document.styleSheets,function(t){t.href&&h(t.href)!==h(location.href)&&(e++,d(t.ownerNode,n))}),e||t()}function h(t){return t.slice(0,t.indexOf("/",t.indexOf("://")+3))}function d(t,e){p(t.href,function(){var n=document.createElement("style");n.media=t.media,n.setAttribute("data-href",t.href),n.textContent=this.responseText,t.parentNode.replaceChild(n,t),e()},e)}function p(t,e,n){var r=new XMLHttpRequest;if("withCredentials"in r)r.open("GET",t,!0);else{if("undefined"==typeof XDomainRequest)throw new Error("cross-domain XHR not supported");r=new XDomainRequest,r.open("GET",t)}return r.onload=e,r.onerror=n,r.send(),r}var m,v,g,$,y=!1,b=/(iPhone|iPod|iPad).+AppleWebKit/i.test(window.navigator.userAgent),w=/([+-]?[0-9.]+)(vh|vw|vmin|vmax)/g,_=[].forEach,x=!1;return{version:"0.4.1",findProperties:o,getCss:s,init:n,refresh:i}}); \ No newline at end of file diff --git a/afb-client/dist.prod/favicon.ico b/afb-client/dist.prod/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..eeb7ab7a0612f56c8f115cb25eaf2b39c89ca690 GIT binary patch literal 1150 zcmb_bOH30{6n#TW6{x0GD3wAfpJ}Hvg9cpim5&HfkQNH1En9!f zd^95EBjCcAm}rb~DGR|JCbGeW2#dy*L=z3f0`=U22BYk}lQZ|d^WM4dzB_jq&6{yAfAdxNQiAArmJ~fK7kH==*xFb|fb_kPZ%;sao-ti+os?+WuNE@YSzC{%L?>ILs^v6(jk<; zyOLOR6q*I_{?sjo)8PtLEcOS_T(A2zM*hWgHtPEkTxD&{?vr#MKzx5<5$wRS!}N$G6K}6WPkMaDz*AXzJ*lBdsgS{eX-g%AbEaZB^`(c z!q>0~{x5?z$U*O*7+%Tk%hH(2KxP7|KoUUz-d5nB23?THf3h9pdf)}V^%L}SN2jIY zFnU-%5NQn!1Q-iqnX%<1#%A*w8*6541Qq&%KW(vqu_fGg#SV{dU%HKPJT!U08^(SD DsKEJf literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/global_styles/foundation-conf.min.css b/afb-client/dist.prod/global_styles/foundation-conf.min.css new file mode 100644 index 0000000..076aa73 --- /dev/null +++ b/afb-client/dist.prod/global_styles/foundation-conf.min.css @@ -0,0 +1,2 @@ +.block-list li>span,button[disabled],html input[disabled]{cursor:default}body,sub,sup{position:relative}.block-list .with-dropdown select,select{-webkit-appearance:none;-moz-appearance:none}h1,h2,h3,h4,h5,h6,p{text-rendering:optimizeLegibility}.action-sheet ul,.action-sheet.dark ul,.action-sheet.primary ul,.block-list,.block-list ul,.button-group,.inline-list,.menu-bar,.small-up-1,.small-up-10,.small-up-11,.small-up-12,.small-up-2,.small-up-3,.small-up-4,.small-up-6,.small-up-7,.small-up-8,.small-up-9,ul.no-bullet,ul.no-bullet li ol,ul.no-bullet li ul{list-style-type:none}.notification-icon,.v-align .align-top{align-self:flex-start}.clearfix:after,hr{clear:both}@font-face{font-family:foundation-icons;src:url(/bower_components/foundation-icons.woff) format("woff");font-weight:400;font-style:normal}.fi-address-book:before,.fi-alert:before,.fi-align-center:before,.fi-align-justify:before,.fi-align-left:before,.fi-align-right:before,.fi-anchor:before,.fi-annotate:before,.fi-archive:before,.fi-arrow-down:before,.fi-arrow-left:before,.fi-arrow-right:before,.fi-arrow-up:before,.fi-arrows-compress:before,.fi-arrows-expand:before,.fi-arrows-in:before,.fi-arrows-out:before,.fi-asl:before,.fi-asterisk:before,.fi-at-sign:before,.fi-background-color:before,.fi-battery-empty:before,.fi-battery-full:before,.fi-battery-half:before,.fi-bitcoin-circle:before,.fi-bitcoin:before,.fi-blind:before,.fi-bluetooth:before,.fi-bold:before,.fi-book-bookmark:before,.fi-book:before,.fi-bookmark:before,.fi-braille:before,.fi-burst-new:before,.fi-burst-sale:before,.fi-burst:before,.fi-calendar:before,.fi-camera:before,.fi-check:before,.fi-checkbox:before,.fi-clipboard-notes:before,.fi-clipboard-pencil:before,.fi-clipboard:before,.fi-clock:before,.fi-closed-caption:before,.fi-cloud:before,.fi-comment-minus:before,.fi-comment-quotes:before,.fi-comment-video:before,.fi-comment:before,.fi-comments:before,.fi-compass:before,.fi-contrast:before,.fi-credit-card:before,.fi-crop:before,.fi-crown:before,.fi-css3:before,.fi-database:before,.fi-die-five:before,.fi-die-four:before,.fi-die-one:before,.fi-die-six:before,.fi-die-three:before,.fi-die-two:before,.fi-dislike:before,.fi-dollar-bill:before,.fi-dollar:before,.fi-download:before,.fi-eject:before,.fi-elevator:before,.fi-euro:before,.fi-eye:before,.fi-fast-forward:before,.fi-female-symbol:before,.fi-female:before,.fi-filter:before,.fi-first-aid:before,.fi-flag:before,.fi-folder-add:before,.fi-folder-lock:before,.fi-folder:before,.fi-foot:before,.fi-foundation:before,.fi-graph-bar:before,.fi-graph-horizontal:before,.fi-graph-pie:before,.fi-graph-trend:before,.fi-guide-dog:before,.fi-hearing-aid:before,.fi-heart:before,.fi-home:before,.fi-html5:before,.fi-indent-less:before,.fi-indent-more:before,.fi-info:before,.fi-italic:before,.fi-key:before,.fi-laptop:before,.fi-layout:before,.fi-lightbulb:before,.fi-like:before,.fi-link:before,.fi-list-bullet:before,.fi-list-number:before,.fi-list-thumbnails:before,.fi-list:before,.fi-lock:before,.fi-loop:before,.fi-magnifying-glass:before,.fi-mail:before,.fi-male-female:before,.fi-male-symbol:before,.fi-male:before,.fi-map:before,.fi-marker:before,.fi-megaphone:before,.fi-microphone:before,.fi-minus-circle:before,.fi-minus:before,.fi-mobile-signal:before,.fi-mobile:before,.fi-monitor:before,.fi-mountains:before,.fi-music:before,.fi-next:before,.fi-no-dogs:before,.fi-no-smoking:before,.fi-page-add:before,.fi-page-copy:before,.fi-page-csv:before,.fi-page-delete:before,.fi-page-doc:before,.fi-page-edit:before,.fi-page-export-csv:before,.fi-page-export-doc:before,.fi-page-export-pdf:before,.fi-page-export:before,.fi-page-filled:before,.fi-page-multiple:before,.fi-page-pdf:before,.fi-page-remove:before,.fi-page-search:before,.fi-page:before,.fi-paint-bucket:before,.fi-paperclip:before,.fi-pause:before,.fi-paw:before,.fi-paypal:before,.fi-pencil:before,.fi-photo:before,.fi-play-circle:before,.fi-play-video:before,.fi-play:before,.fi-plus:before,.fi-pound:before,.fi-power:before,.fi-previous:before,.fi-price-tag:before,.fi-pricetag-multiple:before,.fi-print:before,.fi-prohibited:before,.fi-projection-screen:before,.fi-puzzle:before,.fi-quote:before,.fi-record:before,.fi-refresh:before,.fi-results-demographics:before,.fi-results:before,.fi-rewind-ten:before,.fi-rewind:before,.fi-rss:before,.fi-safety-cone:before,.fi-save:before,.fi-share:before,.fi-sheriff-badge:before,.fi-shield:before,.fi-shopping-bag:before,.fi-shopping-cart:before,.fi-shuffle:before,.fi-skull:before,.fi-social-500px:before,.fi-social-adobe:before,.fi-social-amazon:before,.fi-social-android:before,.fi-social-apple:before,.fi-social-behance:before,.fi-social-bing:before,.fi-social-blogger:before,.fi-social-delicious:before,.fi-social-designer-news:before,.fi-social-deviant-art:before,.fi-social-digg:before,.fi-social-dribbble:before,.fi-social-drive:before,.fi-social-dropbox:before,.fi-social-evernote:before,.fi-social-facebook:before,.fi-social-flickr:before,.fi-social-forrst:before,.fi-social-foursquare:before,.fi-social-game-center:before,.fi-social-github:before,.fi-social-google-plus:before,.fi-social-hacker-news:before,.fi-social-hi5:before,.fi-social-instagram:before,.fi-social-joomla:before,.fi-social-lastfm:before,.fi-social-linkedin:before,.fi-social-medium:before,.fi-social-myspace:before,.fi-social-orkut:before,.fi-social-path:before,.fi-social-picasa:before,.fi-social-pinterest:before,.fi-social-rdio:before,.fi-social-reddit:before,.fi-social-skillshare:before,.fi-social-skype:before,.fi-social-smashing-mag:before,.fi-social-snapchat:before,.fi-social-spotify:before,.fi-social-squidoo:before,.fi-social-stack-overflow:before,.fi-social-steam:before,.fi-social-stumbleupon:before,.fi-social-treehouse:before,.fi-social-tumblr:before,.fi-social-twitter:before,.fi-social-vimeo:before,.fi-social-windows:before,.fi-social-xbox:before,.fi-social-yahoo:before,.fi-social-yelp:before,.fi-social-youtube:before,.fi-social-zerply:before,.fi-social-zurb:before,.fi-sound:before,.fi-star:before,.fi-stop:before,.fi-strikethrough:before,.fi-subscript:before,.fi-superscript:before,.fi-tablet-landscape:before,.fi-tablet-portrait:before,.fi-target-two:before,.fi-target:before,.fi-telephone-accessible:before,.fi-telephone:before,.fi-text-color:before,.fi-thumbnails:before,.fi-ticket:before,.fi-torso-business:before,.fi-torso-female:before,.fi-torso:before,.fi-torsos-all-female:before,.fi-torsos-all:before,.fi-torsos-female-male:before,.fi-torsos-male-female:before,.fi-torsos:before,.fi-trash:before,.fi-trees:before,.fi-trophy:before,.fi-underline:before,.fi-universal-access:before,.fi-unlink:before,.fi-unlock:before,.fi-upload-cloud:before,.fi-upload:before,.fi-usb:before,.fi-video:before,.fi-volume-none:before,.fi-volume-strike:before,.fi-volume:before,.fi-web:before,.fi-wheelchair:before,.fi-widget:before,.fi-wrench:before,.fi-x-circle:before,.fi-x:before,.fi-yen:before,.fi-zoom-in:before,.fi-zoom-out:before{font-family:foundation-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;display:inline-block;text-decoration:inherit}.block-list header,.menu-bar>li.title,.title-bar .title,b,optgroup,strong{font-weight:700}.fi-address-book:before{content:"\f100"}.fi-alert:before{content:"\f101"}.fi-align-center:before{content:"\f102"}.fi-align-justify:before{content:"\f103"}.fi-align-left:before{content:"\f104"}.fi-align-right:before{content:"\f105"}.fi-anchor:before{content:"\f106"}.fi-annotate:before{content:"\f107"}.fi-archive:before{content:"\f108"}.fi-arrow-down:before{content:"\f109"}.fi-arrow-left:before{content:"\f10a"}.fi-arrow-right:before{content:"\f10b"}.fi-arrow-up:before{content:"\f10c"}.fi-arrows-compress:before{content:"\f10d"}.fi-arrows-expand:before{content:"\f10e"}.fi-arrows-in:before{content:"\f10f"}.fi-arrows-out:before{content:"\f110"}.fi-asl:before{content:"\f111"}.fi-asterisk:before{content:"\f112"}.fi-at-sign:before{content:"\f113"}.fi-background-color:before{content:"\f114"}.fi-battery-empty:before{content:"\f115"}.fi-battery-full:before{content:"\f116"}.fi-battery-half:before{content:"\f117"}.fi-bitcoin-circle:before{content:"\f118"}.fi-bitcoin:before{content:"\f119"}.fi-blind:before{content:"\f11a"}.fi-bluetooth:before{content:"\f11b"}.fi-bold:before{content:"\f11c"}.fi-book-bookmark:before{content:"\f11d"}.fi-book:before{content:"\f11e"}.fi-bookmark:before{content:"\f11f"}.fi-braille:before{content:"\f120"}.fi-burst-new:before{content:"\f121"}.fi-burst-sale:before{content:"\f122"}.fi-burst:before{content:"\f123"}.fi-calendar:before{content:"\f124"}.fi-camera:before{content:"\f125"}.fi-check:before{content:"\f126"}.fi-checkbox:before{content:"\f127"}.fi-clipboard-notes:before{content:"\f128"}.fi-clipboard-pencil:before{content:"\f129"}.fi-clipboard:before{content:"\f12a"}.fi-clock:before{content:"\f12b"}.fi-closed-caption:before{content:"\f12c"}.fi-cloud:before{content:"\f12d"}.fi-comment-minus:before{content:"\f12e"}.fi-comment-quotes:before{content:"\f12f"}.fi-comment-video:before{content:"\f130"}.fi-comment:before{content:"\f131"}.fi-comments:before{content:"\f132"}.fi-compass:before{content:"\f133"}.fi-contrast:before{content:"\f134"}.fi-credit-card:before{content:"\f135"}.fi-crop:before{content:"\f136"}.fi-crown:before{content:"\f137"}.fi-css3:before{content:"\f138"}.fi-database:before{content:"\f139"}.fi-die-five:before{content:"\f13a"}.fi-die-four:before{content:"\f13b"}.fi-die-one:before{content:"\f13c"}.fi-die-six:before{content:"\f13d"}.fi-die-three:before{content:"\f13e"}.fi-die-two:before{content:"\f13f"}.fi-dislike:before{content:"\f140"}.fi-dollar-bill:before{content:"\f141"}.fi-dollar:before{content:"\f142"}.fi-download:before{content:"\f143"}.fi-eject:before{content:"\f144"}.fi-elevator:before{content:"\f145"}.fi-euro:before{content:"\f146"}.fi-eye:before{content:"\f147"}.fi-fast-forward:before{content:"\f148"}.fi-female-symbol:before{content:"\f149"}.fi-female:before{content:"\f14a"}.fi-filter:before{content:"\f14b"}.fi-first-aid:before{content:"\f14c"}.fi-flag:before{content:"\f14d"}.fi-folder-add:before{content:"\f14e"}.fi-folder-lock:before{content:"\f14f"}.fi-folder:before{content:"\f150"}.fi-foot:before{content:"\f151"}.fi-foundation:before{content:"\f152"}.fi-graph-bar:before{content:"\f153"}.fi-graph-horizontal:before{content:"\f154"}.fi-graph-pie:before{content:"\f155"}.fi-graph-trend:before{content:"\f156"}.fi-guide-dog:before{content:"\f157"}.fi-hearing-aid:before{content:"\f158"}.fi-heart:before{content:"\f159"}.fi-home:before{content:"\f15a"}.fi-html5:before{content:"\f15b"}.fi-indent-less:before{content:"\f15c"}.fi-indent-more:before{content:"\f15d"}.fi-info:before{content:"\f15e"}.fi-italic:before{content:"\f15f"}.fi-key:before{content:"\f160"}.fi-laptop:before{content:"\f161"}.fi-layout:before{content:"\f162"}.fi-lightbulb:before{content:"\f163"}.fi-like:before{content:"\f164"}.fi-link:before{content:"\f165"}.fi-list-bullet:before{content:"\f166"}.fi-list-number:before{content:"\f167"}.fi-list-thumbnails:before{content:"\f168"}.fi-list:before{content:"\f169"}.fi-lock:before{content:"\f16a"}.fi-loop:before{content:"\f16b"}.fi-magnifying-glass:before{content:"\f16c"}.fi-mail:before{content:"\f16d"}.fi-male-female:before{content:"\f16e"}.fi-male-symbol:before{content:"\f16f"}.fi-male:before{content:"\f170"}.fi-map:before{content:"\f171"}.fi-marker:before{content:"\f172"}.fi-megaphone:before{content:"\f173"}.fi-microphone:before{content:"\f174"}.fi-minus-circle:before{content:"\f175"}.fi-minus:before{content:"\f176"}.fi-mobile-signal:before{content:"\f177"}.fi-mobile:before{content:"\f178"}.fi-monitor:before{content:"\f179"}.fi-mountains:before{content:"\f17a"}.fi-music:before{content:"\f17b"}.fi-next:before{content:"\f17c"}.fi-no-dogs:before{content:"\f17d"}.fi-no-smoking:before{content:"\f17e"}.fi-page-add:before{content:"\f17f"}.fi-page-copy:before{content:"\f180"}.fi-page-csv:before{content:"\f181"}.fi-page-delete:before{content:"\f182"}.fi-page-doc:before{content:"\f183"}.fi-page-edit:before{content:"\f184"}.fi-page-export-csv:before{content:"\f185"}.fi-page-export-doc:before{content:"\f186"}.fi-page-export-pdf:before{content:"\f187"}.fi-page-export:before{content:"\f188"}.fi-page-filled:before{content:"\f189"}.fi-page-multiple:before{content:"\f18a"}.fi-page-pdf:before{content:"\f18b"}.fi-page-remove:before{content:"\f18c"}.fi-page-search:before{content:"\f18d"}.fi-page:before{content:"\f18e"}.fi-paint-bucket:before{content:"\f18f"}.fi-paperclip:before{content:"\f190"}.fi-pause:before{content:"\f191"}.fi-paw:before{content:"\f192"}.fi-paypal:before{content:"\f193"}.fi-pencil:before{content:"\f194"}.fi-photo:before{content:"\f195"}.fi-play-circle:before{content:"\f196"}.fi-play-video:before{content:"\f197"}.fi-play:before{content:"\f198"}.fi-plus:before{content:"\f199"}.fi-pound:before{content:"\f19a"}.fi-power:before{content:"\f19b"}.fi-previous:before{content:"\f19c"}.fi-price-tag:before{content:"\f19d"}.fi-pricetag-multiple:before{content:"\f19e"}.fi-print:before{content:"\f19f"}.fi-prohibited:before{content:"\f1a0"}.fi-projection-screen:before{content:"\f1a1"}.fi-puzzle:before{content:"\f1a2"}.fi-quote:before{content:"\f1a3"}.fi-record:before{content:"\f1a4"}.fi-refresh:before{content:"\f1a5"}.fi-results-demographics:before{content:"\f1a6"}.fi-results:before{content:"\f1a7"}.fi-rewind-ten:before{content:"\f1a8"}.fi-rewind:before{content:"\f1a9"}.fi-rss:before{content:"\f1aa"}.fi-safety-cone:before{content:"\f1ab"}.fi-save:before{content:"\f1ac"}.fi-share:before{content:"\f1ad"}.fi-sheriff-badge:before{content:"\f1ae"}.fi-shield:before{content:"\f1af"}.fi-shopping-bag:before{content:"\f1b0"}.fi-shopping-cart:before{content:"\f1b1"}.fi-shuffle:before{content:"\f1b2"}.fi-skull:before{content:"\f1b3"}.fi-social-500px:before{content:"\f1b4"}.fi-social-adobe:before{content:"\f1b5"}.fi-social-amazon:before{content:"\f1b6"}.fi-social-android:before{content:"\f1b7"}.fi-social-apple:before{content:"\f1b8"}.fi-social-behance:before{content:"\f1b9"}.fi-social-bing:before{content:"\f1ba"}.fi-social-blogger:before{content:"\f1bb"}.fi-social-delicious:before{content:"\f1bc"}.fi-social-designer-news:before{content:"\f1bd"}.fi-social-deviant-art:before{content:"\f1be"}.fi-social-digg:before{content:"\f1bf"}.fi-social-dribbble:before{content:"\f1c0"}.fi-social-drive:before{content:"\f1c1"}.fi-social-dropbox:before{content:"\f1c2"}.fi-social-evernote:before{content:"\f1c3"}.fi-social-facebook:before{content:"\f1c4"}.fi-social-flickr:before{content:"\f1c5"}.fi-social-forrst:before{content:"\f1c6"}.fi-social-foursquare:before{content:"\f1c7"}.fi-social-game-center:before{content:"\f1c8"}.fi-social-github:before{content:"\f1c9"}.fi-social-google-plus:before{content:"\f1ca"}.fi-social-hacker-news:before{content:"\f1cb"}.fi-social-hi5:before{content:"\f1cc"}.fi-social-instagram:before{content:"\f1cd"}.fi-social-joomla:before{content:"\f1ce"}.fi-social-lastfm:before{content:"\f1cf"}.fi-social-linkedin:before{content:"\f1d0"}.fi-social-medium:before{content:"\f1d1"}.fi-social-myspace:before{content:"\f1d2"}.fi-social-orkut:before{content:"\f1d3"}.fi-social-path:before{content:"\f1d4"}.fi-social-picasa:before{content:"\f1d5"}.fi-social-pinterest:before{content:"\f1d6"}.fi-social-rdio:before{content:"\f1d7"}.fi-social-reddit:before{content:"\f1d8"}.fi-social-skillshare:before{content:"\f1d9"}.fi-social-skype:before{content:"\f1da"}.fi-social-smashing-mag:before{content:"\f1db"}.fi-social-snapchat:before{content:"\f1dc"}.fi-social-spotify:before{content:"\f1dd"}.fi-social-squidoo:before{content:"\f1de"}.fi-social-stack-overflow:before{content:"\f1df"}.fi-social-steam:before{content:"\f1e0"}.fi-social-stumbleupon:before{content:"\f1e1"}.fi-social-treehouse:before{content:"\f1e2"}.fi-social-tumblr:before{content:"\f1e3"}.fi-social-twitter:before{content:"\f1e4"}.fi-social-vimeo:before{content:"\f1e5"}.fi-social-windows:before{content:"\f1e6"}.fi-social-xbox:before{content:"\f1e7"}.fi-social-yahoo:before{content:"\f1e8"}.fi-social-yelp:before{content:"\f1e9"}.fi-social-youtube:before{content:"\f1ea"}.fi-social-zerply:before{content:"\f1eb"}.fi-social-zurb:before{content:"\f1ec"}.fi-sound:before{content:"\f1ed"}.fi-star:before{content:"\f1ee"}.fi-stop:before{content:"\f1ef"}.fi-strikethrough:before{content:"\f1f0"}.fi-subscript:before{content:"\f1f1"}.fi-superscript:before{content:"\f1f2"}.fi-tablet-landscape:before{content:"\f1f3"}.fi-tablet-portrait:before{content:"\f1f4"}.fi-target-two:before{content:"\f1f5"}.fi-target:before{content:"\f1f6"}.fi-telephone-accessible:before{content:"\f1f7"}.fi-telephone:before{content:"\f1f8"}.fi-text-color:before{content:"\f1f9"}.fi-thumbnails:before{content:"\f1fa"}.fi-ticket:before{content:"\f1fb"}.fi-torso-business:before{content:"\f1fc"}.fi-torso-female:before{content:"\f1fd"}.fi-torso:before{content:"\f1fe"}.fi-torsos-all-female:before{content:"\f1ff"}.fi-torsos-all:before{content:"\f200"}.fi-torsos-female-male:before{content:"\f201"}.fi-torsos-male-female:before{content:"\f202"}.fi-torsos:before{content:"\f203"}.fi-trash:before{content:"\f204"}.fi-trees:before{content:"\f205"}.fi-trophy:before{content:"\f206"}.fi-underline:before{content:"\f207"}.fi-universal-access:before{content:"\f208"}.fi-unlink:before{content:"\f209"}.fi-unlock:before{content:"\f20a"}.fi-upload-cloud:before{content:"\f20b"}.fi-upload:before{content:"\f20c"}.fi-usb:before{content:"\f20d"}.fi-video:before{content:"\f20e"}.fi-volume-none:before{content:"\f20f"}.fi-volume-strike:before{content:"\f210"}.fi-volume:before{content:"\f211"}.fi-web:before{content:"\f212"}.fi-wheelchair:before{content:"\f213"}.fi-widget:before{content:"\f214"}.fi-wrench:before{content:"\f215"}.fi-x-circle:before{content:"\f216"}.fi-x:before{content:"\f217"}.fi-yen:before{content:"\f218"}.fi-zoom-in:before{content:"\f219"}.fi-zoom-out:before{content:"\f21a"}/*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;vertical-align:baseline}.iconic,img{vertical-align:middle}sup{top:-.5em}sub{bottom:-.25em}img{border:0;max-width:100%;height:auto;-ms-interpolation-mode:bicubic;display:inline-block}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}body,p{font-weight:400}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}table{border-collapse:collapse;border-spacing:0}meta.foundation-version{font-family:"1.1.0"}meta.foundation-mq{font-family:"small=0&medium=40rem&large=75rem&xlarge=90rem&xxlarge=120rem"}body,html{height:100%;font-size:100%}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{background:#fff;color:#222;padding:0;margin:0;font-family:"Helvetica Neue",Helvetica,Helvetica,Arial,sans-serif;font-style:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[ui-sref],[zf-close],[zf-open],[zf-toggle],a{cursor:pointer}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object{max-width:none!important}.padding{padding:1rem}.iconic{width:1rem;height:1rem}a>.iconic{margin-top:-2px;margin-right:.25rem}.iconic *,.iconic .iconic-property-accent,.iconic-color-primary *,.iconic-color-primary .iconic-property-accent,a>.iconic *,a>.iconic .iconic-property-accent{fill:#00558b;stroke:#00558b}.iconic-color-success *,.iconic-color-success .iconic-property-accent{fill:#43AC6A;stroke:#43AC6A}.iconic-color-warning *,.iconic-color-warning .iconic-property-accent{fill:#F08A24;stroke:#F08A24}.iconic-color-alert *,.iconic-color-alert .iconic-property-accent{fill:#F04124;stroke:#F04124}.iconic-color-dark *,.iconic-color-dark .iconic-property-accent{fill:#232323;stroke:#232323}.iconic-color-secondary *,.iconic-color-secondary .iconic-property-accent{fill:#f1f1f1;stroke:#f1f1f1}.action-sheet-container{position:relative;display:inline-block}.action-sheet-container .button{margin-left:0;margin-right:0}.action-sheet{position:fixed;left:0;z-index:1000;width:100%;padding:1rem;background:#fff;text-align:center;transition-property:transform opacity;transition-duration:.25s;transition-timing-function:ease-out;box-shadow:0 -3px 10px rgba(0,0,0,.25);bottom:0;transform:translateY(100%)}.action-sheet.is-active{transform:translateY(0)}.action-sheet ul{margin:0 -1rem -1rem;user-select:none}.action-sheet ul:first-child{margin-top:-1rem}.action-sheet ul:first-child li:first-child{border-top:0}.action-sheet ul a{display:block;padding:.8rem;line-height:1;color:#000;border-top:1px solid #ccc}.action-sheet ul a:hover{color:#000;background:#f2f2f2}.action-sheet ul .alert>a{color:#F04124}.action-sheet ul .disabled>a{pointer-events:none;color:#999}@media only screen and (min-width:40em){.action-sheet,.action-sheet.top{border-radius:4px;box-shadow:0 0 10px rgba(0,0,0,.25)}.action-sheet.top::after,.action-sheet.top::before,.action-sheet::after,.action-sheet::before{content:'';position:absolute;left:50%;display:block;height:0;border-left:10px solid transparent;border-right:10px solid transparent;margin-left:-10px}.action-sheet{position:absolute;left:50%;width:300px;opacity:0;pointer-events:none;top:auto;bottom:0;transform:translateX(-50%) translateY(110%)}.action-sheet.is-active{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(100%)}.action-sheet::after,.action-sheet::before{width:0;top:-10px;bottom:auto;border-top:0;border-bottom:10px solid #fff}.action-sheet::before{top:-12px;border-bottom-color:rgba(0,0,0,.15)}.action-sheet.top{position:absolute;left:50%;width:300px;opacity:0;pointer-events:none;top:0;bottom:auto;transform:translateX(-50%) translateY(-120%)}.action-sheet.top.is-active{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(-110%)}.action-sheet.top::after,.action-sheet.top::before{width:0;top:auto;bottom:-10px;border-top:10px solid #fff;border-bottom:0}.action-sheet.top::before{bottom:-12px;border-top-color:rgba(0,0,0,.15)}}.card,.card.primary{box-shadow:0 1px 2px rgba(0,0,0,.2);overflow:hidden}.action-sheet.primary{background:#00558b;color:#fff;border:0}.action-sheet.primary::before{display:none}.action-sheet.primary::after,.action-sheet.primary::before{border-top-color:#00558b}.action-sheet.primary.top::after,.action-sheet.primary.top::before{border-bottom-color:#00558b}.action-sheet.primary ul{margin:0 -1rem -1rem;user-select:none}.action-sheet.primary ul:first-child{margin-top:-1rem}.action-sheet.primary ul:first-child li:first-child{border-top:0}.action-sheet.primary ul a{display:block;padding:.8rem;line-height:1;color:#fff;border-top:1px solid #006cb0}.action-sheet.primary ul a:hover{color:#fff;background:#00609e}.action-sheet.primary ul .alert>a{color:#F04124}.action-sheet.primary ul .disabled>a{pointer-events:none;color:#999}.action-sheet.dark{background:#232323;color:#fff;border:0}.action-sheet.dark::before{display:none}.action-sheet.dark::after,.action-sheet.dark::before{border-top-color:#232323}.action-sheet.dark.top::after,.action-sheet.dark.top::before{border-bottom-color:#232323}.action-sheet.dark ul{margin:0 -1rem -1rem;user-select:none}.action-sheet.dark ul:first-child{margin-top:-1rem}.action-sheet.dark ul:first-child li:first-child{border-top:0}.action-sheet.dark ul a{display:block;padding:.8rem;line-height:1;color:#fff;border-top:1px solid #393939}.action-sheet.dark ul a:hover{color:#fff;background:#2e2e2e}.action-sheet.dark ul .alert>a{color:#F04124}.action-sheet.dark ul .disabled>a{pointer-events:none;color:#999}.block-list ul{margin-left:0}.block-list{margin-bottom:1rem;line-height:1;user-select:none;font-size:1rem;margin-left:-1rem;margin-right:-1rem}.block-list input[type=number],.block-list input[type=search],.block-list input[type=text],.block-list input[type=password],.block-list input[type=date],.block-list input[type=datetime],.block-list input[type=datetime-local],.block-list input[type=month],.block-list input[type=week],.block-list input[type=email],.block-list input[type=tel],.block-list input[type=time],.block-list input[type=url],.block-list input[type=color],.block-list textarea{margin:0;border:0;line-height:1;height:auto;padding:.8rem 1rem;color:inherit}.block-list input[type=number]:focus,.block-list input[type=number]:hover,.block-list input[type=search]:focus,.block-list input[type=search]:hover,.block-list input[type=text]:focus,.block-list input[type=text]:hover,.block-list input[type=password]:focus,.block-list input[type=password]:hover,.block-list input[type=date]:focus,.block-list input[type=date]:hover,.block-list input[type=datetime]:focus,.block-list input[type=datetime]:hover,.block-list input[type=datetime-local]:focus,.block-list input[type=datetime-local]:hover,.block-list input[type=month]:focus,.block-list input[type=month]:hover,.block-list input[type=week]:focus,.block-list input[type=week]:hover,.block-list input[type=email]:focus,.block-list input[type=email]:hover,.block-list input[type=tel]:focus,.block-list input[type=tel]:hover,.block-list input[type=time]:focus,.block-list input[type=time]:hover,.block-list input[type=url]:focus,.block-list input[type=url]:hover,.block-list input[type=color]:focus,.block-list input[type=color]:hover,.block-list textarea:focus,.block-list textarea:hover{border:0}.block-list li>input[type=checkbox],.block-list li>input[type=radio]{position:absolute;left:-9999px}.block-list li>input[type=checkbox]+label,.block-list li>input[type=radio]+label{display:block;font-size:1rem;margin:0}.block-list li>input[type=checkbox]:checked+label::before,.block-list li>input[type=radio]:checked+label::before{background-image:url('data:image/svg+xml;utf8,');content:'';background-size:100% 100%;width:1.5em;height:1.5em;color:#00558b;float:right;pointer-events:none;margin-top:-.25em}@media screen and (min-width:0\0){.block-list li>input[type=checkbox]:checked+label::before,.block-list li>input[type=radio]:checked+label::before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAdlJREFUeNrMl0FugzAQRY3TRZeoFyhVL0BOkGTXJezaHZwguUnECaCrdFd6gqQnCN11Uyk5QekNOlONJWMVGMCgfGlkEIY3HnsG2xFM3d96PjQB2AJsWdPtAPYOln+dTwXnuw4DHEGzBvNFN6EDCTiS9XIAwB40acNoucKoxODIie0AwAOCu8KOSnIiNx/MakK+A7sW9oTferxx3fP3T1nURoBG/irGVahHwjHm/Ggx7E3TMVdrQmoP0gngghhpZQ3QvG/EdPLUelARWI8Aycjq9Md0qMIdbcNhjmOKLoY7quk3l1Rebeqg4AwFkmq7LWGOh1pmNY0etZAWSq0OX8HoS4JvWuCopbSY26EGR/CW86K0BF+pwkLwlPuyHJhOCl5oe4ZtF++vOqST+GdOYwO+71pN2VNAjmQGPCe42weuHDg0PI8olUwnYrXTGQJH9gxq8l1LKvrQx4O6/YY32Kp/ugb3ey7gZ4xAzuhYiYTxB/UHZFAuaREVXZ2g6yFlvEC2yoKEmbsRZYNgVLk2JeaOaG+xLHN+WCszDWMqLGOrJFa1DlApjSdwoHJGqGzLIb0+cas0wh5Bh780ngswx8GJD7h8sHg2wLA/mfDLPZpdxOF0quP5rwADAAFIzSRvu1m5AAAAAElFTkSuQmCC)}}.block-list .with-dropdown{color:inherit}.block-list .with-dropdown select{outline:0;background:0;border:0;height:auto;padding:.8rem 1rem;margin:0;font-size:1em;line-height:1;color:inherit}.block-list .switch{position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.block-list.with-icons li>a,.block-list.with-icons li>label,.block-list.with-icons li>span{padding-left:2.8rem}.block-list.with-icons li .iconic,.block-list.with-icons li img{position:absolute;top:.26rem;left:.26rem;width:2.08rem;height:2.08rem;border-radius:8px;pointer-events:none}.block-list header{margin-top:1em;color:#666;margin-bottom:.5em;margin-left:1rem;font-size:.8em;cursor:default;text-transform:uppercase}.block-list li{position:relative;border-bottom:1px solid #d0d0d0}.block-list li:first-child{border-top:1px solid #d0d0d0}.block-list li>a,.block-list li>label,.block-list li>span{display:block;padding:.8rem 1rem;color:#000;line-height:1}.block-list li>a,.block-list li>label{cursor:pointer}.block-list li>a:hover,.block-list li>label:hover{color:#000}.block-list li select:hover,.block-list li>a:hover,.block-list li>label:hover{background:#f4f4f4}.block-list li.caution>a,.block-list li.caution>a:hover{color:#F04124}.block-list li.disabled>a{cursor:default}.block-list li.disabled>a,.block-list li.disabled>a:hover{color:#999}.block-list li.disabled>a:hover{background:0 0}.block-list li.with-chevron::after{content:'\203A';display:block;position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-weight:700;color:#666;font-size:2em}.block-list li.with-chevron .block-list-label{padding-right:1.5rem}.block-list li .block-list-label{display:inline-block;float:right;padding:0;color:#999;pointer-events:none}.block-list li .block-list-label.left{margin-left:.8rem;float:none}.button,.button-group>li>a,.button-group>li>button,.button-group>li>label{border:0;text-align:center;line-height:1;cursor:pointer;-webkit-appearance:none;-webkit-font-smoothing:antialiased;transition:background .25s ease-out;vertical-align:middle;padding:.85em 1em;border-radius:0}.button-group li.disabled>a,.button-group li.disabled>button,.button-group li.disabled>label,.button.disabled{opacity:.5;cursor:default;pointer-events:none}.button{font-size:.9rem;display:inline-block;width:auto;margin:0 1rem 1rem 0;background:#00558b;color:#fff}.button .iconic,.button.large .iconic,.button.small .iconic,.button.tiny .iconic{width:1em;margin-right:.25em;margin-top:-2px;height:1em;vertical-align:middle}.button:focus,.button:hover{background:#004876;color:#fff}.button .iconic *,.button .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button.tiny{font-size:.63rem}.button.small{font-size:.72rem}.button.large{font-size:1.17rem}.button.expand{display:block;width:100%;margin-left:0;margin-right:0}.button.secondary{background:#f1f1f1;color:#000}.button.secondary:focus,.button.secondary:hover{background:#cdcdcd;color:#000}.button.secondary .iconic *,.button.secondary .iconic .iconic-property-accent{fill:#000;stroke:#000}.button.alert .iconic *,.button.alert .iconic .iconic-property-accent,.button.success .iconic *,.button.success .iconic .iconic-property-accent,.button.warning .iconic *,.button.warning .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button.success{background:#43AC6A;color:#fff}.button.success:focus,.button.success:hover{background:#39925a;color:#fff}.button.warning{background:#F08A24;color:#fff}.button.warning:focus,.button.warning:hover{background:#dc750f;color:#fff}.button.alert{background:#F04124;color:#fff}.button.alert:focus,.button.alert:hover{background:#dc2c0f;color:#fff}.button.info{background:#A0D3E8;color:#000}.button.info:focus,.button.info:hover{background:#71bddd;color:#000}.button.info .iconic *,.button.info .iconic .iconic-property-accent{fill:#000;stroke:#000}.button.dark{background:#232323;color:#fff}.button.dark:focus,.button.dark:hover{background:#1e1e1e;color:#fff}.button.dark .iconic *,.button.dark .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button.hollow{border:1px solid #00558b;background:0 0;color:#00558b}.button.hollow:focus,.button.hollow:hover{border-color:#008ee8;background:0 0;color:#008ee8}.button.hollow .iconic *,.button.hollow .iconic .iconic-property-accent{fill:#00558b;stroke:#00558b}.button.hollow:hover .iconic *,.button.hollow:hover .iconic .iconic-property-accent{fill:#008ee8;stroke:#008ee8}.button.hollow.secondary{border:1px solid #f1f1f1;background:0 0;color:#f1f1f1}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#f5f5f5;background:0 0;color:#f5f5f5}.button.hollow.secondary .iconic *,.button.hollow.secondary .iconic .iconic-property-accent{fill:#f1f1f1;stroke:#f1f1f1}.button.hollow.secondary:hover .iconic *,.button.hollow.secondary:hover .iconic .iconic-property-accent{fill:#f5f5f5;stroke:#f5f5f5}.button.hollow.success{border:1px solid #43AC6A;background:0 0;color:#43AC6A}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#6dc68e;background:0 0;color:#6dc68e}.button.hollow.success .iconic *,.button.hollow.success .iconic .iconic-property-accent{fill:#43AC6A;stroke:#43AC6A}.button.hollow.success:hover .iconic *,.button.hollow.success:hover .iconic .iconic-property-accent{fill:#6dc68e;stroke:#6dc68e}.button.hollow.warning{border:1px solid #F08A24;background:0 0;color:#F08A24}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#f4a75b;background:0 0;color:#f4a75b}.button.hollow.warning .iconic *,.button.hollow.warning .iconic .iconic-property-accent{fill:#F08A24;stroke:#F08A24}.button.hollow.warning:hover .iconic *,.button.hollow.warning:hover .iconic .iconic-property-accent{fill:#f4a75b;stroke:#f4a75b}.button.hollow.alert{border:1px solid #F04124;background:0 0;color:#F04124}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#f4715b;background:0 0;color:#f4715b}.button.hollow.alert .iconic *,.button.hollow.alert .iconic .iconic-property-accent{fill:#F04124;stroke:#F04124}.button.hollow.alert:hover .iconic *,.button.hollow.alert:hover .iconic .iconic-property-accent{fill:#f4715b;stroke:#f4715b}.button.hollow.info{border:1px solid #A0D3E8;background:0 0;color:#A0D3E8}.button.hollow.info:focus,.button.hollow.info:hover{border-color:#b8deee;background:0 0;color:#b8deee}.button.hollow.info .iconic *,.button.hollow.info .iconic .iconic-property-accent{fill:#A0D3E8;stroke:#A0D3E8}.button.hollow.info:hover .iconic *,.button.hollow.info:hover .iconic .iconic-property-accent{fill:#b8deee;stroke:#b8deee}.button.hollow.dark{border:1px solid #232323;background:0 0;color:#232323}.button.hollow.dark:focus,.button.hollow.dark:hover{border-color:#5a5a5a;background:0 0;color:#5a5a5a}.button.hollow.dark .iconic *,.button.hollow.dark .iconic .iconic-property-accent{fill:#232323;stroke:#232323}.button.hollow.dark:hover .iconic *,.button.hollow.dark:hover .iconic .iconic-property-accent{fill:#5a5a5a;stroke:#5a5a5a}.button-group{margin:0 0 1rem;overflow:hidden;font-size:.9rem}.button-group>li>a,.button-group>li>button,.button-group>li>label{border-radius:0;font-size:inherit;display:block;margin:0}.button-group>li>input+label{margin-left:0}.button-group>li:not(:last-child)>a,.button-group>li:not(:last-child)>button,.button-group>li:not(:last-child)>label{border-right:1px solid #004068}.button-group .iconic{width:1em;height:1em;vertical-align:middle;margin-right:.25em;margin-top:-2px}.button-group.segmented,.button-group.segmented.alert,.button-group.segmented.secondary,.button-group.segmented.success,.button-group.segmented.warning{border:1px solid #00558b;transition-property:background color}.slideInDown.ng-enter,.slideInDown.ng-hide-remove,.slideInLeft.ng-enter,.slideInLeft.ng-hide-remove,.slideInRight.ng-enter,.slideInRight.ng-hide-remove,.slideInUp.ng-enter,.slideInUp.ng-hide-remove,.slideOutBottom.ng-hide-add,.slideOutBottom.ng-leave,.slideOutLeft.ng-hide-add,.slideOutLeft.ng-leave,.slideOutRight.ng-hide-add,.slideOutRight.ng-leave,.slideOutUp.ng-hide-add,.slideOutUp.ng-leave{transition-duration:.5s;transition-timing-function:ease;transition-delay:0;transition-property:transform,opacity}.button-group.segmented>li>input[type=radio]{position:absolute;left:-9999px}.button-group.segmented.alert>li>a,.button-group.segmented.alert>li>button,.button-group.segmented.alert>li>label,.button-group.segmented.secondary>li>a,.button-group.segmented.secondary>li>button,.button-group.segmented.secondary>li>label,.button-group.segmented.success>li>a,.button-group.segmented.success>li>button,.button-group.segmented.success>li>label,.button-group.segmented.warning>li>a,.button-group.segmented.warning>li>button,.button-group.segmented.warning>li>label,.button-group.segmented>li>a,.button-group.segmented>li>button,.button-group.segmented>li>label{margin-right:0;background:0 0}.button-group{display:inline-flex;border-radius:0}.button-group>li{flex:0 0 auto}.button-group>li>a,.button-group>li>button,.button-group>li>label{background:#00558b;color:#fff;border-color:#004876}.button-group>li>a:focus,.button-group>li>a:hover,.button-group>li>button:focus,.button-group>li>button:hover,.button-group>li>label:focus,.button-group>li>label:hover{background:#004876;color:#fff}.button-group>li>a .iconic *,.button-group>li>a .iconic .iconic-property-accent,.button-group>li>button .iconic *,.button-group>li>button .iconic .iconic-property-accent,.button-group>li>label .iconic *,.button-group>li>label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group>li.is-active>a,.button-group>li.is-active>button,.button-group>li.is-active>label{background:#004876}.button-group.secondary>li>a,.button-group.secondary>li>button,.button-group.secondary>li>label{background:#f1f1f1;color:#000;border-color:#cdcdcd}.button-group.secondary>li>a:focus,.button-group.secondary>li>a:hover,.button-group.secondary>li>button:focus,.button-group.secondary>li>button:hover,.button-group.secondary>li>label:focus,.button-group.secondary>li>label:hover{background:#cdcdcd;color:#000}.button-group.secondary>li>a .iconic *,.button-group.secondary>li>a .iconic .iconic-property-accent,.button-group.secondary>li>button .iconic *,.button-group.secondary>li>button .iconic .iconic-property-accent,.button-group.secondary>li>label .iconic *,.button-group.secondary>li>label .iconic .iconic-property-accent{fill:#000;stroke:#000}.button-group.alert>li>a .iconic *,.button-group.alert>li>a .iconic .iconic-property-accent,.button-group.alert>li>button .iconic *,.button-group.alert>li>button .iconic .iconic-property-accent,.button-group.alert>li>label .iconic *,.button-group.alert>li>label .iconic .iconic-property-accent,.button-group.success>li>a .iconic *,.button-group.success>li>a .iconic .iconic-property-accent,.button-group.success>li>button .iconic *,.button-group.success>li>button .iconic .iconic-property-accent,.button-group.success>li>label .iconic *,.button-group.success>li>label .iconic .iconic-property-accent,.button-group.warning>li>a .iconic *,.button-group.warning>li>a .iconic .iconic-property-accent,.button-group.warning>li>button .iconic *,.button-group.warning>li>button .iconic .iconic-property-accent,.button-group.warning>li>label .iconic *,.button-group.warning>li>label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group.secondary>li.is-active>a,.button-group.secondary>li.is-active>button,.button-group.secondary>li.is-active>label{background:#cdcdcd}.button-group.success>li>a,.button-group.success>li>button,.button-group.success>li>label{background:#43AC6A;color:#fff;border-color:#39925a}.button-group.success>li>a:focus,.button-group.success>li>a:hover,.button-group.success>li>button:focus,.button-group.success>li>button:hover,.button-group.success>li>label:focus,.button-group.success>li>label:hover{background:#39925a;color:#fff}.button-group.success>li.is-active>a,.button-group.success>li.is-active>button,.button-group.success>li.is-active>label{background:#39925a}.button-group.warning>li>a,.button-group.warning>li>button,.button-group.warning>li>label{background:#F08A24;color:#fff;border-color:#dc750f}.button-group.warning>li>a:focus,.button-group.warning>li>a:hover,.button-group.warning>li>button:focus,.button-group.warning>li>button:hover,.button-group.warning>li>label:focus,.button-group.warning>li>label:hover{background:#dc750f;color:#fff}.button-group.warning>li.is-active>a,.button-group.warning>li.is-active>button,.button-group.warning>li.is-active>label{background:#dc750f}.button-group.alert>li>a,.button-group.alert>li>button,.button-group.alert>li>label{background:#F04124;color:#fff;border-color:#dc2c0f}.button-group.alert>li>a:focus,.button-group.alert>li>a:hover,.button-group.alert>li>button:focus,.button-group.alert>li>button:hover,.button-group.alert>li>label:focus,.button-group.alert>li>label:hover{background:#dc2c0f;color:#fff}.button-group.alert>li.is-active>a,.button-group.alert>li.is-active>button,.button-group.alert>li.is-active>label{background:#dc2c0f}.button-group>li.secondary>a,.button-group>li.secondary>button,.button-group>li.secondary>label{background:#f1f1f1;color:#000;border-color:#f1f1f1}.button-group>li.secondary>a:focus,.button-group>li.secondary>a:hover,.button-group>li.secondary>button:focus,.button-group>li.secondary>button:hover,.button-group>li.secondary>label:focus,.button-group>li.secondary>label:hover{background:#cdcdcd;color:#000;border-color:#b5b5b5}.button-group>li.secondary>a .iconic *,.button-group>li.secondary>a .iconic .iconic-property-accent,.button-group>li.secondary>button .iconic *,.button-group>li.secondary>button .iconic .iconic-property-accent,.button-group>li.secondary>label .iconic *,.button-group>li.secondary>label .iconic .iconic-property-accent{fill:#000;stroke:#000}.button-group>li.alert>a .iconic *,.button-group>li.alert>a .iconic .iconic-property-accent,.button-group>li.alert>button .iconic *,.button-group>li.alert>button .iconic .iconic-property-accent,.button-group>li.alert>label .iconic *,.button-group>li.alert>label .iconic .iconic-property-accent,.button-group>li.success>a .iconic *,.button-group>li.success>a .iconic .iconic-property-accent,.button-group>li.success>button .iconic *,.button-group>li.success>button .iconic .iconic-property-accent,.button-group>li.success>label .iconic *,.button-group>li.success>label .iconic .iconic-property-accent,.button-group>li.warning>a .iconic *,.button-group>li.warning>a .iconic .iconic-property-accent,.button-group>li.warning>button .iconic *,.button-group>li.warning>button .iconic .iconic-property-accent,.button-group>li.warning>label .iconic *,.button-group>li.warning>label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group>li.success>a,.button-group>li.success>button,.button-group>li.success>label{background:#43AC6A;color:#fff;border-color:#43AC6A}.button-group>li.success>a:focus,.button-group>li.success>a:hover,.button-group>li.success>button:focus,.button-group>li.success>button:hover,.button-group>li.success>label:focus,.button-group>li.success>label:hover{background:#39925a;color:#fff;border-color:#328150}.button-group>li.warning>a,.button-group>li.warning>button,.button-group>li.warning>label{background:#F08A24;color:#fff;border-color:#F08A24}.button-group>li.warning>a:focus,.button-group>li.warning>a:hover,.button-group>li.warning>button:focus,.button-group>li.warning>button:hover,.button-group>li.warning>label:focus,.button-group>li.warning>label:hover{background:#dc750f;color:#fff;border-color:#c2680d}.button-group>li.alert>a,.button-group>li.alert>button,.button-group>li.alert>label{background:#F04124;color:#fff;border-color:#F04124}.button-group>li.alert>a:focus,.button-group>li.alert>a:hover,.button-group>li.alert>button:focus,.button-group>li.alert>button:hover,.button-group>li.alert>label:focus,.button-group>li.alert>label:hover{background:#dc2c0f;color:#fff;border-color:#c2270d}.button-group.segmented{border-color:#00558b}.button-group.segmented>li>a,.button-group.segmented>li>button,.button-group.segmented>li>label{border-color:#00558b;color:#00558b}.button-group.segmented>li>a:hover,.button-group.segmented>li>button:hover,.button-group.segmented>li>label:hover{background:rgba(0,85,139,.25);color:#00558b}.button-group.segmented>li>a .iconic *,.button-group.segmented>li>a .iconic .iconic-property-accent,.button-group.segmented>li>button .iconic *,.button-group.segmented>li>button .iconic .iconic-property-accent,.button-group.segmented>li>label .iconic *,.button-group.segmented>li>label .iconic .iconic-property-accent{fill:#00558b;stroke:#00558b}.button-group.segmented>li.is-active>a,.button-group.segmented>li.is-active>a:hover,.button-group.segmented>li>input:checked+label,.button-group.segmented>li>input:checked+label:hover{background:#00558b;color:#fff}.button-group.segmented>li.is-active>a .iconic *,.button-group.segmented>li.is-active>a .iconic .iconic-property-accent,.button-group.segmented>li>input:checked+label .iconic *,.button-group.segmented>li>input:checked+label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group.segmented.secondary{border-color:#f1f1f1}.button-group.segmented.secondary>li>a,.button-group.segmented.secondary>li>button,.button-group.segmented.secondary>li>label{border-color:#f1f1f1;color:#f1f1f1}.button-group.segmented.secondary>li>a:hover,.button-group.segmented.secondary>li>button:hover,.button-group.segmented.secondary>li>label:hover{background:rgba(241,241,241,.25);color:#f1f1f1}.button-group.segmented.secondary>li>a .iconic *,.button-group.segmented.secondary>li>a .iconic .iconic-property-accent,.button-group.segmented.secondary>li>button .iconic *,.button-group.segmented.secondary>li>button .iconic .iconic-property-accent,.button-group.segmented.secondary>li>label .iconic *,.button-group.segmented.secondary>li>label .iconic .iconic-property-accent{fill:#f1f1f1;stroke:#f1f1f1}.button-group.segmented.secondary>li.is-active>a,.button-group.segmented.secondary>li.is-active>a:hover,.button-group.segmented.secondary>li>input:checked+label,.button-group.segmented.secondary>li>input:checked+label:hover{background:#f1f1f1;color:#000}.button-group.segmented.secondary>li.is-active>a .iconic *,.button-group.segmented.secondary>li.is-active>a .iconic .iconic-property-accent,.button-group.segmented.secondary>li>input:checked+label .iconic *,.button-group.segmented.secondary>li>input:checked+label .iconic .iconic-property-accent{fill:#000;stroke:#000}.button-group.segmented.success{border-color:#43AC6A}.button-group.segmented.success>li>a,.button-group.segmented.success>li>button,.button-group.segmented.success>li>label{border-color:#43AC6A;color:#43AC6A}.button-group.segmented.success>li>a:hover,.button-group.segmented.success>li>button:hover,.button-group.segmented.success>li>label:hover{background:rgba(67,172,106,.25);color:#43AC6A}.button-group.segmented.success>li>a .iconic *,.button-group.segmented.success>li>a .iconic .iconic-property-accent,.button-group.segmented.success>li>button .iconic *,.button-group.segmented.success>li>button .iconic .iconic-property-accent,.button-group.segmented.success>li>label .iconic *,.button-group.segmented.success>li>label .iconic .iconic-property-accent{fill:#43AC6A;stroke:#43AC6A}.button-group.segmented.success>li.is-active>a,.button-group.segmented.success>li.is-active>a:hover,.button-group.segmented.success>li>input:checked+label,.button-group.segmented.success>li>input:checked+label:hover{background:#43AC6A;color:#fff}.button-group.segmented.success>li.is-active>a .iconic *,.button-group.segmented.success>li.is-active>a .iconic .iconic-property-accent,.button-group.segmented.success>li>input:checked+label .iconic *,.button-group.segmented.success>li>input:checked+label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group.segmented.warning{border-color:#F08A24}.button-group.segmented.warning>li>a,.button-group.segmented.warning>li>button,.button-group.segmented.warning>li>label{border-color:#F08A24;color:#F08A24}.button-group.segmented.warning>li>a:hover,.button-group.segmented.warning>li>button:hover,.button-group.segmented.warning>li>label:hover{background:rgba(240,138,36,.25);color:#F08A24}.button-group.segmented.warning>li>a .iconic *,.button-group.segmented.warning>li>a .iconic .iconic-property-accent,.button-group.segmented.warning>li>button .iconic *,.button-group.segmented.warning>li>button .iconic .iconic-property-accent,.button-group.segmented.warning>li>label .iconic *,.button-group.segmented.warning>li>label .iconic .iconic-property-accent{fill:#F08A24;stroke:#F08A24}.button-group.segmented.warning>li.is-active>a,.button-group.segmented.warning>li.is-active>a:hover,.button-group.segmented.warning>li>input:checked+label,.button-group.segmented.warning>li>input:checked+label:hover{background:#F08A24;color:#fff}.button-group.segmented.warning>li.is-active>a .iconic *,.button-group.segmented.warning>li.is-active>a .iconic .iconic-property-accent,.button-group.segmented.warning>li>input:checked+label .iconic *,.button-group.segmented.warning>li>input:checked+label .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.button-group.segmented.alert{border-color:#F04124}.button-group.segmented.alert>li>a,.button-group.segmented.alert>li>button,.button-group.segmented.alert>li>label{border-color:#F04124;color:#F04124}.button-group.segmented.alert>li>a:hover,.button-group.segmented.alert>li>button:hover,.button-group.segmented.alert>li>label:hover{background:rgba(240,65,36,.25);color:#F04124}.button-group.segmented.alert>li>a .iconic *,.button-group.segmented.alert>li>a .iconic .iconic-property-accent,.button-group.segmented.alert>li>button .iconic *,.button-group.segmented.alert>li>button .iconic .iconic-property-accent,.button-group.segmented.alert>li>label .iconic *,.button-group.segmented.alert>li>label .iconic .iconic-property-accent{fill:#F04124;stroke:#F04124}.button-group.segmented.alert>li.is-active>a .iconic *,.button-group.segmented.alert>li.is-active>a .iconic .iconic-property-accent,.button-group.segmented.alert>li>input:checked+label .iconic *,.button-group.segmented.alert>li>input:checked+label .iconic .iconic-property-accent,.title-bar.dark .iconic *,.title-bar.dark .iconic .iconic-property-accent,.title-bar.primary .iconic *,.title-bar.primary .iconic .iconic-property-accent{stroke:#fff;fill:#fff}.button-group.segmented.alert>li.is-active>a,.button-group.segmented.alert>li.is-active>a:hover,.button-group.segmented.alert>li>input:checked+label,.button-group.segmented.alert>li>input:checked+label:hover{background:#F04124;color:#fff}.button-group.tiny{font-size:.63rem}.button-group.small{font-size:.72rem}.button-group.large{font-size:1.17rem}.button-group.expand{display:flex}.button-group.expand>li{flex:1}.button-group.expand>li>a,.button-group.expand>li>button,.button-group.expand>li>label{display:block;width:100%;margin-left:0;margin-right:0}.card{border:1px solid #ededed;margin-bottom:.5rem;background:#fff;color:#000;border-radius:4px}.card h1,.card h2,.card h3,.card h4,.card h5,.card h6{color:inherit}.card ul{margin-bottom:0}.card img{width:100%}.card.primary{border:0;margin-bottom:.5rem;background:#00558b;color:#fff;border-radius:4px}.card.primary h1,.card.primary h2,.card.primary h3,.card.primary h4,.card.primary h5,.card.primary h6{color:inherit}.card.primary ul{margin-bottom:0}.card.primary img{width:100%}.card.primary .card-divider{background:#0065a5;padding:1rem}.card.success{border:0;margin-bottom:.5rem;background:#43AC6A;color:#fff;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2);overflow:hidden}.card.alert,.card.warning{border:0;box-shadow:0 1px 2px rgba(0,0,0,.2);overflow:hidden}.card.success h1,.card.success h2,.card.success h3,.card.success h4,.card.success h5,.card.success h6{color:inherit}.card.success ul{margin-bottom:0}.card.success img{width:100%}.card.success .card-divider{background:#4ab873;padding:1rem}.card.warning{margin-bottom:.5rem;background:#F08A24;color:#fff;border-radius:4px}.card.warning h1,.card.warning h2,.card.warning h3,.card.warning h4,.card.warning h5,.card.warning h6{color:inherit}.card.warning ul{margin-bottom:0}.card.warning img{width:100%}.card.warning .card-divider{background:#f19233;padding:1rem}.card.alert{margin-bottom:.5rem;background:#F04124;color:#fff;border-radius:4px}.card.alert h1,.card.alert h2,.card.alert h3,.card.alert h4,.card.alert h5,.card.alert h6{color:inherit}.card.alert ul{margin-bottom:0}.card.alert img{width:100%}.card.alert .card-divider{background:#f14e33;padding:1rem}.card.dark{border:0;margin-bottom:.5rem;background:#232323;color:#fff;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2);overflow:hidden}.card.dark h1,.card.dark h2,.card.dark h3,.card.dark h4,.card.dark h5,.card.dark h6{color:inherit}.card.dark ul{margin-bottom:0}.card.dark img{width:100%}.card.dark .card-divider{background:#323232;padding:1rem}.card-divider{background:#ededed;padding:1rem}.card-section{padding:1rem}.close-button{position:absolute;color:#999;top:1rem;right:1rem;font-size:2em;line-height:.5;cursor:pointer}.close-button:hover{color:#333}.thumbnail,ul.thumbnails>li img{padding:.5rem;box-shadow:0 3px 15px rgba(0,0,0,.25)}ul.thumbnails>li{margin-bottom:1rem}ul.thumbnails>li a{display:block}input[type=number],input[type=search],input[type=text],input[type=password],input[type=date],input[type=datetime],input[type=datetime-local],input[type=month],input[type=week],input[type=email],input[type=tel],input[type=time],input[type=url],input[type=color],textarea{-webkit-appearance:none;-moz-appearance:none;display:block;width:100%;height:2.4rem;padding:.5rem;margin:0 0 1rem;border:1px solid #ccc;border-radius:0;background:#fff;color:#000;font-size:1rem;-webkit-font-smoothing:antialiased;vertical-align:middle}label>.inline-label,label>input,label>input[type=number],label>input[type=search],label>input[type=text],label>input[type=password],label>input[type=date],label>input[type=datetime],label>input[type=datetime-local],label>input[type=month],label>input[type=week],label>input[type=email],label>input[type=tel],label>input[type=time],label>input[type=url],label>input[type=color],label>textarea{margin-top:.5rem}input[type=number]:hover,input[type=search]:hover,input[type=text]:hover,input[type=password]:hover,input[type=date]:hover,input[type=datetime]:hover,input[type=datetime-local]:hover,input[type=month]:hover,input[type=week]:hover,input[type=email]:hover,input[type=tel]:hover,input[type=time]:hover,input[type=url]:hover,input[type=color]:hover,textarea:hover{border:1px solid #bbb;background:#fff;color:#000}input[type=number]:focus,input[type=search]:focus,input[type=text]:focus,input[type=password]:focus,input[type=date]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=month]:focus,input[type=week]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=time]:focus,input[type=url]:focus,input[type=color]:focus,textarea:focus{outline:0;border:1px solid #999;background:#fff;color:#000}fieldset[disabled] input,input.disabled,input[disabled],input[readonly]{cursor:not-allowed}fieldset[disabled] input,fieldset[disabled] input:hover,input.disabled,input.disabled:hover,input[disabled],input[disabled]:hover,input[readonly],input[readonly]:hover{background-color:#f2f2f2}label{display:block;font-size:.9rem;margin-bottom:.5rem;color:#333}input[type=checkbox],input[type=radio]{width:1rem;height:1rem}label>input[type=checkbox],label>input[type=radio]{margin-right:.25rem}input[type=checkbox]+label,input[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}.inline-label{display:flex;flex-flow:row nowrap;align-items:stretch;margin-bottom:1rem}.inline-label>input,.inline-label>select{flex:1;margin:0}.inline-label>.form-label{flex:0 0 auto;background:#eee;color:#333;border:1px solid #ccc;padding:0 .5rem;display:flex;align-items:center}.inline-label>.form-label:first-child{border-right:0}.inline-label>.form-label:last-child{border-left:0}.inline-label>a,.inline-label>button,.inline-label>input[type=button],.inline-label>input[type=submit]{flex:0 0 auto;display:flex;align-items:center;padding-top:0;padding-bottom:0;margin:0;border-radius:0}textarea{height:auto;width:100%;min-height:50px}select{display:block;width:100%;height:2.4rem;padding:.5rem 1.625rem .5rem .5rem;margin:0 0 1rem;font-size:1rem;color:#000;border-radius:0;border:1px solid #ccc;background:url('data:image/svg+xml;utf8,') right 10px center no-repeat #fafafa;background-size:8px 8px}input[type=range],meter,progress{-webkit-appearance:none;-moz-appearance:none;display:block;border:0}select:hover{background-color:#f0f0f0}input[type=range]:focus,select:focus{outline:0}select::-ms-expand{display:none}input[type=range]{width:100%;height:auto;cursor:pointer;margin-top:.25rem;margin-bottom:.25rem;line-height:1}input[type=range]::-webkit-slider-runnable-track{height:1rem;background:#ddd}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#00558b;width:1.5rem;height:1.5rem;margin-top:-.25rem}input[type=range]::-moz-range-track{-moz-appearance:none;height:1rem;background:#ccc}input[type=range]::-moz-range-thumb{-moz-appearance:none;background:#00558b;width:1.5rem;height:1.5rem;margin-top:-.25rem}input[type=range]::-ms-track{height:1rem;background:#ddd;color:transparent;border:0;overflow:visible;border-top:.25rem solid #fff;border-bottom:.25rem solid #fff}input[type=range]::-ms-thumb{background:#00558b;width:1.5rem;height:1.5rem;border:0}input[type=range]::-ms-fill-lower,input[type=range]::-ms-fill-upper{background:#ddd}output{line-height:1.5rem;vertical-align:middle;margin-left:.5em}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;background:#00558b}meter,progress{width:100%;height:1.5rem;margin-bottom:1rem;background:#ccc}progress::-webkit-progress-bar{background:#ccc}progress::-webkit-progress-value{background:#00558b}progress::-moz-progress-bar{background:#00558b}progress.high::-webkit-progress-value{background:#43AC6A}progress.high::-moz-progress-bar{background:#43AC6A}progress.medium::-webkit-progress-value{background:#e7cf00}progress.medium::-moz-progress-bar{background:#e7cf00}progress.low::-webkit-progress-value{background:#F04124}progress.low::-moz-progress-bar{background:#F04124}meter{background:#ccc}meter::-webkit-meter-bar{background:#ccc}meter::-webkit-meter-optimum-value{background:#43AC6A}meter::-webkit-meter-suboptimum-value{background:#e7cf00}meter::-webkit-meter-even-less-good-value{background:#F04124}meter::-moz-meter-bar{background:#00558b}meter:-moz-meter-optimum::-moz-meter-bar{background:#43AC6A}meter:-moz-meter-sub-optimum::-moz-meter-bar{background:#e7cf00}meter:-moz-meter-sub-sub-optimum::-moz-meter-bar{background:#F04124}.panel{position:absolute;z-index:100;overflow-y:auto;display:none;padding:0;background:#fff}.is-active.panel{display:block}.panel-top{top:0;left:0;width:100%;height:300px}.panel-top.is-active{box-shadow:0 3px 10px rgba(0,0,0,.25)}.panel-right{top:0;right:0;height:100%;width:100%}@media only screen and (min-width:18.75em){.panel-right{width:300px}}.panel-right.is-active{box-shadow:-3px 0 10px rgba(0,0,0,.25)}.panel-bottom{bottom:0;left:0;width:100%;height:300px}.panel-bottom.is-active{box-shadow:2px -3px 10px rgba(0,0,0,.25)}.panel-left{top:0;left:0;height:100%;width:100%}@media only screen and (min-width:18.75em){.panel-left{width:300px}}.panel-left.is-active{box-shadow:3px 0 10px rgba(0,0,0,.25)}.small-grid-block.panel,.small-grid-content.panel{transform:none;width:auto;z-index:auto;box-shadow:none;background:0 0;top:auto;right:auto;bottom:auto;left:auto}.panel-fixed{position:fixed}.small-vertical.grid-block,.small-vertical.grid-frame,.small-vertical.large-grid-block,.small-vertical.medium-grid-block,.small-vertical.small-grid-block,.vertical.grid-block,.vertical.grid-frame,.vertical.large-grid-block,.vertical.medium-grid-block,.vertical.small-grid-block{flex-flow:column nowrap;align-items:stretch}.small-horizontal.grid-block,.small-horizontal.grid-frame,.small-horizontal.large-grid-block,.small-horizontal.medium-grid-block,.small-horizontal.small-grid-block{flex-flow:row wrap}@media only screen and (min-width:40em){.medium-vertical.grid-block,.medium-vertical.grid-frame,.medium-vertical.large-grid-block,.medium-vertical.medium-grid-block,.medium-vertical.small-grid-block{flex-flow:column nowrap;align-items:stretch}.medium-horizontal.grid-block,.medium-horizontal.grid-frame,.medium-horizontal.large-grid-block,.medium-horizontal.medium-grid-block,.medium-horizontal.small-grid-block{flex-flow:row wrap}}@media only screen and (min-width:75em){.large-vertical.grid-block,.large-vertical.grid-frame,.large-vertical.large-grid-block,.large-vertical.medium-grid-block,.large-vertical.small-grid-block{flex-flow:column nowrap;align-items:stretch}.large-horizontal.grid-block,.large-horizontal.grid-frame,.large-horizontal.large-grid-block,.large-horizontal.medium-grid-block,.large-horizontal.small-grid-block{flex-flow:row wrap}}.align-right.grid-block,.align-right.grid-frame,.align-right.large-grid-block,.align-right.medium-grid-block,.align-right.small-grid-block{justify-content:flex-end}.align-center.grid-block,.align-center.grid-frame,.align-center.large-grid-block,.align-center.medium-grid-block,.align-center.small-grid-block{justify-content:center}.align-justify.grid-block,.align-justify.grid-frame,.align-justify.large-grid-block,.align-justify.medium-grid-block,.align-justify.small-grid-block{justify-content:space-between}.align-spaced.grid-block,.align-spaced.grid-frame,.align-spaced.large-grid-block,.align-spaced.medium-grid-block,.align-spaced.small-grid-block{justify-content:space-around}.wrap.grid-block,.wrap.grid-frame,.wrap.large-grid-block,.wrap.medium-grid-block,.wrap.small-grid-block{flex-wrap:wrap;align-items:flex-start}.shrink.grid-block,.shrink.grid-content,.shrink.large-grid-block,.shrink.large-grid-content,.shrink.medium-grid-block,.shrink.medium-grid-content,.shrink.small-grid-block,.shrink.small-grid-content{flex:0 0 auto}.grid-block,.grid-frame{display:flex;overflow:hidden;flex:1 1 auto;order:0;backface-visibility:hidden}.noscroll.grid-block,.noscroll.grid-content,.noscroll.large-grid-block,.noscroll.large-grid-content,.noscroll.medium-grid-block,.noscroll.medium-grid-content,.noscroll.small-grid-block,.noscroll.small-grid-content{overflow:hidden}.grid-frame{height:100vh;position:relative;flex-flow:row wrap;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start}.grid-block,.small-grid-block,.small-grid-block.panel,.small-grid-content.panel{height:auto;position:relative}.grid-block{flex-flow:row wrap;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.grid-content{display:block;padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;flex:1 1 auto}.grid-content.collapse{padding:0}.grid-content .grid-block{margin-left:-1rem;margin-right:-1rem;flex-wrap:wrap;overflow:visible}.grid-content .grid-block.nowrap{flex-wrap:nowrap;align-items:stretch}.grid-content .grid-block .grid-content{overflow:visible}.grid-container{max-width:56.25rem;margin:0 auto}.grid-container.contain-left{max-width:56.25rem;margin:0 auto 0 0}.grid-container.contain-right{max-width:56.25rem;margin:0 0 0 auto}.small-grid-block{display:flex;overflow:hidden;backface-visibility:hidden;flex:1 1 auto;flex-flow:row wrap;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;order:0;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.small-grid-content{display:block;padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;flex:1 1 auto}@media only screen and (min-width:40em){.medium-grid-block{display:flex;position:relative;overflow:hidden;backface-visibility:hidden;flex:1 1 auto;flex-flow:row wrap;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;order:0;height:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.medium-grid-block.panel{transform:none;position:relative;width:auto;height:auto;z-index:auto;box-shadow:none;background:0 0;top:auto;right:auto;bottom:auto;left:auto}.medium-grid-content{display:block;padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;flex:1 1 auto}.medium-grid-content.panel{transform:none;position:relative;width:auto;height:auto;z-index:auto;box-shadow:none;background:0 0;top:auto;right:auto;bottom:auto;left:auto}}@media only screen and (min-width:75em){.large-grid-block{display:flex;position:relative;overflow:hidden;backface-visibility:hidden;flex:1 1 auto;flex-flow:row wrap;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;order:0;height:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.large-grid-block.panel{transform:none;position:relative;width:auto;height:auto;z-index:auto;box-shadow:none;background:0 0;top:auto;right:auto;bottom:auto;left:auto}.large-grid-content{display:block;padding:0 1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;flex:1 1 auto}.large-grid-content.panel{transform:none;position:relative;width:auto;height:auto;z-index:auto;box-shadow:none;background:0 0;top:auto;right:auto;bottom:auto;left:auto}}.small-up-1,.small-up-10,.small-up-11,.small-up-12,.small-up-2,.small-up-3,.small-up-4,.small-up-5,.small-up-6,.small-up-8,.small-up-9,.title-bar,.title-bar .center,.title-bar .left,.title-bar .right{overflow:visible}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.small-1{flex:0 0 8.33333%;max-width:8.33333%}.small-order-1{order:1}.small-offset-1{margin-left:8.33333%}.small-up-1{flex-flow:row wrap}.small-up-1>div,.small-up-1>li,.small-up-1>section{padding:0 1rem 1rem;flex:0 0 100%}.small-2{flex:0 0 16.66667%;max-width:16.66667%}.small-order-2{order:2}.small-offset-2{margin-left:16.66667%}.small-up-2{flex-flow:row wrap}.small-up-2>div,.small-up-2>li,.small-up-2>section{padding:0 1rem 1rem;flex:0 0 50%}.small-3{flex:0 0 25%;max-width:25%}.small-order-3{order:3}.small-offset-3{margin-left:25%}.small-up-3{flex-flow:row wrap}.small-up-3>div,.small-up-3>li,.small-up-3>section{padding:0 1rem 1rem;flex:0 0 33.33333%}.small-4{flex:0 0 33.33333%;max-width:33.33333%}.small-order-4{order:4}.small-offset-4{margin-left:33.33333%}.small-up-4{flex-flow:row wrap}.small-up-4>div,.small-up-4>li,.small-up-4>section{padding:0 1rem 1rem;flex:0 0 25%}.small-5{flex:0 0 41.66667%;max-width:41.66667%}.small-order-5{order:5}.small-offset-5{margin-left:41.66667%}.small-up-5{flex-flow:row wrap;list-style-type:none}.small-up-5>div,.small-up-5>li,.small-up-5>section{padding:0 1rem 1rem;flex:0 0 20%}.small-6{flex:0 0 50%;max-width:50%}.small-order-6{order:6}.small-offset-6{margin-left:50%}.small-up-6{flex-flow:row wrap}.small-up-6>div,.small-up-6>li,.small-up-6>section{padding:0 1rem 1rem;flex:0 0 16.66667%}.small-7{flex:0 0 58.33333%;max-width:58.33333%}.small-order-7{order:7}.small-offset-7{margin-left:58.33333%}.small-up-7{flex-flow:row wrap;overflow:visible}.small-up-7>div,.small-up-7>li,.small-up-7>section{padding:0 1rem 1rem;flex:0 0 14.28571%}.small-8{flex:0 0 66.66667%;max-width:66.66667%}.small-order-8{order:8}.small-offset-8{margin-left:66.66667%}.small-up-8{flex-flow:row wrap}.small-up-8>div,.small-up-8>li,.small-up-8>section{padding:0 1rem 1rem;flex:0 0 12.5%}.small-9{flex:0 0 75%;max-width:75%}.small-order-9{order:9}.small-offset-9{margin-left:75%}.small-up-9{flex-flow:row wrap}.small-up-9>div,.small-up-9>li,.small-up-9>section{padding:0 1rem 1rem;flex:0 0 11.11111%}.small-10{flex:0 0 83.33333%;max-width:83.33333%}.small-order-10{order:10}.small-offset-10{margin-left:83.33333%}.small-up-10{flex-flow:row wrap}.small-up-10>div,.small-up-10>li,.small-up-10>section{padding:0 1rem 1rem;flex:0 0 10%}.small-11{flex:0 0 91.66667%;max-width:91.66667%}.small-order-11{order:11}.small-offset-11{margin-left:91.66667%}.small-up-11{flex-flow:row wrap}.small-up-11>div,.small-up-11>li,.small-up-11>section{padding:0 1rem 1rem;flex:0 0 9.09091%}.small-12{flex:0 0 100%;max-width:100%}.small-order-12{order:12}.small-offset-12{margin-left:100%}.small-up-12{flex-flow:row wrap}.small-up-12>div,.small-up-12>li,.small-up-12>section{padding:0 1rem 1rem;flex:0 0 8.33333%}@media only screen and (min-width:40em){.medium-1{flex:0 0 8.33333%;max-width:8.33333%}.medium-order-1{order:1}.medium-offset-1{margin-left:8.33333%}.medium-up-1{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-1>div,.medium-up-1>li,.medium-up-1>section{padding:0 1rem 1rem;flex:0 0 100%}.medium-2{flex:0 0 16.66667%;max-width:16.66667%}.medium-order-2{order:2}.medium-offset-2{margin-left:16.66667%}.medium-up-2{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-2>div,.medium-up-2>li,.medium-up-2>section{padding:0 1rem 1rem;flex:0 0 50%}.medium-3{flex:0 0 25%;max-width:25%}.medium-order-3{order:3}.medium-offset-3{margin-left:25%}.medium-up-3{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-3>div,.medium-up-3>li,.medium-up-3>section{padding:0 1rem 1rem;flex:0 0 33.33333%}.medium-4{flex:0 0 33.33333%;max-width:33.33333%}.medium-order-4{order:4}.medium-offset-4{margin-left:33.33333%}.medium-up-4{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-4>div,.medium-up-4>li,.medium-up-4>section{padding:0 1rem 1rem;flex:0 0 25%}.medium-5{flex:0 0 41.66667%;max-width:41.66667%}.medium-order-5{order:5}.medium-offset-5{margin-left:41.66667%}.medium-up-5{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-5>div,.medium-up-5>li,.medium-up-5>section{padding:0 1rem 1rem;flex:0 0 20%}.medium-6{flex:0 0 50%;max-width:50%}.medium-order-6{order:6}.medium-offset-6{margin-left:50%}.medium-up-6{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-6>div,.medium-up-6>li,.medium-up-6>section{padding:0 1rem 1rem;flex:0 0 16.66667%}.medium-7{flex:0 0 58.33333%;max-width:58.33333%}.medium-order-7{order:7}.medium-offset-7{margin-left:58.33333%}.medium-up-7{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-7>div,.medium-up-7>li,.medium-up-7>section{padding:0 1rem 1rem;flex:0 0 14.28571%}.medium-8{flex:0 0 66.66667%;max-width:66.66667%}.medium-order-8{order:8}.medium-offset-8{margin-left:66.66667%}.medium-up-8{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-8>div,.medium-up-8>li,.medium-up-8>section{padding:0 1rem 1rem;flex:0 0 12.5%}.medium-9{flex:0 0 75%;max-width:75%}.medium-order-9{order:9}.medium-offset-9{margin-left:75%}.medium-up-9{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-9>div,.medium-up-9>li,.medium-up-9>section{padding:0 1rem 1rem;flex:0 0 11.11111%}.medium-10{flex:0 0 83.33333%;max-width:83.33333%}.medium-order-10{order:10}.medium-offset-10{margin-left:83.33333%}.medium-up-10{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-10>div,.medium-up-10>li,.medium-up-10>section{padding:0 1rem 1rem;flex:0 0 10%}.medium-11{flex:0 0 91.66667%;max-width:91.66667%}.medium-order-11{order:11}.medium-offset-11{margin-left:91.66667%}.medium-up-11{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-11>div,.medium-up-11>li,.medium-up-11>section{padding:0 1rem 1rem;flex:0 0 9.09091%}.medium-12{flex:0 0 100%;max-width:100%}.medium-order-12{order:12}.medium-offset-12{margin-left:100%}.medium-up-12{flex-flow:row wrap;overflow:visible;list-style-type:none}.medium-up-12>div,.medium-up-12>li,.medium-up-12>section{padding:0 1rem 1rem;flex:0 0 8.33333%}}@media only screen and (min-width:75em){.large-1{flex:0 0 8.33333%;max-width:8.33333%}.large-order-1{order:1}.large-offset-1{margin-left:8.33333%}.large-up-1{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-1>div,.large-up-1>li,.large-up-1>section{padding:0 1rem 1rem;flex:0 0 100%}.large-2{flex:0 0 16.66667%;max-width:16.66667%}.large-order-2{order:2}.large-offset-2{margin-left:16.66667%}.large-up-2{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-2>div,.large-up-2>li,.large-up-2>section{padding:0 1rem 1rem;flex:0 0 50%}.large-3{flex:0 0 25%;max-width:25%}.large-order-3{order:3}.large-offset-3{margin-left:25%}.large-up-3{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-3>div,.large-up-3>li,.large-up-3>section{padding:0 1rem 1rem;flex:0 0 33.33333%}.large-4{flex:0 0 33.33333%;max-width:33.33333%}.large-order-4{order:4}.large-offset-4{margin-left:33.33333%}.large-up-4{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-4>div,.large-up-4>li,.large-up-4>section{padding:0 1rem 1rem;flex:0 0 25%}.large-5{flex:0 0 41.66667%;max-width:41.66667%}.large-order-5{order:5}.large-offset-5{margin-left:41.66667%}.large-up-5{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-5>div,.large-up-5>li,.large-up-5>section{padding:0 1rem 1rem;flex:0 0 20%}.large-6{flex:0 0 50%;max-width:50%}.large-order-6{order:6}.large-offset-6{margin-left:50%}.large-up-6{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-6>div,.large-up-6>li,.large-up-6>section{padding:0 1rem 1rem;flex:0 0 16.66667%}.large-7{flex:0 0 58.33333%;max-width:58.33333%}.large-order-7{order:7}.large-offset-7{margin-left:58.33333%}.large-up-7{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-7>div,.large-up-7>li,.large-up-7>section{padding:0 1rem 1rem;flex:0 0 14.28571%}.large-8{flex:0 0 66.66667%;max-width:66.66667%}.large-order-8{order:8}.large-offset-8{margin-left:66.66667%}.large-up-8{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-8>div,.large-up-8>li,.large-up-8>section{padding:0 1rem 1rem;flex:0 0 12.5%}.large-9{flex:0 0 75%;max-width:75%}.large-order-9{order:9}.large-offset-9{margin-left:75%}.large-up-9{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-9>div,.large-up-9>li,.large-up-9>section{padding:0 1rem 1rem;flex:0 0 11.11111%}.large-10{flex:0 0 83.33333%;max-width:83.33333%}.large-order-10{order:10}.large-offset-10{margin-left:83.33333%}.large-up-10{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-10>div,.large-up-10>li,.large-up-10>section{padding:0 1rem 1rem;flex:0 0 10%}.large-11{flex:0 0 91.66667%;max-width:91.66667%}.large-order-11{order:11}.large-offset-11{margin-left:91.66667%}.large-up-11{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-11>div,.large-up-11>li,.large-up-11>section{padding:0 1rem 1rem;flex:0 0 9.09091%}.large-12{flex:0 0 100%;max-width:100%}.large-order-12{order:12}.large-offset-12{margin-left:100%}.large-up-12{flex-flow:row wrap;overflow:visible;list-style-type:none}.large-up-12>div,.large-up-12>li,.large-up-12>section{padding:0 1rem 1rem;flex:0 0 8.33333%}}.title-bar,.title-bar.dark,.title-bar.primary{padding:1rem;border-bottom:1px solid #ccc}.grid-content .modal .grid-block{flex-wrap:nowrap}.title-bar{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-start;background:#eee;color:#000}.title-bar .center,.title-bar .left,.title-bar .right{display:block;white-space:nowrap}.title-bar .center:first-child:last-child,.title-bar .left:first-child:last-child,.title-bar .right:first-child:last-child{flex:1;margin:0}.title-bar .left{order:1;flex:0 0 25%}.title-bar .center{order:2;flex:0 0 50%;text-align:center}.title-bar .right{order:3;flex:0 0 25%;text-align:right}.title-bar .left:first-child,.title-bar .left:first-child+.right:last-child{flex:1 1 auto}.title-bar .center:first-child:not(:last-child){margin-left:25%}.title-bar .center+.left{margin-right:-25%}.title-bar.primary{background:#00558b;color:#fff}.title-bar.primary a,.title-bar.primary a:hover{color:#fff}.title-bar.dark{background:#232323;color:#fff}.label,.label.primary{background:#00558b;border-radius:0;color:#fff}.title-bar.dark a,.title-bar.dark a:hover{color:#fff}.title-bar-bottom{border-bottom:0;border-top:1px solid #ccc}.label{line-height:1;white-space:nowrap;display:inline-block;cursor:default;font-size:.8rem;padding:.33333rem .5rem}.label.success{background:#43AC6A;border-radius:0;color:#fff}.label.warning{background:#F08A24;border-radius:0;color:#fff}.label.alert{background:#F04124;border-radius:0;color:#fff}.label.dark{background:#232323;border-radius:0;color:#fff}.badge{align-items:center;justify-content:center;display:inline-flex;border-radius:1000px;font-size:.8em;width:1.5rem;height:1.5rem;background:#00558b;color:#fff}.badge.secondary{background:#f1f1f1;color:#000}.badge.primary{background:#00558b;color:#fff}.badge.success{background:#43AC6A;color:#fff}.badge.warning{background:#F08A24;color:#fff}.badge.alert{background:#F04124;color:#fff}.badge.dark{background:#232323;color:#fff}.inline-list{text-align:left}.inline-list dd,.inline-list dt,.inline-list li{display:inline-block;margin-left:-2px;margin-right:-2px}.inline-list li{margin-right:1rem;margin-left:0}.menu-bar{display:flex;align-items:stretch;margin:0;background:#fff}.menu-bar>li{flex:1 0 auto;align-items:center}.menu-bar>li>a{display:flex;align-items:center;padding:1rem;font-size:1rem;line-height:1;color:#000}.menu-bar.label-corner>li>a,.menu-bar.label-side>li>a{padding-right:3.2rem}.menu-bar .is-active>a,.menu-bar>li>a:hover{background:#ededed;color:#000}.menu-bar .iconic *,.menu-bar .iconic .iconic-property-accent{fill:#000;stroke:#000}.menu-bar,.menu-bar.horizontal{overflow-x:hidden;flex-flow:row nowrap}.menu-bar.horizontal>li>a,.menu-bar.small-horizontal>li>a,.menu-bar.vertical,.menu-bar>li>a{flex-flow:column nowrap}.menu-bar.vertical{}.menu-bar.vertical>li>a{flex-flow:row nowrap}.menu-bar.condense>li{flex:0 0 auto}.menu-bar.align-right{justify-content:flex-end}.menu-bar.align-center{justify-content:center}.menu-bar.align-justify{justify-content:space-between}.menu-bar.align-spaced{justify-content:space-around}.menu-bar.small-condense li,.menu-group .menu-bar>li{flex:0 0 auto}.menu-bar.small-expand li{flex:1 0 auto}.menu-bar.small-align-left{justify-content:flex-start}.menu-bar.small-align-right{justify-content:flex-end}.menu-bar.small-align-center{justify-content:center}.menu-bar.small-align-justify{justify-content:space-between}.menu-bar.small-align-spaced{justify-content:space-around}@media only screen and (min-width:40em){.menu-bar.medium-condense li{flex:0 0 auto}.menu-bar.medium-expand li{flex:1 0 auto}.menu-bar.medium-align-left{justify-content:flex-start}.menu-bar.medium-align-right{justify-content:flex-end}.menu-bar.medium-align-center{justify-content:center}.menu-bar.medium-align-justify{justify-content:space-between}.menu-bar.medium-align-spaced{justify-content:space-around}}@media only screen and (min-width:75em){.menu-bar.large-condense li{flex:0 0 auto}.menu-bar.large-expand li{flex:1 0 auto}.menu-bar.large-align-left{justify-content:flex-start}.menu-bar.large-align-right{justify-content:flex-end}.menu-bar.large-align-center{justify-content:center}.menu-bar.large-align-justify{justify-content:space-between}.menu-bar.large-align-spaced{justify-content:space-around}}.menu-bar.small-horizontal{overflow-x:hidden;flex-flow:row nowrap}.menu-bar.small-vertical{flex-flow:column nowrap}.menu-bar.small-vertical>li>a{flex-flow:row nowrap}@media only screen and (min-width:40em){.menu-bar.medium-horizontal{overflow-x:hidden;flex-flow:row nowrap}.menu-bar.medium-horizontal>li>a{flex-flow:column nowrap}.menu-bar.medium-vertical{flex-flow:column nowrap}.menu-bar.medium-vertical>li>a{flex-flow:row nowrap}}@media only screen and (min-width:75em){.menu-bar.large-horizontal{overflow-x:hidden;flex-flow:row nowrap}.menu-bar.large-horizontal>li>a{flex-flow:column nowrap}.menu-bar.large-vertical{flex-flow:column nowrap}.menu-bar.large-vertical>li>a{flex-flow:row nowrap}}.menu-bar.icon-top>li>.iconic,.menu-bar.icon-top>li>img,.menu-bar>li>.iconic,.menu-bar>li>img{margin:0;width:25px;height:25px}.menu-bar.icon-top>li>a,.menu-bar>li>a{flex-flow:column nowrap}.menu-bar.icon-top>li>a>.iconic,.menu-bar.icon-top>li>a>img,.menu-bar>li>a>.iconic,.menu-bar>li>a>img{margin:0 0 1rem}.menu-bar.icon-right>li>.iconic,.menu-bar.icon-right>li>img{margin:0;width:25px;height:25px}.menu-bar.icon-right>li>a{flex-flow:row-reverse nowrap}.menu-bar.icon-right>li>a>.iconic,.menu-bar.icon-right>li>a>img{margin:0 0 0 1rem}.menu-bar.icon-bottom>li>.iconic,.menu-bar.icon-bottom>li>img{margin:0;width:25px;height:25px}.menu-bar.icon-bottom>li>a{flex-flow:column-reverse nowrap}.menu-bar.icon-bottom>li>a>.iconic,.menu-bar.icon-bottom>li>a>img{margin:1rem 0 0}.menu-bar.icon-left>li>.iconic,.menu-bar.icon-left>li>img{margin:0;width:25px;height:25px}.menu-bar.icon-left>li>a{flex-flow:row nowrap;align-items:center}.menu-bar.icon-left>li>a>.iconic,.menu-bar.icon-left>li>a>img{margin:0 1rem 0 0}.menu-bar.small-icon-top>li>.iconic,.menu-bar.small-icon-top>li>img{margin:0;width:25px;height:25px}.menu-bar.small-icon-top>li>a{flex-flow:column nowrap}.menu-bar.small-icon-top>li>a>.iconic,.menu-bar.small-icon-top>li>a>img{margin:0 0 1rem}.menu-bar.small-icon-right>li>.iconic,.menu-bar.small-icon-right>li>img{margin:0;width:25px;height:25px}.menu-bar.small-icon-right>li>a{flex-flow:row-reverse nowrap}.menu-bar.small-icon-right>li>a>.iconic,.menu-bar.small-icon-right>li>a>img{margin:0 0 0 1rem}.menu-bar.small-icon-bottom>li>.iconic,.menu-bar.small-icon-bottom>li>img{margin:0;width:25px;height:25px}.menu-bar.small-icon-bottom>li>a{flex-flow:column-reverse nowrap}.menu-bar.small-icon-bottom>li>a>.iconic,.menu-bar.small-icon-bottom>li>a>img{margin:1rem 0 0}.menu-bar.small-icon-left>li>.iconic,.menu-bar.small-icon-left>li>img{margin:0;width:25px;height:25px}.menu-bar.small-icon-left>li>a{flex-flow:row nowrap;align-items:center}.menu-bar.small-icon-left>li>a>.iconic,.menu-bar.small-icon-left>li>a>img{margin:0 1rem 0 0}@media only screen and (min-width:40em){.menu-bar.medium-icon-top>li>.iconic,.menu-bar.medium-icon-top>li>img{margin:0;width:25px;height:25px}.menu-bar.medium-icon-top>li>a{flex-flow:column nowrap}.menu-bar.medium-icon-top>li>a>.iconic,.menu-bar.medium-icon-top>li>a>img{margin:0 0 1rem}.menu-bar.medium-icon-right>li>.iconic,.menu-bar.medium-icon-right>li>img{margin:0;width:25px;height:25px}.menu-bar.medium-icon-right>li>a{flex-flow:row-reverse nowrap}.menu-bar.medium-icon-right>li>a>.iconic,.menu-bar.medium-icon-right>li>a>img{margin:0 0 0 1rem}.menu-bar.medium-icon-bottom>li>.iconic,.menu-bar.medium-icon-bottom>li>img{margin:0;width:25px;height:25px}.menu-bar.medium-icon-bottom>li>a{flex-flow:column-reverse nowrap}.menu-bar.medium-icon-bottom>li>a>.iconic,.menu-bar.medium-icon-bottom>li>a>img{margin:1rem 0 0}.menu-bar.medium-icon-left>li>.iconic,.menu-bar.medium-icon-left>li>img{margin:0;width:25px;height:25px}.menu-bar.medium-icon-left>li>a{flex-flow:row nowrap;align-items:center}.menu-bar.medium-icon-left>li>a>.iconic,.menu-bar.medium-icon-left>li>a>img{margin:0 1rem 0 0}}@media only screen and (min-width:75em){.menu-bar.large-icon-top>li>.iconic,.menu-bar.large-icon-top>li>img{margin:0;width:25px;height:25px}.menu-bar.large-icon-top>li>a{flex-flow:column nowrap}.menu-bar.large-icon-top>li>a>.iconic,.menu-bar.large-icon-top>li>a>img{margin:0 0 1rem}.menu-bar.large-icon-right>li>.iconic,.menu-bar.large-icon-right>li>img{margin:0;width:25px;height:25px}.menu-bar.large-icon-right>li>a{flex-flow:row-reverse nowrap}.menu-bar.large-icon-right>li>a>.iconic,.menu-bar.large-icon-right>li>a>img{margin:0 0 0 1rem}.menu-bar.large-icon-bottom>li>.iconic,.menu-bar.large-icon-bottom>li>img{margin:0;width:25px;height:25px}.menu-bar.large-icon-bottom>li>a{flex-flow:column-reverse nowrap}.menu-bar.large-icon-bottom>li>a>.iconic,.menu-bar.large-icon-bottom>li>a>img{margin:1rem 0 0}.menu-bar.large-icon-left>li>.iconic,.menu-bar.large-icon-left>li>img{margin:0;width:25px;height:25px}.menu-bar.large-icon-left>li>a{flex-flow:row nowrap;align-items:center}.menu-bar.large-icon-left>li>a>.iconic,.menu-bar.large-icon-left>li>a>img{margin:0 1rem 0 0}}.menu-bar.label-corner .menu-bar-label,.menu-bar.label-side .menu-bar-label{display:block;font-size:.9rem;width:1.2rem;height:1.2rem;line-height:1.2rem;text-align:center;border-radius:1000px;background:red;right:1rem;color:#fff;pointer-events:none}.menu-group .menu-bar,.modal .grid-block,.modal .grid-content{margin:0}.menu-bar.label-side>li{position:relative}.menu-bar.label-side .menu-bar-label{position:absolute;top:50%;transform:translateY(-50%)}.menu-bar.label-corner>li{position:relative}.menu-bar.label-corner .menu-bar-label{position:absolute;top:1rem}.menu-bar.primary{background:#00558b}.menu-bar.primary>li>a{color:#fff}.menu-bar.primary .is-active>a,.menu-bar.primary>li>a:hover{background:#0065a5;color:#fff}.menu-bar.primary .iconic *,.menu-bar.primary .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.menu-bar.dark{background:#232323}.menu-bar.dark>li>a{color:#fff}.menu-bar.dark .is-active>a,.menu-bar.dark>li>a:hover{background:#323232;color:#fff}.menu-bar.dark .iconic *,.menu-bar.dark .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.menu-bar>li.title{padding:1rem;cursor:default}.switch>label,.tabs .tab-item,a[ui-sref]{cursor:pointer}.menu-group{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}@media only screen and (min-width:40em){.menu-group{flex-wrap:nowrap}}.menu-group>.menu-group-left,.menu-group>.menu-group-right{flex:1 1 100%}@media only screen and (min-width:40em){.menu-group>.menu-group-left,.menu-group>.menu-group-right{flex:0 0 auto}}.menu-group.primary{background-color:#00558b}.menu-group.primary .menu-bar{background:#00558b}.menu-group.primary .menu-bar>li>a{color:#fff}.menu-group.primary .menu-bar .is-active>a,.menu-group.primary .menu-bar>li>a:hover{background:#0065a5;color:#fff}.menu-group.primary .menu-bar .iconic *,.menu-group.primary .menu-bar .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.menu-group.dark{background-color:#232323}.menu-group.dark .menu-bar{background:#232323}.menu-group.dark .menu-bar>li>a{color:#fff}.menu-group.dark .menu-bar .is-active>a,.menu-group.dark .menu-bar>li>a:hover{background:#323232;color:#fff}.menu-group.dark .menu-bar .iconic *,.menu-group.dark .menu-bar .iconic .iconic-property-accent{fill:#fff;stroke:#fff}.modal{position:relative;z-index:1001;background:#fff;flex:0 0 auto;width:100%;height:100vh;max-height:100%;overflow:hidden;padding:1rem;max-width:600px;border-radius:0}@media only screen and (min-width:40em){.modal{height:auto;max-width:600px}}.modal .close-button,.modal [fa-close]{z-index:1001}.tiny>.modal{max-width:300px}.small>.modal{max-width:500px}.large>.modal{max-width:800px}.dialog>.modal{height:auto}.collapse>.modal{padding:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:none;background-color:rgba(51,51,51,.7);align-items:center;justify-content:center}.modal-overlay.is-active{display:flex}@keyframes shake{0%,10%,20%,30%,40%,50%,60%,70%,80%,90%{transform:translateX(7%)}15%,25%,35%,45%,5%,55%,65%,75%,85%,95%{transform:translateX(-7%)}100%{transform:translateX(0)}}@keyframes spin-cw{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes spin-ccw{0%{transform:rotate(0)}100%{transform:rotate(-360deg)}}@keyframes wiggle{40%,50%,60%{transform:rotate(7deg)}35%,45%,55%,65%{transform:rotate(-7deg)}0%,100%,30%,70%{transform:rotate(0)}}.slideInDown.ng-enter,.slideInDown.ng-hide-remove{backface-visibility:hidden;transform:translateY(-100%)}.slideInDown.ng-enter.ng-enter-active,.slideInDown.ng-hide-remove.ng-hide-remove-active{transform:translateX(0) translateY(0)}.slideInLeft.ng-enter,.slideInLeft.ng-hide-remove{backface-visibility:hidden;transform:translateX(100%)}.slideInLeft.ng-enter.ng-enter-active,.slideInLeft.ng-hide-remove.ng-hide-remove-active{transform:translateX(0) translateY(0)}.slideInUp.ng-enter,.slideInUp.ng-hide-remove{backface-visibility:hidden;transform:translateY(100%)}.slideInUp.ng-enter.ng-enter-active,.slideInUp.ng-hide-remove.ng-hide-remove-active{transform:translateX(0) translateY(0)}.slideInRight.ng-enter,.slideInRight.ng-hide-remove{backface-visibility:hidden;transform:translateX(-100%)}.slideInRight.ng-enter.ng-enter-active,.slideInRight.ng-hide-remove.ng-hide-remove-active{transform:translateX(0) translateY(0)}.slideOutBottom.ng-hide-add,.slideOutBottom.ng-leave{backface-visibility:hidden;transform:translateX(0) translateY(0)}.slideOutBottom.ng-hide-add.ng-hide-add-active,.slideOutBottom.ng-leave.ng-leave-active{transform:translateY(100%)}.slideOutRight.ng-hide-add,.slideOutRight.ng-leave{backface-visibility:hidden;transform:translateX(0) translateY(0)}.slideOutRight.ng-hide-add.ng-hide-add-active,.slideOutRight.ng-leave.ng-leave-active{transform:translateX(100%)}.slideOutUp.ng-hide-add,.slideOutUp.ng-leave{backface-visibility:hidden;transform:translateX(0) translateY(0)}.slideOutUp.ng-hide-add.ng-hide-add-active,.slideOutUp.ng-leave.ng-leave-active{transform:translateY(-100%)}.slideOutLeft.ng-hide-add,.slideOutLeft.ng-leave{backface-visibility:hidden;transform:translateX(0) translateY(0)}.fadeIn.ng-enter,.fadeIn.ng-hide-remove,.fadeOut.ng-hide-add,.fadeOut.ng-leave{transition-duration:.5s;transition-timing-function:ease;transition-delay:0;transition-property:opacity}.slideOutLeft.ng-hide-add.ng-hide-add-active,.slideOutLeft.ng-leave.ng-leave-active{transform:translateX(-100%)}.fadeIn.ng-enter,.fadeIn.ng-hide-remove{opacity:0}.fadeIn.ng-enter.ng-enter-active,.fadeIn.ng-hide-remove.ng-hide-remove-active,.fadeOut.ng-hide-add,.fadeOut.ng-leave{opacity:1}.hingeInFromBottom.ng-enter,.hingeInFromBottom.ng-hide-remove,.hingeInFromLeft.ng-enter,.hingeInFromLeft.ng-hide-remove,.hingeInFromMiddleX.ng-enter,.hingeInFromMiddleX.ng-hide-remove,.hingeInFromRight.ng-enter,.hingeInFromRight.ng-hide-remove,.hingeInFromTop.ng-enter,.hingeInFromTop.ng-hide-remove,.hingeOutFromBottom.ng-hide-add,.hingeOutFromBottom.ng-leave,.hingeOutFromLeft.ng-hide-add,.hingeOutFromLeft.ng-leave,.hingeOutFromMiddleX.ng-hide-add,.hingeOutFromMiddleX.ng-leave,.hingeOutFromMiddleY.ng-hide-add,.hingeOutFromMiddleY.ng-leave,.hingeOutFromRight.ng-hide-add,.hingeOutFromRight.ng-leave,.hingeOutFromTop.ng-hide-add,.hingeOutFromTop.ng-leave{transition-duration:.5s;transition-timing-function:ease;transition-delay:0;transition-property:transform,opacity}.fadeOut.ng-hide-add.ng-hide-add-active,.fadeOut.ng-leave.ng-leave-active{opacity:0}.hingeInFromTop.ng-enter,.hingeInFromTop.ng-hide-remove{transform:perspective(2000px) rotateX(-90deg);transform-origin:top;opacity:0}.hingeInFromTop.ng-enter.ng-enter-active,.hingeInFromTop.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeInFromRight.ng-enter,.hingeInFromRight.ng-hide-remove{transform:perspective(2000px) rotateY(-90deg);transform-origin:right;opacity:0}.hingeInFromRight.ng-enter.ng-enter-active,.hingeInFromRight.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeInFromBottom.ng-enter,.hingeInFromBottom.ng-hide-remove{transform:perspective(2000px) rotateX(90deg);transform-origin:bottom;opacity:0}.hingeInFromBottom.ng-enter.ng-enter-active,.hingeInFromBottom.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeInFromLeft.ng-enter,.hingeInFromLeft.ng-hide-remove{transform:perspective(2000px) rotateY(90deg);transform-origin:left;opacity:0}.hingeInFromLeft.ng-enter.ng-enter-active,.hingeInFromLeft.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeInFromMiddleX.ng-enter,.hingeInFromMiddleX.ng-hide-remove{transform:perspective(2000px) rotateX(-90deg);transform-origin:center;opacity:0}.hingeInFromMiddleX.ng-enter.ng-enter-active,.hingeInFromMiddleX.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeInFromMiddleY.ng-enter,.hingeInFromMiddleY.ng-hide-remove{transition-duration:.5s;transition-timing-function:ease;transition-delay:0;transition-property:transform,opacity;transform:perspective(2000px) rotateY(-90deg);transform-origin:center;opacity:0}.hingeInFromMiddleY.ng-enter.ng-enter-active,.hingeInFromMiddleY.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.hingeOutFromTop.ng-hide-add,.hingeOutFromTop.ng-leave{transform:rotate(0);transform-origin:top;opacity:1}.hingeOutFromTop.ng-hide-add.ng-hide-add-active,.hingeOutFromTop.ng-leave.ng-leave-active{transform:perspective(2000px) rotateX(-90deg);opacity:0}.hingeOutFromRight.ng-hide-add,.hingeOutFromRight.ng-leave{transform:rotate(0);transform-origin:right;opacity:1}.hingeOutFromRight.ng-hide-add.ng-hide-add-active,.hingeOutFromRight.ng-leave.ng-leave-active{transform:perspective(2000px) rotateY(-90deg);opacity:0}.hingeOutFromBottom.ng-hide-add,.hingeOutFromBottom.ng-leave{transform:rotate(0);transform-origin:bottom;opacity:1}.hingeOutFromBottom.ng-hide-add.ng-hide-add-active,.hingeOutFromBottom.ng-leave.ng-leave-active{transform:perspective(2000px) rotateX(90deg);opacity:0}.hingeOutFromLeft.ng-hide-add,.hingeOutFromLeft.ng-leave{transform:rotate(0);transform-origin:left;opacity:1}.hingeOutFromLeft.ng-hide-add.ng-hide-add-active,.hingeOutFromLeft.ng-leave.ng-leave-active{transform:perspective(2000px) rotateY(90deg);opacity:0}.hingeOutFromMiddleX.ng-hide-add,.hingeOutFromMiddleX.ng-leave{transform:rotate(0);transform-origin:center;opacity:1}.hingeOutFromMiddleX.ng-hide-add.ng-hide-add-active,.hingeOutFromMiddleX.ng-leave.ng-leave-active{transform:perspective(2000px) rotateX(-90deg);opacity:0}.hingeOutFromMiddleY.ng-hide-add,.hingeOutFromMiddleY.ng-leave{transform:rotate(0);transform-origin:center;opacity:1}.zoomIn.ng-enter,.zoomIn.ng-hide-remove,.zoomOut.ng-hide-add,.zoomOut.ng-leave{transition-duration:.5s;transition-timing-function:ease;transition-delay:0;transition-property:transform,property}.hingeOutFromMiddleY.ng-hide-add.ng-hide-add-active,.hingeOutFromMiddleY.ng-leave.ng-leave-active{transform:perspective(2000px) rotateY(-90deg);opacity:0}.zoomIn.ng-enter,.zoomIn.ng-hide-remove{transform:scale(1.5);opacity:0}.zoomIn.ng-enter.ng-enter-active,.zoomIn.ng-hide-remove.ng-hide-remove-active{transform:scale(1);opacity:1}.zoomOut.ng-hide-add,.zoomOut.ng-leave{transform:scale(.5);opacity:1}.zoomOut.ng-hide-add.ng-hide-add-active,.zoomOut.ng-leave.ng-leave-active{transform:scale(1);opacity:0}.spinIn.ng-enter,.spinIn.ng-hide-remove{transition-property:transform,opacity;transform:rotate(-270deg);opacity:0}.spinIn.ng-enter.ng-enter-active,.spinIn.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.spinOut.ng-hide-add,.spinOut.ng-leave{transition-property:transform,opacity;transform:rotate(0);opacity:1}.spinOut.ng-hide-add.ng-hide-add-active,.spinOut.ng-leave.ng-leave-active{transform:rotate(270deg);opacity:0}.spinInCCW.ng-enter,.spinInCCW.ng-hide-remove{transition-property:transform,opacity;transform:rotate(270deg);opacity:0}.spinInCCW.ng-enter.ng-enter-active,.spinInCCW.ng-hide-remove.ng-hide-remove-active{transform:rotate(0);opacity:1}.spinOutCCW.ng-hide-add,.spinOutCCW.ng-leave{transition-property:transform,opacity;transform:rotate(0);opacity:1}.spinOutCCW.ng-hide-add.ng-hide-add-active,.spinOutCCW.ng-leave.ng-leave-active{transform:rotate(-270deg);opacity:0}.shake,.spin-ccw,.spin-cw,.wiggle{animation-duration:.5s;animation-timing-function:ease;transform:translate3d(0,0,0);animation-delay:0;backface-visibility:hidden}.slow{transition-duration:750ms!important}.fast{transition-duration:250ms!important}.linear{transition-timing-function:linear!important}.ease{transition-timing-function:ease!important}.easeIn{transition-timing-function:ease-in!important}.easeOut{transition-timing-function:ease-out!important}.easeInOut{transition-timing-function:ease-in-out!important}.bounceIn{transition-timing-function:cubic-bezier(.485,.155,.24,1.245)!important}.bounceOut{transition-timing-function:cubic-bezier(.485,.155,.515,.845)!important}.bounceInOut{transition-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important}.delay{transition-delay:.3s!important}.long-delay{transition-delay:.7s!important}.shake{animation-name:shake}.spin-cw{animation-name:spin-cw}.spin-ccw{animation-name:spin-ccw}.wiggle{animation-name:wiggle}.shake.infinite,.spin-ccw.infinite,.spin-cw.infinite,.wiggle.infinite{animation-iteration-count:infinite}.shake.linear,.spin-ccw.linear,.spin-cw.linear,.wiggle.linear{animation-timing-function:linear!important}.shake.ease,.spin-ccw.ease,.spin-cw.ease,.wiggle.ease{animation-timing-function:ease!important}.shake.easeIn,.spin-ccw.easeIn,.spin-cw.easeIn,.wiggle.easeIn{animation-timing-function:ease-in!important}.shake.easeOut,.spin-ccw.easeOut,.spin-cw.easeOut,.wiggle.easeOut{animation-timing-function:ease-out!important}.shake.easeInOut,.spin-ccw.easeInOut,.spin-cw.easeInOut,.wiggle.easeInOut{animation-timing-function:ease-in-out!important}.shake.bounceIn,.spin-ccw.bounceIn,.spin-cw.bounceIn,.wiggle.bounceIn{animation-timing-function:cubic-bezier(.485,.155,.24,1.245)!important}.shake.bounceOut,.spin-ccw.bounceOut,.spin-cw.bounceOut,.wiggle.bounceOut{animation-timing-function:cubic-bezier(.485,.155,.515,.845)!important}.shake.bounceInOut,.spin-ccw.bounceInOut,.spin-cw.bounceInOut,.wiggle.bounceInOut{animation-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important}.shake.slow,.spin-ccw.slow,.spin-cw.slow,.wiggle.slow{animation-duration:750ms!important}.shake.fast,.spin-ccw.fast,.spin-cw.fast,.wiggle.fast{animation-duration:250ms!important}.shake.delay,.spin-ccw.delay,.spin-cw.delay,.wiggle.delay{animation-delay:.3s!important}.shake.long-delay,.spin-ccw.long-delay,.spin-cw.long-delay,.wiggle.long-delay{animation-delay:.7s!important}.long-stagger,.stagger,.stort-stagger{transition-delay:150ms;transition-duration:0}.position-absolute{overflow:hidden;position:relative}.ui-animation.ng-enter-active,.ui-animation.ng-leave-active{position:absolute!important;backface-visibility:hidden;-webkit-transform-style:preserve-3d;top:0;right:0;bottom:0;left:0}.notification,.static-notification{z-index:1000;position:relative;margin-top:.5rem;margin-bottom:.5rem;display:none}.notification h1,.static-notification h1{font-size:1.25em;margin:0}.notification p,.static-notification p{margin:0}.is-active.notification,.is-active.static-notification{display:flex}.notification .close-button,.static-notification .close-button{color:#fff}.notification-container{z-index:3000;position:fixed;display:flex;flex-direction:column}.notification{background:#00558b;padding:1rem;border-radius:4px}.notification,.notification h1,.notification h2,.notification h3,.notification h4,.notification h5,.notification h6{color:#fff}.notification.success{background:#43AC6A;padding:1rem;border-radius:4px}.notification.success,.notification.success h1,.notification.success h2,.notification.success h3,.notification.success h4,.notification.success h5,.notification.success h6{color:#fff}.notification.warning{background:#F08A24;padding:1rem;border-radius:4px}.notification.warning,.notification.warning h1,.notification.warning h2,.notification.warning h3,.notification.warning h4,.notification.warning h5,.notification.warning h6{color:#fff}.notification.alert{background:#F04124;padding:1rem;border-radius:4px}.notification.alert,.notification.alert h1,.notification.alert h2,.notification.alert h3,.notification.alert h4,.notification.alert h5,.notification.alert h6{color:#fff}.notification.dark{background:#232323;padding:1rem;border-radius:4px}.notification.dark,.notification.dark h1,.notification.dark h2,.notification.dark h3,.notification.dark h4,.notification.dark h5,.notification.dark h6{color:#fff}.static-notification{background:#00558b;padding:1rem;border-radius:4px;position:fixed!important}.static-notification,.static-notification h1,.static-notification h2,.static-notification h3,.static-notification h4,.static-notification h5,.static-notification h6{color:#fff}.static-notification.top-right{width:25rem;right:1rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.top-right{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.top-left{width:25rem;left:1rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.top-left{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.top-middle{width:25rem;left:50%;margin-left:-12.5rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.top-middle{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.bottom-right{width:25rem;right:1rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.bottom-right{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.bottom-left{width:25rem;left:1rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.bottom-left{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.bottom-middle{width:25rem;left:50%;margin-left:-12.5rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.static-notification.bottom-middle{width:auto;left:1rem;right:1rem;margin-left:0}}.static-notification.success{background:#43AC6A;padding:1rem;border-radius:4px}.static-notification.success,.static-notification.success h1,.static-notification.success h2,.static-notification.success h3,.static-notification.success h4,.static-notification.success h5,.static-notification.success h6{color:#fff}.static-notification.warning{background:#F08A24;padding:1rem;border-radius:4px}.static-notification.warning,.static-notification.warning h1,.static-notification.warning h2,.static-notification.warning h3,.static-notification.warning h4,.static-notification.warning h5,.static-notification.warning h6{color:#fff}.static-notification.alert{background:#F04124;padding:1rem;border-radius:4px}.static-notification.alert,.static-notification.alert h1,.static-notification.alert h2,.static-notification.alert h3,.static-notification.alert h4,.static-notification.alert h5,.static-notification.alert h6{color:#fff}.static-notification.dark{background:#232323;padding:1rem;border-radius:4px}.off-canvas,.off-canvas~.grid-frame{transition:transform .25s ease-out;background:#fff}.static-notification.dark,.static-notification.dark h1,.static-notification.dark h2,.static-notification.dark h3,.static-notification.dark h4,.static-notification.dark h5,.static-notification.dark h6{color:#fff}.notification-container{width:25rem;right:1rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.top-right{width:25rem;right:1rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.top-right{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.top-left{width:25rem;left:1rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.top-left{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.top-middle{width:25rem;left:50%;margin-left:-12.5rem;top:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.top-middle{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.bottom-right{width:25rem;right:1rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.bottom-right{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.bottom-left{width:25rem;left:1rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.bottom-left{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-container.bottom-middle{width:25rem;left:50%;margin-left:-12.5rem;top:auto;bottom:1rem}@media only screen and (min-width:0em) and (max-width:39.9375rem){.notification-container.bottom-middle{width:auto;left:1rem;right:1rem;margin-left:0}}.notification-icon{flex:0 0 60px;margin-right:1rem}.notification-icon img{width:100%;height:auto}.notification-content{flex:1}.is-active.off-canvas{transform:translate(0,0)!important}.off-canvas~.grid-frame{transform:translate(0,0,0);backface-visibility:hidden}.off-canvas{position:fixed;overflow:auto;-webkit-overflow-scrolling:touch;z-index:2;width:250px;height:100%;top:0;left:0;box-shadow:inset -3px 0 10px rgba(0,0,0,.25);transform:translateX(-100%);color:#000}.popup,.switch{overflow:hidden}.off-canvas.is-active~.grid-frame{transform:translateX(250px)!important}.off-canvas.top{height:250px;width:100%;top:0;left:0;transform:translateY(-100%);box-shadow:inset 0 -3px 10px rgba(0,0,0,.25)}.off-canvas.top.is-active~.grid-frame{transform:translateY(250px)!important}.off-canvas.right{width:250px;height:100%;left:auto;top:0;right:0;box-shadow:inset 3px 0 10px rgba(0,0,0,.25);transform:translateX(100%)}.off-canvas.right.is-active~.grid-frame{transform:translateX(-250px)!important}.off-canvas.bottom{height:250px;width:100%;top:auto;bottom:0;left:0;transform:translateY(100%);box-shadow:inset 0 3px 10px rgba(0,0,0,.25)}.off-canvas.bottom.is-active~.grid-frame{transform:translateY(-250px)!important}.off-canvas.left{width:250px;height:100%;top:0;left:0;box-shadow:inset -3px 0 10px rgba(0,0,0,.25);transform:translateX(-100%)}.off-canvas.left.is-active~.grid-frame{transform:translateX(250px)!important}.off-canvas.detached{z-index:0;box-shadow:none}.off-canvas.detached,.off-canvas.detached.is-active{transform:none}.off-canvas.detached~.grid-frame{z-index:1;box-shadow:0 0 15px rgba(0,0,0,.5)}.popup,.popup.dark,.popup.primary{box-shadow:0 0 10px rgba(0,0,0,.25)}.off-canvas.primary{background:#00558b;color:#fff}.off-canvas.dark{background:#232323;color:#fff}.popup{position:absolute;z-index:1000;opacity:0;transition:opacity .25s ease-out;pointer-events:none;width:18.75rem;background:#fff;border-radius:0;border:0}.tether-enabled.popup{opacity:1;pointer-events:auto}.popup.dark{background:#232323;border-radius:0;border:0}.popup.primary{background:#00558b;border-radius:0;border:0}.switch{position:relative;display:inline-block}.switch>input{position:absolute;left:-9999px;outline:0}.switch>label{-ms-touch-action:manipulation;touch-action:manipulation;display:block;width:100%;height:100%;margin:0;background:#ccc}.switch,.switch>label::after{height:2rem;border-radius:9999px}.switch{width:3.125rem}.switch>label::after{content:'';display:block;position:absolute;top:0;left:0;width:2rem;background:#fff;transition:left .15s ease-out;border:4px solid #ccc}.switch input:checked+label::after{left:1.125rem;border-color:#00558b}.switch input:checked+label{background:#00558b;margin:0}.tabs,.tabs.vertical{display:flex;background:0 0}.switch.small{width:2.5rem;height:1.625rem}.switch.small>label::after{width:1.625rem;height:1.625rem}.switch.small input:checked+label::after{left:.875rem}.switch.large{width:3.75rem;height:2.375rem}.switch.large>label::after{width:2.375rem;height:2.375rem}.switch.large input:checked+label::after{left:1.375rem}.tabs{flex-flow:row wrap}.tabs.vertical{flex-flow:column nowrap}.tabs .tab-item{background:#f3f3f3;padding:1rem;line-height:1;margin:0;flex:0 1 auto;color:#000}.tabs .tab-item.is-active{background:#ececec;color:#000}.tabs .tab-item.is-active:hover,.tabs .tab-item:hover{background:#e7e7e7}.tab-contents{padding:1rem}.tab-contents .tab-content{display:none}.tab-contents .tab-content.is-active{display:block}.accordion{border:1px solid #cbcbcb}.accordion-title{padding:1rem;background:#f3f3f3;color:#000;line-height:1;cursor:pointer}.accordion-title:hover{background:#e7e7e7}.is-active>.accordion-title{background:#ececec;color:#000}.accordion-content{padding:1rem;display:none}.is-active>.accordion-content{display:block}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}a{color:#00558b;text-decoration:none;line-height:inherit}p,p.lead{line-height:1.6}a:focus,a:hover{color:#004978}a img{border:none}p{font-family:inherit;font-size:1rem;margin-bottom:1.25rem}.subheader,h1,h2,h3,h4,h5,h6{margin-top:.2rem;margin-bottom:.5rem;font-weight:400}p.lead{font-size:1.21875rem}p aside{font-size:.875rem;line-height:1.35;font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Helvetica,Arial,sans-serif;font-style:normal;color:#222;line-height:1.4}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:60%;color:#6f6f6f;line-height:0}h1{font-size:2.125rem}h2{font-size:1.6875rem}h3{font-size:1.375rem}h4,h5{font-size:1.125rem}h6{font-size:1rem}.subheader{line-height:1.4;color:#6f6f6f}b,em,i,small,strong{line-height:inherit}hr{border:solid #ddd;border-width:1px 0 0;margin:1.25rem 0 1.1875rem;height:0}em,i{font-style:italic}small{font-size:60%;color:#6f6f6f}code{font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:400;color:#464646;background-color:#fbfbfb;border-width:1px;border-style:solid;border-color:#e2e2e2;padding:.125rem .3125rem .0625rem}dl,ol,ul{font-size:1rem;line-height:1.6;margin-bottom:1.25rem;list-style-position:outside;font-family:inherit}ol,ul{margin-left:1.1rem}ol li ol,ol li ul,ul li ol,ul li ul{margin-left:1.25rem;margin-bottom:0}ul.no-bullet{margin-left:0}dl dt{margin-bottom:.3rem;font-weight:700}dl dd{margin-bottom:.75rem}abbr,acronym{text-transform:uppercase;font-size:90%;color:#222;border-bottom:1px dotted #ddd;cursor:help}abbr{text-transform:none}blockquote{margin:0 0 1.25rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #ddd}blockquote cite{display:block;font-size:.8125rem;color:#555}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:#555}blockquote,blockquote p{line-height:1.6;color:#6f6f6f}.v-align{display:flex;align-items:center;justify-content:space-between}.v-align .align-center{align-self:center}.v-align .align-bottom{align-self:flex-end}.v-align .small-align-top{align-self:flex-start}.v-align .small-align-center{align-self:center}.v-align .small-align-bottom{align-self:flex-end}.hide{display:none!important}.invisible{visibility:hidden}.hide-for-small:not(.ng-hide){display:block!important;display:none!important}.hide-for-small[class*=grid-block]:not(.ng-hide){display:flex!important;display:none!important}.show-for-small:not(.ng-hide){display:none!important;display:block!important}.show-for-small[class*=grid-block]:not(.ng-hide){display:none!important;display:flex!important}.hide-for-small-only:not(.ng-hide){display:block!important}@media only screen and (min-width:0em) and (max-width:39.9375rem){.hide-for-small-only:not(.ng-hide){display:none!important}}.hide-for-small-only[class*=grid-block]:not(.ng-hide){display:flex!important}.show-for-small-only:not(.ng-hide){display:none!important}@media only screen and (min-width:0em) and (max-width:39.9375rem){.hide-for-small-only[class*=grid-block]:not(.ng-hide){display:none!important}.show-for-small-only:not(.ng-hide){display:block!important}}.show-for-small-only[class*=grid-block]:not(.ng-hide){display:none!important}@media only screen and (min-width:0em) and (max-width:39.9375rem){.show-for-small-only[class*=grid-block]:not(.ng-hide){display:flex!important}.small-only-text-left{text-align:left}}.hide-for-medium:not(.ng-hide){display:block!important}@media only screen and (min-width:40em){h1,h2,h3,h4,h5,h6{line-height:1.4}h1{font-size:2.75rem}h2{font-size:2.3125rem}h3{font-size:1.6875rem}h4{font-size:1.4375rem}h5{font-size:1.125rem}h6{font-size:1rem}.v-align .medium-align-top{align-self:flex-start}.v-align .medium-align-center{align-self:center}.v-align .medium-align-bottom{align-self:flex-end}.hide-for-medium:not(.ng-hide){display:none!important}}.hide-for-medium[class*=grid-block]:not(.ng-hide){display:flex!important}.show-for-medium:not(.ng-hide){display:none!important}@media only screen and (min-width:40em){.hide-for-medium[class*=grid-block]:not(.ng-hide){display:none!important}.show-for-medium:not(.ng-hide){display:block!important}}.show-for-medium[class*=grid-block]:not(.ng-hide){display:none!important}@media only screen and (min-width:40em){.show-for-medium[class*=grid-block]:not(.ng-hide){display:flex!important}.medium-text-left{text-align:left}}.hide-for-medium-only:not(.ng-hide){display:block!important}@media only screen and (min-width:40em) and (max-width:74.9375rem){.hide-for-medium-only:not(.ng-hide){display:none!important}}.hide-for-medium-only[class*=grid-block]:not(.ng-hide){display:flex!important}.show-for-medium-only:not(.ng-hide){display:none!important}@media only screen and (min-width:40em) and (max-width:74.9375rem){.hide-for-medium-only[class*=grid-block]:not(.ng-hide){display:none!important}.show-for-medium-only:not(.ng-hide){display:block!important}}.show-for-medium-only[class*=grid-block]:not(.ng-hide){display:none!important}@media only screen and (min-width:40em) and (max-width:74.9375rem){.show-for-medium-only[class*=grid-block]:not(.ng-hide){display:flex!important}.medium-only-text-left{text-align:left}}.hide-for-large:not(.ng-hide){display:block!important}@media only screen and (min-width:75em){.v-align .large-align-top{align-self:flex-start}.v-align .large-align-center{align-self:center}.v-align .large-align-bottom{align-self:flex-end}.hide-for-large:not(.ng-hide){display:none!important}}.hide-for-large[class*=grid-block]:not(.ng-hide){display:flex!important}.show-for-large:not(.ng-hide){display:none!important}@media only screen and (min-width:75em){.hide-for-large[class*=grid-block]:not(.ng-hide){display:none!important}.show-for-large:not(.ng-hide){display:block!important}}.show-for-large[class*=grid-block]:not(.ng-hide){display:none!important}@media only screen and (min-width:75em){.show-for-large[class*=grid-block]:not(.ng-hide){display:flex!important}.large-text-left{text-align:left}}.hide-for-large-only:not(.ng-hide){display:block!important}@media only screen and (min-width:75em) and (max-width:89.9375rem){.hide-for-large-only:not(.ng-hide){display:none!important}}.hide-for-large-only[class*=grid-block]:not(.ng-hide){display:flex!important}.show-for-large-only:not(.ng-hide){display:none!important}@media only screen and (min-width:75em) and (max-width:89.9375rem){.hide-for-large-only[class*=grid-block]:not(.ng-hide){display:none!important}.show-for-large-only:not(.ng-hide){display:block!important}}.show-for-large-only[class*=grid-block]:not(.ng-hide){display:none!important}@media only screen and (min-width:75em) and (max-width:89.9375rem){.show-for-large-only[class*=grid-block]:not(.ng-hide){display:flex!important}.large-only-text-left{text-align:left}}@media only screen and (orientation:portrait){.hide-for-portrait{display:none!important}.hide-for-portrait[class*=grid-block]{display:flex!important}}.show-for-portrait{display:none!important}@media only screen and (orientation:portrait){.show-for-portrait{display:block!important}.show-for-portrait[class*=grid-block]{display:flex!important}}@media only screen and (orientation:landscape){.hide-for-landscape{display:none!important}.hide-for-landscape[class*=grid-block]{display:flex!important}}.show-for-landscape{display:none!important}@media only screen and (orientation:landscape){.show-for-landscape{display:block!important}.show-for-landscape[class*=grid-block]{display:flex!important}}.small-text-left,.text-left{text-align:left}.small-text-right,.text-right{text-align:right}@media only screen and (min-width:0em) and (max-width:39.9375rem){.small-only-text-right{text-align:right}}@media only screen and (min-width:40em){.medium-text-right{text-align:right}}@media only screen and (min-width:40em) and (max-width:74.9375rem){.medium-only-text-right{text-align:right}}@media only screen and (min-width:75em){.large-text-right{text-align:right}}@media only screen and (min-width:75em) and (max-width:89.9375rem){.large-only-text-right{text-align:right}.large-only-text-center{text-align:center}}.small-text-center,.text-center{text-align:center}@media only screen and (min-width:0em) and (max-width:39.9375rem){.small-only-text-center{text-align:center}}@media only screen and (min-width:40em){.medium-text-center{text-align:center}}@media only screen and (min-width:40em) and (max-width:74.9375rem){.medium-only-text-center{text-align:center}}@media only screen and (min-width:75em){.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.small-text-justify,.text-justify{text-align:justify}@media only screen and (min-width:0em) and (max-width:39.9375rem){.small-only-text-justify{text-align:justify}}@media only screen and (min-width:40em){.medium-text-justify{text-align:justify}}@media only screen and (min-width:40em) and (max-width:74.9375rem){.medium-only-text-justify{text-align:justify}}@media only screen and (min-width:75em) and (max-width:89.9375rem){.large-only-text-justify{text-align:justify}}.clearfix:after,.clearfix:before{content:" ";display:table}.float-left{float:left}.float-right{float:right}.float-none{float:none} +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fYmxvY2stbGlzdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy92ZW5kb3IvX25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX2FjdGlvbi1zaGVldC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL19saXN0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fbm90aWZpY2F0aW9uLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9oZWxwZXJzL19taXhpbnMuc2NzcyIsImZvdW5kYXRpb24vX2ZvdW5kYXRpb24taWNvbnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX2ljb25pYy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvaGVscGVycy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvaGVscGVycy9fZnVuY3Rpb25zLnNjc3MiLCIkc3RkaW4iLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvaGVscGVycy9faW1hZ2VzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX3BvcHVwLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX21vdGlvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL19leHRyYXMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fcGFuZWwuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tYXBwcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1hcHBzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLWFwcHMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErSFEsb0JDNEtELGlCQUNJLHFCQUNULE9BQVEsUUN0TkosS0R1RU4sSUFDRyxJRXdEQyxTQUFVLFNINkZKLGtDSXBGSixPSGlKSixtQkFBb0IsS0d6U2pCLGdCQUFpQixLQ3dIcEIsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFNLEdBbEJyQixFQXVCQyxlQTNLb0IsbUJGVXBCLGlCQUFBLHNCQUFBLHlCSDJTRixZQS9SSyxlTThHUSxjQ25KRCxhQzBPSCxVQ29LUSxZQUFDLGFBQUEsYUFBQSxhQUFELFlBQUEsWUFBQSxZQUFBLFlBQUEsWUFBQSxZQUFBLFlKaklmLGFBQ2UsbUJBQVQsbUJBQ0osZ0JBQWlCLEtLbkZILG1CQ3RJSixvQkFDUixXQVBLLFdDc0NKLGdCUHlITCxHT3pIUSxNQUFPLEtDM0ZULFdBQ1IsWUFBZ0MsaUJBQ2hDLElBQUssNkNBQXFELGVBQzFELFlBQWEsSUFDYixXQUFZLE9BSUUsd0JBQ1AsaUJB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a0RBTEcsaURBTVIsV0o1RVEsc0JJNkVSLE1KN0VRLFFhbEJoQixpREFBQyx1RUFBQSxzREFXeUIsNEVBWDFCLHFEQUFDLDJFQUNDLEtiaUJjLFFhVlosT2JVWSxRSXNGRSxpREFBQyx1REFDRyx5REFDTiwrREFDUixXSnpGUSxRSTBGUixNWXZCd0IsS0hyRmhDLDJEQUFDLGlGQUFBLG1FQVd5Qix5RkFWeEIsS0dvRjhCLEtIN0U1QixPRzZFNEIsS1ptRW5CLGdDQXBFWCxhSi9EWSxRSW1FUixxQ0FBb0IsMENBQWYseUNBQ0wsYUpwRVEsUUlxRVIsTUpyRVEsUUltRVAsMkNBS00sZ0RBTEcsK0NBTVIsV0p6RU0scUJJMEVOLE1KMUVNLFFhckJkLCtDQUFDLHFFQUFBLG9EQVd5QiwwRUFYMUIsbURBQUMseUVBQ0MsS2JvQlksUWFiVixPYmFVLFFJbUZJLCtDQUFDLHFEQUNHLHVEQUNOLDZEQUNSLFdKdEZNLFFJdUZOLE1ZdkJtQyxLSHJGM0MseURBQUMsK0VBQUEsaUVBV3lCLHVGQVZ4QixLR29GeUMsS0g3RXZDLE9HNkV1QyxLWm9FOUIsZ0NBckVYLGFKOURZLFFJa0VSLHFDQUFvQiwwQ0FBZix5Q0FDTCxhSm5FUSxRSW9FUixNSnBFUSxRSWtFUCwyQ0FLTSxnREFMRywrQ0FNUixXSnhFTSxxQkl5RU4sTUp6RU0sUWF0QmQsK0NBQUMscUVBQUEsb0RBV3lCLDBFQVgxQixtREFBQyx5RUFDQyxLYnFCWSxRYWRWLE9iY1UsUUlrRkksK0NBQUMscURBQ0csdURBQ04sNkRBQ1IsV0pyRk0sUUlzRk4sTVl2Qm1DLEtIckYzQyx5REFBQywrRUFBQSxpRUFXeUIsdUZBVnhCLEtHb0Z5QyxLSDdFdkMsT0c2RXVDLEtacUVoQyw4QkF0RVQsYUpqRVUsUUlxRU4sbUNBQW9CLHdDQUFmLHVDQUNMLGFKdEVNLFFJdUVOLE1KdkVNLFFJcUVMLHlDQUtNLDhDQUxHLDZDQU1SLFdKM0VJLG9CSTRFSixNSjVFSSxRYW5CWiw2Q0FBQyxtRUFBQSxrREFXeUIsd0VBWDFCLGlEQUFDLHVFQUNDLEtia0JVLFFhWFIsT2JXUSxR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ZGUsT01kVyx3Q05xQlgsa0JBQ2YsV0FSZSxPTWR1QyxtRU4yQmxDLHVCQUNwQixXQWRlLE1BYU0sd0JBQ3JCLFdBZHNCLFFBT04sbUJBTlYsYUFDVixXQUYwQixPTWQrQixrRU4yQmhDLHdCQUNyQixXQWRzQixRTWRJLHdDTnFCVCxvQkFDakIsV0FSc0IsUU1kZ0MsbUVOMkJoQyx5QkFDdEIsV0Fkc0IsUU1kSSx3Q05xQlYsbUJBQ2hCLFdBUnNCLE9BT0wsb0JBQ2pCLFdBUjhCLFNBT2Isb0JBTlYsY0FDWCxXQUZrQyxRTWR1QixrRU4yQi9CLHlCQUN0QixXQWQ4QixTTWRKLHdDTnFCUixxQkFDbEIsV0FSOEIsU01kd0IsbUVOMkIvQiwwQkFDdkIsV0FkOEIsU01kd0IsbUVOMkJoQyx5QkFDdEIsV0FkOEIsU0NqQ3JCLGdCQUFoQixpQkFBbUIsUUFBYSxJQUFFLFFBQVMsTUQyRC9CLFlBQ1QsTUFBTSxLQURJLGFBQ1YsTUFBTSxNQURHLFlBQ1QsTUFBTSIsImZpbGUiOiJmb3VuZGF0aW9uL2ZvdW5kYXRpb24tY29uZi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gIEJMT0NLIExJU1RcclxuICAtLS0tLS0tLS0tXHJcblxyXG4gIEEgZ2VuZXJpYyBsaXN0IGNvbXBvbmVudCB0aGF0IGNhbiBhY2NvbW9kYXRlIGEgdmFyaWV0eSBvZiBzdHlsZXMgYW5kIGNvbnRyb2xzLlxyXG5cclxuICBGZWF0dXJlczpcclxuICAgLSBJY29uc1xyXG4gICAtIExhYmVsc1xyXG4gICAtIENoZXZyb25zXHJcbiAgIC0gVGV4dCBmaWVsZHNcclxuICAgLSBEcm9wZG93biBtZW51c1xyXG4gICAtIENoZWNrYm94L3JhZGlvIGlucHV0c1xyXG4qL1xyXG5cclxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIEJsb2NrIExpc3RcclxuJGJsb2NrbGlzdC1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xyXG4kYmxvY2tsaXN0LWZ1bGxibGVlZDogdHJ1ZSAhZGVmYXVsdDtcclxuJGJsb2NrbGlzdC1mb250c2l6ZTogMXJlbSAhZGVmYXVsdDtcclxuXHJcbiRibG9ja2xpc3QtaXRlbS1wYWRkaW5nOiAwLjhyZW0gMXJlbSAhZGVmYXVsdDtcclxuJGJsb2NrbGlzdC1pdGVtLWNvbG9yOiBpc2l0bGlnaHQoJGJsb2NrbGlzdC1iYWNrZ3JvdW5kLCAjMDAwLCAjZmZmKSAhZGVmYXVsdDtcclxuJGJsb2NrbGlzdC1pdGVtLWJhY2tncm91bmQtaG92ZXI6IHNtYXJ0c2NhbGUoJGJsb2NrbGlzdC1iYWNrZ3JvdW5kLCA0LjUlKSAhZGVmYXVsdDtcclxuJGJsb2NrbGlzdC1pdGVtLWNvbG9yLWRpc2FibGVkOiAjOTk5ICFkZWZhdWx0O1xyXG4kYmxvY2tsaXN0LWl0ZW0tYm9yZGVyOiAxcHggc29saWQgc21hcnRzY2FsZSgkYmxvY2tsaXN0LWJhY2tncm91bmQsIDE4LjUlKSAhZGVmYXVsdDtcclxuXHJcbiRibG9ja2xpc3QtaXRlbS1sYWJlbC1jb2xvcjogc2NhbGUtY29sb3IoJGJsb2NrbGlzdC1pdGVtLWNvbG9yLCAkbGlnaHRuZXNzOiA2MCUpICFkZWZhdWx0O1xyXG4kYmxvY2tsaXN0LWl0ZW0taWNvbi1zaXplOiAwLjggIWRlZmF1bHQ7XHJcblxyXG4kYmxvY2tsaXN0LWhlYWRlci1mb250c2l6ZTogMC44ZW0gIWRlZmF1bHQ7XHJcbiRibG9ja2xpc3QtaGVhZGVyLWNvbG9yOiBzbWFydHNjYWxlKCRibG9ja2xpc3QtaXRlbS1jb2xvciwgNDAlKSAhZGVmYXVsdDtcclxuJGJsb2NrbGlzdC1oZWFkZXItdXBwZXJjYXNlOiB0cnVlO1xyXG5cclxuJGJsb2NrbGlzdC1jaGVjay1pY29uczogdHJ1ZSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4vKlxyXG4gIEFkZHMgc3R5bGVzIGZvciBhIGJsb2NrIGxpc3QgY29udGFpbmVyLlxyXG5cclxuICAkZm9udC1zaXplOiBnbG9iYWwgZm9udCBzaXplIGZvciB0aGUgbGlzdC5cclxuICAkZnVsbC1ibGVlZDogd2hlbiBcInRydWVcIiwgdGhlIG1hcmdpbnMgb2YgdGhlIGxpc3QgaW52ZXJ0IHRvIGxpbmUgaXQgdXAgd2l0aCB0aGUgZWRnZSBvZiBhIHBhZGRlZCBlbGVtZW50LlxyXG4qL1xyXG4lYmxvY2stbGlzdC1jb250YWluZXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG4gICYsIHVsIHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBibG9jay1saXN0LWNvbnRhaW5lcihcclxuICAkZm9udC1zaXplOiAkYmxvY2tsaXN0LWZvbnRzaXplLFxyXG4gICRmdWxsLWJsZWVkOiAkYmxvY2tsaXN0LWZ1bGxibGVlZFxyXG4pIHtcclxuICBAZXh0ZW5kICVibG9jay1saXN0LWNvbnRhaW5lcjtcclxuICBmb250LXNpemU6ICRmb250LXNpemU7XHJcblxyXG4gIEBpZiAkZnVsbC1ibGVlZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogLSRnbG9iYWwtcGFkZGluZztcclxuICAgIG1hcmdpbi1yaWdodDogLSRnbG9iYWwtcGFkZGluZztcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgU3R5bGVzIGJsb2NrIGxpc3QgaGVhZGVycyBvbiB0aGUgc2VsZWN0b3IgeW91IGluY2x1ZGUgdGhpcyBtaXhpbiBpbiAobm9ybWFsbHkgYSA8aGVhZGVyPikuXHJcblxyXG4gICRjb2xvciAtIGNvbG9yIG9mIHRoZSBoZWFkZXIuXHJcbiAgJGZvbnQtc2l6ZSAtIGZvbnQgc2l6ZSBvZiB0aGUgaGVhZGVyLlxyXG4gICRvZmZzZXQgLSBsZWZ0IG1hcmdpbiB0byBhZGQgdG8gdGhlIGhlYWRlciwgdG8gbGluZSBpdCB1cCB3aXRoIHRoZSBsaXN0IGl0ZW1zLlxyXG4qL1xyXG5AbWl4aW4gYmxvY2stbGlzdC1oZWFkZXIoXHJcbiAgJGNvbG9yOiAkYmxvY2tsaXN0LWhlYWRlci1jb2xvcixcclxuICAkZm9udC1zaXplOiAkYmxvY2tsaXN0LWhlYWRlci1mb250c2l6ZSxcclxuICAkdXBwZXJjYXNlOiAkYmxvY2tsaXN0LWhlYWRlci11cHBlcmNhc2UsXHJcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJsb2NrbGlzdC1pdGVtLXBhZGRpbmcsIGxlZnQpXHJcbikge1xyXG4gIG1hcmdpbi10b3A6IDFlbTtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xyXG4gIG1hcmdpbi1sZWZ0OiAkb2Zmc2V0O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgQGlmICR1cHBlcmNhc2UgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XHJcbn1cclxuXHJcbi8qXHJcbiAgU3R5bGVzIGJsb2NrIGxpc3QgaXRlbXMgb24gdGhlIHNlbGVjdG9yIHlvdSBpbmNsdWRlIHRoaXMgbWl4aW4gaW4gKG5vcm1hbGx5IGFuIDxsaT4pLlxyXG5cclxuICAkY29sb3IgLSBjb2xvciBvZiBpdGVtcy5cclxuICAkY29sb3ItaG92ZXIgLSBjb2xvciBvZiBpdGVtcyBvbiBob3Zlci5cclxuICAkYmFja2dyb3VuZCAtIGJhY2tncm91bmQgb2YgaXRlbXMuXHJcbiAgJGJhY2tncm91bmQtaG92ZXIgLSBiYWNrZ3JvdW5kIG9mIGl0ZW1zIG9uIGhvdmVyLlxyXG4gICRib3JkZXIgLSBib3JkZXIgYmV0d2VlbiBpdGVtcy5cclxuICAkcGFkZGluZyAtIHBhZGRpbmcgb24gaXRlbXMuXHJcbiovXHJcbkBtaXhpbiBibG9jay1saXN0LWl0ZW0oXHJcbiAgJGNvbG9yOiAkYmxvY2tsaXN0LWl0ZW0tY29sb3IsXHJcbiAgJGNvbG9yLWhvdmVyOiAkYmxvY2tsaXN0LWl0ZW0tY29sb3IsXHJcbiAgJGNvbG9yLWRpc2FibGVkOiAkYmxvY2tsaXN0LWl0ZW0tY29sb3ItZGlzYWJsZWQsXHJcbiAgJGJhY2tncm91bmQ6IHRyYW5zcGFyZW50LFxyXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYmxvY2tsaXN0LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcclxuICAkYm9yZGVyOiAkYmxvY2tsaXN0LWl0ZW0tYm9yZGVyLFxyXG4gICRwYWRkaW5nOiAkYmxvY2tsaXN0LWl0ZW0tcGFkZGluZ1xyXG4pIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIEBpZiBoYXN2YWx1ZSgkYm9yZGVyKSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3A6ICRib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBJbm5lciBlbGVtZW50cyBzaGFyZSB0aGUgc2FtZSBiYXNpYyBzdHlsZXNcclxuICA+IGEsID4gc3BhbiwgPiBsYWJlbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gICAgcGFkZGluZy1sZWZ0OiBnZXQtc2lkZSgkcGFkZGluZywgbGVmdCk7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgfVxyXG4gID4gc3BhbiB7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgfVxyXG4gID4gYSwgPiBsYWJlbCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gYSwgPiBsYWJlbCwgc2VsZWN0IHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIENvbG9yaW5nIGNsYXNzZXNcclxuICAmLmNhdXRpb24gPiBhIHtcclxuICAgICYsICY6aG92ZXIgeyBjb2xvcjogJGFsZXJ0LWNvbG9yOyB9XHJcbiAgfVxyXG4gICYuZGlzYWJsZWQgPiBhIHtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICYsICY6aG92ZXIgeyBjb2xvcjogJGNvbG9yLWRpc2FibGVkOyB9XHJcbiAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgQWRkcyBsYWJlbCBzdHlsZXMgdG8gdGhlIGNsYXNzIHlvdSBpbmNsdWRlIHRoaXMgbWl4aW4gaW4uXHJcblxyXG4gICRjb2xvciAtIGNvbG9yIG9mIHRoZSBsYWJlbC5cclxuICAkbGVmdC1jbGFzcyAtIGV4dHJhIGNsYXNzIHRvIGZsaXAgdGhlIG9yaWVudGF0aW9uIG9mIHRoZSBsYWJlbC5cclxuICAkbGVmdC1wYWRkaW5nIC0gbGVmdCBwYWRkaW5nIHRvIHVzZSBmb3IgbGVmdC1oYW5kIGxhYmVscy5cclxuKi9cclxuQG1peGluIGJsb2NrLWxpc3QtbGFiZWwoXHJcbiAgJGNvbG9yOiAkYmxvY2tsaXN0LWl0ZW0tbGFiZWwtY29sb3IsXHJcbiAgJGxlZnQtY2xhc3M6ICdsZWZ0JyxcclxuICAkbGVmdC1wYWRkaW5nOiBnZXQtc2lkZSgkYmxvY2tsaXN0LWl0ZW0tcGFkZGluZywgdG9wKVxyXG4pIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcbiAgJi4jeyRsZWZ0LWNsYXNzfSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGxlZnQtcGFkZGluZztcclxuICAgIGZsb2F0OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLypcclxuICBBZGRzIHN1cHBvcnQgZm9yIGNoZXZyb25zLCB3aGljaCBhcHBlYXIgb24gdGhlIHJpZ2h0LWhhbmQgc2lkZSBvZiB0aGUgaXRlbS5cclxuXHJcbiAgJGNvbG9yIC0gY29sb3Igb2YgdGhlIGNoZXZyb24uXHJcbiAgJHBhZGRpbmcgLSBpbmNsdWRlIHRoZSBnbG9iYWwgcGFkZGluZyBvZiBibG9jayBsaXN0IGl0ZW1zIGhlcmUuXHJcbiovXHJcbkBtaXhpbiBibG9jay1saXN0LWNoZXZyb24oXHJcbiAgJGNvbG9yOiAkYmxvY2tsaXN0LWhlYWRlci1jb2xvcixcclxuICAkcGFkZGluZzogJGJsb2NrbGlzdC1pdGVtLXBhZGRpbmcsXHJcbiAgJGxhYmVsLWNsYXNzOiAnYmxvY2stbGlzdC1sYWJlbCdcclxuKSB7XHJcbiAgLy8gQ2hldnJvbnMgYXJlIGEgcHNldWRvLWVsZW1lbnRcclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnXFwyMDNBJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IGdldC1zaWRlKCRwYWRkaW5nLCByaWdodCk7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMmVtO1xyXG4gIH1cclxuXHJcbiAgLy8gTGFiZWxzIG5leHQgdG8gbGlua3MgbW92ZSBvdmVyIHRvIG1ha2Ugcm9vbSBmb3IgdGhlIGNoZXZyb25cclxuICAvLyBUT0RPOiB0aGlzIHNlbGVjdG9yIG5lZWRzIHRvIGJlIGN1c3RvbWlhYmxlLCBidXQgYWRkaW5nIGEgc2V0dGluZyBqdXN0IGZvciBpdCBtaWdodCBiZSB3ZWlyZFxyXG4gIC4jeyRsYWJlbC1jbGFzc30ge1xyXG4gICAgcGFkZGluZy1yaWdodDogZ2V0LXNpZGUoJHBhZGRpbmcsIHJpZ2h0KSAqIDEuNTtcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgQWRkcyBpY29uIHN0eWxlcy4gQ2FsbCB0aGlzIG1peGluIG9uIGEgYmxvY2sgbGlzdCBjb250YWluZXIuXHJcblxyXG4gICRzaXplIC0gc2l6ZSBvZiB0aGUgaWNvbiBhcyBhIHBlcmNlbnRhZ2UgKGRlY2ltYWwpIG9mIHRoZSBsaXN0IGl0ZW0ncyBoZWlnaHQuXHJcbiAgJGl0ZW0tc2VsZWN0b3IgLSBvdmVycmlkZXMgdGhlICdsaScgc2VsZWN0b3IgdXNlZCBmb3IgbGlzdCBpdGVtcy5cclxuKi9cclxuQG1peGluIGJsb2NrLWxpc3QtaWNvbnMoXHJcbiAgJHNpemU6ICRibG9ja2xpc3QtaXRlbS1pY29uLXNpemUsXHJcbiAgJGl0ZW0tc2VsZWN0b3I6ICdsaSdcclxuKSB7XHJcbiAgLy8gUEggLSBuZWVkIGEgYmV0dGVyIHNvbHV0aW9uXHJcbiAgJGl0ZW0taGVpZ2h0OlxyXG4gICAgJGJsb2NrbGlzdC1mb250c2l6ZVxyXG4gICAgKyBnZXQtc2lkZSgkYmxvY2tsaXN0LWl0ZW0tcGFkZGluZywgdG9wKVxyXG4gICAgKyBnZXQtc2lkZSgkYmxvY2tsaXN0LWl0ZW0tcGFkZGluZywgdG9wKTtcclxuXHJcbiAgJGljb24taGVpZ2h0OiAkaXRlbS1oZWlnaHQgKiAkYmxvY2tsaXN0LWl0ZW0taWNvbi1zaXplO1xyXG4gICRpY29uLW9mZnNldDogKCRpdGVtLWhlaWdodCAtICRpY29uLWhlaWdodCkgLyAyO1xyXG5cclxuICAjeyRpdGVtLXNlbGVjdG9yfSB7XHJcbiAgICA+IGEsID4gc3BhbiwgPiBsYWJlbCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogKGdldC1zaWRlKCRibG9ja2xpc3QtaXRlbS1wYWRkaW5nLCBsZWZ0KSAqIDIpICsgJGJsb2NrbGlzdC1pdGVtLWljb24tc2l6ZTtcclxuICAgIH1cclxuICAgIGltZywgLmljb25pYyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAkaWNvbi1vZmZzZXQ7XHJcbiAgICAgIGxlZnQ6ICRpY29uLW9mZnNldDtcclxuICAgICAgd2lkdGg6ICRpY29uLWhlaWdodDtcclxuICAgICAgaGVpZ2h0OiAkaWNvbi1oZWlnaHQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG4gIEFkZHMgc3VwcG9ydCBmb3IgdGV4dCBmaWVsZHMsIHNlbGVjdCBtZW51cywgYW5kIGNoZWNrYm94L3JhZGlvIGdyb3VwcyBpbiBibG9jayBsaXN0cy5cclxuXHJcbiAgJGNvbG9yIC0gY29sb3Igb2Ygc2VsZWN0IG1lbnUgYXJyb3cuXHJcbiAgJGJhY2tncm91bmQtaG92ZXIgLSBjb2xvciBvZiBzZWxlY3QgbWVudSB3aGVuIGhvdmVyZWQgb3Zlci5cclxuICAkcGFkZGluZyAtIGluY2x1ZGUgdGhlIGdsb2JhbCBwYWRkaW5nIG9mIGJsb2NrIGxpc3QgaXRlbXMgaGVyZS5cclxuICAkZHJvcGRvd24tY2xhc3MgLSBjbGFzcyB0byB1c2UgZm9yIGxpc3QgaXRlbXMgdGhhdCBjb250YWluIGEgZHJvcGRvd24uXHJcbiAgJHN3aXRjaC1jbGFzcyAtIGNsYXNzIHRvIHVzZSBmb3Igc3dpdGNoZXMgaW5zaWRlIGxpc3QgaXRlbXMuXHJcbiovXHJcbkBtaXhpbiBibG9jay1saXN0LWlucHV0cyhcclxuICAkY29sb3I6ICRibG9ja2xpc3QtaXRlbS1jb2xvcixcclxuICAkYmFja2dyb3VuZDogJGJsb2NrbGlzdC1iYWNrZ3JvdW5kLFxyXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYmxvY2tsaXN0LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcclxuICAkcGFkZGluZzogJGJsb2NrbGlzdC1pdGVtLXBhZGRpbmcsXHJcbiAgJGljb25zOiAkYmxvY2tsaXN0LWNoZWNrLWljb25zLFxyXG4gICRkcm9wZG93bi1jbGFzczogJ3dpdGgtZHJvcGRvd24nLFxyXG4gICRzd2l0Y2gtY2xhc3M6ICdzd2l0Y2gnXHJcbikge1xyXG4gIC8vIFRleHQgZmllbGRzXHJcbiAgI3skdGV4dC1pbnB1dC1zZWxlY3RvcnN9IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuXHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gTXVsdGlwbGUgc2VsZWN0XHJcbiAgbGkgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIGxpID4gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IC05OTk5cHg7XHJcblxyXG4gICAgJiArIGxhYmVsIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGJsb2NrbGlzdC1mb250c2l6ZTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkaWNvbnMgPT0gdHJ1ZSB7XHJcbiAgICAgICY6Y2hlY2tlZCArIGxhYmVsIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW1hZ2UtY2hlY2ttYXJrKCRjb2xvcik7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6IDEuNWVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxLjVlbTtcclxuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTAuMjVlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIERyb3Bkb3duc1xyXG4gIC4jeyRkcm9wZG93bi1jbGFzc30ge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgLy8gUmVzZXQgcGVza3kgPHNlbGVjdD4gc3R5bGVzXHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAwO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgZm9udC1zaXplOiAxZW07IC8vIFNhbWUgc2l6ZSBhcyBpdHMgcGFyZW50XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBTd2l0Y2hlc1xyXG4gIC4jeyRzd2l0Y2gtY2xhc3N9IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IGdldC1zaWRlKCRwYWRkaW5nLCByaWdodCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKGJsb2NrLWxpc3QpIHtcclxuICAuYmxvY2stbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBibG9jay1saXN0LWNvbnRhaW5lcjtcclxuICAgIEBpbmNsdWRlIGJsb2NrLWxpc3QtaW5wdXRzO1xyXG5cclxuICAgICYud2l0aC1pY29ucyB7IEBpbmNsdWRlIGJsb2NrLWxpc3QtaWNvbnM7IH1cclxuICAgIGhlYWRlciAgICAgICB7IEBpbmNsdWRlIGJsb2NrLWxpc3QtaGVhZGVyOyB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBAaW5jbHVkZSBibG9jay1saXN0LWl0ZW07XHJcblxyXG4gICAgICAmLndpdGgtY2hldnJvbiAgICB7IEBpbmNsdWRlIGJsb2NrLWxpc3QtY2hldnJvbjsgfVxyXG4gICAgICAuYmxvY2stbGlzdC1sYWJlbCB7IEBpbmNsdWRlIGJsb2NrLWxpc3QtbGFiZWw7IH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTEgYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59IiwiLypcbiAgR0xPQkFMXG4gIC0tLS0tLVxuXG4gIEdsb2JhbCBzdHlsZXMgYW5kIHNldHRpbmdzIGZvciBGb3VuZGF0aW9uIGZvciBBcHBzIGFyZSBzdG9yZWQgaGVyZS4gVGhpcyBmaWxlIG11c3QgYWx3YXlzXG4gIGJlIGltcG9ydGVkLCBubyBtYXR0ZXIgd2hhdC5cblxuICBJbmNsdWRlczpcbiAgIC1cbiovXG5cbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xuLy8gR2xvYmFsIFN0eWxlc1xuLy8gVGhpcyBzZXRzIDFyZW0gdG8gYmUgMTZweFxuJHJlbS1iYXNlOiAxNnB4O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250LXNpemUgaXMgc2V0IHRvIDEwMCUgb2YgdGhlIGJyb3dzZXIgc3R5bGUgc2hlZXQgKHVzdWFsbHkgMTZweClcbi8vIGZvciBjb21wYXRpYmlsaXR5IHdpdGggYnJvd3Nlci1iYXNlZCB0ZXh0IHpvb20gb3IgdXNlci1zZXQgZGVmYXVsdHMuXG5cbi8vIFNpbmNlIHRoZSB0eXBpY2FsIGRlZmF1bHQgYnJvd3NlciBmb250LXNpemUgaXMgMTZweCwgdGhhdCBtYWtlcyB0aGUgY2FsY3VsYXRpb24gZm9yIGdyaWQgc2l6ZS5cbi8vIElmIHlvdSB3YW50IHlvdXIgYmFzZSBmb250LXNpemUgdG8gYmUgZGlmZmVyZW50IGFuZCBub3QgaGF2ZSBpdCBhZmZlY3QgdGhlIGdyaWQgYnJlYWtwb2ludHMsXG4vLyBzZXQgJHJlbS1iYXNlIHRvICRiYXNlLWZvbnQtc2l6ZSBhbmQgbWFrZSBzdXJlICRiYXNlLWZvbnQtc2l6ZSBpcyBhIHB4IHZhbHVlLlxuJGJhc2UtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLyAkYmFzZS1saW5lLWhlaWdodCBpcyAyNHB4IHdoaWxlICRiYXNlLWZvbnQtc2l6ZSBpcyAxNnB4XG4kYmFzZS1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLyBUZXh0IHNlbGVjdG9yIGhlbHBlcnNcbiRoZWFkZXJzOiBcImgxLGgyLGgzLGg0LGg1LGg2XCI7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBkZWZpbmUgZGVmYXVsdCBmb250IHdlaWdodHNcbiRmb250LXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGdsb2JhbCBzdHlsZXNcbiRib2R5LWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG4kYm9keS1mb250LWNvbG9yOiAjMjIyICFkZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJvZHktZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG5cbi8vIEFwcGxpY2F0aW9uIENvbG9yc1xuJHByaW1hcnktY29sb3I6ICMwMDU1OGIgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yOiAjZjFmMWYxICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yOiAjRjA0MTI0ICFkZWZhdWx0O1xuJGluZm8tY29sb3I6ICNBMEQzRTggIWRlZmF1bHQ7XG4kc3VjY2Vzcy1jb2xvcjogIzQzQUM2QSAhZGVmYXVsdDtcbiR3YXJuaW5nLWNvbG9yOiAjRjA4QTI0ICFkZWZhdWx0O1xuJGRhcmstY29sb3I6ICMyMzIzMjMgIWRlZmF1bHQ7XG4kZ3JheTogI2RmZGZkZiAhZGVmYXVsdDtcbiRncmF5LWRhcms6IGRhcmtlbigkZ3JheSwgOCkgIWRlZmF1bHQ7XG4kZ3JheS1saWdodDogbGlnaHRlbigkZ3JheSwgOCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHN1cmUgYm9yZGVyIHJhZGl1cyBtYXRjaGVzIHVubGVzcyB3ZSB3YW50IGl0IGRpZmZlcmVudC5cbiRnbG9iYWwtcmFkaXVzOiA0cHggIWRlZmF1bHQ7XG4kZ2xvYmFsLXJvdW5kZWQ6IDEwMDBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgZm9yIGRlZmF1bHQgc3BhY2luZ1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuJGdsb2JhbC1zcGFjaW5nOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4vLy9cblxuLy8gRm9yIGludGVybmFsIHVzZTogYSBjb2xvciBtYXBcbiRmb3VuZGF0aW9uLWNvbG9yczogKFxuICBwcmltYXJ5OiAkcHJpbWFyeS1jb2xvcixcbiAgc3VjY2VzczogJHN1Y2Nlc3MtY29sb3IsXG4gIHdhcm5pbmc6ICR3YXJuaW5nLWNvbG9yLFxuICBhbGVydDogJGFsZXJ0LWNvbG9yLFxuICBkYXJrOiAkZGFyay1jb2xvcixcbik7XG5cbkBpbmNsdWRlIGV4cG9ydHMoZ2xvYmFsKSB7XG4gIC8vIE1ha2UgZXh0cmEgc3VyZSB3ZSdyZSB1c2luZyB0aGUgd2hvbGUgd2luZG93XG4gIGh0bWwsIGJvZHkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgfVxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG4gICosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGJvZHktZm9udC13ZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJGJvZHktZm9udC1zdHlsZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaWYgJGJvZHktYW50aWFsaWFzZWQge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR3JpZCBEZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcblxuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC8vIEdpdmUgYWxsIGFuY2hvcnMgYW5kIGludGVyYWN0aXZlIGRpcmVjdGl2ZXMgdGhlIGhvdmVyIGN1c29yXG4gIGEsIFt1aS1zcmVmXSwgW3pmLW9wZW5dLCBbemYtY2xvc2VdLCBbemYtdG9nZ2xlXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgI21hcF9jYW52YXMsXG4gIC5tYXBfY2FudmFzIHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHsgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4gIH1cbn1cbiIsIi8qXHJcbiAgQUNUSU9OIFNIRUVUXHJcbiAgLS0tLS0tLS0tLS0tXHJcblxyXG4gIEEgZHJvcGRvd24gbWVudSB0aGF0IHN0aWNrcyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gb24gc21hbGwgZGV2aWNlcywgYW5kIGJlY29tZXMgYSBkcm9wZG93biBtZW51IG9uIGxhcmdlciBkZXZpY2VzLlxyXG4qL1xyXG5cclxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIEFjdGlvbiBTaGVldFxyXG4kYWN0aW9uc2hlZXQtYmFja2dyb3VuZDogd2hpdGUgIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC1ib3JkZXItY29sb3I6ICNjY2MgIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC1hbmltYXRlOiB0cmFuc2Zvcm0gb3BhY2l0eSAhZGVmYXVsdDtcclxuJGFjdGlvbnNoZWV0LWFuaW1hdGlvbi1zcGVlZDogMC4yNXMgIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC13aWR0aDogMzAwcHggIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC1yYWRpdXM6IDRweCAhZGVmYXVsdDtcclxuJGFjdGlvbnNoZWV0LXNoYWRvdzogMCAtM3B4IDEwcHggcmdiYShibGFjaywgMC4yNSkgIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbiRhY3Rpb25zaGVldC10YWlsLXNpemU6IDEwcHggIWRlZmF1bHQ7XHJcblxyXG4kYWN0aW9uc2hlZXQtcG9wdXAtc2hhZG93OiAwIDAgMTBweCByZ2JhKGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcclxuXHJcbiRhY3Rpb25zaGVldC1saW5rLWNvbG9yOiAjMDAwICFkZWZhdWx0O1xyXG4kYWN0aW9uc2hlZXQtbGluay1iYWNrZ3JvdW5kLWhvdmVyOiBzbWFydHNjYWxlKCRhY3Rpb25zaGVldC1iYWNrZ3JvdW5kKSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4vKlxyXG4gIFN0eWxlcyBmb3IgdGhlIGxpc3QgaW5zaWRlIGFuIGFjdGlvbiBzaGVldC5cclxuICBEb24ndCBpbmNsdWRlIHRoaXMgbWl4aW4gaWYgeW91IHdhbnQgdG8gYnVpbGQgY3VzdG9tIGNvbnRyb2xzIGluc2lkZSB0aGUgc2hlZXQuXHJcbiovXHJcbkBtaXhpbiBhY3Rpb24tc2hlZXQtbWVudShcclxuICAkcGFkZGluZzogJGFjdGlvbnNoZWV0LXBhZGRpbmcsXHJcbiAgJGNvbG9yOiAkYWN0aW9uc2hlZXQtbGluay1jb2xvcixcclxuICAkYm9yZGVyLWNvbG9yOiAkYWN0aW9uc2hlZXQtYm9yZGVyLWNvbG9yLFxyXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWN0aW9uc2hlZXQtbGluay1iYWNrZ3JvdW5kLWhvdmVyXHJcbikge1xyXG4gIC8vIE1lbnUgY29udGFpbmVyXHJcbiAgdWwge1xyXG4gICAgbWFyZ2luOiAtKCRwYWRkaW5nKTtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcbiAgICAvLyBJZiB0aGUgbWVudSBoYXMgbm8gY29udGVudCBhYm92ZSBpdFxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0kcGFkZGluZztcclxuXHJcbiAgICAgIGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTWVudSBsaW5rc1xyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAkcGFkZGluZyAqIDAuODtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hbGVydCA+IGEge1xyXG4gICAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xyXG4gICAgfVxyXG4gICAgLmRpc2FibGVkID4gYSB7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICBjb2xvcjogIzk5OTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgU3R5bGVzIGZvciB0aGUgYWN0aW9uIHNoZWV0IGNvbnRhaW5lci4gQWN0aW9uIHNoZWV0cyBwaW4gdG8gdGhlIHRvcCBvciBib3R0b20gb2YgdGhlIHNjcmVlbi5cclxuKi9cclxuQG1peGluIGFjdGlvbi1zaGVldChcclxuICAkcG9zaXRpb246IGJvdHRvbSxcclxuICAkc2hhZG93OiAkYWN0aW9uc2hlZXQtc2hhZG93LFxyXG4gICRhbmltYXRlOiAkYWN0aW9uc2hlZXQtYW5pbWF0ZSxcclxuICAkYW5pbWF0aW9uLXNwZWVkOiAkYWN0aW9uc2hlZXQtYW5pbWF0aW9uLXNwZWVkLFxyXG4gICRwYWRkaW5nOiAkYWN0aW9uc2hlZXQtcGFkZGluZyxcclxuICAkYmFja2dyb3VuZDogJGFjdGlvbnNoZWV0LWJhY2tncm91bmRcclxuKSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogMTAwMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJGFuaW1hdGU7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1zcGVlZDtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcblxyXG4gIEBpZiBoYXN2YWx1ZSgkc2hhZG93KSB7XHJcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xyXG4gIH1cclxuXHJcbiAgLy8gUG9zaXRpb25zXHJcbiAgQGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gVGhlc2UgdHdvIGRvbid0IHF1aXRlIHdvcmsgYXMgcGxhbm5lZCB5ZXRcclxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHBvcHVwLW1lbnUoXHJcbiAgJHBvc2l0aW9uOiBib3R0b20sXHJcbiAgJGJhY2tncm91bmQ6ICRhY3Rpb25zaGVldC1iYWNrZ3JvdW5kLFxyXG4gICR3aWR0aDogJGFjdGlvbnNoZWV0LXdpZHRoLFxyXG4gICRyYWRpdXM6ICRhY3Rpb25zaGVldC1yYWRpdXMsXHJcbiAgJHNoYWRvdzogJGFjdGlvbnNoZWV0LXBvcHVwLXNoYWRvdyxcclxuICAkdGFpbC1zaXplOiAkYWN0aW9uc2hlZXQtdGFpbC1zaXplXHJcbikge1xyXG4gIC8qXHJcbiAgICBDb3JlIHN0eWxlc1xyXG4gICovXHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcbiAgLypcclxuICAgIE1lbnUgc2hhZG93XHJcbiAgKi9cclxuICBAaWYgaGFzdmFsdWUoJHNoYWRvdykge1xyXG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICBBY3RpdmUgc3RhdGVcclxuICAqL1xyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICBNZW51IHRhaWxcclxuICAqL1xyXG4gICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAwcHg7XHJcbiAgICBoZWlnaHQ6IDBweDtcclxuICAgIGJvcmRlci1sZWZ0OiAkdGFpbC1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAkdGFpbC1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0oJHRhaWwtc2l6ZSk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgUG9zaXRpb25pbmdcclxuICAqL1xyXG4gIEBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDExMCUpO1xyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUsICY6OmFmdGVyIHtcclxuICAgICAgdG9wOiAtKCR0YWlsLXNpemUpO1xyXG4gICAgICBib3R0b206IGF1dG87XHJcbiAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206ICR0YWlsLXNpemUgc29saWQgJGJhY2tncm91bmQ7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICB0b3A6IC0oJHRhaWwtc2l6ZSArIDIpO1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKGJsYWNrLCAwLjE1KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTEyMCUpO1xyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtMTEwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XHJcbiAgICAgIHRvcDogYXV0bztcclxuICAgICAgYm90dG9tOiAtKCR0YWlsLXNpemUpO1xyXG4gICAgICBib3JkZXItdG9wOiAkdGFpbC1zaXplIHNvbGlkICRiYWNrZ3JvdW5kO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYm90dG9tOiAtKCR0YWlsLXNpemUgKyAyKTtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYShibGFjaywgMC4xNSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKGFjdGlvbi1zaGVldCkge1xyXG4gIC5hY3Rpb24tc2hlZXQtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgLmFjdGlvbi1zaGVldCB7XHJcbiAgICBAaW5jbHVkZSBhY3Rpb24tc2hlZXQ7XHJcbiAgICBAaW5jbHVkZSBhY3Rpb24tc2hlZXQtbWVudTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSBwb3B1cC1tZW51O1xyXG5cclxuICAgICAgJi50b3Age1xyXG4gICAgICAgIEBpbmNsdWRlIHBvcHVwLW1lbnUodG9wKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYucHJpbWFyeSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgICBjb2xvcjogaXNpdGxpZ2h0KCRwcmltYXJ5LWNvbG9yKTtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAmOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIgeyBib3JkZXItdG9wLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjsgfVxyXG4gICAgICAmLnRvcDo6YmVmb3JlLCAmLnRvcDo6YWZ0ZXIgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjsgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYWN0aW9uLXNoZWV0LW1lbnUoXHJcbiAgICAgICAgJGNvbG9yOiBpc2l0bGlnaHQoJHByaW1hcnktY29sb3IpLFxyXG4gICAgICAgICRib3JkZXItY29sb3I6IHNtYXJ0c2NhbGUoJHByaW1hcnktY29sb3IsIDEwJSksXHJcbiAgICAgICAgJGJhY2tncm91bmQtaG92ZXI6IHNtYXJ0c2NhbGUoJHByaW1hcnktY29sb3IpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICAmLmRhcmsge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkZGFyay1jb2xvcjtcclxuICAgICAgY29sb3I6IGlzaXRsaWdodCgkZGFyay1jb2xvcik7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgJjo6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICAmOjpiZWZvcmUsICY6OmFmdGVyIHsgYm9yZGVyLXRvcC1jb2xvcjogJGRhcmstY29sb3I7IH1cclxuICAgICAgJi50b3A6OmJlZm9yZSwgJi50b3A6OmFmdGVyIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGRhcmstY29sb3I7IH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIGFjdGlvbi1zaGVldC1tZW51KFxyXG4gICAgICAgICRjb2xvcjogaXNpdGxpZ2h0KCRkYXJrLWNvbG9yKSxcclxuICAgICAgICAkYm9yZGVyLWNvbG9yOiBzbWFydHNjYWxlKCRkYXJrLWNvbG9yLCAxMCUpLFxyXG4gICAgICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzbWFydHNjYWxlKCRkYXJrLWNvbG9yKVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKlxuICBGT1JNU1xuICAtLS0tLVxuXG4gIE91ciBmb3JtIHN0eWxlcyBpbmNsdWRlIGJhc2ljIHJlc2V0cyBmb3IgdGV4dCBmaWVsZHMsIHNlbGVjdCBtZW51cywgYW5kIHNvIG9uLCBhbG9uZyB3aXRoIHNvbWUgb2Ygb3VyIG93biBjdXN0b20gY29tcG9uZW50cy5cblxuICBJbmNsdWRlczpcbiAgIC0gVGV4dCBmaWVsZHNcbiAgIC0gVGV4dCBhcmVhc1xuICAgLSBTZWxlY3QgbWVudXNcbiAgIC0gQ2hlY2tib3hlcyBhbmQgcmFkaW8gYnV0dG9uc1xuICAgLSBSYW5nZSBzbGlkZXJcbiAgIC0gUHJvZ3Jlc3MgYmFycyBhbmQgbWV0ZXJzXG4qL1xuXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3Ncbi8vIEZvcm1zXG4vLyBCYXNpYyBmb3JtIHZhcmlhYmxlc1xuJGZvcm0tZm9udHNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIFRleHQgZmllbGRzXG4kaW5wdXQtY29sb3I6ICMwMDAgIWRlZmF1bHQ7XG4kaW5wdXQtY29sb3ItaG92ZXI6ICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvci1mb2N1czogJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG4kaW5wdXQtYmFja2dyb3VuZC1ob3ZlcjogJGlucHV0LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJGlucHV0LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogc21hcnRzY2FsZSgkaW5wdXQtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgI2NjYyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItaG92ZXI6IDFweCBzb2xpZCAjYmJiICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICM5OTkgIWRlZmF1bHQ7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8gU2VsZWN0IG1lbnVzXG4kc2VsZWN0LWNvbG9yOiAjMDAwICFkZWZhdWx0O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAjZmFmYWZhICFkZWZhdWx0O1xuJHNlbGVjdC1iYWNrZ3JvdW5kLWhvdmVyOiBzbWFydHNjYWxlKCRzZWxlY3QtYmFja2dyb3VuZCwgNCUpICFkZWZhdWx0O1xuJHNlbGVjdC1hcnJvdzogdHJ1ZSAhZGVmYXVsdDtcbiRzZWxlY3QtYXJyb3ctY29sb3I6ICRzZWxlY3QtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIExhYmVsc1xuJGZvcm0tbGFiZWwtZm9udHNpemU6IDAuOXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLW1hcmdpbjogMC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cbi8vIElubGluZSBsYWJlbHNcbiRpbmxpbmVsYWJlbC1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRpbmxpbmVsYWJlbC1iYWNrZ3JvdW5kOiAjZWVlICFkZWZhdWx0O1xuJGlubGluZWxhYmVsLWJvcmRlcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcblxuLy8gUmFuZ2Ugc2xpZGVyXG4kc2xpZGVyLWJhY2tncm91bmQ6ICNkZGQgIWRlZmF1bHQ7XG4kc2xpZGVyLWhlaWdodDogMXJlbSAhZGVmYXVsdDtcbiRzbGlkZXItcmFkaXVzOiAwcHggIWRlZmF1bHQ7XG4kc2xpZGVyLXRodW1iLWhlaWdodDogMS41cmVtICFkZWZhdWx0O1xuJHNsaWRlci10aHVtYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc2xpZGVyLXRodW1iLXJhZGl1czogMHB4ICFkZWZhdWx0O1xuXG4vLyBQcm9ncmVzcyBhbmQgbWV0ZXJcbiRtZXRlci1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdDtcbiRtZXRlci1iYWNrZ3JvdW5kOiAjY2NjICFkZWZhdWx0O1xuJG1ldGVyLWZpbGw6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJG1ldGVyLWZpbGwtaGlnaDogJHN1Y2Nlc3MtY29sb3IgIWRlZmF1bHQ7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICNlN2NmMDAgIWRlZmF1bHQ7XG4kbWV0ZXItZmlsbC1sb3c6ICRhbGVydC1jb2xvciAhZGVmYXVsdDtcbiRtZXRlci1yYWRpdXM6IDAgIWRlZmF1bHQ7XG4vLy9cblxuLy8gRGlzYWJsZSBPUy1sZXZlbCBzdHlsZXNcbkBtaXhpbiBuby1hcHBlYXJhbmNlIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFRleHQgZmllbGRzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4jeyR0ZXh0LWlucHV0LXNlbGVjdG9yc30ge1xuICAkdG9wLXBhZGRpbmc6IGdldC1zaWRlKCRmb3JtLXBhZGRpbmcsIHRvcCk7XG4gICRib3R0b20tcGFkZGluZzogZ2V0LXNpZGUoJGZvcm0tcGFkZGluZywgYm90dG9tKTtcbiAgJGhlaWdodDogKCRmb3JtLWZvbnRzaXplICogMS40KSArICR0b3AtcGFkZGluZyArICRib3R0b20tcGFkZGluZztcblxuICBAaW5jbHVkZSBuby1hcHBlYXJhbmNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgcGFkZGluZzogJGZvcm0tcGFkZGluZztcbiAgbWFyZ2luOiAwIDAgJGdsb2JhbC1wYWRkaW5nIDA7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGZvcm0tZm9udHNpemU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yLWhvdmVyO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3ItZm9jdXM7XG4gIH1cblxuICBsYWJlbCA+ICYge1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWxhYmVsLW1hcmdpbjtcbiAgfVxufVxuXG4vLyBPdmVycmlkZSB0aGUgY29udGVudC1ib3ggZGVjbGFyYXRpb24gc2V0IGJ5IE5vcm1hbGl6ZVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIERpc2FibGVkIHN0YXRlXG5pbnB1dCB7XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcblxuICAgICYsICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIExhYmVsc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250c2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luO1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG5cbiAgPiBpbnB1dCwgPiB0ZXh0YXJlYSB7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tbGFiZWwtbWFyZ2luO1xuICB9XG59XG5cbi8vIENoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcblxuICAvLyBJbnB1dCBpbnNpZGUgb2YgYSBsYWJlbFxuICBsYWJlbCA+ICYge1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tcGFkZGluZyAqIDAuNTtcbiAgfVxuXG4gIC8vIElucHV0IG5leHQgdG8gYSBsYWJlbFxuICAmICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tcGFkZGluZztcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLXBhZGRpbmcgKiAyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG59XG5cbi8vIElubGluZSBsYWJlbHNcbi8vIElubGluZSBsYWJlbHMgYWxsb3cgeW91IHRvIHByZWZpeCBvciBwb3N0Zml4IHNwZWNpYWwgbGFiZWxzIHRvIGlucHV0c1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLmlubGluZS1sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcblxuICAvLyBJbWl0YXRlcyB0aGUgdG9wIG1hcmdpbiBvbiBub3JtYWwgaW5wdXRzXG4gIGxhYmVsID4gJiB7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tbGFiZWwtbWFyZ2luO1xuICB9XG5cbiAgLy8gSW5wdXRzIHN0cmV0Y2ggYWxsIHRoZSB3YXkgb3V0XG4gID4gaW5wdXQsID4gc2VsZWN0IHtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIElubGluZSBsYWJlbHMgYW5kIGJ1dHRvbnMgc2hyaW5rXG4gID4gLmZvcm0tbGFiZWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICRpbmxpbmVsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkaW5saW5lbGFiZWwtY29sb3I7XG4gICAgYm9yZGVyOiAkaW5saW5lbGFiZWwtYm9yZGVyO1xuICAgIHBhZGRpbmc6IDAgJGZvcm0tcGFkZGluZztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gICAgJjpsYXN0LWNoaWxkICB7IGJvcmRlci1sZWZ0OiAwOyB9XG4gIH1cbiAgLy8gQnV0dG9ucyBhbHNvIHNocmlua1xuICA+IGEsXG4gID4gYnV0dG9uLFxuICA+IGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4gID4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIFRleHQgYXJlYXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNTBweDtcbn1cblxuLy8gU2VsZWN0IG1lbnVzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5zZWxlY3Qge1xuICAkdG9wLXBhZGRpbmc6IGdldC1zaWRlKCRmb3JtLXBhZGRpbmcsIHRvcCk7XG4gICRib3R0b20tcGFkZGluZzogZ2V0LXNpZGUoJGZvcm0tcGFkZGluZywgYm90dG9tKTtcbiAgJGhlaWdodDogKCRmb3JtLWZvbnRzaXplICogMS40KSArICR0b3AtcGFkZGluZyArICRib3R0b20tcGFkZGluZztcbiAgJGNvbG9yOiBpc2l0bGlnaHQoJHNlbGVjdC1iYWNrZ3JvdW5kKTtcblxuICBAaW5jbHVkZSBuby1hcHBlYXJhbmNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgcGFkZGluZzogJGZvcm0tcGFkZGluZztcbiAgbWFyZ2luOiAwIDAgJGdsb2JhbC1wYWRkaW5nIDA7XG4gIGZvbnQtc2l6ZTogJGZvcm0tZm9udHNpemU7XG4gIGNvbG9yOiAkc2VsZWN0LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG5cbiAgQGlmICRzZWxlY3QtYXJyb3cge1xuICAgIGJhY2tncm91bmQ6ICRzZWxlY3QtYmFja2dyb3VuZCB1cmwoaW1hZ2UtdHJpYW5nbGUoJHNlbGVjdC1hcnJvdy1jb2xvcikpIHJpZ2h0IDEwcHggY2VudGVyIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDhweCA4cHg7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMThweCkgKyAkZm9ybS1wYWRkaW5nO1xuICB9XG4gIEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmRcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IGFkZGVkIGluIElFMTAvMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBSYW5nZSBzbGlkZXJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICRtYXJnaW46ICgkc2xpZGVyLXRodW1iLWhlaWdodCAtICRzbGlkZXItaGVpZ2h0KSAvIDI7XG5cbiAgQGluY2x1ZGUgbm8tYXBwZWFyYW5jZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXRvcDogJG1hcmdpbjtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcbiAgYm9yZGVyOiAwO1xuICBsaW5lLWhlaWdodDogMTtcblxuICBAaWYgaGFzdmFsdWUoJHNsaWRlci1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBDaHJvbWUvU2FmYXJpXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgfVxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRzbGlkZXItdGh1bWItY29sb3I7XG4gICAgd2lkdGg6ICRzbGlkZXItdGh1bWItaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogLSRtYXJnaW47XG4gICAgQGlmIGhhc3ZhbHVlKCRzbGlkZXItdGh1bWItcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXRodW1iLXJhZGl1cztcbiAgICB9XG4gIH1cbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICB9XG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLXRodW1iLWNvbG9yO1xuICAgIHdpZHRoOiAkc2xpZGVyLXRodW1iLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzbGlkZXItdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IC0kbWFyZ2luO1xuICAgIEBpZiBoYXN2YWx1ZSgkc2xpZGVyLXRodW1iLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJHNsaWRlci10aHVtYi1yYWRpdXM7XG4gICAgfVxuICB9XG4gIC8vIEludGVybmV0IEV4cGxvcmVyXG4gICY6Oi1tcy10cmFjayB7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBib3JkZXItdG9wOiAkbWFyZ2luIHNvbGlkICRib2R5LWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJG1hcmdpbiBzb2xpZCAkYm9keS1iYWNrZ3JvdW5kO1xuICB9XG4gICY6Oi1tcy10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHNsaWRlci10aHVtYi1jb2xvcjtcbiAgICB3aWR0aDogJHNsaWRlci10aHVtYi1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLXRodW1iLWhlaWdodDtcbiAgICBib3JkZXI6IDA7XG4gICAgQGlmIGhhc3ZhbHVlKCRzbGlkZXItdGh1bWItcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXRodW1iLXJhZGl1cztcbiAgICB9XG4gIH1cbiAgJjo6LW1zLWZpbGwtbG93ZXIsICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIH1cbn1cbm91dHB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAkc2xpZGVyLXRodW1iLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xufVxuXG4vLyBOdW1iZXIgaW5wdXRzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG5cbiAgfVxuICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gIH1cbn1cblxuLy8gUHJvZ3Jlc3MgYW5kIG1ldGVyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5wcm9ncmVzcywgbWV0ZXIge1xuICBAaW5jbHVkZSBuby1hcHBlYXJhbmNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJG1ldGVyLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICBAaWYgaGFzdmFsdWUoJG1ldGVyLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gIH1cblxuICAvLyBGb3IgRmlyZWZveFxuICBiYWNrZ3JvdW5kOiAkbWV0ZXItYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAwO1xufVxuXG5wcm9ncmVzcyB7XG4gICY6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbWV0ZXItYmFja2dyb3VuZDtcbiAgICBAaWYgaGFzdmFsdWUoJG1ldGVyLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG1ldGVyLXJhZGl1cztcbiAgICB9XG4gIH1cbiAgJjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogJG1ldGVyLWZpbGw7XG4gICAgQGlmIGhhc3ZhbHVlKCRtZXRlci1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gICAgfVxuICB9XG4gICY6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbWV0ZXItZmlsbDtcbiAgICBAaWYgaGFzdmFsdWUoJG1ldGVyLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG1ldGVyLXJhZGl1cztcbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluIChoaWdoOiAkbWV0ZXItZmlsbC1oaWdoLCBtZWRpdW06ICRtZXRlci1maWxsLW1lZGl1bSwgbG93OiAkbWV0ZXItZmlsbC1sb3cpIHtcbiAgICAmLiN7JG5hbWV9IHtcbiAgICAgICY6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICB9XG4gICAgICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbm1ldGVyIHtcbiAgLy8gQ2hyb21lL1NhZmFyaVxuICAmOjotd2Via2l0LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJG1ldGVyLWJhY2tncm91bmQ7XG4gICAgQGlmIGhhc3ZhbHVlKCRtZXRlci1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gICAgfVxuICB9XG4gICY6Oi13ZWJraXQtbWV0ZXItaW5uZXItZWxlbWVudCB7XG4gICAgQGlmIGhhc3ZhbHVlKCRtZXRlci1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gICAgfVxuICB9XG4gICY6Oi13ZWJraXQtbWV0ZXItb3B0aW11bS12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogJG1ldGVyLWZpbGwtaGlnaDtcbiAgICBAaWYgaGFzdmFsdWUoJG1ldGVyLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG1ldGVyLXJhZGl1cztcbiAgICB9XG4gIH1cbiAgJjo6LXdlYmtpdC1tZXRlci1zdWJvcHRpbXVtLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAkbWV0ZXItZmlsbC1tZWRpdW07XG4gICAgQGlmIGhhc3ZhbHVlKCRtZXRlci1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gICAgfVxuICB9XG4gICY6Oi13ZWJraXQtbWV0ZXItZXZlbi1sZXNzLWdvb2QtdmFsdWUge1xuICAgIGJhY2tncm91bmQ6ICRtZXRlci1maWxsLWxvdztcbiAgICBAaWYgaGFzdmFsdWUoJG1ldGVyLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG1ldGVyLXJhZGl1cztcbiAgICB9XG4gIH1cblxuICAvLyBGaXJlZm94XG4gIGJhY2tncm91bmQ6ICRtZXRlci1iYWNrZ3JvdW5kO1xuICAmOjotbW96LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgQGlmIGhhc3ZhbHVlKCRtZXRlci1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRtZXRlci1yYWRpdXM7XG4gICAgfVxuICB9XG4gICY6LW1vei1tZXRlci1vcHRpbXVtOjotbW96LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJG1ldGVyLWZpbGwtaGlnaDtcbiAgfVxuICAmOi1tb3otbWV0ZXItc3ViLW9wdGltdW06Oi1tb3otbWV0ZXItYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbWV0ZXItZmlsbC1tZWRpdW07XG4gIH1cbiAgJjotbW96LW1ldGVyLXN1Yi1zdWItb3B0aW11bTo6LW1vei1tZXRlci1iYXIge1xuICAgIGJhY2tncm91bmQ6ICRtZXRlci1maWxsLWxvdztcbiAgfVxufVxuIiwiLypcclxuICBUWVBPR1JBUEhZXHJcbiAgLS0tLS0tLS0tLVxyXG5cclxuICBJbmNsdWRlcyB0eXBvZ3JhcGhpYyByZXNldHMgZm9yIG1hbnkgY29tbW9uIGVsZW1lbnRzLCBhbmQgYSBmZXcgaGVscGVyIGNsYXNzZXMuXHJcbiAgIC0gSGVhZGVyc1xyXG4gICAtIFN1YmhlYWRlcnNcclxuICAgLSBMZWFkIHBhcmFncmFwaHNcclxuICAgLSBPcmRlcmVkL3Vub3JkZXJlZCBsaXN0c1xyXG4gICAtIENvZGUgc2FtcGxlc1xyXG4gICAtIEFuY2hvcnNcclxuICAgLSBEaXZpZGVyc1xyXG4gICAtIEJsb2NrcXVvdGVzXHJcbiAgIC0gQWNyb255bXNcclxuKi9cclxuXHJcbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJGhlYWRlci1mb250LXN0eWxlOiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kaGVhZGVyLWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XHJcbiRoZWFkZXItbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcclxuJGhlYWRlci10b3AtbWFyZ2luOiAuMnJlbSAhZGVmYXVsdDtcclxuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcclxuJGgxLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDQpICFkZWZhdWx0O1xyXG4kaDItZm9udC1zaXplOiByZW0tY2FsYygzNykgIWRlZmF1bHQ7XHJcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KSAhZGVmYXVsdDtcclxuJGg0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpICFkZWZhdWx0O1xyXG4kaDUtZm9udC1zaXplOiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XHJcbiRoNi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgc2l6ZSByZWR1Y3Rpb24gb24gc21hbGwgc2NyZWVuc1xyXG4kaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcclxuJGgyLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XHJcbiRoMy1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XHJcbiRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XHJcbiRoNS1mb250LXJlZHVjdGlvbjogMCAhZGVmYXVsdDtcclxuJGg2LWZvbnQtcmVkdWN0aW9uOiAwICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCBob3cgc3ViaGVhZGVycyBhcmUgc3R5bGVkLlxyXG4kc3ViaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XHJcbiRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtICFkZWZhdWx0O1xyXG5cclxuLy8gQSBnZW5lcmFsIDxzbWFsbD4gc3R5bGluZ1xyXG4kc21hbGwtZm9udC1zaXplOiA2MCUgIWRlZmF1bHQ7XHJcbiRzbWFsbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xyXG4kcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1saW5lLWhlaWdodDogMS42ICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1saW5lLWhlaWdodDogMS4zNSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XHJcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSA8Y29kZT4gdGFnc1xyXG4kY29kZS1jb2xvcjogZ3JheXNjYWxlKCRwcmltYXJ5LWNvbG9yKSAhZGVmYXVsdDtcclxuJGNvZGUtZm9udC1mYW1pbHk6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xyXG4kY29kZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJGNvZGUtYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogNzAlKSAhZGVmYXVsdDtcclxuJGNvZGUtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcclxuJGNvZGUtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcclxuJGNvZGUtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkY29kZS1iYWNrZ3JvdW5kLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTAlKSAhZGVmYXVsdDtcclxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYW5jaG9yc1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XHJcbiRhbmNob3ItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgPGhyPiBlbGVtZW50XHJcbiRoci1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcclxuJGhyLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XHJcbiRoci1ib3JkZXItY29sb3I6ICNkZGQgIWRlZmF1bHQ7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsaXN0c1xyXG4kbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuJGxpc3QtZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGxpc3QtbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjFyZW0gIWRlZmF1bHQ7XHJcbiRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbSAhZGVmYXVsdDtcclxuJGxpc3Qtc2lkZS1tYXJnaW4tbm8tYnVsbGV0OiAwICFkZWZhdWx0O1xyXG4kbGlzdC1uZXN0ZWQtbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XHJcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XHJcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLW1hcmdpbi1ib3R0b206IC4zcmVtICFkZWZhdWx0O1xyXG4kZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBibG9ja3F1b3Rlc1xyXG4kYmxvY2txdW90ZS1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICNkZGQgIWRlZmF1bHQ7XHJcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XHJcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpICFkZWZhdWx0O1xyXG4kYmxvY2txdW90ZS1jaXRlLWxpbmstY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvciAhZGVmYXVsdDtcclxuXHJcbi8vIEFjcm9ueW0gc3R5bGVzXHJcbiRhY3JvbnltLXVuZGVybGluZTogMXB4IGRvdHRlZCAjZGRkICFkZWZhdWx0O1xyXG4vLy9cclxuXHJcbkBtaXhpbiBsZWFkIHtcclxuICBmb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplICsgcmVtLWNhbGMoMy41KTtcclxuICBsaW5lLWhlaWdodDogMS42O1xyXG59XHJcblxyXG5AbWl4aW4gc3ViaGVhZGVyIHtcclxuICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJHN1YmhlYWRlci1mb250LWNvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xyXG4gIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItdG9wLW1hcmdpbjtcclxuICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW47XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHModHlwb2dyYXBoeSkge1xyXG4gIC8qIFR5cG9ncmFwaHkgcmVzZXRzICovXHJcbiAgZGl2LFxyXG4gIGRsLFxyXG4gIGR0LFxyXG4gIGRkLFxyXG4gIHVsLFxyXG4gIG9sLFxyXG4gIGxpLFxyXG4gIGgxLFxyXG4gIGgyLFxyXG4gIGgzLFxyXG4gIGg0LFxyXG4gIGg1LFxyXG4gIGg2LFxyXG4gIHByZSxcclxuICBmb3JtLFxyXG4gIHAsXHJcbiAgYmxvY2txdW90ZSxcclxuICB0aCxcclxuICB0ZCB7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIHBhZGRpbmc6MDtcclxuICB9XHJcblxyXG4gIC8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cclxuICBhIHtcclxuICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gICAgJlt1aS1zcmVmXSB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3ItaG92ZXI7XHJcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XHJcbiAgICAgIFx0dGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGltZyB7IGJvcmRlcjpub25lOyB9XHJcbiAgfVxyXG5cclxuICAvKiBEZWZhdWx0IHBhcmFncmFwaCBzdHlsZXMgKi9cclxuICBwIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkcGFyYWdyYXBoLWZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC13ZWlnaHQ6ICRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ7XHJcbiAgICBmb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcclxuXHJcbiAgICAmLmxlYWQgeyBAaW5jbHVkZSBsZWFkOyB9XHJcblxyXG4gICAgJiBhc2lkZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWFzaWRlLWxpbmUtaGVpZ2h0O1xyXG4gICAgICBmb250LXN0eWxlOiAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBEZWZhdWx0IGhlYWRlciBzdHlsZXMgKi9cclxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XHJcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XHJcbiAgICBjb2xvcjogJGhlYWRlci1mb250LWNvbG9yO1xyXG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XHJcbiAgICBtYXJnaW4tdG9wOiAkaGVhZGVyLXRvcC1tYXJnaW47XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkaGVhZGVyLWJvdHRvbS1tYXJnaW47XHJcbiAgICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDtcclxuXHJcbiAgICBzbWFsbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcclxuICAgICAgY29sb3I6ICRzbWFsbC1mb250LWNvbG9yO1xyXG4gICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplIC0gJGgxLWZvbnQtcmVkdWN0aW9uOyB9XHJcbiAgaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemUgLSAkaDItZm9udC1yZWR1Y3Rpb247IH1cclxuICBoMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZSAtICRoMy1mb250LXJlZHVjdGlvbjsgfVxyXG4gIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplIC0gJGg0LWZvbnQtcmVkdWN0aW9uOyB9XHJcbiAgaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemUgLSAkaDUtZm9udC1yZWR1Y3Rpb247IH1cclxuICBoNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZSAtICRoNi1mb250LXJlZHVjdGlvbjsgfVxyXG5cclxuICAuc3ViaGVhZGVyIHsgQGluY2x1ZGUgc3ViaGVhZGVyOyB9XHJcblxyXG4gIGhyIHtcclxuICAgIGJvcmRlcjogJGhyLWJvcmRlci1zdHlsZSAkaHItYm9yZGVyLWNvbG9yO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaHItYm9yZGVyLXdpZHRoIDAgMDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgbWFyZ2luOiAkaHItbWFyZ2luIDAgKCRoci1tYXJnaW4gLSByZW0tY2FsYygkaHItYm9yZGVyLXdpZHRoKSk7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAvKiBIZWxwZnVsIFR5cG9ncmFwaHkgRGVmYXVsdHMgKi9cclxuICBlbSxcclxuICBpIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgc3Ryb25nLFxyXG4gIGIge1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICBzbWFsbCB7XHJcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiAgICBjb2xvcjogJHNtYWxsLWZvbnQtY29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICB9XHJcblxyXG4gIGNvZGUge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xyXG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIGJvcmRlci13aWR0aDogJGNvZGUtYm9yZGVyLXNpemU7XHJcbiAgICBib3JkZXItc3R5bGU6ICRjb2RlLWJvcmRlci1zdHlsZTtcclxuICAgIGJvcmRlci1jb2xvcjogJGNvZGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcclxuICB9XHJcblxyXG4gIC8qIExpc3RzICovXHJcbiAgdWwsXHJcbiAgb2wsXHJcbiAgZGwge1xyXG4gICAgZm9udC1zaXplOiAkbGlzdC1mb250LXNpemU7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZS1oZWlnaHQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xyXG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XHJcbiAgICBmb250LWZhbWlseTogJGxpc3QtZm9udC1mYW1pbHk7XHJcbiAgfVxyXG5cclxuICAvKiBMaXN0cyAqL1xyXG4gIHVsLCBvbCB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGxpc3Qtc2lkZS1tYXJnaW47XHJcbiAgICBsaSB7XHJcbiAgICAgIHVsLFxyXG4gICAgICBvbCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRsaXN0LW5lc3RlZC1tYXJnaW47XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogTGlzdHMgd2l0aG91dCBidWxsZXRzICovXHJcbiAgdWwubm8tYnVsbGV0IHtcclxuICAgICYsIGxpIHVsLCBsaSBvbCB7XHJcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIH1cclxuICAgIG1hcmdpbi1sZWZ0OiAkbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ7XHJcbiAgfVxyXG5cclxuICAvKiBEZWZpbml0aW9uIExpc3RzICovXHJcbiAgZGwge1xyXG4gICAgZHQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tO1xyXG4gICAgICBmb250LXdlaWdodDogJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0O1xyXG4gICAgfVxyXG4gICAgZGQgeyBtYXJnaW4tYm90dG9tOiAkZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b207IH1cclxuICB9XHJcblxyXG4gIC8qIEFiYnJldmlhdGlvbnMgKi9cclxuICBhYmJyLFxyXG4gIGFjcm9ueW0ge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZTogOTAlO1xyXG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiAgICBib3JkZXItYm90dG9tOiAkYWNyb255bS11bmRlcmxpbmU7XHJcbiAgICBjdXJzb3I6IGhlbHA7XHJcbiAgfVxyXG4gIGFiYnIge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvKiBCbG9ja3F1b3RlcyAqL1xyXG4gIGJsb2NrcXVvdGUge1xyXG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xyXG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcclxuICAgIGJvcmRlci1sZWZ0OiAkYmxvY2txdW90ZS1ib3JkZXI7XHJcblxyXG4gICAgY2l0ZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LXNpemU6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1zaXplO1xyXG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXDIwMTQgXFwwMDIwXCI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEsXHJcbiAgICAgIGE6dmlzaXRlZCB7XHJcbiAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBibG9ja3F1b3RlLFxyXG4gIGJsb2NrcXVvdGUgcCB7XHJcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcclxuICAgIGNvbG9yOiAkYmxvY2txdW90ZS1mb250LWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGgxLGgyLGgzLGg0LGg1LGg2IHsgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZS1oZWlnaHQ7IH1cclxuICAgIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplOyB9XHJcbiAgICBoMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxyXG4gICAgaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemU7IH1cclxuICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplOyB9XHJcbiAgICBoNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxyXG4gICAgaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemU7IH1cclxuICB9XHJcbn1cclxuIiwiLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIEJ1dHRvbiBHcm91cFxyXG4kYnRuZ3JvdXAtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRidG5ncm91cC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcclxuJGJ0bmdyb3VwLXJhZGl1czogJGJ1dHRvbi1yYWRpdXMgIWRlZmF1bHQ7XHJcbi8vL1xyXG5cclxuJGNoaWxkLXNlbGVjdG9yczogJz4gYSwgPiBsYWJlbCwgPiBidXR0b24nO1xyXG5cclxuJWJ1dHRvbi1ncm91cCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRidG5ncm91cC1yYWRpdXM7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBmb250LXNpemU6ICRidXR0b24tZm9udC1zaXplO1xyXG5cclxuICA+IGxpIHtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG5cclxuICAgIC8vIExpbmtzIGJlY29tZSBidXR0b25zXHJcbiAgICAjeyRjaGlsZC1zZWxlY3RvcnN9IHtcclxuICAgICAgQGV4dGVuZCAlYnV0dG9uO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICA+IGlucHV0ICsgbGFiZWwge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICAgIC8vIEFkZCBib3JkZXJzIGJldHdlZW4gaXRlbXNcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICN7JGNoaWxkLXNlbGVjdG9yc30ge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRidG5ncm91cC1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMjUlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmIHVzaW5nKGljb25pYykge1xyXG4gICAgLmljb25pYyB7XHJcbiAgICAgIHdpZHRoOiAxZW07XHJcbiAgICAgIGhlaWdodDogMWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcclxuICAgICAgbWFyZ2luLXRvcDogLTJweDsgLy8gVGhlIGljb25zIGFyZSBvZGRseSBtaXNhbGlnbmVkXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4lYnV0dG9uLWdyb3VwLXNlZ21lbnRlZCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZCBjb2xvcjtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICAvLyBIaWRlIHRoZSByYWRpbyBidXR0b25cclxuICAgID4gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAtOTk5OXB4O1xyXG4gICAgfVxyXG4gICAgLy8gVGhpcyBpcyB0aGUgYnV0dG9uXHJcbiAgICAjeyRjaGlsZC1zZWxlY3RvcnN9IHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tZ3JvdXAtc2l6ZSgkc2l6ZTogbWVkaXVtLCAkZXhwYW5kOiBmYWxzZSkge1xyXG4gICRzaXplOiAkYnV0dG9uLWZvbnQtc2l6ZSAqIG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgJHNpemUpO1xyXG4gIGZvbnQtc2l6ZTogJHNpemU7XHJcblxyXG4gIEBpZiAkZXhwYW5kIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKCRzdHJldGNoOiB0cnVlKSB7XHJcbiAgZGlzcGxheTogaWYoJHN0cmV0Y2gsIGZsZXgsIGlubGluZS1mbGV4KTtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBmbGV4OiBpZigkc3RyZXRjaCwgMSwgMCAwIGF1dG8pO1xyXG5cclxuICAgICN7JGNoaWxkLXNlbGVjdG9yc30ge1xyXG4gICAgICBAaWYgJHN0cmV0Y2ggeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBidXR0b24tZ3JvdXAtc3R5bGUoXHJcbiAgJHNlZ21lbnRlZDogZmFsc2UsXHJcbiAgJGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yLFxyXG4gICRjb2xvcjogYXV0b1xyXG4pIHtcclxuXHJcbiAgQGlmIG5vdCgkc2VnbWVudGVkKSB7XHJcbiAgICA+IGxpIHtcclxuICAgICAgI3skY2hpbGQtc2VsZWN0b3JzfSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCBhdXRvLCAkY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xyXG4gICAgICB9XHJcbiAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAjeyRjaGlsZC1zZWxlY3RvcnN9IHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uLWdyb3VwLXNlZ21lbnRlZDtcclxuICAgICRob3Zlci1jb2xvcjogcmdiYSgkYmFja2dyb3VuZCwgMC4yNSk7XHJcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG5cclxuICAgID4gbGkge1xyXG4gICAgICAvLyBUaGlzIGlzIHRoZSBidXR0b25cclxuICAgICAgI3skY2hpbGQtc2VsZWN0b3JzfSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XHJcblxyXG4gICAgICAgIC8vIFRoaXMgaXMgdGhlIGJ1dHRvbiBiZWluZyBob3ZlcmVkIG9uXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItY29sb3I7XHJcbiAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaWYgdXNpbmcoaWNvbmljKSB7XHJcbiAgICAgICAgICAuaWNvbmljIHsgQGluY2x1ZGUgY29sb3ItaWNvbigkYmFja2dyb3VuZCk7IH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFRoaXMgaXMgdGhlIGJ1dHRvbiB3aGVuIGl0J3MgYWN0aXZlXHJcbiAgICAgICYuaXMtYWN0aXZlID4gYSxcclxuICAgICAgPiBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xyXG4gICAgICAgICYsICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBjb2xvcjogaXNpdGxpZ2h0KCRiYWNrZ3JvdW5kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiB1c2luZyhpY29uaWMpIHtcclxuICAgICAgICAgIC5pY29uaWMgeyBAaW5jbHVkZSBjb2xvci1pY29uKGlzaXRsaWdodCgkYmFja2dyb3VuZCkpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxyXG4gICRzZWdtZW50ZWQ6IGZhbHNlLFxyXG4gICRleHBhbmQ6IGZhbHNlLFxyXG4gICRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcixcclxuICAkY29sb3I6ICNmZmZcclxuKSB7XHJcbiAgQGV4dGVuZCAlYnV0dG9uLWdyb3VwO1xyXG4gIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQoJGV4cGFuZCk7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKCRzZWdtZW50ZWQsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRidG5ncm91cC1yYWRpdXM7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoYnV0dG9uLWdyb3VwKSB7XHJcbiAgLmJ1dHRvbi1ncm91cCB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XHJcblxyXG4gICAgLy8gQ29sb3JzXHJcbiAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZShmYWxzZSwgJHNlY29uZGFyeS1jb2xvcik7IH1cclxuICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKGZhbHNlLCAkc3VjY2Vzcy1jb2xvcik7IH1cclxuICAgICYud2FybmluZyAgIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKGZhbHNlLCAkd2FybmluZy1jb2xvcik7IH1cclxuICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKGZhbHNlLCAkYWxlcnQtY29sb3IpOyB9XHJcblxyXG4gICAgLy8gSW5kaXZpZHVhbCBjb2xvcnNcclxuICAgID4gbGkge1xyXG4gICAgICAmLnNlY29uZGFyeSB7ICN7JGNoaWxkLXNlbGVjdG9yc30geyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJHNlY29uZGFyeS1jb2xvciwgYXV0bywgJGJ0bmdyb3VwOiB0cnVlKTsgfSB9XHJcbiAgICAgICYuc3VjY2VzcyAgIHsgI3skY2hpbGQtc2VsZWN0b3JzfSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkc3VjY2Vzcy1jb2xvciwgYXV0bywgJGJ0bmdyb3VwOiB0cnVlKTsgfSB9XHJcbiAgICAgICYud2FybmluZyAgIHsgI3skY2hpbGQtc2VsZWN0b3JzfSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkd2FybmluZy1jb2xvciwgYXV0bywgJGJ0bmdyb3VwOiB0cnVlKTsgfSB9XHJcbiAgICAgICYuYWxlcnQgICAgIHsgI3skY2hpbGQtc2VsZWN0b3JzfSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYWxlcnQtY29sb3IsIGF1dG8sICRidG5ncm91cDogdHJ1ZSk7IH0gfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFNlZ21lbnRlZFxyXG4gICAgJi5zZWdtZW50ZWQgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUodHJ1ZSk7XHJcbiAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKHRydWUsICRzZWNvbmRhcnktY29sb3IpOyB9XHJcbiAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0eWxlKHRydWUsICRzdWNjZXNzLWNvbG9yKTsgfVxyXG4gICAgICAmLndhcm5pbmcgICB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSh0cnVlLCAkd2FybmluZy1jb2xvcik7IH1cclxuICAgICAgJi5hbGVydCAgICAgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUodHJ1ZSwgJGFsZXJ0LWNvbG9yKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFNpemluZ1xyXG4gICAgJi50aW55ICAgICAgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc2l6ZSh0aW55KTsgfVxyXG4gICAgJi5zbWFsbCAgICAgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc2l6ZShzbWFsbCk7IH1cclxuICAgICYubGFyZ2UgICAgIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXNpemUobGFyZ2UpOyB9XHJcbiAgICAmLmV4cGFuZCAgICB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7IH1cclxuXHJcbiAgICAvLyBEaXNhYmxlZFxyXG4gICAgbGkuZGlzYWJsZWQge1xyXG4gICAgICAjeyRjaGlsZC1zZWxlY3RvcnN9IHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQG1peGluIGlubGluZS1saXN0KCRhbGlnbm1lbnQpe1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiAkYWxpZ25tZW50O1xyXG5cdGxpLCBkdCwgZGQge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IC0ycHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IC0ycHg7XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKGxpc3QpIHtcclxuICAuaW5saW5lLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgaW5saW5lLWxpc3QobGVmdCk7XHJcbiAgICBsaSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qXG4gIE1FTlUgQkFSXG4gIC0tLS0tLS0tXG5cbiAgQSBnZW5lcmljLCBmbGV4aWJsZSBtZW51IGNvbXBvbmVudC5cblxuICBGZWF0dXJlczpcbiAgIC0gT3JpZW50IGhvcml6b250YWxseSBhbmQgdmVydGljYWxseVxuICAgICAtIENoYW5nZSBvcmllbnRhdGlvbiBhdCBjZXJ0YWluIGJyZWFrcG9pbnRzXG4gICAtIEl0ZW1zIHdpdGggaWNvbnMgYWJvdmUsIGJlbG93LCBvciB0byB0aGUgbGVmdCBvciByaWdodFxuICAgLSBUZXh0IGxhYmVscyBmb3IgdmVydGljYWwgbWVudXMgYW5kIGJhZGdlcyBmb3IgaG9yaXpvbnRhbCBtZW51c1xuKi9cblxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXG4vLyBNZW51IEJhclxuJG1lbnViYXItZm9udHNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kbWVudWJhci1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuJG1lbnViYXItYmFja2dyb3VuZC1ob3Zlcjogc21hcnRzY2FsZSgkbWVudWJhci1iYWNrZ3JvdW5kLCA3JSkgIWRlZmF1bHQ7XG4kbWVudWJhci1iYWNrZ3JvdW5kLWFjdGl2ZTogJG1lbnViYXItYmFja2dyb3VuZC1ob3ZlcjtcbiRtZW51YmFyLWNvbG9yOiBpc2l0bGlnaHQoJG1lbnViYXItYmFja2dyb3VuZCkgIWRlZmF1bHQ7XG4kbWVudWJhci1jb2xvci1ob3ZlcjogJG1lbnViYXItY29sb3IgIWRlZmF1bHQ7XG4kbWVudWJhci1jb2xvci1hY3RpdmU6ICRtZW51YmFyLWNvbG9yLWhvdmVyO1xuXG4kbWVudWJhci1pdGVtLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcbiRtZW51YmFyLWljb24tc2l6ZTogMjVweCAhZGVmYXVsdDtcbiRtZW51YmFyLWljb24tc3BhY2luZzogJG1lbnViYXItaXRlbS1wYWRkaW5nICFkZWZhdWx0O1xuLy8vXG5cbi8vIE1lbnUgYmFyIGNvbnRhaW5lclxuJW1lbnUtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIC8vIE1lbnUgaXRlbVxuICA+IGxpIHtcbiAgICAvLyBUaGlzIGZsZXggc2V0dGluZyBtYWtlcyBlYWNoIGl0ZW0gYW4gZXF1YWwgd2lkdGhcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLy8gTGluayBpbnNpZGUgbWVudSBpdGVtXG4gICAgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogJG1lbnViYXItaXRlbS1wYWRkaW5nO1xuICAgICAgZm9udC1zaXplOiAkbWVudWJhci1mb250c2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS1iYXItbGF5b3V0IChcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc3RyZXRjaDogdHJ1ZVxuKSB7XG4gIC8qXG4gICAgT3JpZW50YXRpb25cbiAgKi9cbiAgQGlmICRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICA+IGxpID4gYSB7XG4gICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgLypcbiAgICBTdHJldGNoXG4gICovXG4gID4gbGkge1xuICAgIEBpZiAkc3RyZXRjaCA9PSBmYWxzZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtYmFyLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJG1lbnViYXItYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRtZW51YmFyLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJG1lbnViYXItYmFja2dyb3VuZC1hY3RpdmUsXG4gICRjb2xvcjogJG1lbnViYXItY29sb3IsXG4gICRjb2xvci1ob3ZlcjogJG1lbnViYXItY29sb3ItaG92ZXIsXG4gICRjb2xvci1hY3RpdmU6ICRtZW51YmFyLWNvbG9yLWFjdGl2ZSxcbiAgJGF1dG9jb2xvcjogZmFsc2Vcbikge1xuICAvLyBBdXRvY29sb3JpbmdcbiAgQGlmICgkYXV0b2NvbG9yKSB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNtYXJ0c2NhbGUoJGJhY2tncm91bmQsIDclKTtcbiAgICAkYmFja2dyb3VuZC1hY3RpdmU6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuXG4gICAgJGNvbG9yOiBpc2l0bGlnaHQoJGJhY2tncm91bmQpO1xuICAgICRjb2xvci1ob3ZlcjogJGNvbG9yO1xuICAgICRjb2xvci1hY3RpdmU6ICRjb2xvcjtcbiAgfVxuXG4gIC8vIENvbnRhaW5lclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAvLyBJdGVtc1xuICA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuICAuaXMtYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlXG4gIH1cblxuICAvLyBJY29uaWNcbiAgQGlmIHVzaW5nKGljb25pYykge1xuICAgIC5pY29uaWMgeyBAaW5jbHVkZSBjb2xvci1pY29uKCRjb2xvcik7IH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS1iYXItaWNvbnMoXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJHNpemU6ICRtZW51YmFyLWljb24tc2l6ZVxuKSB7XG4gID4gbGkge1xuICAgIC8vIFNpemluZ1xuICAgID4gaW1nLCA+IC5pY29uaWMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGlmICRtZW51YmFyLWljb24tc2l6ZSAhPSBmYWxzZSB7XG4gICAgICAgIHdpZHRoOiAkbWVudWJhci1pY29uLXNpemU7XG4gICAgICAgIGhlaWdodDogJG1lbnViYXItaWNvbi1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uXG4gICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgID4gYSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgPiBpbWcsID4gLmljb25pYyB7IG1hcmdpbjogMCAkbWVudWJhci1pY29uLXNwYWNpbmcgMCAwOyB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgID4gYSB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgICAgPiBpbWcsID4gLmljb25pYyB7IG1hcmdpbjogMCAwICRtZW51YmFyLWljb24tc3BhY2luZyAwOyB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgPiBhIHtcbiAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSBub3dyYXA7XG4gICAgICAgID4gaW1nLCA+IC5pY29uaWMgeyBtYXJnaW46IDAgMCAwICRtZW51YmFyLWljb24tc3BhY2luZzsgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICA+IGEge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlIG5vd3JhcDtcbiAgICAgICAgPiBpbWcsID4gLmljb25pYyB7IG1hcmdpbjogJG1lbnViYXItaWNvbi1zcGFjaW5nIDAgMCAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LWJhci1sYWJlbHMoXG4gICR4OiByaWdodCxcbiAgJHk6IGNlbnRlcixcbiAgJG9mZnNldDogJG1lbnViYXItaXRlbS1wYWRkaW5nLFxuICAkc2l6ZTogMS4ycmVtLFxuICAkYmFja2dyb3VuZDogcmVkLFxuICAkY29sb3I6IGF1dG8sXG4gICRzZWxlY3RvcjogJy5tZW51LWJhci1sYWJlbCdcbikge1xuICA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICA+IGEge1xuICAgICAgQGlmICR4ID09IGxlZnQgb3IgJHggPT0gcmlnaHQge1xuICAgICAgICBwYWRkaW5nLSN7JHh9OiAkc2l6ZSArICRvZmZzZXQgKiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkc2l6ZSAqIDAuNzU7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzaXplO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAwcHg7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciA9PSBhdXRvLCBpc2l0bGlnaHQoJGJhY2tncm91bmQpLCAkY29sb3IpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBpZiAkeCA9PSBsZWZ0IG9yICR4ID09IHJpZ2h0IHtcbiAgICAgICN7JHh9OiAkb2Zmc2V0O1xuICAgIH1cblxuICAgIEBpZiAkeSA9PSB0b3Agb3IgJHkgPT0gYm90dG9tIHtcbiAgICAgICN7JHl9OiAkb2Zmc2V0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cbn1cblxuLypcbiAgU2V0IHRoZSBhbGlnbm1lbnQgb2YgbWVudSBpdGVtcyAobGkpIHdpdGhpbiBhIG1lbnUtYmFyXG5cbiAgbGVmdDogSXRlbXMgYWxpZ24gdG8gdGhlIGxlZnQuXG4gIHJpZ2h0OiBJdGVtcyBhbGlnbiB0byB0aGUgcmlnaHQuXG4gIGNlbnRlcjogSXRlbXMgYWxpZ24gdG8gdGhlIGNlbnRlci5cbiAganVzdGlmeTogSXRlbXMgYXJlIHNwYWNlZCBlcXVhbGx5IGFwYXJ0IHNvIHRoZXkgb2NjdXB5IHRoZSBzcGFjZSBvZiB0aGUgZW50aXJlIGdyaWQuXG4gIHNwYWNlZDogSXRlbXMgYXJlIGdpdmVuIGVxdWFsIHNwYWNlIHRvIHRoZWlyIGxlZnQgYW5kIHJpZ2h0LlxuXG4gIEBncm91cCBtZW51LWJhclxuXG4gIEBwYXJhbSB7c3RyaW5nfSAkYWxpZ24gLSBBbGlnbm1lbnQgdG8gdXNlLlxuXG4gIEBvdXRwdXQgQW4gYXBwcm9wcmlhdGUganVzdGlmeS1jb250ZW50IHZhbHVlLlxuKi9cbkBtaXhpbiBtZW51LWJhci1hbGlnbigkYWxpZ246IGxlZnQpIHtcbiAgJG9wdGlvbnM6IChcbiAgICBsZWZ0OiBmbGV4LXN0YXJ0LFxuICAgIHJpZ2h0OiBmbGV4LWVuZCxcbiAgICBjZW50ZXI6IGNlbnRlcixcbiAgICBqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLFxuICAgIHNwYWNlZDogc3BhY2UtYXJvdW5kLFxuICApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IG1hcC1nZXQoJG9wdGlvbnMsICRhbGlnbik7XG59XG5cbi8qXG4gIENTUyBvdXRwdXRcbiovXG5AaW5jbHVkZSBleHBvcnRzKG1lbnUtYmFyKSB7XG4gIC5tZW51LWJhciB7XG4gICAgQGV4dGVuZCAlbWVudS1iYXI7XG4gICAgQGluY2x1ZGUgbWVudS1iYXItc3R5bGU7XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgICYsICYuaG9yaXpvbnRhbCAgeyBAaW5jbHVkZSBtZW51LWJhci1sYXlvdXQoaG9yaXpvbnRhbCk7IH1cbiAgICAmLnZlcnRpY2FsICAgICAgIHsgQGluY2x1ZGUgbWVudS1iYXItbGF5b3V0KHZlcnRpY2FsKTsgfVxuXG4gICAgLy8gQ29uZGVuc2VkIGJhclxuICAgICYuY29uZGVuc2Uge1xuICAgICAgPiBsaSB7IGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gTWVudSBJdGVtc1xuICAgICYuYWxpZ24tcmlnaHQgICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKHJpZ2h0KTsgfVxuICAgICYuYWxpZ24tY2VudGVyICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKGNlbnRlcik7IH1cbiAgICAmLmFsaWduLWp1c3RpZnkgeyBAaW5jbHVkZSBtZW51LWJhci1hbGlnbihqdXN0aWZ5KTsgfVxuICAgICYuYWxpZ24tc3BhY2VkICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKHNwYWNlZCk7IH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAmLiN7JHNpemV9LWNvbmRlbnNlIHsgbGkgeyBmbGV4OiAwIDAgYXV0bzsgfSB9XG4gICAgICAgICYuI3skc2l6ZX0tZXhwYW5kICAgeyBsaSB7IGZsZXg6IDEgMCBhdXRvOyB9IH1cblxuICAgICAgICAvLyBSZXNwb25zaXZlIEFsaWdubWVudFxuICAgICAgICAmLiN7JHNpemV9LWFsaWduLWxlZnQgICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKGxlZnQpOyB9XG4gICAgICAgICYuI3skc2l6ZX0tYWxpZ24tcmlnaHQgICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKHJpZ2h0KTsgfVxuICAgICAgICAmLiN7JHNpemV9LWFsaWduLWNlbnRlciAgeyBAaW5jbHVkZSBtZW51LWJhci1hbGlnbihjZW50ZXIpOyB9XG4gICAgICAgICYuI3skc2l6ZX0tYWxpZ24tanVzdGlmeSB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKGp1c3RpZnkpOyB9XG4gICAgICAgICYuI3skc2l6ZX0tYWxpZ24tc3BhY2VkICB7IEBpbmNsdWRlIG1lbnUtYmFyLWFsaWduKHNwYWNlZCk7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHBvc2l0aW9uaW5nXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVudS1iYXItbGF5b3V0KGhvcml6b250YWwpO1xuICAgICAgICB9XG4gICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgIEBpbmNsdWRlIG1lbnUtYmFyLWxheW91dCh2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIHBvc2l0aW9uaW5nXG4gICAgJiwgJi5pY29uLXRvcCB7IEBpbmNsdWRlIG1lbnUtYmFyLWljb25zKHRvcCk7IH1cbiAgICAmLmljb24tcmlnaHQgIHsgQGluY2x1ZGUgbWVudS1iYXItaWNvbnMocmlnaHQpOyB9XG4gICAgJi5pY29uLWJvdHRvbSB7IEBpbmNsdWRlIG1lbnUtYmFyLWljb25zKGJvdHRvbSk7IH1cbiAgICAmLmljb24tbGVmdCAgIHsgQGluY2x1ZGUgbWVudS1iYXItaWNvbnMobGVmdCk7IH1cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBlYWNoICRwb3MgaW4gKHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1pY29uLSN7JHBvc30geyBAaW5jbHVkZSBtZW51LWJhci1pY29ucygkcG9zKTsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFiZWxzXG4gICAgJi5sYWJlbC1zaWRlICAgeyBAaW5jbHVkZSBtZW51LWJhci1sYWJlbHMocmlnaHQsIGNlbnRlcik7IH1cbiAgICAmLmxhYmVsLWNvcm5lciB7IEBpbmNsdWRlIG1lbnUtYmFyLWxhYmVscyhyaWdodCwgdG9wKTsgfVxuXG4gICAgLy8gQ29sb3JpbmdcbiAgICAmLnByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgbWVudS1iYXItc3R5bGUoJHByaW1hcnktY29sb3IsICRhdXRvY29sb3I6IHRydWUpO1xuICAgIH1cbiAgICAmLmRhcmsge1xuICAgICAgQGluY2x1ZGUgbWVudS1iYXItc3R5bGUoJGRhcmstY29sb3IsICRhdXRvY29sb3I6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIFRpdGxlXG4gICAgPiBsaS50aXRsZSB7XG4gICAgICBwYWRkaW5nOiAkbWVudWJhci1pdGVtLXBhZGRpbmc7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAvLyBNZW51IGdyb3Vwc1xuICAubWVudS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgPiAubWVudS1ncm91cC1sZWZ0LCA+IC5tZW51LWdyb3VwLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNZW51IGJhciBpcyBjb25kZW5zZWRcbiAgICAubWVudS1iYXIge1xuICAgICAgPiBsaSB7IGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLy8gQ29sb3JpbmcgY2xhc3MgY2FzY2FkZXMgZG93biB0byB0aGUgbWVudSBiYXJcbiAgICAmLnByaW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAubWVudS1iYXIge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWJhci1zdHlsZSgkcHJpbWFyeS1jb2xvciwgJGF1dG9jb2xvcjogdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgICYuZGFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1jb2xvcjtcbiAgICAgIC5tZW51LWJhciB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYmFyLXN0eWxlKCRkYXJrLWNvbG9yLCAkYXV0b2NvbG9yOiB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAaW1wb3J0IFwicGFuZWxcIjtcblxuLypcbiAgVEhFIEdSSURcbiAgLS0tLS0tLS1cblxuICBGb3VuZGF0aW9uJ3MgbWFnaWNhbCwgZmxleGJveC1wb3dlcmVkIGdyaWQuXG5cbiAgRmVhdHVyZXM6XG4gICAtIEhvcml6b250YWwgb3IgdmVydGljYWwgZ3JpZHNcbiAgIC0gQXV0by1zaXppbmcgb3IgcGVyY2VudGFnZSB3aWR0aCBncmlkIGJsb2Nrc1xuICAgLSBJbmRlcGVuZGVudGx5LXNjcm9sbGFibGUgYmxvY2tzXG4gICAtIENvbHVtbiBhbGlnbm1lbnRcbiAgIC0gU291cmNlIG9yZGVyaW5nXG4gICAtIE9mZnNldHNcbiovXG5cbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xuLy8gR3JpZFxuJGNvbnRhaW5lci13aWR0aDogcmVtLWNhbGMoOTAwKSAhZGVmYXVsdDtcbiRibG9jay1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG4kdG90YWwtY29sdW1uczogMTIgIWRlZmF1bHQ7XG4kYmxvY2stZ3JpZC1tYXgtc2l6ZTogNiAhZGVmYXVsdDtcbi8vL1xuXG4vKlxuICBEZWZpbmUgdGhlIHNpemUgb2YgYSBncmlkIGJsb2NrLiBCbG9ja3MgYXJlIGZsZXggaXRlbXMuIEJ5IGRlZmF1bHQsIHRoZXkgc3RyZXRjaCB0byBmaWxsIGFsbCBhdmFpbGFibGUgc3BhY2UsIGJhc2VkIG9uIHRoZSBzaXplIG9mIHNpYmxpbmcgYmxvY2tzLiBUaGlzIGlzIHRoZSBcImV4cGFuZFwiIGJlaGF2aW9yLlxuXG4gIElmIHNldCB0byBcInNocmlua1wiLCB0aGUgYmxvY2sgd2lsbCBjb250cmFjdCBhbmQgb25seSBmaWxsIGFzIG11Y2ggc3BhY2UgYXMgaXQgbmVlZHMgZm9yIGl0cyBjb250ZW50LlxuXG4gIElmIHNldCB0byBhIG51bWJlciwgdGhlIGJsb2NrIHdpbGwgYmUgZ2l2ZW4gYSBwZXJjZW50YWdlIHdpZHRoLCBiYXNlZCBvbiB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgKDEyIGJ5IGRlZmF1bHQpLiBQZXJjZW50YWdlIHdpZHRocyBkb24ndCB3b3JrIGlmIGEgYmxvY2sgaXMgaW5zaWRlIGEgdmVydGljYWwgZ3JpZC5cblxuICBAZ3JvdXAgZ3JpZFxuXG4gIEBwYXJhbSB7bnVtYmVyfHN0cmluZ30gJHNpemUgLSBTaXppbmcgYmVoYXZpb3Igb2YgdGhlIGJsb2NrLiBTaG91bGQgYmUgZXhwYW5kLCBzaHJpbmssIG9yIGEgbnVtYmVyLlxuXG4gIEBvdXRwdXQgVGhlIGZsZXgtYmFzaXMsIGZsZXgtZ3JvdywgYW5kIGZsZXgtc2hyaW5rIHByb3BlcnRpZXMuXG4qL1xuQG1peGluIGdyaWQtc2l6ZSgkc2l6ZTogZXhwYW5kKSB7XG4gIEBpZiAodHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicpIHtcbiAgICAkcGN0OiBwZXJjZW50YWdlKCRzaXplIC8gJHRvdGFsLWNvbHVtbnMpO1xuICAgIGZsZXg6IDAgMCAkcGN0O1xuICAgIC8vIG1heC13aWR0aCBwcmV2ZW50cyBjb2x1bW5zIGZyb20gd3JhcHBpbmcgZWFybHkgaW4gSUUxMC8xMVxuICAgIG1heC13aWR0aDogJHBjdDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gc2hyaW5rKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09IGV4cGFuZCkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG59XG4vKlxuICBTZXQgdGhlIG9yaWVudGF0aW9uIG9mIGJsb2NrcyB3aXRoaW4gdGhpcyBibG9jay4gVGhlIGdyaWQgaXMgcmUtb3JpZW50ZWQgYnkgY2hhbmdpbmcgdGhlIGZsZXggZGlyZWN0aW9uIG9mIHRoZSBibG9jay5cblxuICBAZ3JvdXAgZ3JpZFxuXG4gIEBwYXJhbSB7c3RyaW5nfSAkb3JpZW50YXRpb24gLSBEaXJlY3Rpb24gb2YgdGhlIGdyaWQsIGVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsLlxuXG4gIEBvdXRwdXQgQSBmbGV4LWZsb3cgcHJvcGVydHkgdG8gbWF0Y2ggdGhlIGRpcmVjdGlvbiBnaXZlbi5cbiovXG5AbWl4aW4gZ3JpZC1vcmllbnQoJG9yaWVudGF0aW9uOiBob3Jpem9udGFsKSB7XG4gIEBpZiAoJG9yaWVudGF0aW9uID09IHZlcnRpY2FsKSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB9XG59XG4vKlxuICBTdHJldGNoIGEgZ3JpZCdzIGNoaWxkIGJsb2NrcyBhY3Jvc3MgaXRzIGNyb3NzLWF4aXMsIG1ha2luZyBldmVyeSBjb2x1bW4gYXBwZWFyIHRvIGhhdmUgdGhlIHNhbWUgaGVpZ2h0LlxuXG4gIEBncm91cCBncmlkXG5cbiAgQHBhcmFtIHtib29sfSAkc3RyZXRjaCAtIFN0cmV0Y2ggYmxvY2tzIGlmIHRydWUsIG9yIGFsaWduIGJsb2NrcyB0byB0b3AgaWYgZmFsc2UuXG5cbiAgQG91dHB1dCBTZXRzIGFsaWduLWl0ZW1zIHRvIFwic3RyZXRjaFwiIGlmICRzdHJldGNoIGlzIHRydWUsIG9yIFwiZmxleC1zdGFydFwiICh0aGUgZGVmYXVsdCB2YWx1ZSkgaWYgZmFsc2UuXG4qL1xuQG1peGluIGdyaWQtd3JhcCgkd3JhcDogdHJ1ZSkge1xuICBAaWYgJHdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbn1cbi8qXG4gIFNldCB0aGUgYWxpZ25tZW50IG9mIGJsb2NrcyB3aXRoaW4gYSBncmlkLlxuXG4gIGxlZnQ6IEl0ZW1zIGFsaWduIHRvIHRoZSBsZWZ0LlxuICByaWdodDogSXRlbXMgYWxpZ24gdG8gdGhlIHJpZ2h0LlxuICBjZW50ZXI6IEl0ZW1zIGFsaWduIHRvIHRoZSBjZW50ZXIuXG4gIGp1c3RpZnk6IEl0ZW1zIGFyZSBzcGFjZWQgZXF1YWxseSBhcGFydCBzbyB0aGV5IG9jY3VweSB0aGUgc3BhY2Ugb2YgdGhlIGVudGlyZSBncmlkLlxuICBzcGFjZWQ6IEl0ZW1zIGFyZSBnaXZlbiBlcXVhbCBzcGFjZSB0byB0aGVpciBsZWZ0IGFuZCByaWdodC5cblxuICBAZ3JvdXAgZ3JpZFxuXG4gIEBwYXJhbSB7c3RyaW5nfSAkYWxpZ24gLSBBbGlnbm1lbnQgdG8gdXNlLlxuXG4gIEBvdXRwdXQgQW4gYXBwcm9wcmlhdGUganVzdGlmeS1jb250ZW50IHZhbHVlLlxuKi9cbkBtaXhpbiBncmlkLWFsaWduKCRhbGlnbjogbGVmdCkge1xuICAkb3B0aW9uczogKFxuICAgIGxlZnQ6IGZsZXgtc3RhcnQsXG4gICAgcmlnaHQ6IGZsZXgtZW5kLFxuICAgIGNlbnRlcjogY2VudGVyLFxuICAgIGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sXG4gICAgc3BhY2VkOiBzcGFjZS1hcm91bmQsXG4gICk7XG4gIGp1c3RpZnktY29udGVudDogbWFwLWdldCgkb3B0aW9ucywgJGFsaWduKTtcbn1cbi8qXG4gIFNldCB0aGUgc291cmNlIG9yZGVyIG9mIGEgYmxvY2suIEl0ZW1zIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QuIElmIG11bHRpcGxlIGl0ZW1zIGhhdmUgdGhlIHNhbWUgbnVtYmVyLCB0aGUgb25lIGluIHRoZSBIVE1MIGZpcnN0IHdpbGwgYXBwZWFyIGZpcnN0LlxuXG4gIEBncm91cCBncmlkXG5cbiAgQHBhcmFtIHtudW1iZXJ9ICRvcmRlciAtIFBvc2l0aW9uIGluIHNvdXJjZSBvcmRlci5cblxuICBAb3V0cHV0IEFuIG9yZGVyIHByb3BlcnR5LlxuKi9cbkBtaXhpbiBncmlkLW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuLypcbiAgQ29sbGFwc2UgYSBjb250ZW50IGJsb2NrIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLlxuXG4gIEBncm91cCBncmlkXG5cbiAgQHBhcmFtIHtib29sfSAkY29sbGFwc2UgLSBDb2xsYXBzZXMgdGhlIGJsb2NrIGlmIHRydWUuXG5cbiAgQG91dHB1dCBBIHBhZGRpbmcgdmFsdWUuXG5cbiAgQHRvZG8gTm8gd2F5IHRvIHJldmVyc2UgY29sbGFwc2UgdXNpbmcgdGhpcyBtaXhpbi4gU29sdXRpb246XG4gICAgLSBJZiB0cnVlLCBhZGQgcGFkZGluZzogMDtcbiAgICAtIElmIGZhbHNlLCBhZGQgcGFkZGluZzogMXJlbTtcbiAgICAtIElmIG51bGwsIGFkZCBub3RoaW5nLCB0byBjdXQgZG93biBvbiBDU1Mgb3V0cHV0XG4gICAgLSBNYWtlIG51bGwgdGhlIGRlZmF1bHQgdmFsdWVcbiovXG5AbWl4aW4gZ3JpZC1jb2xsYXBzZSgkY29sbGFwc2U6IHRydWUpIHtcbiAgQGlmICgkY29sbGFwc2UpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4vKlxuICBDb25zdHJhaW4gdGhlIHNpemUgb2YgYSBibG9jayB0byB0aGUgc2l6ZSBvZiB0aGUgYXZlcmFnZSBncmlkIHJvdywgYW5kIGNlbnRlci1hbGlnbiBpdC4gVGhpcyBpbWl0YXRlcyB0aGUgYmVoYXZpb3Igb2Ygb3JkaW5hcnkgRm91bmRhdGlvbiByb3dzLlxuXG4gIEBncm91cCBncmlkXG5cbiAgQHBhcmFtIHtib29sfSAkY29udGFpbmVyIC0gQWRkcyBjb250YWluZXIgc3R5bGVzIGlmIHRydWUuXG5cbiAgQG91dHB1dCBBIG1heGltdW0gd2lkdGggYW5kIHRoZSBnb29kIG9sZCBtYXJnaW46IDAgYXV0byBmb3IgY2VudGVyIGFsaWdubWVudC5cbiovXG5AbWl4aW4gZ3JpZC1jb250YWluZXIoJHdpZHRoOiAkY29udGFpbmVyLXdpZHRoLCAkYWxpZ246IGNlbnRlcikge1xuICAkbWFyZ2luczogKFxuICAgIGxlZnQ6ICAwIGF1dG8gMCAwLFxuICAgIHJpZ2h0OiAwIDAgMCBhdXRvLFxuICAgIGNlbnRlcjogMCBhdXRvLFxuICApO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiBtYXAtZ2V0KCRtYXJnaW5zLCAkYWxpZ24pO1xufVxuLypcbiAgQWRkIG5lZ2F0aXZlIG1hcmdpbnMgdG8gYSBibG9jaywgZXF1YWwgdG8gdGhlIHBhZGRpbmcgb2YgYSBjb250ZW50IGJsb2NrLiBUaGlzIGFsaWducyB0aGUgZWRnZXMgb2YgYSBibG9jayBuZXN0ZWQgaW5zaWRlIGEgY29udGVudCBibG9jay5cblxuICBAZ3JvdXAgZ3JpZFxuXG4gIEBwYXJhbSB7Ym9vbH0gJG5lc3QgLSBBZGRzIG5lZ2F0aXZlIG1hcmdpbnMgaWYgdHJ1ZS5cblxuICBAb3V0cHV0IE5lZ2F0aXZlIG1hcmdpbiB2YWx1ZXMuXG4qL1xuQG1peGluIGdyaWQtbmVzdCgkbmVzdDogdHJ1ZSkge1xuICBAaWYgKCRuZXN0KSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gIH1cbn1cbi8qXG4gIE9mZnNldCBhIGJsb2NrIGJ5IGFkZGluZyBhIGxlZnQgbWFyZ2luLlxuXG4gIEBncm91cCBncmlkXG5cbiAgQHBhcmFtIHtudW1iZXIgfCBib29sfSAkb2Zmc2V0IC0gSWYgZmFsc2UsIG5vdGhpbmcgaXMgb3V0cHV0LiBJZiBhIG51bWJlciwgb2Zmc2V0cyB0aGUgY29sdW1uIGJ5IHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGNvbHVtbnMuXG5cbiAgQG91dHB1dCBBIGxlZnQgbWFyZ2luIGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgY29sdW1ucyBzcGVjaWZpZWQsIGFuZCB0aGUgZ2xvYmFsIG51bWJlciBvZiBjb2x1bW5zLlxuKi9cbkBtaXhpbiBncmlkLW9mZnNldCgkb2Zmc2V0OiBmYWxzZSkge1xuICBAaWYgKCRvZmZzZXQgIT0gZmFsc2UpIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgkb2Zmc2V0IC8gJHRvdGFsLWNvbHVtbnMpO1xuICB9XG59XG5cbi8qXG4gIFJlc2V0cyBzdHlsZXMgc2V0IGJ5IHBhbmVscy4gVXNlIHRoaXMgd2hlbiBhIHBhbmVsIHRyYW5zZm9ybXMgaW50byBhIGJsb2NrIG9uIGxhcmdlciBzY3JlZW5zLlxuXG4gIEBncm91cCBncmlkXG5cbiAgQG91dHB1dCBSZXNldHMgdG8gdHJhbnNmb3JtLCBwb3NpdGlvbiwgYW5kIGEgZmV3IHZpc3VhbCBzdHlsZXMuXG4qL1xuQG1peGluIGdyaWQtcGFuZWwtcmVzZXQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiBhdXRvO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vKlxuICBGcmFtZXMgYXJlIGNvbnRhaW5lcnMgdGhhdCBzdHJldGNoIHRvIHRoZSBmdWxsIGRpbW1lbnNpb25zIG9mIHRoZSBicm93c2VyIHdpbmRvdy5cbiovXG5AbWl4aW4gZ3JpZC1mcmFtZSgkc2l6ZTogZXhwYW5kLCAkb3JpZW50YXRpb246IGhvcml6b250YWwsICR3cmFwOiBmYWxzZSwgJGFsaWduOiBsZWZ0LCAkb3JkZXI6IDApIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgZ3JpZC1zaXplKCRzaXplKTtcbiAgQGluY2x1ZGUgZ3JpZC1vcmllbnQoJG9yaWVudGF0aW9uKTtcbiAgQGluY2x1ZGUgZ3JpZC13cmFwKCR3cmFwKTtcbiAgQGluY2x1ZGUgZ3JpZC1hbGlnbigkYWxpZ24pO1xuICBAaW5jbHVkZSBncmlkLW9yZGVyKCRvcmRlcik7XG59XG5cbi8qXG4gIEdyb3VwcyBhcmUgY29sbGVjdGlvbnMgb2YgY29udGVudCBpdGVtcy4gVGhleSdyZSB0aGUgXCJyb3dzXCIgb2YgRm91bmRhdGlvbiBmb3IgQXBwcy5cbiovXG5AbWl4aW4gZ3JpZC1ibG9jaygkc2l6ZTogZXhwYW5kLCAkb3JpZW50YXRpb246IGhvcml6b250YWwsICR3cmFwOiBmYWxzZSwgJGFsaWduOiBsZWZ0LCAkb3JkZXI6IDApIHtcbiAgQGluY2x1ZGUgZ3JpZC1mcmFtZSgkc2l6ZSwgJG9yaWVudGF0aW9uLCAkd3JhcCwgJGFsaWduLCAkb3JkZXIpO1xuXG4gIC8vIFJlc2V0IHRoZSBoZWlnaHQgdXNlZCBieSBmcmFtZXNcbiAgaGVpZ2h0OiBhdXRvO1xuXG4gIC8vIEJsb2NrcyB3aWxsIHNjcm9sbCBieSBkZWZhdWx0IGlmIHRoZWlyIGNvbnRlbnQgb3ZlcmZsb3dzXG4gIEBpZiAoJG9yaWVudGF0aW9uID09IHZlcnRpY2FsKSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC8vIEFkZCBzY3JvbGxpbmcgd2l0aCBpbmVydGlhXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8qXG4gIEJsb2NrcyBhcmUgY29udGFpbmVycyBmb3IgYWN0dWFsIGNvbnRlbnQuIFRoZXkncmUgdGhlIFwiY29sdW1uc1wiIG9mIEZvdW5kYXRpb24gZm9yIEFwcHMuXG4qL1xuQG1peGluIGdyaWQtY29udGVudCgkc2l6ZTogZXhwYW5kLCAkb2Zmc2V0OiBudWxsLCAkb3JkZXI6IG51bGwpIHtcbiAgLy8gQ29udGVudCBibG9ja3MgYXJlIG5vdCBmbGV4IGl0ZW1zIGFuZCBoYXZlIHBhZGRpbmdcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgJGJsb2NrLXBhZGRpbmc7XG5cbiAgLy8gQWRkIHNjcm9sbGluZyB3aXRoIGluZXJ0aWFcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcblxuICBAaW5jbHVkZSBncmlkLXNpemUoJHNpemUpO1xuICBAaWYgJG9mZnNldCAhPSBudWxsIHsgQGluY2x1ZGUgZ3JpZC1vZmZzZXQoJG9mZnNldCk7IH1cbiAgQGlmICRvcmRlciAhPSBudWxsICB7IEBpbmNsdWRlIGdyaWQtb3JkZXIoJG9yZGVyKTsgfVxufVxuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoJHVwKSB7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgPiBsaSwgPiBkaXYsID4gc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMCAxcmVtIDFyZW07XG4gICAgZmxleDogMCAwIHBlcmNlbnRhZ2UoMSAvICR1cCk7XG4gIH1cbn1cblxuLy8gQ1NTIE91dHB1dFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vIFNoYXJlZCBzdHlsZXMgZm9yIGZyYW1lcyBhbmQgYmxvY2tzIChwYXJlbnQgZWxlbWVudHMpXG4lYmxvY2stY29yZSB7XG4gIC8vIENoYW5nZSB0aGUgZGlyZWN0aW9uIGNoaWxkcmVuIGZsb3dcbiAgJi52ZXJ0aWNhbCB7IEBpbmNsdWRlIGdyaWQtb3JpZW50KHZlcnRpY2FsKTsgfVxuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAmLiN7JHNpemV9LXZlcnRpY2FsICAgeyBAaW5jbHVkZSBncmlkLW9yaWVudCh2ZXJ0aWNhbCk7IH1cbiAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7IEBpbmNsdWRlIGdyaWQtb3JpZW50KGhvcml6b250YWwpOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gQWxpZ24gdGhlIGNoaWxkcmVuIG9mIGEgZ3JpZCBibG9ja1xuICAmLmFsaWduLXJpZ2h0ICAgeyBAaW5jbHVkZSBncmlkLWFsaWduKHJpZ2h0KTsgfVxuICAmLmFsaWduLWNlbnRlciAgeyBAaW5jbHVkZSBncmlkLWFsaWduKGNlbnRlcik7IH1cbiAgJi5hbGlnbi1qdXN0aWZ5IHsgQGluY2x1ZGUgZ3JpZC1hbGlnbihqdXN0aWZ5KTsgfVxuICAmLmFsaWduLXNwYWNlZCAgeyBAaW5jbHVkZSBncmlkLWFsaWduKHNwYWNlZCk7IH1cblxuICAvLyBBbGxvdyBjaGlsZCBlbGVtZW50cyB0byB3cmFwXG4gICYud3JhcCB7IEBpbmNsdWRlIGdyaWQtd3JhcCh0cnVlKTsgfVxufVxuXG4vLyBTaGFyZWQgc3R5bGVzIGZvciBibG9ja3MgYW5kIGNvbnRlbnQgYmxvY2tzIChjaGlsZCBlbGVtZW50cylcbiVjaGlsZC1jb3JlIHtcbiAgLy8gU2hyaW5rIGEgZmxleCBpdGVtIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIHNwYWNlIGl0IG5lZWRzXG4gICYuc2hyaW5rIHsgQGluY2x1ZGUgZ3JpZC1zaXplKHNocmluayk7IH1cblxuICAvLyBQcmV2ZW50IGFuIGVsZW1lbnQgZnJvbSBzY3JvbGxpbmdcbiAgJi5ub3Njcm9sbCB7IG92ZXJmbG93OiBoaWRkZW47IH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhncmlkKSB7XG4gIC8vIFRoZSBjb3JlIGdyaWQgZWxlbWVudHM6XG4gIC8vICAtIEZyYW1lXG4gIC8vICAtIEJsb2NrXG4gIC8vICAtIENvbnRlbnQgYmxvY2tcbiAgLy8gIC0gQ29udGFpbmVyXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAZXh0ZW5kICVibG9jay1jb3JlO1xuICAgIEBpbmNsdWRlIGdyaWQtZnJhbWU7XG4gIH1cbiAgLmdyaWQtYmxvY2sge1xuICAgIEBleHRlbmQgJWJsb2NrLWNvcmU7XG4gICAgQGV4dGVuZCAlY2hpbGQtY29yZTtcbiAgICBAaW5jbHVkZSBncmlkLWJsb2NrO1xuICB9XG4gIC5ncmlkLWNvbnRlbnQge1xuICAgIEBleHRlbmQgJWNoaWxkLWNvcmU7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZW50O1xuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIEdyaWRzIGluc2lkZSBjb250ZW50IGJsb2NrcyBzaG91bGQgd3JhcCBieSBkZWZhdWx0LCBzbyB0aGV5IG1pbWljIHRyYWRpdGlvbmFsIGZsb2F0IGdyaWRzXG4gICAgLmdyaWQtYmxvY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0oJGJsb2NrLXBhZGRpbmcpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtKCRibG9jay1wYWRkaW5nKTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAvLyBSZXZlcnNlIHRoZSBhYm92ZSB3cmFwcGluZyBiZWhhdmlvclxuICAgICAgJi5ub3dyYXAge1xuICAgICAgICBAaW5jbHVkZSBncmlkLXdyYXAoZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmNvbnRhaW4tbGVmdCAgeyBAaW5jbHVkZSBncmlkLWNvbnRhaW5lcigkYWxpZ246IGxlZnQpOyB9XG4gICAgJi5jb250YWluLXJpZ2h0IHsgQGluY2x1ZGUgZ3JpZC1jb250YWluZXIoJGFsaWduOiByaWdodCk7IH1cbiAgfVxuXG4gIC8vIEJyZWFrcG9pbnQgY2xhc3NlcyBmb3IgYmxvY2tzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIC4jeyRzaXplfS1ncmlkLWJsb2NrIHtcbiAgICAgIEBleHRlbmQgJWJsb2NrLWNvcmU7XG4gICAgICBAZXh0ZW5kICVjaGlsZC1jb3JlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtYmxvY2s7XG5cbiAgICAgICAgLy8gT3ZlcnJpZGUgcGFuZWwgc3R5bGVzXG4gICAgICAgICYucGFuZWwgeyBAaW5jbHVkZSBncmlkLXBhbmVsLXJlc2V0OyB9XG4gICAgICB9XG4gICAgfVxuICAgIC4jeyRzaXplfS1ncmlkLWNvbnRlbnQge1xuICAgICAgQGV4dGVuZCAlY2hpbGQtY29yZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbnRlbnQ7XG5cbiAgICAgICAgLy8gT3ZlcnJpZGUgcGFuZWwgc3R5bGVzXG4gICAgICAgICYucGFuZWwgeyBAaW5jbHVkZSBncmlkLXBhbmVsLXJlc2V0OyB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6aW5nIGFuZCBvcmRlcmluZyBjbGFzc2VzXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMge1xuICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgIC5vcmRlci0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtb3JkZXIoJGkpOyB9XG4gIH1cbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkdG90YWwtY29sdW1ucyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIC8vIEJsb2NrIHNpemluZ1xuICAgICAgICAuI3skc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtc2l6ZSgkaSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICAgIC4jeyRzaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1vcmRlcigkaSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gT2Zmc2V0c1xuICAgICAgICAuI3skc2l6ZX0tb2Zmc2V0LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLW9mZnNldCgkaSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUGFyZW50IHNpemluZyAoYmxvY2sgZ3JpZHMpXG4gICAgICAgIC4jeyRzaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdyaWQtY29udGVudCAubW9kYWwgLmdyaWQtYmxvY2sge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvKlxyXG4gIE5PVElGSUNBVElPTlxyXG4gIC0tLS0tLS0tLS0tLVxyXG5cclxuICBBbiBhbGVydCB0aGF0IHBpbnMgdG8gdGhlIGNvcm5lciBvZiB0aGUgc2NyZWVuIHdoZW4gdHJpZ2dlcmVkIGJ5IEphdmFTY3JpcHQuIEl0IGNhbiBiZSBzZXQgdG8gZGlzYXBwZWFyIGFmdGVyIGEgY2VydGFpbiBwZXJpb2Qgb2YgdGltZSwgb3IgdG8gc3RheSBwdXQgdW50aWwgdGhlIHVzZXIgY2xpY2tzIG9uIGl0LiBBIGN1c3RvbSBhY3Rpb24gY2FuIGJlIGFzaWduZWQgdG8gYSBub3RpZmljYXRpb24gYXMgd2VsbC5cclxuXHJcbiAgT3B0aW9uYWxseSwgdGhlIG5vdGlmaWNhdGlvbnMgZGlyZWN0aXZlIGNhbiBhbHNvIHRhcCBpbnRvIHRoZSBicm93c2VyJ3MgbmF0aXZlIG5vdGlmaWNhdGlvbiBzdXBwb3J0LCBpZiBpdCBleGlzdHMuXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gTm90aWZpY2F0aW9uXHJcbiRub3RpZmljYXRpb24tZGVmYXVsdC1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xyXG4kbm90aWZpY2F0aW9uLXdpZHRoOiByZW0tY2FsYyg0MDApICFkZWZhdWx0O1xyXG4kbm90aWZpY2F0aW9uLW9mZnNldDogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xyXG5cclxuJG5vdGlmaWNhdGlvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJG5vdGlmaWNhdGlvbi1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XHJcbiRub3RpZmljYXRpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xyXG4kbm90aWZpY2F0aW9uLXJhZGl1czogNHB4ICFkZWZhdWx0O1xyXG5cclxuJG5vdGlmaWNhdGlvbi1pY29uLXNpemU6IDYwcHggIWRlZmF1bHQ7XHJcbiRub3RpZmljYXRpb24taWNvbi1tYXJnaW46ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcclxuJG5vdGlmaWNhdGlvbi1pY29uLWFsaWduOiB0b3AgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuXHJcbiVub3RpZmljYXRpb24ge1xyXG4gIHotaW5kZXg6IDEwMDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luLXRvcDogLjVyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgaDEge1xyXG4gICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG4gIHAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgLy8gUGxhY2Vob2xkZXIgYW5pbWF0aW9uXHJcbiAgLy8gdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dDtcclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcblxyXG4gIC5jbG9zZS1idXR0b24ge1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gIH1cclxufVxyXG5cclxuJW5vdGlmaWNhdGlvbi1jb250YWluZXIge1xyXG4gIHotaW5kZXg6IDMwMDA7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG5cclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbkBtaXhpbiBub3RpZmljYXRpb24tbGF5b3V0KFxyXG4gICR4OiBudGgoJG5vdGlmaWNhdGlvbi1kZWZhdWx0LXBvc2l0aW9uLCAxKSxcclxuICAkeTogbnRoKCRub3RpZmljYXRpb24tZGVmYXVsdC1wb3NpdGlvbiwgMiksXHJcbiAgJHNpemU6ICRub3RpZmljYXRpb24td2lkdGgsXHJcbiAgJG9mZnNldDogJG5vdGlmaWNhdGlvbi1vZmZzZXRcclxuKSB7XHJcbiAgd2lkdGg6ICRzaXplO1xyXG5cclxuICBAaWYgJHggPT0gcmlnaHQge1xyXG4gICAgcmlnaHQ6ICRvZmZzZXQ7XHJcbiAgfVxyXG4gIEBlbHNlIGlmICR4ID09IGxlZnQge1xyXG4gICAgbGVmdDogJG9mZnNldDtcclxuICB9XHJcbiAgQGVsc2UgaWYgJHggPT0gbWlkZGxlIHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtKCRzaXplIC8gMik7XHJcbiAgfVxyXG5cclxuICBAaWYgJHkgPT0gdG9wIHtcclxuICAgIHRvcDogJG9mZnNldDtcclxuICB9XHJcbiAgQGVsc2UgaWYgJHkgPT0gYm90dG9tIHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogJG9mZnNldDtcclxuICB9XHJcblxyXG4gIC8vIE9uIHNtYWxsIHNjcmVlbnMsIG5vdGlmaWNhdGlvbnMgYXJlIGZ1bGwgd2lkdGggYnV0IG1haW50YWluIHRoZWlyIHZlcnRpY2FsIG9yaWVudGF0aW9uXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGxlZnQ6ICRvZmZzZXQ7XHJcbiAgICByaWdodDogJG9mZnNldDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gbm90aWZpY2F0aW9uLXN0eWxlKFxyXG4gICRiYWNrZ3JvdW5kOiAkbm90aWZpY2F0aW9uLWJhY2tncm91bmQsXHJcbiAgJGNvbG9yOiAkbm90aWZpY2F0aW9uLWNvbG9yLFxyXG4gICRwYWRkaW5nOiAkbm90aWZpY2F0aW9uLXBhZGRpbmcsXHJcbiAgJHJhZGl1czogJG5vdGlmaWNhdGlvbi1yYWRpdXNcclxuKSB7XHJcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuXHJcbiAgJiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG5vdGlmaWNhdGlvbihcclxuICAkYmFja2dyb3VuZDogJG5vdGlmaWNhdGlvbi1iYWNrZ3JvdW5kLFxyXG4gICRjb2xvcjogJG5vdGlmaWNhdGlvbi1jb2xvcixcclxuICAkcGFkZGluZzogJG5vdGlmaWNhdGlvbi1wYWRkaW5nLFxyXG4gICRyYWRpdXM6ICRub3RpZmljYXRpb24tcmFkaXVzXHJcbikge1xyXG4gIEBleHRlbmQgJW5vdGlmaWNhdGlvbjtcclxuICBAaW5jbHVkZSBub3RpZmljYXRpb24tc3R5bGUoJGJhY2tncm91bmQsICRjb2xvciwgJHBhZGRpbmcsICRyYWRpdXMpO1xyXG59XHJcblxyXG5AbWl4aW4gbm90aWZpY2F0aW9uLWNvbnRhaW5lcihcclxuICAkeDogbnRoKCRub3RpZmljYXRpb24tZGVmYXVsdC1wb3NpdGlvbiwgMSksXHJcbiAgJHk6IG50aCgkbm90aWZpY2F0aW9uLWRlZmF1bHQtcG9zaXRpb24sIDIpLFxyXG4gICRzaXplOiAkbm90aWZpY2F0aW9uLXdpZHRoLFxyXG4gICRvZmZzZXQ6ICRub3RpZmljYXRpb24tb2Zmc2V0XHJcbikge1xyXG4gIEBleHRlbmQgJW5vdGlmaWNhdGlvbi1jb250YWluZXI7XHJcbiAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLWxheW91dCgkeCwgJHksICRzaXplLCAkb2Zmc2V0KTtcclxufVxyXG5cclxuQG1peGluIG5vdGlmaWNhdGlvbi1pY29uKFxyXG4gICRzaXplOiAkbm90aWZpY2F0aW9uLWljb24tc2l6ZSxcclxuICAkbWFyZ2luOiAkbm90aWZpY2F0aW9uLWljb24tbWFyZ2luLFxyXG4gICRhbGlnbjogJG5vdGlmaWNhdGlvbi1pY29uLWFsaWduXHJcbikge1xyXG4gICRhbGlnbm1lbnRzOiAoXHJcbiAgICB0b3A6IGZsZXgtc3RhcnQsXHJcbiAgICBtaWRkbGU6IG1pZGRsZSxcclxuICAgIGJvdHRvbTogZmxleC1lbmQsXHJcbiAgKTtcclxuICBmbGV4OiAwIDAgJHNpemU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiAgYWxpZ24tc2VsZjogbWFwLWdldCgkYWxpZ25tZW50cywgJGFsaWduKTtcclxuXHJcbiAgaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLypcclxuICBDU1MgT3V0cHV0XHJcbiovXHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKG5vdGlmaWNhdGlvbikge1xyXG4gIC5ub3RpZmljYXRpb24ge1xyXG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uO1xyXG5cclxuICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgbm90aWZpY2F0aW9uLXN0eWxlKCRzdWNjZXNzLWNvbG9yKSB9XHJcbiAgICAmLndhcm5pbmcgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1zdHlsZSgkd2FybmluZy1jb2xvcikgfVxyXG4gICAgJi5hbGVydCAgICAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tc3R5bGUoJGFsZXJ0LWNvbG9yKSB9XHJcbiAgICAmLmRhcmsgICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1zdHlsZSgkZGFyay1jb2xvciwgI2ZmZikgfVxyXG5cclxuXHJcbiAgfVxyXG5cclxuICAuc3RhdGljLW5vdGlmaWNhdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb247XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XHJcbiAgICBcclxuICAgICYudG9wLXJpZ2h0ICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQocmlnaHQsIHRvcCk7IH1cclxuICAgICYudG9wLWxlZnQgICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQobGVmdCwgdG9wKTsgfVxyXG4gICAgJi50b3AtbWlkZGxlICAgIHsgQGluY2x1ZGUgbm90aWZpY2F0aW9uLWxheW91dChtaWRkbGUsIHRvcCk7IH1cclxuXHJcbiAgICAmLmJvdHRvbS1yaWdodCAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tbGF5b3V0KHJpZ2h0LCBib3R0b20pOyB9XHJcbiAgICAmLmJvdHRvbS1sZWZ0ICAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tbGF5b3V0KGxlZnQsIGJvdHRvbSk7IH1cclxuICAgICYuYm90dG9tLW1pZGRsZSB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQobWlkZGxlLCBib3R0b20pOyB9XHJcblxyXG4gICAgJi5zdWNjZXNzICAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tc3R5bGUoJHN1Y2Nlc3MtY29sb3IpIH1cclxuICAgICYud2FybmluZyAgIHsgQGluY2x1ZGUgbm90aWZpY2F0aW9uLXN0eWxlKCR3YXJuaW5nLWNvbG9yKSB9XHJcbiAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1zdHlsZSgkYWxlcnQtY29sb3IpIH1cclxuICAgICYuZGFyayAgICAgIHsgQGluY2x1ZGUgbm90aWZpY2F0aW9uLXN0eWxlKCRkYXJrLWNvbG9yLCAjZmZmKSB9XHJcbiAgfVxyXG5cclxuICAubm90aWZpY2F0aW9uLWNvbnRhaW5lciB7XHJcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tY29udGFpbmVyO1xyXG5cclxuICAgICYudG9wLXJpZ2h0ICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQocmlnaHQsIHRvcCk7IH1cclxuICAgICYudG9wLWxlZnQgICAgICB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQobGVmdCwgdG9wKTsgfVxyXG4gICAgJi50b3AtbWlkZGxlICAgIHsgQGluY2x1ZGUgbm90aWZpY2F0aW9uLWxheW91dChtaWRkbGUsIHRvcCk7IH1cclxuXHJcbiAgICAmLmJvdHRvbS1yaWdodCAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tbGF5b3V0KHJpZ2h0LCBib3R0b20pOyB9XHJcbiAgICAmLmJvdHRvbS1sZWZ0ICAgeyBAaW5jbHVkZSBub3RpZmljYXRpb24tbGF5b3V0KGxlZnQsIGJvdHRvbSk7IH1cclxuICAgICYuYm90dG9tLW1pZGRsZSB7IEBpbmNsdWRlIG5vdGlmaWNhdGlvbi1sYXlvdXQobWlkZGxlLCBib3R0b20pOyB9XHJcbiAgfVxyXG5cclxuICAubm90aWZpY2F0aW9uLWljb24ge1xyXG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLWljb247XHJcbiAgfVxyXG4gIC5ub3RpZmljYXRpb24tY29udGVudCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiLypcclxuICBVVElMSVRJRVNcclxuICAtLS0tLS0tLS1cclxuXHJcbiAgUmVzcG9uc2l2ZSBoZWxwZXIgY2xhc3NlcyB0byBhc3Npc3QgeW91IGluIHF1aWNrbHkgZG9pbmcgYmFzaWMgZm9ybWF0dGluZyBhbmQgbGF5b3V0LlxyXG5cclxuICBGZWF0dXJlczpcclxuICAgLSBWZXJ0aWNhbCBhbGlnbm1lbnRcclxuICAgLSBWaXNpYmlsaXR5XHJcbiAgIC0gVGV4dCBhbGlnbm1lbnRcclxuICAgLSBGbG9hdGluZ1xyXG4qL1xyXG5cclxuJGJsb2NrLXNlbGVjdG9yOiAnW2NsYXNzKj1cImdyaWQtYmxvY2tcIl0nO1xyXG5cclxuQG1peGluIHNob3ctZm9yKCRzaXplLCAkcHJvcDogYmxvY2spIHtcclxuICAmOm5vdCgubmctaGlkZSkge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xyXG4gICAgICBkaXNwbGF5OiAkcHJvcCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUsICRwcm9wOiBibG9jaykge1xyXG4gICY6bm90KC5uZy1oaWRlKSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcclxuICAgICAgZGlzcGxheTogJHByb3AgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSwgJHByb3A6IGJsb2NrKSB7XHJcbiAgJjpub3QoLm5nLWhpZGUpIHtcclxuICAgIGRpc3BsYXk6ICRwcm9wICFpbXBvcnRhbnQ7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplLCAkcHJvcDogYmxvY2spIHtcclxuICAmOm5vdCgubmctaGlkZSkge1xyXG4gICAgZGlzcGxheTogJHByb3AgIWltcG9ydGFudDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKHV0aWxpdGllcykge1xyXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudFxyXG4gIC52LWFsaWduIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICRhbGlnbi12YWx1ZXM6IChcclxuICAgICAgJ3RvcCc6IGZsZXgtc3RhcnQsXHJcbiAgICAgICdjZW50ZXInOiBjZW50ZXIsXHJcbiAgICAgICdib3R0b20nOiBmbGV4LWVuZCxcclxuICAgICk7XHJcblxyXG4gICAgQGVhY2ggJG9yaWVudCBpbiAodG9wLCBjZW50ZXIsIGJvdHRvbSkge1xyXG4gICAgICAuYWxpZ24tI3skb3JpZW50fSB7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogbWFwLWdldCgkYWxpZ24tdmFsdWVzLCAkb3JpZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xyXG4gICAgICBAZWFjaCAkb3JpZW50IGluICh0b3AsIGNlbnRlciwgYm90dG9tKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xyXG4gICAgICAgICAgLiN7JHNpemV9LWFsaWduLSN7JG9yaWVudH0ge1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBtYXAtZ2V0KCRhbGlnbi12YWx1ZXMsICRvcmllbnQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gVmlzaWJpbGl0eVxyXG4gIC5oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC5pbnZpc2libGUgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cclxuXHJcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XHJcbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xyXG4gICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XHJcbiAgICAgICYjeyRibG9jay1zZWxlY3Rvcn0geyBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSwgZmxleCk7IH1cclxuICAgIH1cclxuXHJcbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xyXG4gICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XHJcbiAgICAgICYjeyRibG9jay1zZWxlY3Rvcn0geyBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSwgZmxleCk7IH1cclxuICAgIH1cclxuXHJcbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XHJcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xyXG4gICAgICAmI3skYmxvY2stc2VsZWN0b3J9IHsgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSwgZmxleCk7IH1cclxuICAgIH1cclxuXHJcbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XHJcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xyXG4gICAgICAmI3skYmxvY2stc2VsZWN0b3J9IHsgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSwgZmxleCk7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBlYWNoICRvcmllbnRhdGlvbiBpbiAocG9ydHJhaXQsIGxhbmRzY2FwZSkge1xyXG4gICAgLmhpZGUtZm9yLSN7JG9yaWVudGF0aW9ufSB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG9yaWVudGF0aW9uKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICYjeyRibG9jay1zZWxlY3Rvcn0geyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaG93LWZvci0jeyRvcmllbnRhdGlvbn0ge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRvcmllbnRhdGlvbikge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJiN7JGJsb2NrLXNlbGVjdG9yfSB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgVGV4dCBhbGlnbm1lbnRcclxuICAqL1xyXG4gIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xyXG4gICAgLnRleHQtI3skYWxpZ259IHtcclxuICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xyXG4gICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcclxuICAgICAgICAuI3skc2l6ZX0tb25seS10ZXh0LSN7JGFsaWdufSB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgRmxvYXRpbmdcclxuICAqL1xyXG4gIC5jbGVhcmZpeCB7IEBpbmNsdWRlIGNsZWFyZml4OyB9XHJcblxyXG4gIEBlYWNoICRmbG9hdCBpbiAobGVmdCwgcmlnaHQsIG5vbmUpIHtcclxuICAgIC5mbG9hdC0jeyRmbG9hdH0ge1xyXG4gICAgICBmbG9hdDogI3skZmxvYXR9O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBBcHBzXG4vL1xuLy8gTWl4aW5zXG4vLyAtLS0tLS1cbi8vIFRoZSBmcmFtZXdvcmsgY29tZXMgd2l0aCBhIG51bWJlciBvZiBtaXhpbnMgdGhhdCBoZWxwIHlvdSBlYXNpbHkgY3JlYXRlIGNvbW1vbiBzbWFsbCBjb21wb25lbnRzLFxuLy8gbGlrZSB0cmlhbmdsZXMgYW5kIG1lbnUgaWNvbnMuXG5cbi8vLyBDU1MgVHJpYW5nbGVcbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBwb3B1cCB0YWlscywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge2NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtrZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoJHRyaWFuZ2xlLXNpemUsICR0cmlhbmdsZS1jb2xvciwgJHRyaWFuZ2xlLWRpcmVjdGlvbikge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHRvcCkge1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBib3R0b20pIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLy8gSGFtYnVyZ2VyXG4vLy8gQ3JlYXRlcyBhIHRocmVlLWxpbmUgbWVudSBpY29uLCBhZmZlY3Rpb25hdGVseSByZWZlcnJlZCB0byBhcyB0aGUgXCJoYW1idXJnZXIgaWNvblwiLlxuLy8vXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBpY29uLCBpbiByZW0gdW5pdHMuXG4vLy8gQHBhcmFtIHtudW1iZXJ8Ym9vbGVhbn0gJGxlZnQgLSBMZWZ0IG9mZnNldCBvZiB0aGUgaWNvbi4gU2V0IHRvIGBmYWxzZWAgdG8gY2VudGVyIHRoZSBpY29uIGhvcml6b250YWxseS5cbi8vLyBAcGFyYW0ge251bWJlcnxib29sZWFufSAkdG9wIC0gVG9wIG9mZnNldCBvZiB0aGUgaWNvbi4gU2V0IHRvIGBmYWxzZWAgdG8gY2VudGVyIHRoZSBpY29uIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0aGlja25lc3MgLSBIZWlnaHQgb2YgZWFjaCBsaW5lIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkZ2FwIC0gQW1vdW50IG9mIHNwYWNlIGJldHdlZW4gZWFjaCBsaW5lLlxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBsaW5lcy5cbi8vLyBAcGFyYW0ge2NvbG9yfSAkaG92ZXItY29sb3IgLSBDb2xvciBvZiB0aGUgbGluZXMgb24gaG92ZXIuXG5AbWl4aW4gaGFtYnVyZ2VyKCR3aWR0aCwgJGxlZnQsICR0b3AsICR0aGlja25lc3MsICRnYXAsICRjb2xvciwgJGhvdmVyLWNvbG9yLCAkb2ZmY2FudmFzKSB7XG4gIHNwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICBAaWYgJG9mZmNhbnZhcyB7XG4gICAgICBAaWYgJHRvcCB7XG4gICAgICAgIHRvcDogJHRvcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kd2lkdGgvMjtcbiAgICAgIH1cbiAgICAgIEBpZiAkbGVmdCB7XG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiAoJHRhYmJhci1tZW51LWljb24td2lkdGggLSAkd2lkdGgpLzI7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLSR3aWR0aC8yO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMHB4IDAgJHRoaWNrbmVzcyAkY29sb3IsXG4gICAgICAwICRnYXAgKyAkdGhpY2tuZXNzIDAgJHRoaWNrbmVzcyAkY29sb3IsXG4gICAgICAwICgyICogJGdhcCArIDIqJHRoaWNrbmVzcykgMCAkdGhpY2tuZXNzICRjb2xvcjtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG4gIHNwYW46aG92ZXI6YWZ0ZXIge1xuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDBweCAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAkZ2FwICsgJHRoaWNrbmVzcyAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLy8vIENsZWFyZml4XG4vLy8gVXNlcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy9cbi8vLyBAc2VlIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuQG1peGluIGNsZWFyZml4IHtcbiAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBjb250ZW50OiBcIiBcIjsgZGlzcGxheTogdGFibGU7IH1cbiAgJjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG59XG5cbi8vLyBJbnZpc2libGUgRWxlbWVudFxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgYWNjZXNzaWJsZS5cbi8vL1xuLy8vIEBzZWUgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG59XG5cbi8vLyBJbnZpc2libGUgRWxlbWVudCBPZmZcbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbiR0ZXh0LWlucHV0LXNlbGVjdG9yczogJ2lucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBpbnB1dFt0eXBlPVwid2Vla1wiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwidGltZVwiXSwgaW5wdXRbdHlwZT1cInVybFwiXSwgaW5wdXRbdHlwZT1cImNvbG9yXCJdLCB0ZXh0YXJlYSc7XG4iLCIvKiBcbiAqIEZvdW5kYXRpb24gSWNvbnMgdiAzLjBcbiAqIE1hZGUgYnkgWlVSQiAyMDEzIGh0dHA6Ly96dXJiLmNvbS9wbGF5Z3JvdW5kL2ZvdW5kYXRpb24taWNvbi1mb250cy0zXG4gKiBNSVQgTGljZW5zZVxuICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJmb3VuZGF0aW9uLWljb25zXCI7XG4gIHNyYzogdXJsKFwiL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1pY29ucy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4uZmktYWRkcmVzcy1ib29rOmJlZm9yZSxcbi5maS1hbGVydDpiZWZvcmUsXG4uZmktYWxpZ24tY2VudGVyOmJlZm9yZSxcbi5maS1hbGlnbi1qdXN0aWZ5OmJlZm9yZSxcbi5maS1hbGlnbi1sZWZ0OmJlZm9yZSxcbi5maS1hbGlnbi1yaWdodDpiZWZvcmUsXG4uZmktYW5jaG9yOmJlZm9yZSxcbi5maS1hbm5vdGF0ZTpiZWZvcmUsXG4uZmktYXJjaGl2ZTpiZWZvcmUsXG4uZmktYXJyb3ctZG93bjpiZWZvcmUsXG4uZmktYXJyb3ctbGVmdDpiZWZvcmUsXG4uZmktYXJyb3ctcmlnaHQ6YmVmb3JlLFxuLmZpLWFycm93LXVwOmJlZm9yZSxcbi5maS1hcnJvd3MtY29tcHJlc3M6YmVmb3JlLFxuLmZpLWFycm93cy1leHBhbmQ6YmVmb3JlLFxuLmZpLWFycm93cy1pbjpiZWZvcmUsXG4uZmktYXJyb3dzLW91dDpiZWZvcmUsXG4uZmktYXNsOmJlZm9yZSxcbi5maS1hc3RlcmlzazpiZWZvcmUsXG4uZmktYXQtc2lnbjpiZWZvcmUsXG4uZmktYmFja2dyb3VuZC1jb2xvcjpiZWZvcmUsXG4uZmktYmF0dGVyeS1lbXB0eTpiZWZvcmUsXG4uZmktYmF0dGVyeS1mdWxsOmJlZm9yZSxcbi5maS1iYXR0ZXJ5LWhhbGY6YmVmb3JlLFxuLmZpLWJpdGNvaW4tY2lyY2xlOmJlZm9yZSxcbi5maS1iaXRjb2luOmJlZm9yZSxcbi5maS1ibGluZDpiZWZvcmUsXG4uZmktYmx1ZXRvb3RoOmJlZm9yZSxcbi5maS1ib2xkOmJlZm9yZSxcbi5maS1ib29rLWJvb2ttYXJrOmJlZm9yZSxcbi5maS1ib29rOmJlZm9yZSxcbi5maS1ib29rbWFyazpiZWZvcmUsXG4uZmktYnJhaWxsZTpiZWZvcmUsXG4uZmktYnVyc3QtbmV3OmJlZm9yZSxcbi5maS1idXJzdC1zYWxlOmJlZm9yZSxcbi5maS1idXJzdDpiZWZvcmUsXG4uZmktY2FsZW5kYXI6YmVmb3JlLFxuLmZpLWNhbWVyYTpiZWZvcmUsXG4uZmktY2hlY2s6YmVmb3JlLFxuLmZpLWNoZWNrYm94OmJlZm9yZSxcbi5maS1jbGlwYm9hcmQtbm90ZXM6YmVmb3JlLFxuLmZpLWNsaXBib2FyZC1wZW5jaWw6YmVmb3JlLFxuLmZpLWNsaXBib2FyZDpiZWZvcmUsXG4uZmktY2xvY2s6YmVmb3JlLFxuLmZpLWNsb3NlZC1jYXB0aW9uOmJlZm9yZSxcbi5maS1jbG91ZDpiZWZvcmUsXG4uZmktY29tbWVudC1taW51czpiZWZvcmUsXG4uZmktY29tbWVudC1xdW90ZXM6YmVmb3JlLFxuLmZpLWNvbW1lbnQtdmlkZW86YmVmb3JlLFxuLmZpLWNvbW1lbnQ6YmVmb3JlLFxuLmZpLWNvbW1lbnRzOmJlZm9yZSxcbi5maS1jb21wYXNzOmJlZm9yZSxcbi5maS1jb250cmFzdDpiZWZvcmUsXG4uZmktY3JlZGl0LWNhcmQ6YmVmb3JlLFxuLmZpLWNyb3A6YmVmb3JlLFxuLmZpLWNyb3duOmJlZm9yZSxcbi5maS1jc3MzOmJlZm9yZSxcbi5maS1kYXRhYmFzZTpiZWZvcmUsXG4uZmktZGllLWZpdmU6YmVmb3JlLFxuLmZpLWRpZS1mb3VyOmJlZm9yZSxcbi5maS1kaWUtb25lOmJlZm9yZSxcbi5maS1kaWUtc2l4OmJlZm9yZSxcbi5maS1kaWUtdGhyZWU6YmVmb3JlLFxuLmZpLWRpZS10d286YmVmb3JlLFxuLmZpLWRpc2xpa2U6YmVmb3JlLFxuLmZpLWRvbGxhci1iaWxsOmJlZm9yZSxcbi5maS1kb2xsYXI6YmVmb3JlLFxuLmZpLWRvd25sb2FkOmJlZm9yZSxcbi5maS1lamVjdDpiZWZvcmUsXG4uZmktZWxldmF0b3I6YmVmb3JlLFxuLmZpLWV1cm86YmVmb3JlLFxuLmZpLWV5ZTpiZWZvcmUsXG4uZmktZmFzdC1mb3J3YXJkOmJlZm9yZSxcbi5maS1mZW1hbGUtc3ltYm9sOmJlZm9yZSxcbi5maS1mZW1hbGU6YmVmb3JlLFxuLmZpLWZpbHRlcjpiZWZvcmUsXG4uZmktZmlyc3QtYWlkOmJlZm9yZSxcbi5maS1mbGFnOmJlZm9yZSxcbi5maS1mb2xkZXItYWRkOmJlZm9yZSxcbi5maS1mb2xkZXItbG9jazpiZWZvcmUsXG4uZmktZm9sZGVyOmJlZm9yZSxcbi5maS1mb290OmJlZm9yZSxcbi5maS1mb3VuZGF0aW9uOmJlZm9yZSxcbi5maS1ncmFwaC1iYXI6YmVmb3JlLFxuLmZpLWdyYXBoLWhvcml6b250YWw6YmVmb3JlLFxuLmZpLWdyYXBoLXBpZTpiZWZvcmUsXG4uZmktZ3JhcGgtdHJlbmQ6YmVmb3JlLFxuLmZpLWd1aWRlLWRvZzpiZWZvcmUsXG4uZmktaGVhcmluZy1haWQ6YmVmb3JlLFxuLmZpLWhlYXJ0OmJlZm9yZSxcbi5maS1ob21lOmJlZm9yZSxcbi5maS1odG1sNTpiZWZvcmUsXG4uZmktaW5kZW50LWxlc3M6YmVmb3JlLFxuLmZpLWluZGVudC1tb3JlOmJlZm9yZSxcbi5maS1pbmZvOmJlZm9yZSxcbi5maS1pdGFsaWM6YmVmb3JlLFxuLmZpLWtleTpiZWZvcmUsXG4uZmktbGFwdG9wOmJlZm9yZSxcbi5maS1sYXlvdXQ6YmVmb3JlLFxuLmZpLWxpZ2h0YnVsYjpiZWZvcmUsXG4uZmktbGlrZTpiZWZvcmUsXG4uZmktbGluazpiZWZvcmUsXG4uZmktbGlzdC1idWxsZXQ6YmVmb3JlLFxuLmZpLWxpc3QtbnVtYmVyOmJlZm9yZSxcbi5maS1saXN0LXRodW1ibmFpbHM6YmVmb3JlLFxuLmZpLWxpc3Q6YmVmb3JlLFxuLmZpLWxvY2s6YmVmb3JlLFxuLmZpLWxvb3A6YmVmb3JlLFxuLmZpLW1hZ25pZnlpbmctZ2xhc3M6YmVmb3JlLFxuLmZpLW1haWw6YmVmb3JlLFxuLmZpLW1hbGUtZmVtYWxlOmJlZm9yZSxcbi5maS1tYWxlLXN5bWJvbDpiZWZvcmUsXG4uZmktbWFsZTpiZWZvcmUsXG4uZmktbWFwOmJlZm9yZSxcbi5maS1tYXJrZXI6YmVmb3JlLFxuLmZpLW1lZ2FwaG9uZTpiZWZvcmUsXG4uZmktbWljcm9waG9uZTpiZWZvcmUsXG4uZmktbWludXMtY2lyY2xlOmJlZm9yZSxcbi5maS1taW51czpiZWZvcmUsXG4uZmktbW9iaWxlLXNpZ25hbDpiZWZvcmUsXG4uZmktbW9iaWxlOmJlZm9yZSxcbi5maS1tb25pdG9yOmJlZm9yZSxcbi5maS1tb3VudGFpbnM6YmVmb3JlLFxuLmZpLW11c2ljOmJlZm9yZSxcbi5maS1uZXh0OmJlZm9yZSxcbi5maS1uby1kb2dzOmJlZm9yZSxcbi5maS1uby1zbW9raW5nOmJlZm9yZSxcbi5maS1wYWdlLWFkZDpiZWZvcmUsXG4uZmktcGFnZS1jb3B5OmJlZm9yZSxcbi5maS1wYWdlLWNzdjpiZWZvcmUsXG4uZmktcGFnZS1kZWxldGU6YmVmb3JlLFxuLmZpLXBhZ2UtZG9jOmJlZm9yZSxcbi5maS1wYWdlLWVkaXQ6YmVmb3JlLFxuLmZpLXBhZ2UtZXhwb3J0LWNzdjpiZWZvcmUsXG4uZmktcGFnZS1leHBvcnQtZG9jOmJlZm9yZSxcbi5maS1wYWdlLWV4cG9ydC1wZGY6YmVmb3JlLFxuLmZpLXBhZ2UtZXhwb3J0OmJlZm9yZSxcbi5maS1wYWdlLWZpbGxlZDpiZWZvcmUsXG4uZmktcGFnZS1tdWx0aXBsZTpiZWZvcmUsXG4uZmktcGFnZS1wZGY6YmVmb3JlLFxuLmZpLXBhZ2UtcmVtb3ZlOmJlZm9yZSxcbi5maS1wYWdlLXNlYXJjaDpiZWZvcmUsXG4uZmktcGFnZTpiZWZvcmUsXG4uZmktcGFpbnQtYnVja2V0OmJlZm9yZSxcbi5maS1wYXBlcmNsaXA6YmVmb3JlLFxuLmZpLXBhdXNlOmJlZm9yZSxcbi5maS1wYXc6YmVmb3JlLFxuLmZpLXBheXBhbDpiZWZvcmUsXG4uZmktcGVuY2lsOmJlZm9yZSxcbi5maS1waG90bzpiZWZvcmUsXG4uZmktcGxheS1jaXJjbGU6YmVmb3JlLFxuLmZpLXBsYXktdmlkZW86YmVmb3JlLFxuLmZpLXBsYXk6YmVmb3JlLFxuLmZpLXBsdXM6YmVmb3JlLFxuLmZpLXBvdW5kOmJlZm9yZSxcbi5maS1wb3dlcjpiZWZvcmUsXG4uZmktcHJldmlvdXM6YmVmb3JlLFxuLmZpLXByaWNlLXRhZzpiZWZvcmUsXG4uZmktcHJpY2V0YWctbXVsdGlwbGU6YmVmb3JlLFxuLmZpLXByaW50OmJlZm9yZSxcbi5maS1wcm9oaWJpdGVkOmJlZm9yZSxcbi5maS1wcm9qZWN0aW9uLXNjcmVlbjpiZWZvcmUsXG4uZmktcHV6emxlOmJlZm9yZSxcbi5maS1xdW90ZTpiZWZvcmUsXG4uZmktcmVjb3JkOmJlZm9yZSxcbi5maS1yZWZyZXNoOmJlZm9yZSxcbi5maS1yZXN1bHRzLWRlbW9ncmFwaGljczpiZWZvcmUsXG4uZmktcmVzdWx0czpiZWZvcmUsXG4uZmktcmV3aW5kLXRlbjpiZWZvcmUsXG4uZmktcmV3aW5kOmJlZm9yZSxcbi5maS1yc3M6YmVmb3JlLFxuLmZpLXNhZmV0eS1jb25lOmJlZm9yZSxcbi5maS1zYXZlOmJlZm9yZSxcbi5maS1zaGFyZTpiZWZvcmUsXG4uZmktc2hlcmlmZi1iYWRnZTpiZWZvcmUsXG4uZmktc2hpZWxkOmJlZm9yZSxcbi5maS1zaG9wcGluZy1iYWc6YmVmb3JlLFxuLmZpLXNob3BwaW5nLWNhcnQ6YmVmb3JlLFxuLmZpLXNodWZmbGU6YmVmb3JlLFxuLmZpLXNrdWxsOmJlZm9yZSxcbi5maS1zb2NpYWwtNTAwcHg6YmVmb3JlLFxuLmZpLXNvY2lhbC1hZG9iZTpiZWZvcmUsXG4uZmktc29jaWFsLWFtYXpvbjpiZWZvcmUsXG4uZmktc29jaWFsLWFuZHJvaWQ6YmVmb3JlLFxuLmZpLXNvY2lhbC1hcHBsZTpiZWZvcmUsXG4uZmktc29jaWFsLWJlaGFuY2U6YmVmb3JlLFxuLmZpLXNvY2lhbC1iaW5nOmJlZm9yZSxcbi5maS1zb2NpYWwtYmxvZ2dlcjpiZWZvcmUsXG4uZmktc29jaWFsLWRlbGljaW91czpiZWZvcmUsXG4uZmktc29jaWFsLWRlc2lnbmVyLW5ld3M6YmVmb3JlLFxuLmZpLXNvY2lhbC1kZXZpYW50LWFydDpiZWZvcmUsXG4uZmktc29jaWFsLWRpZ2c6YmVmb3JlLFxuLmZpLXNvY2lhbC1kcmliYmJsZTpiZWZvcmUsXG4uZmktc29jaWFsLWRyaXZlOmJlZm9yZSxcbi5maS1zb2NpYWwtZHJvcGJveDpiZWZvcmUsXG4uZmktc29jaWFsLWV2ZXJub3RlOmJlZm9yZSxcbi5maS1zb2NpYWwtZmFjZWJvb2s6YmVmb3JlLFxuLmZpLXNvY2lhbC1mbGlja3I6YmVmb3JlLFxuLmZpLXNvY2lhbC1mb3Jyc3Q6YmVmb3JlLFxuLmZpLXNvY2lhbC1mb3Vyc3F1YXJlOmJlZm9yZSxcbi5maS1zb2NpYWwtZ2FtZS1jZW50ZXI6YmVmb3JlLFxuLmZpLXNvY2lhbC1naXRodWI6YmVmb3JlLFxuLmZpLXNvY2lhbC1nb29nbGUtcGx1czpiZWZvcmUsXG4uZmktc29jaWFsLWhhY2tlci1uZXdzOmJlZm9yZSxcbi5maS1zb2NpYWwtaGk1OmJlZm9yZSxcbi5maS1zb2NpYWwtaW5zdGFncmFtOmJlZm9yZSxcbi5maS1zb2NpYWwtam9vbWxhOmJlZm9yZSxcbi5maS1zb2NpYWwtbGFzdGZtOmJlZm9yZSxcbi5maS1zb2NpYWwtbGlua2VkaW46YmVmb3JlLFxuLmZpLXNvY2lhbC1tZWRpdW06YmVmb3JlLFxuLmZpLXNvY2lhbC1teXNwYWNlOmJlZm9yZSxcbi5maS1zb2NpYWwtb3JrdXQ6YmVmb3JlLFxuLmZpLXNvY2lhbC1wYXRoOmJlZm9yZSxcbi5maS1zb2NpYWwtcGljYXNhOmJlZm9yZSxcbi5maS1zb2NpYWwtcGludGVyZXN0OmJlZm9yZSxcbi5maS1zb2NpYWwtcmRpbzpiZWZvcmUsXG4uZmktc29jaWFsLXJlZGRpdDpiZWZvcmUsXG4uZmktc29jaWFsLXNraWxsc2hhcmU6YmVmb3JlLFxuLmZpLXNvY2lhbC1za3lwZTpiZWZvcmUsXG4uZmktc29jaWFsLXNtYXNoaW5nLW1hZzpiZWZvcmUsXG4uZmktc29jaWFsLXNuYXBjaGF0OmJlZm9yZSxcbi5maS1zb2NpYWwtc3BvdGlmeTpiZWZvcmUsXG4uZmktc29jaWFsLXNxdWlkb286YmVmb3JlLFxuLmZpLXNvY2lhbC1zdGFjay1vdmVyZmxvdzpiZWZvcmUsXG4uZmktc29jaWFsLXN0ZWFtOmJlZm9yZSxcbi5maS1zb2NpYWwtc3R1bWJsZXVwb246YmVmb3JlLFxuLmZpLXNvY2lhbC10cmVlaG91c2U6YmVmb3JlLFxuLmZpLXNvY2lhbC10dW1ibHI6YmVmb3JlLFxuLmZpLXNvY2lhbC10d2l0dGVyOmJlZm9yZSxcbi5maS1zb2NpYWwtdmltZW86YmVmb3JlLFxuLmZpLXNvY2lhbC13aW5kb3dzOmJlZm9yZSxcbi5maS1zb2NpYWwteGJveDpiZWZvcmUsXG4uZmktc29jaWFsLXlhaG9vOmJlZm9yZSxcbi5maS1zb2NpYWwteWVscDpiZWZvcmUsXG4uZmktc29jaWFsLXlvdXR1YmU6YmVmb3JlLFxuLmZpLXNvY2lhbC16ZXJwbHk6YmVmb3JlLFxuLmZpLXNvY2lhbC16dXJiOmJlZm9yZSxcbi5maS1zb3VuZDpiZWZvcmUsXG4uZmktc3RhcjpiZWZvcmUsXG4uZmktc3RvcDpiZWZvcmUsXG4uZmktc3RyaWtldGhyb3VnaDpiZWZvcmUsXG4uZmktc3Vic2NyaXB0OmJlZm9yZSxcbi5maS1zdXBlcnNjcmlwdDpiZWZvcmUsXG4uZmktdGFibGV0LWxhbmRzY2FwZTpiZWZvcmUsXG4uZmktdGFibGV0LXBvcnRyYWl0OmJlZm9yZSxcbi5maS10YXJnZXQtdHdvOmJlZm9yZSxcbi5maS10YXJnZXQ6YmVmb3JlLFxuLmZpLXRlbGVwaG9uZS1hY2Nlc3NpYmxlOmJlZm9yZSxcbi5maS10ZWxlcGhvbmU6YmVmb3JlLFxuLmZpLXRleHQtY29sb3I6YmVmb3JlLFxuLmZpLXRodW1ibmFpbHM6YmVmb3JlLFxuLmZpLXRpY2tldDpiZWZvcmUsXG4uZmktdG9yc28tYnVzaW5lc3M6YmVmb3JlLFxuLmZpLXRvcnNvLWZlbWFsZTpiZWZvcmUsXG4uZmktdG9yc286YmVmb3JlLFxuLmZpLXRvcnNvcy1hbGwtZmVtYWxlOmJlZm9yZSxcbi5maS10b3Jzb3MtYWxsOmJlZm9yZSxcbi5maS10b3Jzb3MtZmVtYWxlLW1hbGU6YmVmb3JlLFxuLmZpLXRvcnNvcy1tYWxlLWZlbWFsZTpiZWZvcmUsXG4uZmktdG9yc29zOmJlZm9yZSxcbi5maS10cmFzaDpiZWZvcmUsXG4uZmktdHJlZXM6YmVmb3JlLFxuLmZpLXRyb3BoeTpiZWZvcmUsXG4uZmktdW5kZXJsaW5lOmJlZm9yZSxcbi5maS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSxcbi5maS11bmxpbms6YmVmb3JlLFxuLmZpLXVubG9jazpiZWZvcmUsXG4uZmktdXBsb2FkLWNsb3VkOmJlZm9yZSxcbi5maS11cGxvYWQ6YmVmb3JlLFxuLmZpLXVzYjpiZWZvcmUsXG4uZmktdmlkZW86YmVmb3JlLFxuLmZpLXZvbHVtZS1ub25lOmJlZm9yZSxcbi5maS12b2x1bWUtc3RyaWtlOmJlZm9yZSxcbi5maS12b2x1bWU6YmVmb3JlLFxuLmZpLXdlYjpiZWZvcmUsXG4uZmktd2hlZWxjaGFpcjpiZWZvcmUsXG4uZmktd2lkZ2V0OmJlZm9yZSxcbi5maS13cmVuY2g6YmVmb3JlLFxuLmZpLXgtY2lyY2xlOmJlZm9yZSxcbi5maS14OmJlZm9yZSxcbi5maS15ZW46YmVmb3JlLFxuLmZpLXpvb20taW46YmVmb3JlLFxuLmZpLXpvb20tb3V0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZvdW5kYXRpb24taWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG59XG5cbi5maS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDBcIjsgfVxuLmZpLWFsZXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAxXCI7IH1cbi5maS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDJcIjsgfVxuLmZpLWFsaWduLWp1c3RpZnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDNcIjsgfVxuLmZpLWFsaWduLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDRcIjsgfVxuLmZpLWFsaWduLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA1XCI7IH1cbi5maS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDZcIjsgfVxuLmZpLWFubm90YXRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA3XCI7IH1cbi5maS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA4XCI7IH1cbi5maS1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA5XCI7IH1cbi5maS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBhXCI7IH1cbi5maS1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwYlwiOyB9XG4uZmktYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGNcIjsgfVxuLmZpLWFycm93cy1jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwZFwiOyB9XG4uZmktYXJyb3dzLWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwZVwiOyB9XG4uZmktYXJyb3dzLWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBmXCI7IH1cbi5maS1hcnJvd3Mtb3V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTEwXCI7IH1cbi5maS1hc2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTFcIjsgfVxuLmZpLWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTEyXCI7IH1cbi5maS1hdC1zaWduOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTEzXCI7IH1cbi5maS1iYWNrZ3JvdW5kLWNvbG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE0XCI7IH1cbi5maS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE1XCI7IH1cbi5maS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTZcIjsgfVxuLmZpLWJhdHRlcnktaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExN1wiOyB9XG4uZmktYml0Y29pbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMThcIjsgfVxuLmZpLWJpdGNvaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTlcIjsgfVxuLmZpLWJsaW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFhXCI7IH1cbi5maS1ibHVldG9vdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWJcIjsgfVxuLmZpLWJvbGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWNcIjsgfVxuLmZpLWJvb2stYm9va21hcms6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWRcIjsgfVxuLmZpLWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWVcIjsgfVxuLmZpLWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFmXCI7IH1cbi5maS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIwXCI7IH1cbi5maS1idXJzdC1uZXc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjFcIjsgfVxuLmZpLWJ1cnN0LXNhbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjJcIjsgfVxuLmZpLWJ1cnN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIzXCI7IH1cbi5maS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyNFwiOyB9XG4uZmktY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI1XCI7IH1cbi5maS1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyNlwiOyB9XG4uZmktY2hlY2tib3g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjdcIjsgfVxuLmZpLWNsaXBib2FyZC1ub3RlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyOFwiOyB9XG4uZmktY2xpcGJvYXJkLXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyOVwiOyB9XG4uZmktY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJhXCI7IH1cbi5maS1jbG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyYlwiOyB9XG4uZmktY2xvc2VkLWNhcHRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmNcIjsgfVxuLmZpLWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJkXCI7IH1cbi5maS1jb21tZW50LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJlXCI7IH1cbi5maS1jb21tZW50LXF1b3RlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyZlwiOyB9XG4uZmktY29tbWVudC12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzMFwiOyB9XG4uZmktY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzMVwiOyB9XG4uZmktY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzJcIjsgfVxuLmZpLWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzNcIjsgfVxuLmZpLWNvbnRyYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM0XCI7IH1cbi5maS1jcmVkaXQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzNVwiOyB9XG4uZmktY3JvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzNlwiOyB9XG4uZmktY3Jvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzdcIjsgfVxuLmZpLWNzczM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzhcIjsgfVxuLmZpLWRhdGFiYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM5XCI7IH1cbi5maS1kaWUtZml2ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzYVwiOyB9XG4uZmktZGllLWZvdXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2JcIjsgfVxuLmZpLWRpZS1vbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2NcIjsgfVxuLmZpLWRpZS1zaXg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2RcIjsgfVxuLmZpLWRpZS10aHJlZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzZVwiOyB9XG4uZmktZGllLXR3bzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzZlwiOyB9XG4uZmktZGlzbGlrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0MFwiOyB9XG4uZmktZG9sbGFyLWJpbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDFcIjsgfVxuLmZpLWRvbGxhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0MlwiOyB9XG4uZmktZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDNcIjsgfVxuLmZpLWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ0XCI7IH1cbi5maS1lbGV2YXRvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0NVwiOyB9XG4uZmktZXVybzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0NlwiOyB9XG4uZmktZXllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ3XCI7IH1cbi5maS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDhcIjsgfVxuLmZpLWZlbWFsZS1zeW1ib2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDlcIjsgfVxuLmZpLWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0YVwiOyB9XG4uZmktZmlsdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRiXCI7IH1cbi5maS1maXJzdC1haWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGNcIjsgfVxuLmZpLWZsYWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGRcIjsgfVxuLmZpLWZvbGRlci1hZGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNGVcIjsgfVxuLmZpLWZvbGRlci1sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRmXCI7IH1cbi5maS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTBcIjsgfVxuLmZpLWZvb3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTFcIjsgfVxuLmZpLWZvdW5kYXRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTJcIjsgfVxuLmZpLWdyYXBoLWJhcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1M1wiOyB9XG4uZmktZ3JhcGgtaG9yaXpvbnRhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1NFwiOyB9XG4uZmktZ3JhcGgtcGllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU1XCI7IH1cbi5maS1ncmFwaC10cmVuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1NlwiOyB9XG4uZmktZ3VpZGUtZG9nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU3XCI7IH1cbi5maS1oZWFyaW5nLWFpZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1OFwiOyB9XG4uZmktaGVhcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTlcIjsgfVxuLmZpLWhvbWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWFcIjsgfVxuLmZpLWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTViXCI7IH1cbi5maS1pbmRlbnQtbGVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1Y1wiOyB9XG4uZmktaW5kZW50LW1vcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWRcIjsgfVxuLmZpLWluZm86YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWVcIjsgfVxuLmZpLWl0YWxpYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1ZlwiOyB9XG4uZmkta2V5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYwXCI7IH1cbi5maS1sYXB0b3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjFcIjsgfVxuLmZpLWxheW91dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2MlwiOyB9XG4uZmktbGlnaHRidWxiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYzXCI7IH1cbi5maS1saWtlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY0XCI7IH1cbi5maS1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY1XCI7IH1cbi5maS1saXN0LWJ1bGxldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2NlwiOyB9XG4uZmktbGlzdC1udW1iZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjdcIjsgfVxuLmZpLWxpc3QtdGh1bWJuYWlsczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2OFwiOyB9XG4uZmktbGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2OVwiOyB9XG4uZmktbG9jazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2YVwiOyB9XG4uZmktbG9vcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2YlwiOyB9XG4uZmktbWFnbmlmeWluZy1nbGFzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2Y1wiOyB9XG4uZmktbWFpbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2ZFwiOyB9XG4uZmktbWFsZS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmVcIjsgfVxuLmZpLW1hbGUtc3ltYm9sOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTZmXCI7IH1cbi5maS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTcwXCI7IH1cbi5maS1tYXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzFcIjsgfVxuLmZpLW1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3MlwiOyB9XG4uZmktbWVnYXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTczXCI7IH1cbi5maS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc0XCI7IH1cbi5maS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzVcIjsgfVxuLmZpLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc2XCI7IH1cbi5maS1tb2JpbGUtc2lnbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc3XCI7IH1cbi5maS1tb2JpbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzhcIjsgfVxuLmZpLW1vbml0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNzlcIjsgfVxuLmZpLW1vdW50YWluczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3YVwiOyB9XG4uZmktbXVzaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2JcIjsgfVxuLmZpLW5leHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2NcIjsgfVxuLmZpLW5vLWRvZ3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2RcIjsgfVxuLmZpLW5vLXNtb2tpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2VcIjsgfVxuLmZpLXBhZ2UtYWRkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdmXCI7IH1cbi5maS1wYWdlLWNvcHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODBcIjsgfVxuLmZpLXBhZ2UtY3N2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTgxXCI7IH1cbi5maS1wYWdlLWRlbGV0ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4MlwiOyB9XG4uZmktcGFnZS1kb2M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODNcIjsgfVxuLmZpLXBhZ2UtZWRpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4NFwiOyB9XG4uZmktcGFnZS1leHBvcnQtY3N2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg1XCI7IH1cbi5maS1wYWdlLWV4cG9ydC1kb2M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODZcIjsgfVxuLmZpLXBhZ2UtZXhwb3J0LXBkZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4N1wiOyB9XG4uZmktcGFnZS1leHBvcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODhcIjsgfVxuLmZpLXBhZ2UtZmlsbGVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg5XCI7IH1cbi5maS1wYWdlLW11bHRpcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThhXCI7IH1cbi5maS1wYWdlLXBkZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4YlwiOyB9XG4uZmktcGFnZS1yZW1vdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGNcIjsgfVxuLmZpLXBhZ2Utc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThkXCI7IH1cbi5maS1wYWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThlXCI7IH1cbi5maS1wYWludC1idWNrZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGZcIjsgfVxuLmZpLXBhcGVyY2xpcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5MFwiOyB9XG4uZmktcGF1c2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTFcIjsgfVxuLmZpLXBhdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5MlwiOyB9XG4uZmktcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTkzXCI7IH1cbi5maS1wZW5jaWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTRcIjsgfVxuLmZpLXBob3RvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTk1XCI7IH1cbi5maS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NlwiOyB9XG4uZmktcGxheS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5N1wiOyB9XG4uZmktcGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5OFwiOyB9XG4uZmktcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5OVwiOyB9XG4uZmktcG91bmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWFcIjsgfVxuLmZpLXBvd2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTliXCI7IH1cbi5maS1wcmV2aW91czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5Y1wiOyB9XG4uZmktcHJpY2UtdGFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTlkXCI7IH1cbi5maS1wcmljZXRhZy1tdWx0aXBsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5ZVwiOyB9XG4uZmktcHJpbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWZcIjsgfVxuLmZpLXByb2hpYml0ZWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTBcIjsgfVxuLmZpLXByb2plY3Rpb24tc2NyZWVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWExXCI7IH1cbi5maS1wdXp6bGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTJcIjsgfVxuLmZpLXF1b3RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWEzXCI7IH1cbi5maS1yZWNvcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTRcIjsgfVxuLmZpLXJlZnJlc2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTVcIjsgfVxuLmZpLXJlc3VsdHMtZGVtb2dyYXBoaWNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE2XCI7IH1cbi5maS1yZXN1bHRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE3XCI7IH1cbi5maS1yZXdpbmQtdGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE4XCI7IH1cbi5maS1yZXdpbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTlcIjsgfVxuLmZpLXJzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhYVwiOyB9XG4uZmktc2FmZXR5LWNvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWJcIjsgfVxuLmZpLXNhdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWNcIjsgfVxuLmZpLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFkXCI7IH1cbi5maS1zaGVyaWZmLWJhZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFlXCI7IH1cbi5maS1zaGllbGQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYWZcIjsgfVxuLmZpLXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiMFwiOyB9XG4uZmktc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiMVwiOyB9XG4uZmktc2h1ZmZsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiMlwiOyB9XG4uZmktc2t1bGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjNcIjsgfVxuLmZpLXNvY2lhbC01MDBweDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiNFwiOyB9XG4uZmktc29jaWFsLWFkb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI1XCI7IH1cbi5maS1zb2NpYWwtYW1hem9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI2XCI7IH1cbi5maS1zb2NpYWwtYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiN1wiOyB9XG4uZmktc29jaWFsLWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI4XCI7IH1cbi5maS1zb2NpYWwtYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiOVwiOyB9XG4uZmktc29jaWFsLWJpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmFcIjsgfVxuLmZpLXNvY2lhbC1ibG9nZ2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJiXCI7IH1cbi5maS1zb2NpYWwtZGVsaWNpb3VzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJjXCI7IH1cbi5maS1zb2NpYWwtZGVzaWduZXItbmV3czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiZFwiOyB9XG4uZmktc29jaWFsLWRldmlhbnQtYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJlXCI7IH1cbi5maS1zb2NpYWwtZGlnZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiZlwiOyB9XG4uZmktc29jaWFsLWRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMwXCI7IH1cbi5maS1zb2NpYWwtZHJpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzFcIjsgfVxuLmZpLXNvY2lhbC1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWMyXCI7IH1cbi5maS1zb2NpYWwtZXZlcm5vdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzNcIjsgfVxuLmZpLXNvY2lhbC1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjNFwiOyB9XG4uZmktc29jaWFsLWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjNVwiOyB9XG4uZmktc29jaWFsLWZvcnJzdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjNlwiOyB9XG4uZmktc29jaWFsLWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzdcIjsgfVxuLmZpLXNvY2lhbC1nYW1lLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjOFwiOyB9XG4uZmktc29jaWFsLWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjOVwiOyB9XG4uZmktc29jaWFsLWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNhXCI7IH1cbi5maS1zb2NpYWwtaGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2JcIjsgfVxuLmZpLXNvY2lhbC1oaTU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2NcIjsgfVxuLmZpLXNvY2lhbC1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2RcIjsgfVxuLmZpLXNvY2lhbC1qb29tbGE6YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2VcIjsgfVxuLmZpLXNvY2lhbC1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2ZcIjsgfVxuLmZpLXNvY2lhbC1saW5rZWRpbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkMFwiOyB9XG4uZmktc29jaWFsLW1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkMVwiOyB9XG4uZmktc29jaWFsLW15c3BhY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDJcIjsgfVxuLmZpLXNvY2lhbC1vcmt1dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkM1wiOyB9XG4uZmktc29jaWFsLXBhdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDRcIjsgfVxuLmZpLXNvY2lhbC1waWNhc2E6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDVcIjsgfVxuLmZpLXNvY2lhbC1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDZcIjsgfVxuLmZpLXNvY2lhbC1yZGlvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ3XCI7IH1cbi5maS1zb2NpYWwtcmVkZGl0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ4XCI7IH1cbi5maS1zb2NpYWwtc2tpbGxzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkOVwiOyB9XG4uZmktc29jaWFsLXNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRhXCI7IH1cbi5maS1zb2NpYWwtc21hc2hpbmctbWFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRiXCI7IH1cbi5maS1zb2NpYWwtc25hcGNoYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGNcIjsgfVxuLmZpLXNvY2lhbC1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRkXCI7IH1cbi5maS1zb2NpYWwtc3F1aWRvbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkZVwiOyB9XG4uZmktc29jaWFsLXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRmXCI7IH1cbi5maS1zb2NpYWwtc3RlYW06YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTBcIjsgfVxuLmZpLXNvY2lhbC1zdHVtYmxldXBvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlMVwiOyB9XG4uZmktc29jaWFsLXRyZWVob3VzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlMlwiOyB9XG4uZmktc29jaWFsLXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlM1wiOyB9XG4uZmktc29jaWFsLXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTRcIjsgfVxuLmZpLXNvY2lhbC12aW1lbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNVwiOyB9XG4uZmktc29jaWFsLXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTZcIjsgfVxuLmZpLXNvY2lhbC14Ym94OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU3XCI7IH1cbi5maS1zb2NpYWwteWFob286YmVmb3JlIHsgY29udGVudDogXCJcXGYxZThcIjsgfVxuLmZpLXNvY2lhbC15ZWxwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU5XCI7IH1cbi5maS1zb2NpYWwteW91dHViZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlYVwiOyB9XG4uZmktc29jaWFsLXplcnBseTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlYlwiOyB9XG4uZmktc29jaWFsLXp1cmI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWNcIjsgfVxuLmZpLXNvdW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVkXCI7IH1cbi5maS1zdGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVlXCI7IH1cbi5maS1zdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVmXCI7IH1cbi5maS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYwXCI7IH1cbi5maS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjFcIjsgfVxuLmZpLXN1cGVyc2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYyXCI7IH1cbi5maS10YWJsZXQtbGFuZHNjYXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYzXCI7IH1cbi5maS10YWJsZXQtcG9ydHJhaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjRcIjsgfVxuLmZpLXRhcmdldC10d286YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjVcIjsgfVxuLmZpLXRhcmdldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNlwiOyB9XG4uZmktdGVsZXBob25lLWFjY2Vzc2libGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjdcIjsgfVxuLmZpLXRlbGVwaG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmOFwiOyB9XG4uZmktdGV4dC1jb2xvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmOVwiOyB9XG4uZmktdGh1bWJuYWlsczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmYVwiOyB9XG4uZmktdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZiXCI7IH1cbi5maS10b3Jzby1idXNpbmVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmY1wiOyB9XG4uZmktdG9yc28tZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZkXCI7IH1cbi5maS10b3JzbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZVwiOyB9XG4uZmktdG9yc29zLWFsbC1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmZcIjsgfVxuLmZpLXRvcnNvcy1hbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDBcIjsgfVxuLmZpLXRvcnNvcy1mZW1hbGUtbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMVwiOyB9XG4uZmktdG9yc29zLW1hbGUtZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAyXCI7IH1cbi5maS10b3Jzb3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDNcIjsgfVxuLmZpLXRyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA0XCI7IH1cbi5maS10cmVlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwNVwiOyB9XG4uZmktdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA2XCI7IH1cbi5maS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDdcIjsgfVxuLmZpLXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDhcIjsgfVxuLmZpLXVubGluazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwOVwiOyB9XG4uZmktdW5sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBhXCI7IH1cbi5maS11cGxvYWQtY2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGJcIjsgfVxuLmZpLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwY1wiOyB9XG4uZmktdXNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBkXCI7IH1cbi5maS12aWRlbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwZVwiOyB9XG4uZmktdm9sdW1lLW5vbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGZcIjsgfVxuLmZpLXZvbHVtZS1zdHJpa2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTBcIjsgfVxuLmZpLXZvbHVtZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxMVwiOyB9XG4uZmktd2ViOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjEyXCI7IH1cbi5maS13aGVlbGNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjEzXCI7IH1cbi5maS13aWRnZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTRcIjsgfVxuLmZpLXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxNVwiOyB9XG4uZmkteC1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTZcIjsgfVxuLmZpLXg6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTdcIjsgfVxuLmZpLXllbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxOFwiOyB9XG4uZmktem9vbS1pbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxOVwiOyB9XG4uZmktem9vbS1vdXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMWFcIjsgfVxuIiwiLypcclxuICBUSVRMRSBCQVJcclxuICAtLS0tLS0tLS1cclxuXHJcbiAgQSBuYXZpZ2F0aW9uYWwgY29tcG9uZW50IHdoaWNoIGNhbiBkaXNwbGF5IHRoZSBjdXJyZW50IHNjcmVlbiB0aGUgdXNlciBpcyBvbiwgYWxvbmcgd2l0aCBhZGRpdGlvbmFsIGNvbnRyb2xzIG9yIG1lbnUgaXRlbXMuXHJcblxyXG4gIFRoZSB0aXRsZSBiYXIgaW5jbHVkZXMgY2xhc3NlcyB0byBjcmVhdGUgY2VudGVyLCBsZWZ0LCBhbmQgcmlnaHQgc2VjdGlvbnMsIHdoaWNoIGNhbiBiZSB1c2VkIGluIGFueSBjb21iaW5hdGlvbi4gSG93ZXZlciwgaW4gdGhlIG1hcmt1cCwgdGhlIHNlY3Rpb25zIG11c3QgY29tZSBpbiB0aGlzIG9yZGVyOlxyXG4gICAtIENlbnRlclxyXG4gICAtIExlZnRcclxuICAgLSBSaWdodFxyXG4qL1xyXG5cclxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIFRpdGxlIEJhclxyXG4kdGl0bGViYXItY2VudGVyLXdpZHRoOiA1MCUgIWRlZmF1bHQ7XHJcbiR0aXRsZWJhci1zaWRlLXdpZHRoOiAoMTAwJSAtICR0aXRsZWJhci1jZW50ZXItd2lkdGgpIC8gMiAhZGVmYXVsdDtcclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICNlZWUgIWRlZmF1bHQ7XHJcbiR0aXRsZWJhci1jb2xvcjogIzAwMCAhZGVmYXVsdDtcclxuJHRpdGxlYmFyLWJvcmRlcjogMXB4IHNvbGlkICNjY2MgIWRlZmF1bHQ7XHJcbiR0aXRsZWJhci1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbiR0aXRsZWJhci1pdGVtLWNsYXNzZXM6IChcclxuICBjZW50ZXI6ICdjZW50ZXInLFxyXG4gIGxlZnQ6ICdsZWZ0JyxcclxuICByaWdodDogJ3JpZ2h0JyxcclxuICB0aXRsZTogJ3RpdGxlJyxcclxuKSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4ldGl0bGUtYmFyIHtcclxuICAkY2VudGVyOiBtYXAtZ2V0KCR0aXRsZWJhci1pdGVtLWNsYXNzZXMsIGNlbnRlcik7XHJcbiAgJGxlZnQ6IG1hcC1nZXQoJHRpdGxlYmFyLWl0ZW0tY2xhc3NlcywgbGVmdCk7XHJcbiAgJHJpZ2h0OiBtYXAtZ2V0KCR0aXRsZWJhci1pdGVtLWNsYXNzZXMsIHJpZ2h0KTtcclxuICAkdGl0bGU6IG1hcC1nZXQoJHRpdGxlYmFyLWl0ZW0tY2xhc3NlcywgdGl0bGUpO1xyXG5cclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXg6IDAgMCBhdXRvO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAvLyBEZW5vdGVzIHRoZSB0aXRsZSBvZiB0aGUgYmFyXHJcbiAgLiN7JHRpdGxlfSB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcblxyXG4gIC8vIERlbm90ZXMgbGVmdCwgcmlnaHQsIGFuZCBjZW50ZXIgc2VjdGlvbnMgb2YgdGhlIGJhclxyXG4gIC4jeyRsZWZ0fSwgLiN7JGNlbnRlcn0sIC4jeyRyaWdodH0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcblxyXG4gICAgLy8gSWYgb25seSBvbmUgc2VjdGlvbiBpcyBpbiB1c2UsIHN0cmV0Y2ggaXQgYWxsIHRoZSB3YXkgb3V0XHJcbiAgICAmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBMZWZ0IGFsd2F5cyBjb21lcyBmaXJzdCwgdGhlbiBjZW50ZXIsIHRoZW4gcmlnaHRcclxuICAvLyBUaGUgbGVmdCBhbmQgcmlnaHQgc2VjdGlvbnMgaGF2ZSB0aGUgc2FtZSB3aWR0aFxyXG4gIC4jeyRsZWZ0fSB7XHJcbiAgICBvcmRlcjogMTtcclxuICAgIGZsZXg6IDAgMCAkdGl0bGViYXItc2lkZS13aWR0aDtcclxuICB9XHJcbiAgLiN7JGNlbnRlcn0ge1xyXG4gICAgb3JkZXI6IDI7XHJcbiAgICBmbGV4OiAwIDAgJHRpdGxlYmFyLWNlbnRlci13aWR0aDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLiN7JHJpZ2h0fSB7XHJcbiAgICBvcmRlcjogMztcclxuICAgIGZsZXg6IDAgMCAkdGl0bGViYXItc2lkZS13aWR0aDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLy8gSWYgb25seSBsZWZ0IGFuZCByaWdodCBhcmUgaW4gdXNlLCBzdHJldGNoIHRoZW0gYm90aCBvdXQgZXF1YWxseVxyXG4gIC4jeyRsZWZ0fTpmaXJzdC1jaGlsZCB7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuICB9XHJcbiAgLiN7JGxlZnR9OmZpcnN0LWNoaWxkICsgLiN7JHJpZ2h0fTpsYXN0LWNoaWxkIHtcclxuICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gSWYgb25seSBjZW50ZXIgYW5kIHJpZ2h0IGFyZSBpbiB1c2UsIHNoaWZ0IHRoZSBjZW50ZXIgc2VjdGlvbiBpbnRvIHRoZSByaWdodCBwb3NpdGlvblxyXG4gIC4jeyRjZW50ZXJ9OmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICR0aXRsZWJhci1zaWRlLXdpZHRoO1xyXG4gIH1cclxuICAvLyBJZiBvbmx5IGNlbnRlciBhbmQgbGVmdCBhcmUgaW4gdXNlLCBvdmVycmlkZSB0aGUgYWJvdmUgc3R5bGVcclxuICAuI3skY2VudGVyfSArIC4jeyRsZWZ0fSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0oJHRpdGxlYmFyLXNpZGUtd2lkdGgpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRpdGxlLWJhci1zdHlsZShcclxuICAkYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQsXHJcbiAgJGNvbG9yOiAkdGl0bGViYXItY29sb3IsXHJcbiAgJGJvcmRlcjogJHRpdGxlYmFyLWJvcmRlcixcclxuICAkcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmdcclxuKSB7XHJcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xyXG59XHJcblxyXG5AbWl4aW4gdGl0bGUtYmFyKFxyXG4gICRiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZCxcclxuICAkY29sb3I6ICR0aXRsZWJhci1jb2xvcixcclxuICAkYm9yZGVyOiAkdGl0bGViYXItYm9yZGVyLFxyXG4gICRwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZ1xyXG4pIHtcclxuICBAZXh0ZW5kICV0aXRsZS1iYXI7XHJcbiAgQGluY2x1ZGUgdGl0bGUtYmFyLXN0eWxlKCRiYWNrZ3JvdW5kLCAkY29sb3IsICRib3JkZXIsICRwYWRkaW5nKTtcclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyh0aXRsZS1iYXIpIHtcclxuICAudGl0bGUtYmFyIHtcclxuICAgIEBpbmNsdWRlIHRpdGxlLWJhcjtcclxuXHJcbiAgICAmLnByaW1hcnkge1xyXG4gICAgICBAaW5jbHVkZSB0aXRsZS1iYXItc3R5bGUoJHByaW1hcnktY29sb3IsIGlzaXRsaWdodCgkcHJpbWFyeS1jb2xvcikpO1xyXG4gICAgICBhLCBhOmhvdmVyIHsgY29sb3I6IGlzaXRsaWdodCgkcHJpbWFyeS1jb2xvcik7IH1cclxuICAgICAgQGlmIHVzaW5nKGljb25pYykgeyAuaWNvbmljIHsgQGluY2x1ZGUgY29sb3ItaWNvbihpc2l0bGlnaHQoJHByaW1hcnktY29sb3IpKTsgfSB9XHJcbiAgICB9XHJcbiAgICAmLmRhcmsge1xyXG4gICAgICBAaW5jbHVkZSB0aXRsZS1iYXItc3R5bGUoJGRhcmstY29sb3IsICNmZmYpO1xyXG4gICAgICBhLCBhOmhvdmVyIHsgY29sb3I6ICNmZmY7IH1cclxuICAgICAgQGlmIHVzaW5nKGljb25pYykgeyAuaWNvbmljIHsgQGluY2x1ZGUgY29sb3ItaWNvbigjZmZmKTsgfSB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICAgLnRpdGxlLWJhci1ib3R0b20ge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICBib3JkZXItdG9wOiAkdGl0bGViYXItYm9yZGVyO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIElDT05JQ1xyXG4vLyAtLS0tLS1cclxuLy9cclxuLy8gQSBzYW1wbGUgb2YgMjQgZmxleGlibGUsIGVhc2lseSBzY2hlbWFibGUgaWNvbnMgZnJvbSB0aGUgZm9sa3MgYXQgSWNvbmljLlxyXG4vLyBcclxuLy8gRmVhdHVyZXM6XHJcbi8vICAtIDI0IGljb25zXHJcbi8vICAtIEJ1aWx0LWluIGNvbG9yaW5nIGFuZCBzaXppbmcgY2xhc3Nlc1xyXG4vLyAgLSBDb2xvcmluZyBtaXhpblxyXG4vLyAgLSBBbmd1bGFyIHN1cHBvcnRcclxuXHJcbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xyXG4vLyBJY29uaWNcclxuJGljb25pYy1wcmltYXJ5LWZpbGw6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xyXG4kaWNvbmljLXByaW1hcnktc3Ryb2tlOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJGljb25pYy1hY2NlbnQtZmlsbDogJGljb25pYy1wcmltYXJ5LWZpbGwgIWRlZmF1bHQ7XHJcbiRpY29uaWMtYWNjZW50LXN0cm9rZTogJGljb25pYy1hY2NlbnQtZmlsbCAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4vLyBDb2xvcnMgdGhlIGZpbGwsIGFuZCBvcHRpb25hbGx5IHN0cm9rZSwgYWNjZW50IGZpbGwsIGFuZCBhY2NlbnQgc3Ryb2tlIG9mIGFuIEljb25pYyBpY29uLlxyXG5AbWl4aW4gY29sb3ItaWNvbihcclxuICAkZmlsbCxcclxuICAkc3Ryb2tlOiBudWxsLFxyXG4gICRmaWxsQWNjZW50OiBudWxsLFxyXG4gICRzdHJva2VBY2NlbnQ6IG51bGxcclxuKSB7XHJcbiAgKiB7XHJcbiAgICBmaWxsOiAkZmlsbDtcclxuXHJcbiAgICAvLyBVc2UgdGhlIGZpbGwgY29sb3IgaWYgbm8gc3Ryb2tlIGlzIHByb3ZpZGVkXHJcbiAgICBAaWYgaGFzdmFsdWUoJHN0cm9rZSkge1xyXG4gICAgICBzdHJva2U6ICRzdHJva2U7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIHN0cm9rZTogJGZpbGw7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pY29uaWMtcHJvcGVydHktYWNjZW50IHtcclxuICAgICAgLy8gVXNlIHRoZSBmaWxsIGNvbG9yIGlmIG5vIGFjY2VudCBpcyBwcm92aWRlZFxyXG4gICAgICBAaWYgaGFzdmFsdWUoJGZpbGxBY2NlbnQpIHtcclxuICAgICAgICBmaWxsOiAkZmlsbEFjY2VudDtcclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgZmlsbDogJGZpbGw7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFVzZSB0aGUgbm9ybWFsIHN0cm9rZSBjb2xvciBpZiBubyBhY2NlbnQgaXMgcHJvdmlkZWRcclxuICAgICAgQGlmIGhhc3ZhbHVlKCRzdHJva2VBY2NlbnQpIHtcclxuICAgICAgICBzdHJva2U6ICRzdHJva2VBY2NlbnQ7XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgIC8vIC4uLm9yIHVzZSB0aGUgZmlsbCBpZiBubyBub3JtYWwgc3Ryb2tlIGlzIHByb3ZpZGVkXHJcbiAgICAgICAgQGlmIGhhc3ZhbHVlKCRzdHJva2UpIHtcclxuICAgICAgICAgIHN0cm9rZTogJHN0cm9rZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgc3Ryb2tlOiAkZmlsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoaWNvbmljKSB7XHJcbiAgLmljb25pYyB7XHJcbiAgICB3aWR0aDogMXJlbTtcclxuICAgIGhlaWdodDogMXJlbTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gICAgYSA+ICYge1xyXG4gICAgICBAaW5jbHVkZSBjb2xvci1pY29uKCRwcmltYXJ5LWNvbG9yKTtcclxuICAgICAgbWFyZ2luLXRvcDogLTJweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmljb25pYyAqIHtcclxuICAgIGZpbGw6ICRpY29uaWMtcHJpbWFyeS1maWxsO1xyXG4gICAgc3Ryb2tlOiAkaWNvbmljLXByaW1hcnktc3Ryb2tlO1xyXG5cclxuICAgICYuaWNvbmljLXByb3BlcnR5LWFjY2VudCB7XHJcbiAgICAgIGZpbGw6ICRpY29uaWMtYWNjZW50LWZpbGw7XHJcbiAgICAgIHN0cm9rZTogJGljb25pYy1hY2NlbnQtc3Ryb2tlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGNvbG9yIGluIG1hcC1rZXlzKCRmb3VuZGF0aW9uLWNvbG9ycykge1xyXG4gICAgLmljb25pYy1jb2xvci0jeyRjb2xvcn0ge1xyXG4gICAgICBAaW5jbHVkZSBjb2xvci1pY29uKG1hcC1nZXQoJGZvdW5kYXRpb24tY29sb3JzLCAkY29sb3IpKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmljb25pYy1jb2xvci1zZWNvbmRhcnkge1xyXG4gICAgQGluY2x1ZGUgY29sb3ItaWNvbigkc2Vjb25kYXJ5LWNvbG9yKTtcclxuICB9XHJcbn1cclxuIiwiLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIEJ1dHRvblxyXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XHJcbiRidXR0b24tbWFyZ2luOiAwICRnbG9iYWwtcGFkZGluZyAkZ2xvYmFsLXBhZGRpbmcgMCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1zdHlsZTogc29saWQgIWRlZmF1bHQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1jb2xvcjogYXV0byAhZGVmYXVsdDtcclxuJGJ1dHRvbi1yYWRpdXM6IDAgIWRlZmF1bHQ7XHJcbiRidXR0b24tc2l6ZXM6IChcclxuICB0aW55OiAwLjcsXHJcbiAgc21hbGw6IDAuOCxcclxuICBtZWRpdW06IDEsXHJcbiAgbGFyZ2U6IDEuMyxcclxuKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1mb250LXNpemU6IDAuOXJlbSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjUgIWRlZmF1bHQ7XHJcbiRidXR0b24tdGFnLXNlbGVjdG9yOiBmYWxzZSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4lYnV0dG9uIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yNXMgZWFzZS1vdXQ7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcbiAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xyXG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XHJcbiAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcclxuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcclxuXHJcbiAgLy8gRHJvcGRvd24gYXJyb3dcclxuICAvLyBUT0RPOiBDaGFuZ2UgdG8gY2xhc3MgYW5kIG1peGluIGJlY2F1c2Ugbm93IHRoZSB0b2dnbGUgaXMgJ2ZhLW9wZW4nIHdoaWNoIGlzIHRvbyBnZW5lcmljXHJcbiAgLy8gJltkYXRhLXBvcHVwLXRvZ2dsZV0ge1xyXG4gIC8vICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC8vICAgcGFkZGluZy1yaWdodDogMmVtOyAvLyBQbGFjZWhvbGRlclxyXG5cclxuICAvLyAgICY6OmFmdGVyIHtcclxuICAvLyAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgYmxhY2ssIHRvcCk7XHJcbiAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAvLyAgICAgcmlnaHQ6IDAuN2VtO1xyXG4gIC8vICAgICB0b3A6IDUwJTtcclxuICAvLyAgICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tc2l6ZSgkc2l6ZTogbWVkaXVtLCAkZXhwYW5kOiBmYWxzZSkge1xyXG4gICRzaXplOiAkYnV0dG9uLWZvbnQtc2l6ZSAqIG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgJHNpemUpO1xyXG4gIGZvbnQtc2l6ZTogJHNpemU7XHJcblxyXG4gIEBpZiAkZXhwYW5kIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XHJcbiAgfVxyXG5cclxuICBAaWYgdXNpbmcoaWNvbmljKSB7XHJcbiAgICAuaWNvbmljIHtcclxuICAgICAgd2lkdGg6IDFlbTtcclxuICAgICAgaGVpZ2h0OiAxZW07XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMnB4OyAvLyBUaGUgaWNvbnMgYXJlIG9kZGx5IG1pc2FsaWduZWRcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcclxuICBAaWYgJGV4cGFuZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tc3R5bGUoXHJcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcclxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxyXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcclxuICAkc3R5bGU6ICRidXR0b24tc3R5bGUsXHJcbiAgJHJhZGl1czogJGJ1dHRvbi1yYWRpdXMsXHJcbiAgJGJ0bmdyb3VwOiBmYWxzZVxyXG4pe1xyXG4gIEBpZiAkc3R5bGUgPT0gaG9sbG93IHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XHJcblxyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6IDI1JSk7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6IDI1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIFNvbGlkIGlzIHRoZSBkZWZhdWx0XHJcbiAgQGVsc2Uge1xyXG4gICAgQGlmICRjb2xvciA9PSBhdXRvIHtcclxuICAgICAgJGNvbG9yOiBpc2l0bGlnaHQoJGJhY2tncm91bmQpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XHJcbiAgICAgIH1cclxuICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkYnRuZ3JvdXAge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICBib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMjUlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiB1c2luZyhpY29uaWMpIHtcclxuICAgIEBpZiAkc3R5bGUgPT0gaG9sbG93IHtcclxuICAgICAgLmljb25pYyB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29sb3ItaWNvbigkYmFja2dyb3VuZCk7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciAuaWNvbmljIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2xvci1pY29uKHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAyNSUpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAuaWNvbmljIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2xvci1pY29uKCRjb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoKSB7XHJcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuQG1peGluIGJ1dHRvbihcclxuICAkc2l6ZTogbWVkaXVtLFxyXG4gICRleHBhbmQ6IGZhbHNlLFxyXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXHJcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcclxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXHJcbiAgJHN0eWxlOiAkYnV0dG9uLXN0eWxlLFxyXG4gICRyYWRpdXM6ICRidXR0b24tcmFkaXVzXHJcbikge1xyXG4gIEBleHRlbmQgJWJ1dHRvbjtcclxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkc2l6ZSk7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZCgkZXhwYW5kKTtcclxuICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IsICRzdHlsZSk7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoYnV0dG9uKSB7XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcblxyXG4gICAgJi50aW55ICAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSh0aW55KTsgfVxyXG4gICAgJi5zbWFsbCAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZShzbWFsbCk7IH1cclxuICAgICYubGFyZ2UgIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUobGFyZ2UpOyB9XHJcbiAgICAmLmV4cGFuZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cclxuXHJcbiAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yLCBhdXRvKSB9XHJcbiAgICAmLnN1Y2Nlc3MgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkc3VjY2Vzcy1jb2xvciwgYXV0bykgfVxyXG4gICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJHdhcm5pbmctY29sb3IsIGF1dG8pIH1cclxuICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRhbGVydC1jb2xvciwgYXV0bykgfVxyXG4gICAgJi5pbmZvICAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGluZm8tY29sb3IsIGF1dG8pIH1cclxuICAgICYuZGFyayAgICAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRkYXJrLWNvbG9yLCBhdXRvKSB9XHJcblxyXG4gICAgQGlmICRidXR0b24tc3R5bGUgIT0gaG9sbG93IHtcclxuICAgICAgJi5ob2xsb3cgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJHN0eWxlOiBob2xsb3cpO1xyXG4gICAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRzZWNvbmRhcnktY29sb3IsICRzdHlsZTogaG9sbG93KTsgfVxyXG4gICAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRzdWNjZXNzLWNvbG9yLCAkc3R5bGU6IGhvbGxvdyk7IH1cclxuICAgICAgICAmLndhcm5pbmcgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkd2FybmluZy1jb2xvciwgJHN0eWxlOiBob2xsb3cpOyB9XHJcbiAgICAgICAgJi5hbGVydCAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGFsZXJ0LWNvbG9yLCAkc3R5bGU6IGhvbGxvdyk7IH1cclxuICAgICAgICAmLmluZm8gICAgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkaW5mby1jb2xvciwgJHN0eWxlOiBob2xsb3cpOyB9XHJcbiAgICAgICAgJi5kYXJrICAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGRhcmstY29sb3IsICRzdHlsZTogaG9sbG93KTsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7IEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDsgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRidXR0b24tdGFnLXNlbGVjdG9yIHtcclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIEBleHRlbmQgLmJ1dHRvbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgQXBwc1xuLy9cbi8vIEJSRUFLUE9JTlRTXG4vLyAtLS0tLS0tLS0tLVxuLy8gRm91bmRhdGlvbiBmb3IgQXBwcyBoYXMgdGhyZWUgY29yZSBicmVha3BvaW50czogc21hbGwgKD4gMCksIG1lZGl1bSAoPj0gNjQwKSwgYW5kIGxhcmdlICg+PSAxMDI0KS5cbi8vIFRoZXJlIGFyZSB0d28gYWRkaXRpb25hbCBicmVha3BvaW50cywgeGxhcmdlLCBhbmQgeHhsYXJnZSwgd2hpY2ggKGJ5IGRlZmF1bHQpIGRvIG5vdCBvdXRwdXQgYXMgc2l6aW5nIGNsYXNzZXMuXG4vLyBBY2Nlc3MgbmFtZWQgYnJlYWtwb2ludHMgdXNpbmcgdGhlIG1peGluIGJyZWFrcG9pbnQoJHNpemUpLCB3aGVyZSAkc2l6ZSBpcyBhIGJyZWFrcG9pbnQgdmFsdWUuXG4vLyBZb3UgY2FuIGFsc28gcGFzcyBhbiBlbSwgcmVtLCBvciBwaXhlbCB2YWx1ZSBpbnRvIHRoaXMgbWl4aW4gdG8gZ2VuZXJhdGUgYW4gZW0tYmFzZWQgbWVkaWEgcXVlcnkuXG4vLyBDcmVhdGUgbmV3IG5hbWVkIGJyZWFrcG9pbnRzIHVzaW5nIHRoZSAkYnJlYWtwb2ludHMgbWFwLiBDaGFuZ2Ugd2hpY2ggbmFtZWQgYnJlYWtwb2ludHMgZ2V0IHRoZWlyIG93biBjbGFzc2VzIGJ5IG1vZGlmeWluZyB0aGUgJGJyZWFrcG9pbnQtY2xhc3NlcyBtYXAuXG4vLyBOT1RFOiBJZiB5b3UgY2hhbmdlIHRoZSAkYnJlYWtwb2ludHMgbWFwLCBrbm93IHRoYXQgYWxsIHZhbHVlcyBtdXN0IGJlIG9yZGVyZWQgYnkgd2lkdGgsIHNtYWxsZXN0IHdpZHRoIGZpcnN0LiBTbyAwIGlzIGFsd2F5cyB5b3VyIGZpcnN0IHZhbHVlLlxuXG4vLyAxLiBWYXJpYWJsZXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xuLy8gQnJlYWtwb2ludHNcbi8vIFRoZXNlIGFyZSBvdXIgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZW0gaW4gb3VyIGJyZWFrcG9pbnQgZnVuY3Rpb24gbGlrZSB0aGlzOiBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyAvLyBNZWRpdW0gYW5kIGxhcmdlciBzdHlsZXMgfVxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiByZW0tY2FsYygwKSxcbiAgbWVkaXVtOiByZW0tY2FsYyg2NDApLFxuICBsYXJnZTogcmVtLWNhbGMoMTIwMCksXG4gIHhsYXJnZTogcmVtLWNhbGMoMTQ0MCksXG4gIHh4bGFyZ2U6IHJlbS1jYWxjKDE5MjApLFxuKSAhZGVmYXVsdDtcblxuLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBzbWFsbC0xMiwgbWVkaXVtLTYsIGFuZCBzbyBvbi5cbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuLy8vXG5cbi8vIDIuIE1peGluc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nICRyZW0tYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge21peGVkfSAkdmFsIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L2VtL3JlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsOiBzbWFsbCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnBNYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJ29ubHkgc2NyZWVuJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgICRzdHI6ICRzdHIgKyAnIGFuZCAob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgICAgICRuZXh0LWJwOiBtYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAgICAgQGlmICRuZXh0LWJwID09IG51bGwge1xuICAgICAgICAgICAgJGJwTWF4OiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAkYnBNYXg6ICRuZXh0LWJwIC0gKDEvMTYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgICAkbmFtZWQ6IHRydWU7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRicDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICAgIEBpZiB1bml0KCRicCkgPT0gJ3B4JyBvciB1bml0KCRicCkgPT0gJycge1xuICAgICAgJGJwOiByZW0tY2FsYygkYnApO1xuICAgIH1cbiAgICAvLyBGaW5hbGx5LCB0aGUgcmVtIHZhbHVlIGlzIHR1cm5lZCBpbnRvIGFuIGVtIHZhbHVlXG4gICAgJGJwOiBzdHJpcC11bml0KCRicCkgKiAxZW07XG5cbiAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIHRoZSBpbnB1dCBpcyBcIjAgdXBcIiBvciBcIjAgZG93blwiXG4gICAgQGlmICRicCA+IDAgb3IgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gQW5kIGxvLCBhIG1lZGlhIHF1ZXJ5IHdhcyBib3JuXG4gICAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICAgICAgICBAaWYgJGJwTWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kIChtYXgtd2lkdGg6ICN7JGJwTWF4fSknO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgQGRlYnVnICdFUlJPUjogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlLic7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJG1heDogJGJwIC0gKDEvMTYpO1xuICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3V0cHV0XG4gIEBpZiAkYnAgPT0gMGVtIGFuZCAkZGlyICE9ICdvbmx5JyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAjeyRzdHJ9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUHJlZml4ZXMgc2VsZWN0b3IgJGNsYXNzIHdpdGggYnJlYWtwb2ludCBrZXl3b3JkcywgYWxsb3dpbmcgeW91IHRvIGNyZWF0ZSBhIGJhdGNoIG9mIGJyZWFrcG9pbnQgY2xhc3NlcyB3aXRoIG9uZSBjaHVuayBvZiBjb2RlLiBJZiB5b3Ugd2FudCB0byBza2lwIGEgYnJlYWtwb2ludCAobGlrZSBzbWFsbCwgYmVjYXVzZSBtb2JpbGUgZmlyc3QgYW5kIGFsbCB0aGF0KSwgYWRkIHZhbHVlcyB0byB0aGUgJG9taXQgcGFyYW1ldGVyLlxuLy8vXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRjbGFzcyAtIENsYXNzIHRvIHByZWZpeCB3aXRoIHRoZSBicmVha3BvaW50IG5hbWUgYW5kIGEgaHlwaGVuLlxuLy8vIEBwYXJhbSB7bGlzdH0gJG9taXQgLSBOYW1lZCBicmVha3BvaW50cyB0byBza2lwLiBObyBjbGFzcyB3aWxsIGJlIGFkZGVkIHdpdGggYnJlYWtwb2ludHMgaW4gdGhpcyBsaXN0LlxuQG1peGluIGVhY2gtYnJlYWtwb2ludCgkY2xhc3MsICRvbWl0OiAoKSkge1xuICAvLyBJdGVyYXRlIHRocm91Z2ggYnJlYWtwb2ludCBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIC8vIE9ubHkgZG8gc29tZXRoaW5nIGlmIHRoZSBicmVha3BvaW50IGlzIG5vdCBpbiAkb21pdFxuICAgIEBpZiBpbmRleCgkb21pdCwgJHNpemUpID09IG51bGwge1xuICAgICAgJHZhbDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgICAgIC8vIFByZWZpeCAkY2xhc3Mgd2l0aCAkc2l6ZSBhbmQgYSBoeXBoZW5cbiAgICAgIC4jeyRzaXplICsgJy0nICsgJGNsYXNzfSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAzLiBDU1MgT3V0cHV0XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyBNZXRhIHN0eWxlcyBhcmUgaW5jbHVkZWQgaW4gYWxsIGJ1aWxkcywgYXMgdGhleSBhcmUgYSBkZXBlbmRhbmN5IG9mIHRoZSBKYXZhc2NyaXB0LlxuLy8gVXNlZCB0byBwcm92aWRlIG1lZGlhIHF1ZXJ5IHZhbHVlcyBmb3IgamF2YXNjcmlwdCBjb21wb25lbnRzLlxuLy8gRm9yd2FyZCBzbGFzaCBwbGFjZWQgYXJvdW5kIGV2ZXJ5dGhpbmcgdG8gY29udmluY2UgUGhhbnRvbUpTIHRvIHJlYWQgdGhlIHZhbHVlLlxuXG5tZXRhLmZvdW5kYXRpb24tdmVyc2lvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIiN7JGZvdW5kYXRpb24tdmVyc2lvbn1cIjtcbn1cbm1ldGEuZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcIiN7bWFwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfVwiO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgQXBwcyBBTFBIQVxyXG4vLyBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG4kaW5jbHVkZS1jc3M6ICgpICFkZWZhdWx0O1xyXG4kbW9kdWxlczogKCkgIWRlZmF1bHQ7XHJcbiRyZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcclxuXHJcbi8vLyBDaGVja3MgaWYgYSBtb2R1bGUgaXMgaW4gdXNlLlxyXG5AZnVuY3Rpb24gdXNpbmcoJG5hbWUpIHtcclxuICAvLyBJbXBvcnQgZnJvbSBnbG9iYWwgc2NvcGVcclxuICAkaW5jbHVkZS1jc3M6ICRpbmNsdWRlLWNzcyAhZ2xvYmFsO1xyXG4gICRtb2R1bGUta2V5OiBtYXAtZ2V0KCRpbmNsdWRlLWNzcywgJG5hbWUpO1xyXG5cclxuICBAaWYgJG1vZHVsZS1rZXkgPT0gdHJ1ZSBvciAkbW9kdWxlLWtleSA9PSBudWxsIHtcclxuICAgIEByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBDaGVja3MgaWYgYSBtb2R1bGUncyBDU1MgaGFzIGFscmVhZHkgYmVlbiBleHBvcnRlZC5cclxuQGZ1bmN0aW9uIGltcG9ydGVkKCRuYW1lKSB7XHJcbiAgLy8gSW1wb3J0IGZyb20gZ2xvYmFsIHNjb3BlXHJcbiAgJG1vZHVsZXM6ICRtb2R1bGVzICFnbG9iYWw7XHJcbiAgLy8gQ2hlY2sgaWYgdGhlIG1vZHVsZSBpcyBhbHJlYWR5IG9uIHRoZSBpbXBvcnRlZCBsaXN0XHJcbiAgQGlmIHR5cGUtb2YoaW5kZXgoJG1vZHVsZXMsICRuYW1lKSkgPT0gJ251bWJlcicge1xyXG4gICAgQHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIE91dHB1dHMgdGhlIGNodW5rIG9mIGNvbnRlbnQgcGFzc2VkIGlmIGNvbXBvbmVudCAkbmFtZSBoYXNuJ3QgeWV0IGJlZW4gb3V0cHV0LlxyXG4vLy8gVGhpcyBwcmV2ZW50cyBjb2RlIGR1cGxpY2F0aW9uIGJ5IGtlZXBpbmcgdHJhY2sgb2Ygd2hpY2ggY29tcG9uZW50cyBoYXZlIGFscmVhZHkgYmVlbiBvdXRwdXQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiBjb21wb25lbnQgdG8gb3V0cHV0XHJcbi8vL1xyXG4vLy8gQG91dHB1dCBUaGUgY29udGVudCBwYXNzZWQsIGlmIHRoZSBjb21wb25lbnQgaGFzIG5vdCB5ZXQgYmVlbiBleHBvcnRlZC5cclxuQG1peGluIGV4cG9ydHMoJG5hbWUpIHtcclxuICAvLyBDaGVjayBpZiB0aGUgbW9kdWxlIGhhcyBhbHJlYWR5IGJlZW4gaW1wb3J0ZWRcclxuICBAaWYgbm90KGltcG9ydGVkKCRuYW1lKSkge1xyXG4gICAgLy8gQ2hlY2sgaWYgdGhlIG1vZHVsZSBzaG91bGQgYmUgdXNlZFxyXG4gICAgQGlmIHVzaW5nKCRuYW1lKSB7XHJcbiAgICAgICRtb2R1bGVzOiBhcHBlbmQoJG1vZHVsZXMsICRuYW1lKSAhZ2xvYmFsO1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBNYXAgU2VyaWFsaXplXHJcbi8vLyBDb252ZXJ0cyBhIFNhc3MgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFdlIHVzZSB0aGlzIGZ1bmN0aW9uIHRvIGVuY29kZSB0aGUgbWVkaWEgcXVlcmllcyBpbiB0aGUgYCRicmVha3BvaW50c2AgdmFyaWFibGUsIHNvIGl0IGNhbiBiZSB0cmFuc2ZlcnJlZCB0byBvdXIgSmF2YVNjcmlwdCBmb3IgdXNlIHRoZXJlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7bWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXHJcbi8vL1xyXG4vLy8gQHJldHVybiBBIHN0cmluZyB3aXRoIGEgbWFwIGNvbnZlcnRlZCB0byBhIHN0cmluZy5cclxuQGZ1bmN0aW9uIG1hcC1zZXJpYWxpemUoJG1hcCkge1xyXG4gICRzdHI6ICcnO1xyXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcclxuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgJHZhbHVlICsgJyYnO1xyXG4gIH1cclxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xyXG5cclxuICBAcmV0dXJuICRzdHI7XHJcbn1cclxuXHJcbi8vLyBNYXAgTmV4dFxyXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHttYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXHJcbi8vLyBAcGFyYW0ge21peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxyXG4vLy9cclxuLy8vIEByZXR1cm4gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIG51bGwuXHJcbkBmdW5jdGlvbiBtYXAtbmV4dCgkbWFwLCAka2V5KSB7XHJcbiAgLy8gU3RvcmUgdGhlIHZhbHVlcyBvZiB0aGUgbWFwIGFzIGEgbGlzdCwgc28gd2UgY2FuIGFjY2VzcyB0aGVtIHdpdGggbnRoXHJcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcclxuXHJcbiAgLy8gR2hldHRvIGZvciBsb29wXHJcbiAgJGk6IDE7XHJcbiAgJGZvdW5kOiBmYWxzZTtcclxuICBAZWFjaCAkdmFsIGluIG1hcC1rZXlzKCRtYXApIHtcclxuICAgIEBpZiAkZm91bmQgPT0gZmFsc2Uge1xyXG4gICAgICBAaWYgKCRrZXkgPT0gJHZhbCkge1xyXG4gICAgICAgICRmb3VuZDogdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICAkaTogJGkgKyAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxyXG4gIEBpZiAkaSA+IGxlbmd0aCgkbWFwKSB7XHJcbiAgICBAcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIC8vIE90aGVyd2lzZSByZXR1cm4gdGhlIHZhbHVlXHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiBudGgoJHZhbHVlcywgJGkpO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIElzIEl0IExpZ2h0P1xyXG4vLy8gQ2hlY2tzIHRoZSBsaWdodG5lc3Mgb2YgJGNvbG9yLCBhbmQgaWYgaXQgcGFzc2VzIHRoZSAkdGhyZXNob2xkIG9mIGxpZ2h0bmVzcywgaXQgcmV0dXJucyB0aGUgYCR5ZXNgIGNvbG9yLiBPdGhlcndpc2UsIGl0IHJldHVybnMgdGhlIGAkbm9gIGNvbG9yLiBVc2UgdGhpcyBmdW5jdGlvbiB0byBkeW5hbWljYWxseSBvdXRwdXQgYSBmb3JlZ3JvdW5kIGNvbG9yIGJhc2VkIG9uIGEgZ2l2ZW4gYmFja2dyb3VuZCBjb2xvci5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbGlnaHRuZXNzIG9mLlxyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJHllcyAtIENvbG9yIHRvIHJldHVybiBpZiAkY29sb3IgaXMgbGlnaHQuXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkbm8gLSBDb2xvciB0byByZXR1cm4gaWYgJGNvbG9yIGlzIGRhcmsuXHJcbi8vLyBAcGFyYW0ge3BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXHJcbi8vL1xyXG4vLy8gQHJldHVybiBUaGUgJHllcyBjb2xvciBvciAkbm8gY29sb3IuXHJcbkBmdW5jdGlvbiBpc2l0bGlnaHQoJGNvbG9yLCAkeWVzOiAjMDAwLCAkbm86ICNmZmYsICR0aHJlc2hvbGQ6IDYwJSkge1xyXG4gIEBpZiAobGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkKSB7XHJcbiAgICBAcmV0dXJuICR5ZXM7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEByZXR1cm4gJG5vO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIFNtYXJ0IFNjYWxlXHJcbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBsaWdodGVyIGlmIGl0J3MgbGlnaHQsIG9yIGRhcmtlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIFwiZmFkZVwiIGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cclxuLy8vIEBwYXJhbSB7cGVyY2VudGFnZX0gJHNjYWxlIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXHJcbi8vLyBAcGFyYW0ge3BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXHJcbi8vL1xyXG4vLy8gQHJldHVybiBBIHNjYWxlZCBjb2xvci5cclxuQGZ1bmN0aW9uIHNtYXJ0c2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA2MCUpIHtcclxuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcclxuICAgICRzY2FsZTogLSRzY2FsZTtcclxuICB9XHJcbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XHJcbn1cclxuXHJcbi8vLyBIYXMgVmFsdWVcclxuLy8vIFJldHVybnMgdHJ1ZSBpZiBhIHZhbHVlIGlzIG5vdCAwLCBudWxsLCBvciBub25lLiBVc2UgdGhpcyBmdW5jdGlvbiB0byBjaGVjayBmb3IgdmFsdWVzIGxpa2UgYGJvcmRlcjogMGAgb3IgYGJveC1zaGFkb3c6IG5vbmVgLlxyXG4vLy9cclxuLy8vIEBwYXJhbSAkdmFsIC0gVmFsdWUgdG8gY2hlY2suXHJcbi8vL1xyXG4vLy8gQHJldHVybiBUcnVlIGlmIGAkdmFsYCBpcyBub3QgMCwgbnVsbCwgb3Igbm9uZS5cclxuQGZ1bmN0aW9uIGhhc3ZhbHVlKCR2YWwpIHtcclxuICBAaWYgJHZhbCA9PSBudWxsIG9yICR2YWwgPT0gbm9uZSB7XHJcbiAgICBAcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBAaWYgdHlwZS1vZigkdmFsKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkdmFsKSA9PSAwIHtcclxuICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIEByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuLy8vIEdldCBTaWRlXHJcbi8vLyBEZXRlcm1pbmUgYSB0b3AvcmlnaHQvYm90dG9tL3JpZ2h0IHZhbHVlIG9uIGEgcGFkZGluZywgbWFyZ2luLCBldGMuIHByb3BlcnR5LCBubyBtYXR0ZXIgaG93IG1hbnkgdmFsdWVzIHdlcmUgcGFzc2VkIGluLiBVc2UgdGhpcyBmdW5jdGlvbiBpZiB5b3UgbmVlZCB0byBrbm93IHRoZSBzcGVjaWZpYyBzaWRlIG9mIGEgdmFsdWUsIGJ1dCBkb24ndCBrbm93IGlmIHRoZSB2YWx1ZSBpcyB1c2luZyBzaG9ydGhhbmQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtsaXN0fG51bWJlcn0gJHZhbCAtIFZhbHVlIHRvIGFuYWx5emUuIFNob3VsZCBiZSBhIHNob3J0aGFuZCBzaXppbmcgcHJvcGVydHksIGUuZy4gXCIxZW0gMmVtIDFlbVwiXHJcbi8vLyBAcGFyYW0ge2tleXdvcmR9ICRzaWRlIC0gU2lkZSB0byByZXR1cm4uIFNob3VsZCBiZSB0b3AsIHJpZ2h0LCBib3R0b20sIG9yIGxlZnQuXHJcbi8vL1xyXG4vLy8gQHJldHVybiBBIHNpbmdsZSB2YWx1ZSBiYXNlZCBvbiBgJHZhbGAgYW5kIGAkc2lkZWAuXHJcbkBmdW5jdGlvbiBnZXQtc2lkZSgkdmFsLCAkc2lkZSkge1xyXG4gICRsZW5ndGg6IGxlbmd0aCgkdmFsKTtcclxuXHJcbiAgQGlmICRsZW5ndGggPT0gMSB7XHJcbiAgICBAcmV0dXJuICR2YWw7XHJcbiAgfVxyXG4gIEBpZiAkbGVuZ3RoID09IDIge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KChcclxuICAgICAgdG9wOiBudGgoJHZhbCwgMSksXHJcbiAgICAgIGJvdHRvbTogbnRoKCR2YWwsIDEpLFxyXG4gICAgICBsZWZ0OiBudGgoJHZhbCwgMiksXHJcbiAgICAgIHJpZ2h0OiBudGgoJHZhbCwgMiksXHJcbiAgICApLCAkc2lkZSk7XHJcbiAgfVxyXG4gIEBpZiAkbGVuZ3RoID09IDMge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KChcclxuICAgICAgdG9wOiBudGgoJHZhbCwgMSksXHJcbiAgICAgIGxlZnQ6IG50aCgkdmFsLCAyKSxcclxuICAgICAgcmlnaHQ6IG50aCgkdmFsLCAyKSxcclxuICAgICAgYm90dG9tOiBudGgoJHZhbCwgMyksXHJcbiAgICApLCAkc2lkZSk7XHJcbiAgfVxyXG4gIEBpZiAkbGVuZ3RoID09IDQge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KChcclxuICAgICAgdG9wOiBudGgoJHZhbCwgMSksXHJcbiAgICAgIHJpZ2h0OiBudGgoJHZhbCwgMiksXHJcbiAgICAgIGJvdHRvbTogbnRoKCR2YWwsIDMpLFxyXG4gICAgICBsZWZ0OiBudGgoJHZhbCwgNCksXHJcbiAgICApLCAkc2lkZSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gR2V0IEJvcmRlciBWYWx1ZVxyXG4vLy8gR2l2ZW4gYm9yZGVyICR2YWwsIGZpbmQgYSBzcGVjaWZpYyBlbGVtZW50IG9mIHRoZSBib3JkZXIsIHdoaWNoIGlzICRlbGVtLiBUaGUgcG9zc2libGUgdmFsdWVzIGZvciAkZWxlbSBhcmUgd2lkdGgsIHN0eWxlLCBhbmQgY29sb3IuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtsaXN0fSAkdmFsIC0gQm9yZGVyIHZhbHVlIHRvIGZpbmQgYSB2YWx1ZSBpbi5cclxuLy8vIEBwYXJhbSB7a2V5d29yZH0gJGVsZW0gLSBCb3JkZXIgY29tcG9uZW50IHRvIGV4dHJhY3QuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIElmIHRoZSB2YWx1ZSBleGlzdHMsIHJldHVybnMgdGhlIHZhbHVlLiBJZiB0aGUgdmFsdWUgaXMgbm90IGluIHRoZSBib3JkZXIgZGVmaW5pdGlvbiwgdGhlIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGEgMHB4IHdpZHRoLCBzb2xpZCBzdHlsZSwgb3IgYmxhY2sgYm9yZGVyLlxyXG4gQGZ1bmN0aW9uIGdldC1ib3JkZXItdmFsdWUoJHZhbCwgJGVsZW0pIHtcclxuICAgLy8gRmluZCB0aGUgd2lkdGgsIHN0eWxlLCBvciBjb2xvciBhbmQgcmV0dXJuIGl0XHJcbiAgIEBlYWNoICR2IGluICR2YWwge1xyXG4gICAgICR0eXBlOiB0eXBlLW9mKCR2KTtcclxuICAgICBAaWYgJGVsZW0gPT0gd2lkdGggYW5kICR0eXBlID09ICdudW1iZXInIHtcclxuICAgICAgIEByZXR1cm4gJHY7XHJcbiAgICAgfVxyXG4gICAgIEBpZiAkZWxlbSA9PSBzdHlsZSBhbmQgJHR5cGUgPT0gJ3N0cmluZycge1xyXG4gICAgICAgQHJldHVybiAkdjtcclxuICAgICB9XHJcbiAgICAgQGlmICRlbGVtID09IGNvbG9yIGFuZCAkdHlwZSA9PSAnY29sb3InIHtcclxuICAgICAgIEByZXR1cm4gJHY7XHJcbiAgICAgfVxyXG4gICB9XHJcblxyXG4gICAvLyBEZWZhdWx0c1xyXG4gICAkZGVmYXVsdHM6IChcclxuICAgICB3aWR0aDogMCxcclxuICAgICBzdHlsZTogc29saWQsXHJcbiAgICAgY29sb3I6IGJsYWNrLFxyXG4gICApO1xyXG4gICBAcmV0dXJuIG1hcC1nZXQoJGRlZmF1bHRzLCAkZWxlbSk7XHJcbiB9XHJcblxyXG4vLy8gR2V0IFNoYWRvdyBWYWx1ZVxyXG4vLy8gR2l2ZW4gc2hhZG93IHZhbHVlICR2YWwsIGZpbmQgYSBzcGVjaWZpYyBlbGVtZW50IG9mIHRoZSBzaGFkb3csIHdoaWNoIGlzICRlbGVtLiBUaGUgcG9zc2libGUgdmFsdWVzIGZvciAkZWxlbSBhcmUgeCwgeSwgc2l6ZSwgc3ByZWFkLCBjb2xvciwgYW5kIGluc2V0LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7bGlzdH0gJHZhbCAtIFNoYWRvdyB2YWx1ZSB0byBmaW5kIGEgdmFsdWUgaW4uXHJcbi8vLyBAcGFyYW0ge2tleXdvcmR9ICRlbGVtIC0gU2hhZG93IGNvbXBvbmVudCB0byBleHRyYWN0LlxyXG4vLy9cclxuLy8vIEByZXR1cm4gSWYgdGhlIHZhbHVlIGV4aXN0cywgcmV0dXJucyB0aGUgdmFsdWUuIElmIHRoZSB2YWx1ZSBpcyBub3Qgc2V0LCByZXR1cm5zIGZhbHNlLiBJZiBgJGVsZW1gIGlzIFwiaW5zZXRcIiwgcmV0dXJucyB0cnVlLCBvdGhlcndpc2UgZmFsc2UuXHJcbkBmdW5jdGlvbiBnZXQtc2hhZG93LXZhbHVlKCR2YWwsICRlbGVtKSB7XHJcbiAgLy8gUmV0dXJuIFwibm9uZVwiIGlmIHRoZXJlJ3Mgbm8gc2hhZG93XHJcbiAgQGlmICR2YWwgPT0gbm9uZSB7XHJcbiAgICBAcmV0dXJuIG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyBJbnNldCBhbmQgY29sb3IgYXJlIGFsd2F5cyBhdCB0aGUgYmVnaW5uaW5nIGFuZCBlbmRcclxuICBAaWYgJGVsZW0gPT0gaW5zZXQge1xyXG4gICAgQHJldHVybiBudGgoJHZhbCwgMSkgPT0gaW5zZXQ7XHJcbiAgfVxyXG4gIEBpZiAkZWxlbSA9PSBjb2xvciB7XHJcbiAgICBAaWYgdHlwZS1vZihudGgoJHZhbCwgLTEpKSA9PSBjb2xvciB7XHJcbiAgICAgIEByZXR1cm4gbnRoKCR2YWwsIC0xKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgQHJldHVybiBibGFjaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFRoZSByZXN0IG9mIHRoZSB2YWx1ZXMgYXJlIGxvY2F0ZWQgcGVyaWxvdXNseSBpbiB0aGUgbWlkZGxlXHJcbiAgJHZhbHVlczogKCk7XHJcbiAgQGVhY2ggJHYgaW4gJHZhbCB7XHJcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicge1xyXG4gICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJHYpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgJGVsZW0gPT0geCB7XHJcbiAgICBAaWYgbGVuZ3RoKCR2YWx1ZXMpID49IDEge1xyXG4gICAgICBAcmV0dXJuIG50aCgkdmFsdWVzLCAxKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgQHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSBpZiAkZWxlbSA9PSB5IHtcclxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPj0gMiB7XHJcbiAgICAgIEByZXR1cm4gbnRoKCR2YWx1ZXMsIDIpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRlbGVtID09IHNpemUge1xyXG4gICAgQGlmIGxlbmd0aCgkdmFsdWVzKSA+PSAzIHtcclxuICAgICAgQHJldHVybiBudGgoJHZhbHVlcywgMyk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEByZXR1cm4gMDtcclxuICAgIH1cclxuICB9XHJcbiAgQGVsc2UgaWYgJGVsZW0gPT0gc3ByZWFkIHtcclxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPj0gNCB7XHJcbiAgICAgIEByZXR1cm4gbnRoKCR2YWx1ZXMsIDQpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gU3RyaXAgVW5pdFxyXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cclxuLy8vXHJcbi8vLyBAcmV0dXJuIFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxyXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XHJcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XHJcbn1cclxuXHJcbi8vLyBUdXJuIHRvIERlZ3JlZXNcclxuLy8vIENvbnZlcnRzIGEgdHVybiB1bml0IHRvIHRoZSBlcXVpdmFsZW50IHVuaXQgaW4gZGVncmVlcy4gMXR1cm4gaXMgZXF1YWwgdG8gMzYwIGRlZ3JlZXMuIE5vdCBhbGwgYnJvd3NlcnMgc3VwcG9ydCB0dXJuLCBzbyB0aGlzIGZ1bmN0aW9uIGFsbG93cyB1cyB0byB1c2UgdHVybnMgd2hpbGUgb3V0cHV0dGluZyBhIHZhbHVlIHRoYXQgYWxsIGJyb3dzZXJzIHVuZGVyc3RhbmQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR2YWx1ZSAtIFR1cm4gdmFsdWUgdG8gY29udmVydC5cclxuLy8vXHJcbi8vLyBAcmV0dXJuIFRoZSBzYW1lIHZhbHVlLCBidXQgaW4gZGVncmVlcy5cclxuQGZ1bmN0aW9uIHR1cm4tdG8tZGVnKCR2YWx1ZSkge1xyXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMzYwZGVnO1xyXG59XHJcblxyXG4vLy8gQ29udmVydCB0byBSZW1cclxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkcmVtLWJhc2VgIHZhcmlhYmxlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxyXG4vLy9cclxuLy8vIEByZXR1cm4gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLlxyXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSAge1xyXG4gICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkgKiAxcmVtO1xyXG4gIEBpZiAoJHZhbHVlID09IDByZW0pIHsgJHZhbHVlOiAwOyB9IC8vIFR1cm4gMHJlbSBpbnRvIDBcclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuLy8vIFJlbSBDYWxjdWxhdG9yXHJcbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLiBUaGlzIGZ1bmN0aW9uIHdvcmtzIGEgbG90IGxpa2UgYGNvbnZlcnQtdG8tcmVtYCwgZXhjZXB0IGl0IGNhbiBjb252ZXJ0IG1vcmUgdGhhbiBvbmUgdmFsdWUgYXQgb25jZSwgd2hpY2ggaXMgdXNlZnVsIHdoZW4gc2V0dGluZyBtdWx0aXBsZSB2YWx1ZXMgb24gYSBgbWFyZ2luYCBvciBgcGFkZGluZ2AgcHJvcGVydHkuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtudW1iZXJ8bGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cclxuLy8vXHJcbi8vLyBAcmV0dXJuIEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxyXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2UtdmFsdWU6IG51bGwpIHtcclxuICBAaWYgJGJhc2UtdmFsdWUgPT0gbnVsbCB7XHJcbiAgICAkYmFzZS12YWx1ZTogJHJlbS1iYXNlO1xyXG4gIH1cclxuICAkbWF4OiBsZW5ndGgoJHZhbHVlcyk7XHJcblxyXG4gIEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XHJcblxyXG4gICRyZW1WYWx1ZXM6ICgpO1xyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XHJcbiAgICAkcmVtVmFsdWVzOiBhcHBlbmQoJHJlbVZhbHVlcywgY29udmVydC10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UtdmFsdWUpKTtcclxuICB9XHJcbiAgQHJldHVybiAkcmVtVmFsdWVzO1xyXG59XHJcbiIsbnVsbCwiLypcclxuICBDYXJkc1xyXG5cclxuICBTdHJ1Y3R1cmU6XHJcblxyXG4gIHRpdGxlc1xyXG4gIGxpc3RzXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gQ2FyZFxyXG4kY2FyZC1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xyXG4kY2FyZC1jb2xvcjogaXNpdGxpZ2h0KCRjYXJkLWJhY2tncm91bmQpICFkZWZhdWx0O1xyXG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCBzbWFydHNjYWxlKCRjYXJkLWJhY2tncm91bmQsIDclKSAhZGVmYXVsdDtcclxuJGNhcmQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcclxuJGNhcmQtc2hhZG93OiAwIDFweCAycHggcmdiYSgjMDAwLCAwLjIpICFkZWZhdWx0O1xyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbiRjYXJkLW1hcmdpbjogMC41cmVtICFkZWZhdWx0O1xyXG5cclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiBzbWFydHNjYWxlKCRjYXJkLWJhY2tncm91bmQsIDclKSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXHJcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXHJcbiAgJGNvbG9yOiAkY2FyZC1jb2xvcixcclxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXHJcbiAgJHJhZGl1czogJGNhcmQtcmFkaXVzLFxyXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvdyxcclxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZyxcclxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW5cclxuKSB7XHJcbiAgYm9yZGVyOiAkYm9yZGVyO1xyXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG4gIGJveC1zaGFkb3c6ICRzaGFkb3c7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxyXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1kaXZpZGVyLWJhY2tncm91bmQsXHJcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcclxuKSB7XHJcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbn1cclxuXHJcbkBtaXhpbiBjYXJkLXNlY3Rpb24oXHJcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcclxuKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoY2FyZCkge1xyXG4gIC5jYXJkIHtcclxuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xyXG5cclxuICAgIEBlYWNoICRjb2xvciBpbiBtYXAta2V5cygkZm91bmRhdGlvbi1jb2xvcnMpIHtcclxuICAgICAgJi4jeyRjb2xvcn0ge1xyXG4gICAgICAgICRjb2xvci12YWx1ZTogbWFwLWdldCgkZm91bmRhdGlvbi1jb2xvcnMsICRjb2xvcik7XHJcbiAgICAgICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXIoXHJcbiAgICAgICAgICAkYmFja2dyb3VuZDogJGNvbG9yLXZhbHVlLFxyXG4gICAgICAgICAgJGNvbG9yOiBpc2l0bGlnaHQoJGNvbG9yLXZhbHVlKSxcclxuICAgICAgICAgICRib3JkZXI6IDBcclxuICAgICAgICApO1xyXG4gICAgICAgIC5jYXJkLWRpdmlkZXIge1xyXG4gICAgICAgICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyKFxyXG4gICAgICAgICAgICAkYmFja2dyb3VuZDogc21hcnRzY2FsZSgkY29sb3ItdmFsdWUsIDclKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgICAuY2FyZC1kaXZpZGVyIHtcclxuICAgICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xyXG4gICAgfVxyXG4gICAgLmNhcmQtc2VjdGlvbiB7XHJcbiAgICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcclxuICAgIH1cclxufVxyXG4iLCJAZnVuY3Rpb24gaW1hZ2UtdHJpYW5nbGUoJGNvbG9yOiAjMDAwKSB7XG4gICRjb2xvcjogcmdiKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcikpO1xuICBAcmV0dXJuICdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRjb2xvcn1cIj48L3BvbHlnb24+PC9zdmc+Jztcbn1cblxuQG1peGluIGltYWdlLWNoZWNrbWFyaygkY29sb3I6ICMwMDApIHtcbiAgJGNvbG9yOiByZ2IocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj48cGF0aCBmaWxsPVwiI3skY29sb3J9XCIgZD1cIk0xNiAwYy04LjgzNyAwLTE2IDcuMTYzLTE2IDE2czcuMTYzIDE2IDE2IDE2IDE2LTcuMTYzIDE2LTE2LTcuMTYzLTE2LTE2LTE2em02LjkwNiA4Ljg3NWwyLjIxOSAyLjAzMS0xMi4wNjMgMTMuMjgxLTYuMTg4LTYuMTg4IDIuMTI1LTIuMTI1IDMuOTM4IDMuOTM4IDkuOTY5LTEwLjkzOHpcIi8+PC9zdmc+Jyk7XG5cbiAgLy8gSUUxMCBmYWxsYmFjaywgc2luY2UgaXQgZG9lc24ndCBzdXBwb3J0IFNWRyBkYXRhIFVSTHNcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFnQ0FZQUFBQnplbnIwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFkbEpSRUZVZU5yTWwwRnVnekFRUlkzVFJaZW9GeWhWTDBCT2tHVFhKZXphSFp3Z3VVbkVDYUNyZEZkNmdxUW5DTjExVXlrNVFla05PbE9OSldNVkdNQ2dmR2xrRUlZM0huc0cyeEZNM2Q5NlBqUUIyQUpzV2RQdEFQWU9sbitkVHdYbnV3NERIRUd6QnZORk42RURDVGlTOVhJQXdCNDBhY05vdWNLb3hPRElpZTBBd0FPQ3U4S09TbklpTngvTWFrSytBN3NXOW9UZmVyeHgzZlAzVDFuVVJvQkcvaXJHVmFoSHdqSG0vR2d4N0UzVE1WZHJRbW9QMGduZ2doaHBaUTNRdkcvRWRQTFVlbEFSV0k4QXljanE5TWQwcU1JZGJjTmhqbU9LTG9ZN3F1azNsMVJlYmVxZzRBd0ZrbXE3TFdHT2gxcG1OWTBldFpBV1NxME9YOEhvUzRKdld1Q29wYlNZMjZFR1IvQ1c4NkswQkYrcHdrTHdsUHV5SEpoT0NsNW9lNFp0Risrdk9xU1QrR2RPWXdPKzcxcE4yVk5Bam1RR1BDZTQyd2V1SERnMFBJOG9sVXduWXJYVEdRSkg5Z3hxOGwxTEt2clF4NE82L1lZMzJLcC91Z2IzZXk3Z1o0eEF6dWhZaVlUeEIvVUhaRkF1YVJFVlhaMmc2eUZsdkVDMnlvS0VtYnNSWllOZ1ZMazJKZWFPYUcreExITitXQ3N6RFdNcUxHT3JKRmExRGxBcGpTZHdvSEpHcUd6TEliMCtjYXMwd2g1Qmg3ODBuZ3N3eDhHSkQ3aDhzSGcyd0xBL21mRExQWnBkeE9GMHF1UDVyd0FEQUFGSXpTUnZ1MW01QUFBQUFFbEZUa1N1UW1DQycpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBZ0NBWUFBQUJ6ZW5yMEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBVDlKUkVGVWVOck1WNHNSZ3lBTURVN2dDSTZBRTdRak1JTGRvQ080Q2QyZzNhQjJBaDJoRzdRYjBPRFJPMnI5OEFucXU4dHhLdklTSUkvQXdCRktLWTZOUUR1Z0hTZTZOV2dQdEJ0anJBTUtJSEdGMWlwLzZIK3FHT0lDN2E3aW9jY29mTWtGMmt2UlFZOGxmS1k4RlNxWHlGUGpaeWFZdmViWXRHZzVwTVVicmNRc2VlcUh6UG9nVnlBSHd5SFhYUGZaL2NDTUEzcnFPWEdrRjlOT2Jid09sNkhzRlM1QmROS2FYVG5UajJkR1hpblJZR1FueDc0Q2lOVE9sdC9jTWZwZUpTRWgrZG5sSnlDVTJpSWtxNENJbkllbXRJc0RjbVl0aCtUYzl4Q0R5SFFTTWVSZURvdzRVVm52ODlEajJ5VU54NXdZa3JlQis2ZFB3OXBIMlFiT3hKQnIxRDVTTEVjY3VFWm1FUDhPMVBvNjRhQnlpOElWZWh4TEF2TC84b3o0VEZqZWZIc3B5VFl2U3ZkVmx1L2lZcktMcTltYWwxTzI5Zlg4SThBQU5wSVF6QzBoVGRFQUFBQUFTVVZPUks1Q1lJST0nKTtcbiAgICB9XG4gIH1cbn0iLCIvKlxyXG4gIFBPUFVQXHJcbiAgLS0tLS1cclxuXHJcbiAgQSBmbG9hdGluZyBjb250YWluZXIgdGhhdCBjYW4gYW5jaG9yIHRvIGFueSBvdGhlciBvbi1zY3JlZW4gZWxlbWVudCwgYW5kIGNvbnRhaW4gYW55IGNvbnRlbnQsIGluY2x1ZGluZyBncmlkIGJsb2NrcyBvciBwYW5lbHMuXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gUG9wdXBcclxuJHBvcHVwLXdpZHRoOiByZW0tY2FsYygzMDApICFkZWZhdWx0O1xyXG4kcG9wdXAtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcclxuJHBvcHVwLWJvcmRlcjogMCAhZGVmYXVsdDtcclxuJHBvcHVwLXJhZGl1czogMCAhZGVmYXVsdDtcclxuJHBvcHVwLXNoYWRvdzogMCAwIDEwcHggcmdiYSgjMDAwLCAwLjI1KSAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4lcG9wdXAge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB6LWluZGV4OiAxMDAwO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAmLnRldGhlci1lbmFibGVkIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwb3B1cC1sYXlvdXQoXHJcbiAgJHdpZHRoOiAkcG9wdXAtd2lkdGhcclxuKSB7XHJcbiAgd2lkdGg6ICRwb3B1cC13aWR0aDtcclxufVxyXG5AbWl4aW4gcG9wdXAtc3R5bGUoXHJcbiAgJGJhY2tncm91bmQ6ICRwb3B1cC1iYWNrZ3JvdW5kLFxyXG4gICRjb2xvcjogIzAwMCxcclxuICAkcmFkaXVzOiAkcG9wdXAtcmFkaXVzLFxyXG4gICRzaGFkb3c6ICRwb3B1cC1zaGFkb3csXHJcbiAgJGJvcmRlcjogJHBvcHVwLWJvcmRlclxyXG4pIHtcclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG4gIGJveC1zaGFkb3c6ICRzaGFkb3c7XHJcbiAgYm9yZGVyOiAkYm9yZGVyO1xyXG59XHJcblxyXG5AbWl4aW4gcG9wdXAoXHJcbiAgJHdpZHRoOiAkcG9wdXAtd2lkdGgsXHJcbiAgJGJhY2tncm91bmQ6ICRwb3B1cC1iYWNrZ3JvdW5kLFxyXG4gICRyYWRpdXM6ICRwb3B1cC1yYWRpdXMsXHJcbiAgJHNoYWRvdzogJHBvcHVwLXNoYWRvdyxcclxuICAkYm9yZGVyOiAkcG9wdXAtYm9yZGVyXHJcbikge1xyXG4gIEBleHRlbmQgJXBvcHVwO1xyXG4gIEBpbmNsdWRlIHBvcHVwLWxheW91dCgkd2lkdGgpO1xyXG4gIEBpbmNsdWRlIHBvcHVwLXN0eWxlKCRiYWNrZ3JvdW5kLCBpc2l0bGlnaHQoJGJhY2tncm91bmQpLCAkcmFkaXVzLCAkc2hhZG93LCAkYm9yZGVyKTtcclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyhwb3B1cCkge1xyXG4gIC5wb3B1cCB7XHJcbiAgICBAaW5jbHVkZSBwb3B1cDtcclxuXHJcbiAgICAmLmRhcmsgICAgeyBAaW5jbHVkZSBwb3B1cC1zdHlsZSgkZGFyay1jb2xvciwgI2ZmZik7IH1cclxuICAgICYucHJpbWFyeSB7IEBpbmNsdWRlIHBvcHVwLXN0eWxlKCRwcmltYXJ5LWNvbG9yLCBpc2l0bGlnaHQoJHByaW1hcnktY29sb3IpKTsgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGT1VOREFUSU9OIE1PVElPTiBVSVxyXG4vLyBUYWJsZSBvZiBDb250ZW50c1xyXG4vL1xyXG4vLyAwLiBWYXJpYWJsZXNcclxuLy8gMS4gQmFzZSBUcmFuc2l0aW9uc1xyXG4vLyAgICAgIGEuIFNsaWRlXHJcbi8vICAgICAgYi4gRmFkZVxyXG4vLyAgICAgIGMuIEhpbmdlXHJcbi8vICAgICAgZC4gU2NhbGVcclxuLy8gICAgICBlLiBTcGluXHJcbi8vIDIuIEJhc2UgQW5pbWF0aW9uc1xyXG4vLyAgICAgIGEuIFNoYWtlXHJcbi8vICAgICAgYi4gU3Bpbm5lcnNcclxuLy8gICAgICBjLiBXaWdnbGVcclxuLy8gMy4gSFRNTCBBdHRyaWJ1dGVzXHJcblxyXG4vLyAwLiBWYXJpYWJsZXNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXHJcbi8vIE1vdGlvbiBVSVxyXG4vLyBDbGFzc2VzIHRvIHVzZSB3aGVuIHRyaWdnZXJpbmcgaW4vb3V0IGFuaW1hdGlvbnNcclxuJG1vdGlvbi1jbGFzczogKFxyXG4gIGluOiBcIm5nLWVudGVyXCIsXHJcbiAgb3V0OiBcIm5nLWxlYXZlXCIsXHJcbikgIWRlZmF1bHQ7XHJcbiRtb3Rpb24tY2xhc3MtYWN0aXZlOiAoXHJcbiAgaW46IFwibmctZW50ZXItYWN0aXZlXCIsXHJcbiAgb3V0OiBcIm5nLWxlYXZlLWFjdGl2ZVwiLFxyXG4pICFkZWZhdWx0O1xyXG4kbW90aW9uLWNsYXNzLXN0YWdnZXI6IChcclxuICBpbjogXCJuZy1lbnRlci1zdGFnZ2VyXCIsXHJcbiAgb3V0OiBcIm5nLWxlYXZlLXN0YWdnZXJcIixcclxuKSAhZGVmYXVsdDtcclxuJG1vdGlvbi1jbGFzcy1zaG93aGlkZTogKFxyXG4gIGluOiBcIm5nLWhpZGUtcmVtb3ZlXCIsXHJcbiAgb3V0OiBcIm5nLWhpZGUtYWRkXCIsXHJcbik7XHJcbiRtb3Rpb24tY2xhc3Mtc2hvd2hpZGUtYWN0aXZlOiAoXHJcbiAgaW46IFwibmctaGlkZS1yZW1vdmUtYWN0aXZlXCIsXHJcbiAgb3V0OiBcIm5nLWhpZGUtYWRkLWFjdGl2ZVwiLFxyXG4pO1xyXG5cclxuLy8gU2V0IGlmIG1vdmVtZW50LWJhc2VkIHRyYW5zaXRpb25zIHNob3VsZCBhbHNvIGZhZGUgdGhlIGVsZW1lbnQgaW4gYW5kIG91dFxyXG4kbW90aW9uLXNsaWRlLWFuZC1mYWRlOiBmYWxzZSAhZGVmYXVsdDtcclxuJG1vdGlvbi1oaW5nZS1hbmQtZmFkZTogdHJ1ZSAhZGVmYXVsdDtcclxuJG1vdGlvbi1zY2FsZS1hbmQtZmFkZTogdHJ1ZSAhZGVmYXVsdDtcclxuJG1vdGlvbi1zcGluLWFuZC1mYWRlOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8gRGVmYXVsdCBzcGVlZCBmb3IgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnNcclxuJG1vdGlvbi1kdXJhdGlvbi1kZWZhdWx0OiA1MDBtcyAhZGVmYXVsdDtcclxuXHJcbi8vIFNsb3cgYW5kIGZhc3QgbW9kaWZpZGVyc1xyXG4kbW90aW9uLWR1cmF0aW9uLXNsb3c6IDc1MG1zICFkZWZhdWx0O1xyXG4kbW90aW9uLWR1cmF0aW9uLWZhc3Q6IDI1MG1zICFkZWZhdWx0O1xyXG4kbW90aW9uLXN0YWdnZXItZHVyYXRpb24tZGVmYXVsdDogMTUwbXMgIWRlZmF1bHQ7XHJcbiRtb3Rpb24tc3RhZ2dlci1kdXJhdGlvbi1zaG9ydDogNTBtcyAhZGVmYXVsdDtcclxuJG1vdGlvbi1zdGFnZ2VyLWR1cmF0aW9uLWxvbmc6IDMwMG1zICFkZWZhdWx0O1xyXG5cclxuLy8gRGVmYXVsdCB0aW1pbmcgZnVuY3Rpb24gZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zXHJcbiRtb3Rpb24tdGltaW5nLWRlZmF1bHQ6IGVhc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyBCdWlsdC1pbiBhbmQgY3VzdG9tIGVhc2luZyBmdW5jdGlvbnNcclxuLy8gRXZlcnkgaXRlbSBpbiB0aGlzIG1hcCBiZWNvbWVzIGEgQ1NTIGNsYXNzXHJcbiRtb3Rpb24tdGltaW5nczogKFxyXG4gIGxpbmVhcjogbGluZWFyLFxyXG4gIGVhc2U6IGVhc2UsXHJcbiAgZWFzZUluOiBlYXNlLWluLFxyXG4gIGVhc2VPdXQ6IGVhc2Utb3V0LFxyXG4gIGVhc2VJbk91dDogZWFzZS1pbi1vdXQsXHJcbiAgYm91bmNlSW46IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQwLCAxLjI0NSksXHJcbiAgYm91bmNlT3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxyXG4gIGJvdW5jZUluT3V0OiBjdWJpYy1iZXppZXIoMC43NjAsIC0wLjI0NSwgMC4yNDAsIDEuMjQ1KSxcclxuKSAhZGVmYXVsdDtcclxuXHJcbi8vIERlZmF1bHQgZGVsYXkgZm9yIGFsbCB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9uc1xyXG4kbW90aW9uLWRlbGF5LWRlZmF1bHQ6IDAgIWRlZmF1bHQ7XHJcbi8vIFNob3J0IGFuZCBsb25nIGRlbGF5IG1vZGlmaWVyc1xyXG4kbW90aW9uLWRlbGF5LXNob3J0OiAzMDBtcyAhZGVmYXVsdDtcclxuJG1vdGlvbi1kZWxheS1sb25nOiA3MDBtcyAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4vLyBMb29rcyBmb3IgYSB0aW1pbmcgZnVuY3Rpb24gaW4gdGhlIGxpc3Qgb2YgcHJlc2V0c1xyXG4vLyBJZiBub25lIGFyZSBmb3VuZCwgcmV0dXJucyB0aGUgdmFsdWUgYXMtaXMuXHJcbkBmdW5jdGlvbiBnZXQtdGltaW5nKCR0aW1pbmcpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJG1vdGlvbi10aW1pbmdzLCAkdGltaW5nKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1vdGlvbi10aW1pbmdzLCAkdGltaW5nKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiAkdGltaW5nO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQXBwbGllcyB0cmFuc2l0aW9uIHNldHRpbmdzIGNvbW1vbiB0byBhbGwgbWl4aW5zXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcclxuICAkZHVyYXRpb246ICRtb3Rpb24tZHVyYXRpb24tZGVmYXVsdCxcclxuICAkdGltaW5nOiAkbW90aW9uLXRpbWluZy1kZWZhdWx0LFxyXG4gICRkZWxheTogJG1vdGlvbi1kZWxheS1kZWZhdWx0XHJcbikge1xyXG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZ2V0LXRpbWluZygkdGltaW5nKTtcclxuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XHJcbn1cclxuXHJcbi8vIFdyYXBzIGNvbnRlbnQgaW4gYW4gZW50ZXIvbGVhdmUgY2xhc3MsIGNoYWluZWQgdG8gdGhlIHBhcmVudCBzZWxlY3RvclxyXG4vLyBEZWZpbmUgdGhlIGluaXRpYWwgc3RhdGUgb2YgYSB0cmFuc2l0aW9uIGhlcmVcclxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xyXG4gICRzZWwxOiBtYXAtZ2V0KCRtb3Rpb24tY2xhc3MsICRkaXIpO1xyXG4gICRzZWwyOiBtYXAtZ2V0KCRtb3Rpb24tY2xhc3Mtc2hvd2hpZGUsICRkaXIpO1xyXG5cclxuICAmLiN7JHNlbDF9LFxyXG4gICYuI3skc2VsMn0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXcmFwcyBjb250ZW50IGluIGFuIGVudGVyL2xlYXZlIGFjdGl2ZSBjbGFzcywgY2hhaW5lZCB0byB0aGUgbWF0Y2hpbmdcclxuLy8gZW50ZXIvbGVhdmUgY2xhc3MsIGNoYWluZWQgdG8gdGhlIHBhcmVudCBzZWxlY3RvclxyXG4vLyBEZWZpbmUgdGhlIGVuZCBzdGF0ZSBvZiBhIHRyYW5zaXRpb24gaGVyZVxyXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xyXG4gICRzZWwxOiAgbWFwLWdldCgkbW90aW9uLWNsYXNzLCAkZGlyKTtcclxuICAkc2VsMUE6IG1hcC1nZXQoJG1vdGlvbi1jbGFzcy1hY3RpdmUsICRkaXIpO1xyXG5cclxuICAkc2VsMjogIG1hcC1nZXQoJG1vdGlvbi1jbGFzcy1zaG93aGlkZSwgJGRpcik7XHJcbiAgJHNlbDJBOiBtYXAtZ2V0KCRtb3Rpb24tY2xhc3Mtc2hvd2hpZGUtYWN0aXZlLCAkZGlyKTtcclxuXHJcbiAgJi4jeyRzZWwxfS4jeyRzZWwxQX0sXHJcbiAgJi4jeyRzZWwyfS4jeyRzZWwyQX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XHJcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcclxuICAvLyB0aGlzIGlzIHRvIGF2b2lkIGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjowO1xyXG59XHJcblxyXG5cclxuLy8gMS4gQmFzZSBUcmFuc2l0aW9uc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyBTTElERVxyXG5AbWl4aW4gc2xpZGUgKFxyXG4gICRkaXI6IGluLFxyXG4gICRmcm9tOiBsZWZ0LFxyXG4gICRmYWRlOiAkbW90aW9uLXNsaWRlLWFuZC1mYWRlLFxyXG4gICRkdXJhdGlvbjogJG1vdGlvbi1kdXJhdGlvbi1kZWZhdWx0LFxyXG4gICR0aW1pbmc6ICRtb3Rpb24tdGltaW5nLWRlZmF1bHQsXHJcbiAgJGRlbGF5OiAkbW90aW9uLWRlbGF5LWRlZmF1bHRcclxuKSB7XHJcbiAgJHNsaWRlRGlyZWN0aW9uczogKFxyXG4gICAgdG9wOiAgICB0cmFuc2xhdGVZKC0xMDAlKSxcclxuICAgIHJpZ2h0OiAgdHJhbnNsYXRlWCgxMDAlKSxcclxuICAgIGJvdHRvbTogdHJhbnNsYXRlWSgxMDAlKSxcclxuICAgIGxlZnQ6ICAgdHJhbnNsYXRlWCgtMTAwJSksXHJcbiAgKTtcclxuICAkc3RhcnQ6ICcnO1xyXG4gICRlbmQ6ICcnO1xyXG5cclxuICBAaWYgJGRpciA9PSBpbiB7XHJcbiAgICAkc3RhcnQ6IG1hcC1nZXQoJHNsaWRlRGlyZWN0aW9ucywgJGZyb20pO1xyXG4gICAgJGVuZDogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAkc3RhcnQ6IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKTtcclxuICAgICRlbmQ6IG1hcC1nZXQoJHNsaWRlRGlyZWN0aW9ucywgJGZyb20pO1xyXG4gIH1cclxuXHJcbiAgLy8gQ1NTIE91dHB1dFxyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtOiAkc3RhcnQ7XHJcblxyXG4gICAgQGlmICRmYWRlIHsgb3BhY2l0eTogaWYoJGRpciA9PSBpbiwgMCwgMSk7IH1cclxuICB9XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJGRpcikge1xyXG4gICAgdHJhbnNmb3JtOiAkZW5kO1xyXG5cclxuICAgIEBpZiAkZmFkZSB7IG9wYWNpdHk6IGlmKCRkaXIgPT0gaW4sIDEsIDApOyB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGQURFXHJcbkBtaXhpbiBmYWRlKFxyXG4gICRkaXI6IGluLFxyXG4gICRmcm9tOiAwLFxyXG4gICR0bzogMSxcclxuICAkZHVyYXRpb246ICRtb3Rpb24tZHVyYXRpb24tZGVmYXVsdCxcclxuICAkdGltaW5nOiAkbW90aW9uLXRpbWluZy1kZWZhdWx0LFxyXG4gICRkZWxheTogJG1vdGlvbi1kZWxheS1kZWZhdWx0XHJcbikge1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcclxuICAgIG9wYWNpdHk6ICRmcm9tO1xyXG4gIH1cclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XHJcbiAgICBvcGFjaXR5OiAkdG87XHJcbiAgfVxyXG59XHJcblxyXG4vLyBISU5HRVxyXG5AbWl4aW4gaGluZ2UgKFxyXG4gICRkaXI6IGluLFxyXG4gICRmcm9tOiBsZWZ0LFxyXG4gICRheGlzOiBlZGdlLFxyXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxyXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrLFxyXG4gICRmYWRlOiAkbW90aW9uLWhpbmdlLWFuZC1mYWRlLFxyXG4gICRkdXJhdGlvbjogJG1vdGlvbi1kdXJhdGlvbi1kZWZhdWx0LFxyXG4gICR0aW1pbmc6ICRtb3Rpb24tdGltaW5nLWRlZmF1bHQsXHJcbiAgJGRlbGF5OiAkbW90aW9uLWRlbGF5LWRlZmF1bHRcclxuKSB7XHJcblxyXG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcclxuICAkcm90YXRpb25BbW91bnQ6IDkwZGVnO1xyXG4gICRyb3RhdGlvbnNCYWNrOiAoXHJcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uQW1vdW50ICogLTEpLFxyXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uQW1vdW50ICogLTEpLFxyXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbkFtb3VudCksXHJcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbkFtb3VudCksXHJcbiAgKTtcclxuICAkcm90YXRpb25zRnJvbTogKFxyXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbkFtb3VudCksXHJcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb25BbW91bnQpLFxyXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbkFtb3VudCAqIC0xKSxcclxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uQW1vdW50ICogLTEpLFxyXG4gICk7XHJcblxyXG4gIC8vIFJvdGF0aW9uIG9yaWdpblxyXG4gICRyb3RhdGlvbjogJyc7XHJcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcclxuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zRnJvbSwgJGZyb20pO1xyXG4gIH1cclxuICBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcclxuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zQmFjaywgJGZyb20pO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiBcImAkdHVybi1vcmlnaW5gIG11c3QgYmUgZWl0aGVyIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YFwiO1xyXG4gIH1cclxuXHJcbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxyXG4gICRzdGFydDogJyc7XHJcbiAgJGVuZDogJyc7XHJcbiAgQGlmICRkaXIgPT0gaW4ge1xyXG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcclxuICAgICRlbmQ6IHJvdGF0ZSgwZGVnKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgJHN0YXJ0OiByb3RhdGUoMGRlZyk7XHJcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcclxuICB9XHJcblxyXG4gIC8vIFR1cm4gYXhpc1xyXG4gICRvcmlnaW46ICcnO1xyXG4gIEBpZiAkYXhpcyA9PSBlZGdlIHtcclxuICAgICRvcmlnaW46ICRmcm9tO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAkb3JpZ2luOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgIHRyYW5zZm9ybTogJHN0YXJ0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcclxuICAgIEBpZiAkZmFkZSB7IG9wYWNpdHk6IGlmKCRkaXIgPT0gaW4sIDAsIDEpOyB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcclxuICAgIHRyYW5zZm9ybTogJGVuZDtcclxuICAgIEBpZiAkZmFkZSB7IG9wYWNpdHk6IGlmKCRkaXIgPT0gaW4sIDEsIDApOyB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTQ0FMRVxyXG5AbWl4aW4gc2NhbGUoXHJcbiAgJGRpcjogaW4sXHJcbiAgJGZyb206IDEuNSxcclxuICAkdG86IDEsXHJcbiAgJGZhZGU6ICRtb3Rpb24tc2NhbGUtYW5kLWZhZGUsXHJcbiAgJGR1cmF0aW9uOiAkbW90aW9uLWR1cmF0aW9uLWRlZmF1bHQsXHJcbiAgJHRpbWluZzogJG1vdGlvbi10aW1pbmctZGVmYXVsdCxcclxuICAkZGVsYXk6ICRtb3Rpb24tZGVsYXktZGVmYXVsdFxyXG4pIHtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgcHJvcGVydHk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRmcm9tKTtcclxuICAgIEBpZiAkZmFkZSB7IG9wYWNpdHk6IGlmKCRkaXIgPT0gaW4sIDAsIDEpIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJGRpcikge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgkdG8pO1xyXG4gICAgQGlmICRmYWRlIHsgb3BhY2l0eTogaWYoJGRpciA9PSBpbiwgMSwgMCkgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gU1BJTlxyXG5AbWl4aW4gc3BpbihcclxuICAkZGlyOiBpbixcclxuICAkYW1vdW50OiAwLjc1dHVybixcclxuICAkY2N3OiBmYWxzZSxcclxuICAkZmFkZTogJG1vdGlvbi1zcGluLWFuZC1mYWRlLFxyXG4gICRkdXJhdGlvbjogJG1vdGlvbi1kdXJhdGlvbi1kZWZhdWx0LFxyXG4gICR0aW1pbmc6ICRtb3Rpb24tdGltaW5nLWRlZmF1bHQsXHJcbiAgJGRlbGF5OiAkbW90aW9uLWRlbGF5LWRlZmF1bHRcclxuKSB7XHJcbiAgJGFtb3VudDogdHVybi10by1kZWcoJGFtb3VudCk7XHJcbiAgJHN0YXJ0OiAwO1xyXG4gICRlbmQ6IDA7XHJcblxyXG4gIEBpZiAkZGlyID09IGluIHtcclxuICAgICRzdGFydDogaWYoJGNjdywgJGFtb3VudCwgJGFtb3VudCAqIC0xKTtcclxuICAgICRlbmQ6IDA7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgICRzdGFydDogMDtcclxuICAgICRlbmQ6IGlmKCRjY3csICRhbW91bnQgKiAtMSwgJGFtb3VudCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKCRzdGFydCk7XHJcbiAgICBAaWYgJGZhZGUgeyBvcGFjaXR5OiBpZigkZGlyID09IGluLCAwLCAxKTsgfVxyXG4gIH1cclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZW5kKTtcclxuICAgIEBpZiAkZmFkZSB7IG9wYWNpdHk6IGlmKCRkaXIgPT0gaW4sIDEsIDApOyB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gMi4gQmFzZSBBbmltYXRpb25zXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIFNIQUtFXHJcbkBrZXlmcmFtZXMgc2hha2Uge1xyXG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7XHJcbiAgfVxyXG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpO1xyXG4gIH1cclxuICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XHJcbn1cclxuXHJcbi8vIFNQSU5ORVJTXHJcbkBrZXlmcmFtZXMgc3Bpbi1jdyB7XHJcbiAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3Bpbi1jY3cge1xyXG4gIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7IH1cclxufVxyXG5cclxuLy8gV0lHR0xFXHJcbkBrZXlmcmFtZXMgd2lnZ2xlIHtcclxuICA0MCUsIDUwJSwgNjAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpO1xyXG4gIH1cclxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpO1xyXG4gIH1cclxuICAwJSwgMzAlLCA3MCUsIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uKFxyXG4gICRhbmltYXRpb24sXHJcbiAgJGR1cmF0aW9uOiAkbW90aW9uLWR1cmF0aW9uLWRlZmF1bHQsXHJcbiAgJHRpbWluZzogJG1vdGlvbi10aW1pbmctZGVmYXVsdCxcclxuICAkZGVsYXk6ICRtb3Rpb24tZGVsYXktZGVmYXVsdCxcclxuICAkaXRlcmF0aW9uczogbnVsbFxyXG4pIHtcclxuICBcclxuICBhbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbjtcclxuICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcclxuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xyXG5cclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcblxyXG4gIEBpZiAkZGVsYXkgIT0gbnVsbCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcclxuICB9XHJcbiAgQGlmICRpdGVyYXRpb25zICE9IG51bGwge1xyXG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbnM7XHJcbiAgfVxyXG5cclxuICBAaWYgJGFuaW1hdGlvbiA9PSBudWxsIHtcclxuICAgIEB3YXJuIFwiUGxlYXNlIGluY2x1ZGUgYW4gYW5pbWF0aW9uIG5hbWVcIjtcclxuICB9XHJcbn1cclxuXHJcbi8vIDMuIEhUTUwgRXhwb3J0c1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKG1vdGlvbikge1xyXG4gIC8qXHJcbiAgICBUcmFuc2l0aW9uc1xyXG4gICovXHJcblxyXG4gIC8vIFNsaWRlXHJcbiAgLnNsaWRlSW5Eb3duICAgIHsgQGluY2x1ZGUgc2xpZGUoJGZyb206IHRvcCk7IH1cclxuICAuc2xpZGVJbkxlZnQgICAgeyBAaW5jbHVkZSBzbGlkZSgkZnJvbTogcmlnaHQpOyB9XHJcbiAgLnNsaWRlSW5VcCAgICAgIHsgQGluY2x1ZGUgc2xpZGUoJGZyb206IGJvdHRvbSk7IH1cclxuICAuc2xpZGVJblJpZ2h0ICAgeyBAaW5jbHVkZSBzbGlkZSgkZnJvbTogbGVmdCk7IH1cclxuICAuc2xpZGVPdXRCb3R0b20geyBAaW5jbHVkZSBzbGlkZSgkZGlyOiBvdXQsICRmcm9tOiBib3R0b20pOyB9XHJcbiAgLnNsaWRlT3V0UmlnaHQgIHsgQGluY2x1ZGUgc2xpZGUoJGRpcjogb3V0LCAkZnJvbTogcmlnaHQpOyB9XHJcbiAgLnNsaWRlT3V0VXAgICAgIHsgQGluY2x1ZGUgc2xpZGUoJGRpcjogb3V0LCAkZnJvbTogdG9wKTsgfVxyXG4gIC5zbGlkZU91dExlZnQgICB7IEBpbmNsdWRlIHNsaWRlKCRkaXI6IG91dCwgJGZyb206IGxlZnQpOyB9XHJcblxyXG4gIC8vIEZhZGVcclxuICAuZmFkZUluICB7IEBpbmNsdWRlIGZhZGUoaW4sIDAsIDEpOyB9XHJcbiAgLmZhZGVPdXQgeyBAaW5jbHVkZSBmYWRlKG91dCwgMSwgMCk7IH1cclxuXHJcbiAgLy8gSGluZ2VcclxuICAuaGluZ2VJbkZyb21Ub3AgICAgICB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IGluLCAkZnJvbTogdG9wKTsgfVxyXG4gIC5oaW5nZUluRnJvbVJpZ2h0ICAgIHsgQGluY2x1ZGUgaGluZ2UoJGRpcjogaW4sICRmcm9tOiByaWdodCk7IH1cclxuICAuaGluZ2VJbkZyb21Cb3R0b20gICB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IGluLCAkZnJvbTogYm90dG9tKTsgfVxyXG4gIC5oaW5nZUluRnJvbUxlZnQgICAgIHsgQGluY2x1ZGUgaGluZ2UoJGRpcjogaW4sICRmcm9tOiBsZWZ0KTsgfVxyXG4gIC5oaW5nZUluRnJvbU1pZGRsZVggIHsgQGluY2x1ZGUgaGluZ2UoJGRpcjogaW4sICRmcm9tOiB0b3AsICAgJGF4aXM6IGNlbnRlcik7IH1cclxuICAuaGluZ2VJbkZyb21NaWRkbGVZICB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IGluLCAkZnJvbTogcmlnaHQsICRheGlzOiBjZW50ZXIpOyB9XHJcbiAgLmhpbmdlT3V0RnJvbVRvcCAgICAgeyBAaW5jbHVkZSBoaW5nZSgkZGlyOiBvdXQsICRmcm9tOiB0b3ApOyB9XHJcbiAgLmhpbmdlT3V0RnJvbVJpZ2h0ICAgeyBAaW5jbHVkZSBoaW5nZSgkZGlyOiBvdXQsICRmcm9tOiByaWdodCk7IH1cclxuICAuaGluZ2VPdXRGcm9tQm90dG9tICB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IG91dCwgJGZyb206IGJvdHRvbSk7IH1cclxuICAuaGluZ2VPdXRGcm9tTGVmdCAgICB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IG91dCwgJGZyb206IGxlZnQpOyB9XHJcbiAgLmhpbmdlT3V0RnJvbU1pZGRsZVggeyBAaW5jbHVkZSBoaW5nZSgkZGlyOiBvdXQsICRmcm9tOiB0b3AsICAgJGF4aXM6IGNlbnRlcik7IH1cclxuICAuaGluZ2VPdXRGcm9tTWlkZGxlWSB7IEBpbmNsdWRlIGhpbmdlKCRkaXI6IG91dCwgJGZyb206IHJpZ2h0LCAkYXhpczogY2VudGVyKTsgfVxyXG5cclxuICAvLyBTY2FsZVxyXG4gIC56b29tSW4gIHsgQGluY2x1ZGUgc2NhbGUoaW4sICAxLjUsIDEpOyB9XHJcbiAgLnpvb21PdXQgeyBAaW5jbHVkZSBzY2FsZShvdXQsIDAuNSwgMSk7IH1cclxuXHJcbiAgLy8gU3BpblxyXG4gIC5zcGluSW4gICAgIHsgQGluY2x1ZGUgc3BpbihpbiwgMC43NXR1cm4pOyB9XHJcbiAgLnNwaW5PdXQgICAgeyBAaW5jbHVkZSBzcGluKG91dCwgMC43NXR1cm4pOyB9XHJcbiAgLnNwaW5JbkNDVyAgeyBAaW5jbHVkZSBzcGluKGluLCAwLjc1dHVybiwgdHJ1ZSk7IH1cclxuICAuc3Bpbk91dENDVyB7IEBpbmNsdWRlIHNwaW4ob3V0LCAwLjc1dHVybiwgdHJ1ZSk7IH1cclxuXHJcbiAgLypcclxuICAgIFRyYW5zaXRpb24gbW9kaWZpZXJzXHJcbiAgKi9cclxuXHJcbiAgLy8gRHVyYXRpb25cclxuICAuc2xvdyB7IHRyYW5zaXRpb24tZHVyYXRpb246ICRtb3Rpb24tZHVyYXRpb24tc2xvdyAhaW1wb3J0YW50OyB9XHJcbiAgLmZhc3QgeyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkbW90aW9uLWR1cmF0aW9uLWZhc3QgIWltcG9ydGFudDsgfVxyXG5cclxuICAvLyBFYXNpbmdcclxuICBAZWFjaCAkZWFzaW5nIGluIG1hcC1rZXlzKCRtb3Rpb24tdGltaW5ncykge1xyXG4gICAgLiN7JGVhc2luZ30ge1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXRpbWluZ3MsICRlYXNpbmcpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBEZWxheVxyXG4gIC5kZWxheSAgICAgICB7IHRyYW5zaXRpb24tZGVsYXk6ICRtb3Rpb24tZGVsYXktc2hvcnQgIWltcG9ydGFudDsgfVxyXG4gIC5sb25nLWRlbGF5ICB7IHRyYW5zaXRpb24tZGVsYXk6ICRtb3Rpb24tZGVsYXktbG9uZyAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qXHJcbiAgICBBbmltYXRpb25zXHJcbiAgKi9cclxuXHJcbiAgLnNoYWtlICAgIHsgQGluY2x1ZGUgYW5pbWF0aW9uKHNoYWtlKTsgfVxyXG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIGFuaW1hdGlvbihzcGluLWN3KTsgfVxyXG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIGFuaW1hdGlvbihzcGluLWNjdyk7IH1cclxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBhbmltYXRpb24od2lnZ2xlKTsgfVxyXG5cclxuICAvKlxyXG4gICAgQW5pbWF0aW9uIG1vZGlmaWVyc1xyXG4gICovXHJcblxyXG4gIC5zaGFrZSxcclxuICAuc3Bpbi1jdyxcclxuICAuc3Bpbi1jY3csXHJcbiAgLndpZ2dsZSB7XHJcbiAgICAvLyBSZXBlYXRcclxuICAgICYuaW5maW5pdGUgeyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxyXG5cclxuICAgIC8vIEVhc2luZ1xyXG4gICAgQGVhY2ggJHRpbWluZyBpbiBtYXAta2V5cygkbW90aW9uLXRpbWluZ3MpIHtcclxuICAgICAgJi4jeyR0aW1pbmd9IHtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdGltaW5ncywgJHRpbWluZykgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIER1cmF0aW9uXHJcbiAgICAmLnNsb3cgeyBhbmltYXRpb24tZHVyYXRpb246ICRtb3Rpb24tZHVyYXRpb24tc2xvdyAhaW1wb3J0YW50OyB9XHJcbiAgICAmLmZhc3QgeyBhbmltYXRpb24tZHVyYXRpb246ICRtb3Rpb24tZHVyYXRpb24tZmFzdCAhaW1wb3J0YW50OyB9XHJcblxyXG4gICAgLy8gRGVsYXlcclxuICAgICYuZGVsYXkgICAgICAgeyBhbmltYXRpb24tZGVsYXk6ICRtb3Rpb24tZGVsYXktc2hvcnQgIWltcG9ydGFudDsgfVxyXG4gICAgJi5sb25nLWRlbGF5ICB7IGFuaW1hdGlvbi1kZWxheTogJG1vdGlvbi1kZWxheS1sb25nICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbiAgLnN0YWdnZXIgeyBAaW5jbHVkZSBzdGFnZ2VyKCRtb3Rpb24tc3RhZ2dlci1kdXJhdGlvbi1kZWZhdWx0KTsgfVxyXG4gIC5zdG9ydC1zdGFnZ2VyIHsgQGluY2x1ZGUgc3RhZ2dlcigkbW90aW9uLXN0YWdnZXItZHVyYXRpb24tZGVmYXVsdCk7IH1cclxuICAubG9uZy1zdGFnZ2VyIHsgQGluY2x1ZGUgc3RhZ2dlcigkbW90aW9uLXN0YWdnZXItZHVyYXRpb24tZGVmYXVsdCk7IH1cclxufVxyXG5cclxuLy8gVmlldyBhbmltYXRpb24gY2xhc3Nlc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIEFwcGxpZWQgdG8gdGhlIGltbWVkaWF0ZSBwYXJlbnQgb2YgdGhlIGFuaW1hdGluZyB2aWV3c1xyXG4ucG9zaXRpb24tYWJzb2x1dGUge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vLyBBcHBsaWVkIHRvIHRoZSBhbmltYXRpbmcgdmlld3NcclxuLnVpLWFuaW1hdGlvbiB7XHJcbiAgJi5uZy1lbnRlci1hY3RpdmUsICYubmctbGVhdmUtYWN0aXZlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxufVxyXG4iLCIvKlxuICBPZGRzIGFuZCBlbmRzLlxuKi9cblxuLy8vIEBGb3VuZGF0aW9uLnNldHRpbmdzXG4vLyBFeHRyYXNcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogKHRvcCByaWdodCkgIWRlZmF1bHQ7XG4kY2xvc2VidXR0b24tc2l6ZTogMmVtICFkZWZhdWx0O1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDAuNSAhZGVmYXVsdDtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogIzMzMyAhZGVmYXVsdDtcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAzcHggMTVweCByZ2JhKGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcbi8vL1xuXG4vLyBBIGJhc2ljIGNsb3NlIGJ1dHRvbi4gVGhleSBwaW4gdG8gdGhlIGNvcm5lciBvZiB0aGUgdGhpbmcgdGhleSdyZSBpbnNpZGUuXG4lY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICAjeyR4fTogJGdsb2JhbC1wYWRkaW5nO1xuICAjeyR5fTogJGdsb2JhbC1wYWRkaW5nO1xuICBmb250LXNpemU6ICRjbG9zZWJ1dHRvbi1zaXplO1xuICBsaW5lLWhlaWdodDogJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vIE1ha2UgeW91ciBpbWFnZXMgZmFuY3ktbGlrZS5cbiV0aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKGV4dHJhcykge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVjbG9zZS1idXR0b247XG4gIH1cbiAgLnRodW1ibmFpbCB7XG4gICAgQGV4dGVuZCAldGh1bWJuYWlsO1xuICB9XG4gIHVsLnRodW1ibmFpbHMgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBcbiAgICBhIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICBpbWcgeyBAZXh0ZW5kICV0aHVtYm5haWw7IH1cbiAgfVxufVxuIiwiLypcbiAgUEFORUxcbiAgLS0tLS1cblxuICBUaGUgZnJpZW5kbHkgcGFuZWwgaXMgYW4gYWxsLXB1cnBvc2UgY29udGFpbmVyIGZvciBoaWRpbmcgY29udGVudCBvZmYtc2NyZWVuLlxuXG4gIEZlYXR1cmVzOlxuICAgLSBQb3NpdGlvbiBhdCB0b3AsIHJpZ2h0LCBib3R0b20sIG9yIGxlZnRcbiAgIC0gQW5jaG9yIHRvIGdyaWQgYmxvY2sgb3Igd2luZG93XG4gICAtIERlZmluZSBtYXggd2lkdGggb3IgaGVpZ2h0XG4gICAtIFRyYW5zZm9ybSBpbnRvIGdyaWQgYmxvY2sgZGVwZW5kaW5nIG9uIHNjcmVlbiBzaXplXG4qL1xuXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3Ncbi8vIFBhbmVsXG4kcGFuZWwtc2l6ZS1ob3Jpem9udGFsOiAzMDBweCAhZGVmYXVsdDtcbiRwYW5lbC1zaXplLXZlcnRpY2FsOiAzMDBweCAhZGVmYXVsdDtcbiRwYW5lbC1wYWRkaW5nOiAwICFkZWZhdWx0O1xuXG4kcGFuZWwtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1zaGFkb3c6IDNweCAwIDEwcHggcmdiYShibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vIERFUFJFQ0FURUQ6IHRoZXNlIHZhcmlhYmxlcyB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgdmVyc2lvbi5cbiRwYW5lbC1hbmltYXRpb24tc3BlZWQ6IDAuMjVzICFkZWZhdWx0O1xuLy8vXG5cbiVwYW5lbC1iYXNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gcGFuZWwtbGF5b3V0KFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRzaXplOiBkZWZhdWx0LFxuICAkc2hhZG93OiAkcGFuZWwtc2hhZG93XG4pIHtcbiAgQGlmICRzaXplID09IGRlZmF1bHQge1xuICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCBvciAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgJHNpemU6ICRwYW5lbC1zaXplLWhvcml6b250YWw7XG4gICAgfVxuICAgIEBpZiAkcG9zaXRpb24gPT0gdG9wIG9yICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgJHNpemU6ICRwYW5lbC1zaXplLXZlcnRpY2FsO1xuICAgIH1cbiAgfVxuXG4gIC8qXG4gICAgRGlyZWN0aW9uXG4gICovXG4gIEBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC8qXG4gICAgU2l6aW5nXG4gICovXG4gIC8vIEhvcml6b250YWwgcGFuZWxzIGFyZSBhbHdheXMgYWxsIHRoZSB3YXkgdGFsbCBhbmQgaGF2ZSBhIHNldCB3aWR0aFxuICBAaWYgJHBvc2l0aW9uID09IGxlZnQgb3IgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBAaWYgdW5pdCgkc2l6ZSkgPT0gJyUnIHtcbiAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gKEZvciBub3cpIHZlcnRpY2FsIHBhbmVscyBkb24ndCBjaGFuZ2Ugc2l6ZVxuICBAaWYgJHBvc2l0aW9uID09IHRvcCBvciAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICB9XG5cbiAgLypcbiAgICBTaGFkb3dzXG4gICovXG4gICRzaGFkb3ctZGlzdGFuY2U6IGdldC1zaGFkb3ctdmFsdWUoJHNoYWRvdywgeCk7XG4gICRzaGFkb3ctc2l6ZTogZ2V0LXNoYWRvdy12YWx1ZSgkc2hhZG93LCBzaXplKTtcbiAgJHNoYWRvdy1jb2xvcjogZ2V0LXNoYWRvdy12YWx1ZSgkc2hhZG93LCBjb2xvcik7XG4gICYuaXMtYWN0aXZlIHtcbiAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQgICAgICAgIHsgYm94LXNoYWRvdzogJHNoYWRvdy1kaXN0YW5jZSAwICRzaGFkb3ctc2l6ZSAkc2hhZG93LWNvbG9yOyB9XG4gICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0ICB7IGJveC1zaGFkb3c6ICgtJHNoYWRvdy1kaXN0YW5jZSkgMCAkc2hhZG93LXNpemUgJHNoYWRvdy1jb2xvcjsgfVxuICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3AgICAgeyBib3gtc2hhZG93OiAwICRzaGFkb3ctZGlzdGFuY2UgJHNoYWRvdy1zaXplICRzaGFkb3ctY29sb3I7IH1cbiAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHsgYm94LXNoYWRvdzogMnB4ICgtJHNoYWRvdy1kaXN0YW5jZSkgJHNoYWRvdy1zaXplICRzaGFkb3ctY29sb3I7IH1cbiAgfVxufVxuXG5AbWl4aW4gcGFuZWwtc3R5bGUoXG4gICRwYWRkaW5nOiAkcGFuZWwtcGFkZGluZyxcbiAgJGJhY2tncm91bmQ6ICRwYW5lbC1iYWNrZ3JvdW5kXG4pIHtcbiAgLypcbiAgICBCYXNpYyBzdHlsZXNcbiAgKi9cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKHBhbmVsKSB7XG4gIC5wYW5lbCB7XG4gICAgQGV4dGVuZCAlcGFuZWwtYmFzZTtcbiAgICBAaW5jbHVkZSBwYW5lbC1zdHlsZTtcbiAgfVxuXG4gIC5wYW5lbC10b3AgICAgeyBAaW5jbHVkZSBwYW5lbC1sYXlvdXQodG9wKTsgfVxuICAucGFuZWwtcmlnaHQgIHsgQGluY2x1ZGUgcGFuZWwtbGF5b3V0KHJpZ2h0KTsgfVxuICAucGFuZWwtYm90dG9tIHsgQGluY2x1ZGUgcGFuZWwtbGF5b3V0KGJvdHRvbSk7IH1cbiAgLnBhbmVsLWxlZnQgICB7IEBpbmNsdWRlIHBhbmVsLWxheW91dChsZWZ0KTsgfVxuXG4gIC5wYW5lbC1maXhlZCAgeyBwb3NpdGlvbjogZml4ZWQ7IH1cbn0iLCIvKlxyXG4gIExhYmVsXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gTGFiZWxcclxuJGxhYmVsLWZvbnRzaXplOiAwLjhyZW0gIWRlZmF1bHQ7XHJcbiRsYWJlbC1wYWRkaW5nOiAoJGdsb2JhbC1wYWRkaW5nIC8gMykgKCRnbG9iYWwtcGFkZGluZyAvIDIpICFkZWZhdWx0O1xyXG4kbGFiZWwtcmFkaXVzOiAwICFkZWZhdWx0O1xyXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRsYWJlbC1jb2xvcjogaXNpdGxpZ2h0KCRwcmltYXJ5LWNvbG9yKSAhZGVmYXVsdDtcclxuXHJcbiRiYWRnZS1mb250c2l6ZTogMC44ZW0gIWRlZmF1bHQ7XHJcbiRiYWRnZS1kaWFtZXRlcjogMS41cmVtICFkZWZhdWx0O1xyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRiYWRnZS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcclxuLy8vXHJcblxyXG4lbGFiZWwge1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuQG1peGluIGxhYmVsLWxheW91dChcclxuICAkZm9udHNpemU6ICRsYWJlbC1mb250c2l6ZSxcclxuICAkcGFkZGluZzogJGxhYmVsLXBhZGRpbmdcclxuKSB7XHJcbiAgZm9udC1zaXplOiAkZm9udHNpemU7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbn1cclxuXHJcbkBtaXhpbiBsYWJlbC1zdHlsZShcclxuICAkYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQsXHJcbiAgJGNvbG9yOiAkbGFiZWwtY29sb3IsXHJcbiAgJHJhZGl1czogJGxhYmVsLXJhZGl1c1xyXG4pIHtcclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG5cclxuICBAaWYgJGNvbG9yID09IGF1dG8ge1xyXG4gICAgY29sb3I6IGlzaXRsaWdodCgkYmFja2dyb3VuZCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbGFiZWwoXHJcbiAgJGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kLFxyXG4gICRjb2xvcjogJGxhYmVsLWNvbG9yLFxyXG4gICRyYWRpdXM6ICRsYWJlbC1yYWRpdXMsXHJcbiAgJGZvbnRzaXplOiAkbGFiZWwtZm9udHNpemUsXHJcbiAgJHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nXHJcbikge1xyXG4gIEBleHRlbmQgJWxhYmVsO1xyXG4gIEBpbmNsdWRlIGxhYmVsLWxheW91dCgkZm9udHNpemUsICRwYWRkaW5nKTtcclxuICBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkYmFja2dyb3VuZCwgJGNvbG9yLCAkcmFkaXVzKTtcclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyhsYWJlbCkge1xyXG4gIC5sYWJlbCB7XHJcbiAgICBAaW5jbHVkZSBsYWJlbDtcclxuXHJcbiAgICBAZWFjaCAkY29sb3IgaW4gbWFwLWtleXMoJGZvdW5kYXRpb24tY29sb3JzKSB7XHJcbiAgICAgICYuI3skY29sb3J9IHtcclxuICAgICAgICAkY29sb3ItdmFsdWU6IG1hcC1nZXQoJGZvdW5kYXRpb24tY29sb3JzLCAkY29sb3IpO1xyXG4gICAgICAgIEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRjb2xvci12YWx1ZSwgYXV0byk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgQmFkZ2VcclxuKi9cclxuXHJcbiViYWRnZSB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBib3JkZXItcmFkaXVzOiAxMDAwcHg7XHJcbn1cclxuXHJcbkBtaXhpbiBiYWRnZS1sYXlvdXQoXHJcbiAgJGZvbnRzaXplOiAkYmFkZ2UtZm9udHNpemUsXHJcbiAgJGRpYW1ldGVyOiAkYmFkZ2UtZGlhbWV0ZXJcclxuKSB7XHJcbiAgZm9udC1zaXplOiAkZm9udHNpemU7XHJcbiAgd2lkdGg6ICRkaWFtZXRlcjtcclxuICBoZWlnaHQ6ICRkaWFtZXRlcjtcclxufVxyXG5cclxuQG1peGluIGJhZGdlLXN0eWxlKFxyXG4gICRiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZCxcclxuICAkY29sb3I6ICRiYWRnZS1mb250LWNvbG9yXHJcbikge1xyXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG5cclxuICBAaWYgJGNvbG9yID09IGF1dG8ge1xyXG4gICAgY29sb3I6IGlzaXRsaWdodCgkYmFja2dyb3VuZCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmFkZ2UoXHJcbiAgJGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kLFxyXG4gICRjb2xvcjogJGJhZGdlLWNvbG9yLFxyXG4gICRkaWFtZXRlcjogJGJhZGdlLWRpYW1ldGVyLFxyXG4gICRmb250c2l6ZTogJGJhZGdlLWZvbnRzaXplXHJcbikge1xyXG4gIEBleHRlbmQgJWJhZGdlO1xyXG4gIEBpbmNsdWRlIGJhZGdlLWxheW91dCgkZm9udHNpemUsICRkaWFtZXRlcik7XHJcbiAgQGluY2x1ZGUgYmFkZ2Utc3R5bGUoJGJhY2tncm91bmQsICRjb2xvcik7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoYmFkZ2UpIHtcclxuICAuYmFkZ2Uge1xyXG4gICAgQGluY2x1ZGUgYmFkZ2U7XHJcblxyXG4gICAgJi5zZWNvbmRhcnkge1xyXG4gICAgICBAaW5jbHVkZSBiYWRnZS1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yLCBhdXRvKTtcclxuICAgIH1cclxuICAgIEBlYWNoICRjb2xvciBpbiBtYXAta2V5cygkZm91bmRhdGlvbi1jb2xvcnMpIHtcclxuICAgICAgJi4jeyRjb2xvcn0ge1xyXG4gICAgICAgICRjb2xvci12YWx1ZTogbWFwLWdldCgkZm91bmRhdGlvbi1jb2xvcnMsICRjb2xvcik7XHJcbiAgICAgICAgQGluY2x1ZGUgYmFkZ2Utc3R5bGUoJGNvbG9yLXZhbHVlLCBhdXRvKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKlxyXG4gIE1PREFMXHJcbiAgLS0tLS1cclxuXHJcbiAgVGhlIGh1bWJsZSBtb2RhbCBoaWRlcyBvZmYtY2FudmFzIHVudGlsIHN1bW1vbmVkIHdpdGggYW4gZmEtb3BlbiBkaXJlY3RpdmUuIE1vZGFscyBhcHBlYXIgb3ZlciBhbiBvdmVybGF5IHRoYXQgZGFya2VucyB0aGUgcmVzdCBvZiB0aGUgcGFnZSwgYW5kIGhhdmUgYSBtYXhtaW11bSB3aWR0aC4gWW91IGNhbiBjb25zdHJ1Y3QgYSBncmlkIGluc2lkZSBhIG1vZGFsLCBvciBhdHRhY2ggcGFuZWxzIHRvIGl0LlxyXG5cclxuICBOb3RlIHRoYXQgdGhlIG1vZGFsIG92ZXJsYXkgaXMgaGFyZGNvZGVkIGludG8gdGhlIENTUywgYmVjYXVzZSB3aGV0aGVyIG9yIG5vdCB5b3UgYnVpbGQgeW91ciBtb2RhbCBzZW1hbnRpY2FsbHksIHRoZSBvdmVybGF5IGlzIGFsd2F5cyByZXF1aXJlZCBhbmQgd2lsbCBhbHdheXMgbG9vayB0aGUgc2FtZS5cclxuKi9cclxuXHJcbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xyXG4vLyBNb2RhbFxyXG4kbW9kYWwtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcclxuJG1vZGFsLWJvcmRlcjogMCAhZGVmYXVsdDtcclxuJG1vZGFsLXJhZGl1czogMHB4ICFkZWZhdWx0O1xyXG4kbW9kYWwtc2hhZG93OiBub25lICFkZWZhdWx0O1xyXG4kbW9kYWwtemluZGV4OiAxMDAwICFkZWZhdWx0O1xyXG4kbW9kYWwtc2l6ZXM6IChcclxuICB0aW55OiAzMDBweCxcclxuICBzbWFsbDogNTAwcHgsXHJcbiAgbWVkaXVtOiA2MDBweCxcclxuICBsYXJnZTogODAwcHgsXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4kbW9kYWwtb3ZlcmxheS1jbGFzczogJ21vZGFsLW92ZXJsYXknICFkZWZhdWx0O1xyXG4kbW9kYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCMzMzMsIDAuNykgIWRlZmF1bHQ7XHJcbi8vL1xyXG5cclxuJW1vZGFsIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogJG1vZGFsLXppbmRleCArIDE7XHJcbiAgYmFja2dyb3VuZDogJG1vZGFsLWJhY2tncm91bmQ7XHJcbiAgZmxleDogMCAwIGF1dG87XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRtb2RhbC1zaXplcywgbWVkaXVtKTtcclxuICB9XHJcblxyXG4gIC5ncmlkLWNvbnRlbnQsIC5ncmlkLWJsb2NrIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIC5jbG9zZS1idXR0b24sIFtmYS1jbG9zZV0ge1xyXG4gICAgei1pbmRleDogJG1vZGFsLXppbmRleCArIDE7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbW9kYWwtZGlhbG9nKCkge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5AbWl4aW4gbW9kYWwtbGF5b3V0KFxyXG4gICR3aWR0aDogbWFwLWdldCgkbW9kYWwtc2l6ZXMsIG1lZGl1bSksXHJcbiAgJGRpYWxvZzogZmFsc2VcclxuKSB7XHJcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XHJcbn1cclxuQG1peGluIG1vZGFsLXN0eWxlKFxyXG4gICRib3JkZXI6ICRtb2RhbC1ib3JkZXIsXHJcbiAgJHJhZGl1czogJG1vZGFsLXJhZGl1cyxcclxuICAkc2hhZG93OiAkbW9kYWwtc2hhZG93XHJcbikge1xyXG4gIEBpZiAkYm9yZGVyICE9IDAge1xyXG4gICAgYm9yZGVyOiAkYm9yZGVyO1xyXG4gIH1cclxuICBAaWYgJHJhZGl1cyAhPSAwIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgfVxyXG4gIEBpZiAkc2hhZG93ICE9IG5vbmUge1xyXG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtb2RhbChcclxuICAkd2lkdGg6IG1hcC1nZXQoJG1vZGFsLXNpemVzLCBtZWRpdW0pLFxyXG4gICRib3JkZXI6ICRtb2RhbC1ib3JkZXIsXHJcbiAgJHJhZGl1czogJG1vZGFsLXJhZGl1cyxcclxuICAkc2hhZG93OiAkbW9kYWwtc2hhZG93XHJcbikge1xyXG4gIEBleHRlbmQgJW1vZGFsO1xyXG4gIEBpbmNsdWRlIG1vZGFsLWxheW91dCgkd2lkdGgpO1xyXG4gIEBpbmNsdWRlIG1vZGFsLXN0eWxlKCRib3JkZXIsICRyYWRpdXMsICRzaGFkb3cpO1xyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKG1vZGFsKSB7XHJcbiAgLm1vZGFsIHtcclxuICAgIEBpbmNsdWRlIG1vZGFsO1xyXG5cclxuICAgIEBlYWNoICRzaXplIGluIG1hcC1rZXlzKCRtb2RhbC1zaXplcykge1xyXG4gICAgICAkd2lkdGg6IG1hcC1nZXQoJG1vZGFsLXNpemVzLCAkc2l6ZSk7XHJcbiAgICAgIEBpZiAkc2l6ZSAhPSBtZWRpdW0ge1xyXG4gICAgICAgIC4jeyRzaXplfSA+ICYgeyBAaW5jbHVkZSBtb2RhbC1sYXlvdXQoJHdpZHRoKTsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRpYWxvZyA+ICYge1xyXG4gICAgICBAaW5jbHVkZSBtb2RhbC1kaWFsb2c7XHJcbiAgICB9XHJcbiAgICAuY29sbGFwc2UgPiAmIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC4jeyRtb2RhbC1vdmVybGF5LWNsYXNzfSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAkbW9kYWwtemluZGV4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1vdmVybGF5LWJhY2tncm91bmQ7XHJcblxyXG4gICAgLy8gSG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IGNlbnRlciB0aGUgbW9kYWxcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qXHJcbiAgU1dJVENIXHJcbiAgLS0tLS0tXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gU3dpdGNoXHJcbiRzd2l0Y2gtd2lkdGg6IHJlbS1jYWxjKDUwKSAhZGVmYXVsdDtcclxuJHN3aXRjaC1oZWlnaHQ6IHJlbS1jYWxjKDMyKSAhZGVmYXVsdDtcclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAjY2NjICFkZWZhdWx0O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJHN3aXRjaC1ib3JkZXI6IDAgIWRlZmF1bHQ7XHJcbiRzd2l0Y2gtcmFkaXVzOiA5OTk5cHggIWRlZmF1bHQ7XHJcbiRzd2l0Y2gtYW5pbWF0aW9uLXNwZWVkOiAwLjE1cyAhZGVmYXVsdDtcclxuXHJcbiRzd2l0Y2gtcGFkZGxlLWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiA0cHggIWRlZmF1bHQ7XHJcbi8vL1xyXG5cclxuJXN3aXRjaCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICA+IGlucHV0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IC05OTk5cHg7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuXHJcbiAgPiBsYWJlbCB7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgIC8vIFBhZGRsZVxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLypcclxuICBEZWZpbmVzIHRoZSBkaW1tZW5zaW9ucyBvZiB0aGUgc3dpdGNoLlxyXG5cclxuICAkd2lkdGggLSB3aWR0aCBvZiB0aGUgc3dpdGNoLlxyXG4gICRoZWlnaHQgLSBoZWlnaHQgb2YgdGhlIHN3aXRjaC5cclxuKi9cclxuQG1peGluIHN3aXRjaC1sYXlvdXQoXHJcbiAgJHdpZHRoOiAkc3dpdGNoLXdpZHRoLFxyXG4gICRoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0XHJcbikge1xyXG4gIHdpZHRoOiAkd2lkdGg7XHJcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG5cclxuICA+IGxhYmVsIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgd2lkdGg6ICRoZWlnaHQ7XHJcbiAgICAgIGhlaWdodDogJGhlaWdodDtcclxuICAgIH1cclxuICB9XHJcbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgbGVmdDogJHdpZHRoIC0gJGhlaWdodDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzd2l0Y2gtc3R5bGUoXHJcbiAgJGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZCxcclxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmUsXHJcbiAgJGJvcmRlcjogJHN3aXRjaC1ib3JkZXIsXHJcbiAgJHJhZGl1czogJHN3aXRjaC1yYWRpdXMsXHJcbiAgJHBhZGRsZS1jb2xvcjogJHN3aXRjaC1wYWRkbGUtY29sb3IsXHJcbiAgJHBhZGRsZS1vZmZzZXQ6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldCxcclxuICAkYW5pbWF0aW9uLXNwZWVkOiAkc3dpdGNoLWFuaW1hdGlvbi1zcGVlZFxyXG4pIHtcclxuICBAaWYgaGFzdmFsdWUoJGJvcmRlcikge1xyXG4gICAgYm9yZGVyOiAkYm9yZGVyO1xyXG4gIH1cclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG5cclxuICA+IGxhYmVsIHtcclxuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJHBhZGRsZS1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuICAgICAgdHJhbnNpdGlvbjogbGVmdCAkYW5pbWF0aW9uLXNwZWVkIGVhc2Utb3V0O1xyXG5cclxuICAgICAgQGlmIGhhc3ZhbHVlKCRwYWRkbGUtb2Zmc2V0KSB7XHJcbiAgICAgICAgYm9yZGVyOiAkcGFkZGxlLW9mZnNldCBzb2xpZCAkYmFja2dyb3VuZFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xyXG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGlmIGhhc3ZhbHVlKCRwYWRkbGUtb2Zmc2V0KSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1hY3RpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzd2l0Y2goKSB7XHJcbiAgQGV4dGVuZCAlc3dpdGNoO1xyXG4gIEBpbmNsdWRlIHN3aXRjaC1sYXlvdXQ7XHJcbiAgQGluY2x1ZGUgc3dpdGNoLXN0eWxlO1xyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKHN3aXRjaCkge1xyXG4gIC5zd2l0Y2gge1xyXG4gICAgQGluY2x1ZGUgc3dpdGNoO1xyXG5cclxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBzd2l0Y2gtbGF5b3V0KHJlbS1jYWxjKDQwKSwgcmVtLWNhbGMoMjYpKTsgfVxyXG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHN3aXRjaC1sYXlvdXQocmVtLWNhbGMoNjApLCByZW0tY2FsYygzOCkpOyB9XHJcbiAgfVxyXG59XHJcbiIsIi8qXHJcbiAgVEFCU1xyXG4gIC0tLS1cclxuKi9cclxuXHJcbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xyXG4vLyBUYWJzXHJcbiR0YWJzdHJpcC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcclxuXHJcbiR0YWItdGl0bGUtYmFja2dyb3VuZDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbiR0YWItdGl0bGUtYmFja2dyb3VuZC1ob3Zlcjogc21hcnRzY2FsZSgkdGFiLXRpdGxlLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJHRhYi10aXRsZS1iYWNrZ3JvdW5kLWFjdGl2ZTogc21hcnRzY2FsZSgkdGFiLXRpdGxlLWJhY2tncm91bmQsIDMlKSAhZGVmYXVsdDtcclxuJHRhYi10aXRsZS1jb2xvcjogaXNpdGxpZ2h0KCR0YWItdGl0bGUtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XHJcbiR0YWItdGl0bGUtY29sb3ItYWN0aXZlOiAkdGFiLXRpdGxlLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuJHRhYi10aXRsZS1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbiR0YWItY29udGVudC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XHJcbi8vL1xyXG5cclxuQG1peGluIHRhYnN0cmlwKFxyXG5cdCRvcmllbnRhdGlvbjogaG9yaXpvbnRhbCxcclxuXHQkYmFja2dyb3VuZDogJHRhYnN0cmlwLWJhY2tncm91bmRcclxuKSB7XHJcblx0LypcclxuXHRcdENvbnRhaW5lciBzdHlsZXNcclxuXHQqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcblxyXG5cdEBpZiAkb3JpZW50YXRpb24gPT0gdmVydGljYWwge1xyXG5cdCAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xyXG5cdH1cclxuXHRAZWxzZSB7XHJcblx0XHRmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHRhYnN0cmlwLWl0ZW0oXHJcblx0JGJhY2tncm91bmQ6ICR0YWItdGl0bGUtYmFja2dyb3VuZCxcclxuXHQkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi10aXRsZS1iYWNrZ3JvdW5kLWhvdmVyLFxyXG5cdCRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi10aXRsZS1iYWNrZ3JvdW5kLWFjdGl2ZSxcclxuXHQkY29sb3I6ICR0YWItdGl0bGUtY29sb3IsXHJcblx0JGNvbG9yLWFjdGl2ZTogJHRhYi10aXRsZS1jb2xvci1hY3RpdmUsXHJcblx0JHBhZGRpbmc6ICR0YWItdGl0bGUtcGFkZGluZ1xyXG4pIHtcclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBtYXJnaW46IDA7XHJcbiAgZmxleDogMCAxIGF1dG87XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcclxuICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0YWItY29udGVudChcclxuXHQkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcclxuKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbn1cclxuXHJcbkBtaXhpbiB0YWItY29udGVudC1pdGVtIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyh0YWJzKSB7XHJcbiAgLnRhYnMge1xyXG4gICAgQGluY2x1ZGUgdGFic3RyaXAoaG9yaXpvbnRhbCk7XHJcblxyXG4gICAgJi52ZXJ0aWNhbCB7XHJcbiAgICAgIEBpbmNsdWRlIHRhYnN0cmlwKHZlcnRpY2FsKTtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWl0ZW0ge1xyXG4gICAgICBAaW5jbHVkZSB0YWJzdHJpcC1pdGVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhYi1jb250ZW50cyB7XHJcbiAgICBAaW5jbHVkZSB0YWItY29udGVudDtcclxuXHJcbiAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSB0YWItY29udGVudC1pdGVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKlxyXG5cdE9mZi1jYW52YXMgbWVudVxyXG4gIC0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBBIGdlbmVyaWMgY29udGFpbmVyIHRoYXQgc3RheXMgZml4ZWQgdG8gdGhlIGxlZnQsIHRvcCwgcmlnaHQsIG9yIGJvdHRvbSBvZiB0aGUgc2NyZWVuLCBhbmQgaXMgc3VtbW9uZWQgd2hlbiBuZWVkZWQuIFdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLCB0aGUgYXBwIGZyYW1lIHNoaWZ0cyBvdmVyIHRvIHJldmVhbCB0aGUgbWVudS5cclxuKi9cclxuXHJcbi8vLyBARm91bmRhdGlvbi5zZXR0aW5nc1xyXG4vLyBPZmYtY2FudmFzXHJcbiRvZmZjYW52YXMtc2l6ZS1ob3Jpem9udGFsOiAyNTBweCAhZGVmYXVsdDtcclxuJG9mZmNhbnZhcy1zaXplLXZlcnRpY2FsOiAyNTBweCAhZGVmYXVsdDtcclxuXHJcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcclxuJG9mZmNhbnZhcy1jb2xvcjogaXNpdGxpZ2h0KCRvZmZjYW52YXMtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XHJcbiRvZmZjYW52YXMtcGFkZGluZzogMCAhZGVmYXVsdDtcclxuJG9mZmNhbnZhcy1zaGFkb3c6IDNweCAwIDEwcHggcmdiYShibGFjaywgMC4yNSkgIWRlZmF1bHQ7XHJcbiRvZmZjYW52YXMtYW5pbWF0aW9uLXNwZWVkOiAwLjI1cyAhZGVmYXVsdDtcclxuXHJcbiRvZmZjYW52YXMtZnJhbWUtc2VsZWN0b3I6ICcuZ3JpZC1mcmFtZScgIWRlZmF1bHQ7XHJcbi8vL1xyXG5cclxuJW9mZi1jYW52YXMge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtYW5pbWF0aW9uLXNwZWVkIGVhc2Utb3V0O1xyXG4gIHotaW5kZXg6IDI7XHJcblxyXG4gIC8vIEFjdGl2ZSBzdGF0ZVxyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMCkgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC8vIEZyYW1lIHN0eWxlc1xyXG4gICYgfiAjeyRvZmZjYW52YXMtZnJhbWUtc2VsZWN0b3J9IHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMCwwKTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlLW91dDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gb2ZmLWNhbnZhcy1kZXRhY2hlZCB7XHJcbiAgei1pbmRleDogMDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG5cclxuICAmLCAmLmlzLWFjdGl2ZSB7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmIH4gI3skb2ZmY2FudmFzLWZyYW1lLXNlbGVjdG9yfSB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG9mZi1jYW52YXMtbGF5b3V0KFxyXG4gICRwb3NpdGlvbjogbGVmdCxcclxuICAkc2l6ZTogZGVmYXVsdCxcclxuICAkc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvd1xyXG4pIHtcclxuICAvKlxyXG4gICAgR2V0IHNoYWRvdyB2YWx1ZXMgZm9yIGxhdGVyIHVzZVxyXG4gICovXHJcbiAgJHNoYWRvdy1sZW5ndGg6ICcnO1xyXG4gICRzaGFkb3ctc2l6ZTogJyc7XHJcbiAgJHNoYWRvdy1jb2xvcjogJyc7XHJcbiAgQGlmIGhhc3ZhbHVlKCRzaGFkb3cpIHtcclxuICAgICRzaGFkb3ctbGVuZ3RoOiBnZXQtc2hhZG93LXZhbHVlKCRzaGFkb3csIHgpO1xyXG4gICAgJHNoYWRvdy1zaXplOiBnZXQtc2hhZG93LXZhbHVlKCRzaGFkb3csIHNpemUpO1xyXG4gICAgJHNoYWRvdy1jb2xvcjogZ2V0LXNoYWRvdy12YWx1ZSgkc2hhZG93LCBjb2xvcik7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgU2l6aW5nXHJcbiAgKi9cclxuICBAaWYgJHBvc2l0aW9uID09IGxlZnQgb3IgJHBvc2l0aW9uID09IHJpZ2h0IHtcclxuICAgIEBpZiAkc2l6ZSA9PSBkZWZhdWx0IHtcclxuICAgICAgJHNpemU6ICRvZmZjYW52YXMtc2l6ZS1ob3Jpem9udGFsO1xyXG4gICAgfVxyXG4gICAgd2lkdGg6ICRzaXplO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAaWYgJHNpemUgPT0gZGVmYXVsdCB7XHJcbiAgICAgICRzaXplOiAkb2ZmY2FudmFzLXNpemUtdmVydGljYWw7XHJcbiAgICB9XHJcbiAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAgUG9zaXRpb25pbmdcclxuICAqL1xyXG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgQGlmIGhhc3ZhbHVlKCRzaGFkb3cpIHsgYm94LXNoYWRvdzogaW5zZXQgKC0kc2hhZG93LWxlbmd0aCkgMCAkc2hhZG93LXNpemUgJHNoYWRvdy1jb2xvcjsgfVxyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgJiB+ICN7JG9mZmNhbnZhcy1mcmFtZS1zZWxlY3Rvcn0geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpICFpbXBvcnRhbnQ7IH1cclxuICAgIH1cclxuICB9XHJcbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIEBpZiBoYXN2YWx1ZSgkc2hhZG93KSB7IGJveC1zaGFkb3c6IGluc2V0ICRzaGFkb3ctbGVuZ3RoIDAgJHNoYWRvdy1zaXplICRzaGFkb3ctY29sb3I7IH1cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgJiB+ICN7JG9mZmNhbnZhcy1mcmFtZS1zZWxlY3Rvcn0geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKSAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICBAaWYgaGFzdmFsdWUoJHNoYWRvdykgeyBib3gtc2hhZG93OiBpbnNldCAwICgtJHNoYWRvdy1sZW5ndGgpICRzaGFkb3ctc2l6ZSAkc2hhZG93LWNvbG9yOyB9XHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICYgfiAjeyRvZmZjYW52YXMtZnJhbWUtc2VsZWN0b3J9IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKSAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICAgIEBpZiBoYXN2YWx1ZSgkc2hhZG93KSB7IGJveC1zaGFkb3c6IGluc2V0IDAgJHNoYWRvdy1sZW5ndGggJHNoYWRvdy1zaXplICRzaGFkb3ctY29sb3I7IH1cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgJiB+ICN7JG9mZmNhbnZhcy1mcmFtZS1zZWxlY3Rvcn0geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKSAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gb2ZmLWNhbnZhcy1zdHlsZShcclxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxyXG4gICRjb2xvcjogJG9mZmNhbnZhcy1jb2xvcixcclxuICAkcGFkZGluZzogJG9mZmNhbnZhcy1wYWRkaW5nXHJcbikge1xyXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG5cclxuICBAaWYgJGNvbG9yID09IGF1dG8ge1xyXG4gICAgY29sb3I6IGlzaXRsaWdodCgkYmFja2dyb3VuZCwgIzAwMCwgI2ZmZik7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG5cclxuICBAaWYgaGFzdmFsdWUoJHBhZGRpbmcpIHtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyhvZmYtY2FudmFzKSB7XHJcbiAgLm9mZi1jYW52YXMge1xyXG4gICAgQGV4dGVuZCAlb2ZmLWNhbnZhcztcclxuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtbGF5b3V0O1xyXG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdHlsZTtcclxuXHJcbiAgICAmLnRvcCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbGF5b3V0KHRvcCk7IH1cclxuICAgICYucmlnaHQgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1sYXlvdXQocmlnaHQpOyB9XHJcbiAgICAmLmJvdHRvbSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbGF5b3V0KGJvdHRvbSk7IH1cclxuICAgICYubGVmdCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1sYXlvdXQobGVmdCk7IH1cclxuXHJcbiAgICAmLmRldGFjaGVkIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1kZXRhY2hlZDsgfVxyXG5cclxuICAgICYucHJpbWFyeSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtc3R5bGUoJHByaW1hcnktY29sb3IsIGF1dG8pOyB9XHJcbiAgICAmLmRhcmsgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXN0eWxlKCRkYXJrLWNvbG9yLCBhdXRvKTsgfVxyXG4gIH1cclxufVxyXG4iLCIvKlxyXG4gIEFDQ09SRElPTlxyXG4gIC0tLS0tLS0tLVxyXG5cclxuICBUaGUgdHJ1c3kgYWNjb3JkaW9uIGFsbG93cyB5b3UgdG8gY3JlYXRlIGEgc2VyaWVzIG9mIHZlcnRpY2FsIHRhYnMuXHJcbiovXHJcblxyXG4vLy8gQEZvdW5kYXRpb24uc2V0dGluZ3NcclxuLy8gQWNjb3JkaW9uXHJcbiRhY2NvcmRpb24tYm9yZGVyOiAxcHggc29saWQgJGdyYXktZGFyayAhZGVmYXVsdDtcclxuXHJcbiRhY2NvcmRpb24tdGl0bGUtYmFja2dyb3VuZDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XHJcbiRhY2NvcmRpb24tdGl0bGUtYmFja2dyb3VuZC1ob3Zlcjogc21hcnRzY2FsZSgkYWNjb3JkaW9uLXRpdGxlLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcclxuJGFjY29yZGlvbi10aXRsZS1iYWNrZ3JvdW5kLWFjdGl2ZTogc21hcnRzY2FsZSgkYWNjb3JkaW9uLXRpdGxlLWJhY2tncm91bmQsIDMlKSAhZGVmYXVsdDtcclxuJGFjY29yZGlvbi10aXRsZS1jb2xvcjogaXNpdGxpZ2h0KCRhY2NvcmRpb24tdGl0bGUtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XHJcbiRhY2NvcmRpb24tdGl0bGUtY29sb3ItYWN0aXZlOiBpc2l0bGlnaHQoJGFjY29yZGlvbi10aXRsZS1iYWNrZ3JvdW5kKSAhZGVmYXVsdDtcclxuXHJcbiRhY2NvcmRpb24tdGl0bGUtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xyXG4vLy9cclxuXHJcbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUoXHJcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tdGl0bGUtYmFja2dyb3VuZCxcclxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi10aXRsZS1iYWNrZ3JvdW5kLWhvdmVyLFxyXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJGFjY29yZGlvbi10aXRsZS1iYWNrZ3JvdW5kLWFjdGl2ZSxcclxuICAkY29sb3I6ICRhY2NvcmRpb24tdGl0bGUtY29sb3IsXHJcbiAgJGNvbG9yLWFjdGl2ZTogJGFjY29yZGlvbi10aXRsZS1jb2xvci1hY3RpdmUsXHJcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tdGl0bGUtcGFkZGluZ1xyXG4pIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICB9XHJcblxyXG4gIC5pcy1hY3RpdmUgPiAmIHtcclxuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcclxuICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGFjY29yZGlvbi1jb250ZW50KFxyXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZ1xyXG4pIHtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuXHJcbiAgZGlzcGxheTogbm9uZTtcclxuICAuaXMtYWN0aXZlID4gJiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoYWNjb3JkaW9uKSB7XHJcbiAgLmFjY29yZGlvbiB7XHJcbiAgICBAaWYgaGFzdmFsdWUoJGFjY29yZGlvbi1ib3JkZXIpIHtcclxuICAgICAgYm9yZGVyOiAkYWNjb3JkaW9uLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgICAuYWNjb3JkaW9uLWl0ZW0ge1xyXG5cclxuICAgIH1cclxuICAgIC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XHJcbiAgICB9XHJcbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcclxuICAgIH1cclxufVxyXG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */ diff --git a/afb-client/dist.prod/global_styles/ibz-global.min.css b/afb-client/dist.prod/global_styles/ibz-global.min.css new file mode 100644 index 0000000..74b2072 --- /dev/null +++ b/afb-client/dist.prod/global_styles/ibz-global.min.css @@ -0,0 +1,2 @@ +submit-button{float:right;display:inline-block;border:1px solid #676767;box-shadow:2px 2px 1px gray;color:grey;border-radius:5px;font-style:italic;padding:0 .5rem;margin:.5rem;background:#d1d1e0}submit-button i{padding-right:.3rem;font-size:2rem}submit-button span{font-size:1rem}submit-button:hover{background:#f3f3f3;border:2px solid #4d4d4d}zf-modal{background-color:rgba(180,180,180,.5)}.box-content{border:2px solid #dcdcdc!important;border-radius:5px;min-width:98%!important;margin:.5rem;background:rgba(200,205,200,.3)}.box-content .box-title{display:block;font-size:1.3rem}.ui-notification{width:auto;border-radius:5px} +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9pYnotZ2xvYmFsLnNjc3MiLCJhcHAvX2liei1taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQmEsY0FDVCxNQUFPLE1DRFAsUUFBUyxhQUNULE9BQVcsSUFBTSxNQUFDLFFBQ2xCLFdBQWUsSUFBSSxJQUFJLElBQUMsS0FDeEIsTUREb0IsS0NFcEIsY0FBZSxJQUNmLFdBQVksT0FDWixRQUFTLEVBQUEsTUFDVCxPQUFPLE1BQ1AsV0FBWSxRQUNYLGdCQUNHLGNBQWUsTUFDZixVQVp5QixLQWN6QixtQkFBRSxVQUFXLEtBRVYsb0JBQ0wsV0FBWSxRQUNaLE9BQVcsSUFBTSxNQUFDLFFEWmhCLFNBQ04saUJBQWtCLHFCQUdSLGFDcEJSLE9BQVEsSUFBQSxNQUFBLGtCQUNSLGNBQWUsSUFJZixVQUFXLGNBQ1gsT0FBUSxNQUNSLFdBQVkscUJEZ0JGLHdCQUNOLFFBQVMsTUFDVCxVQUFXLE9BS0gsaUJBQ1osTUFBTyxLQUNQLGNBQWUiLCJmaWxlIjoiYXBwL2liei1nbG9iYWwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG5cblRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG5pdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxudGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG5cblRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2Zcbk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG5cbllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG5hbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiovXG5cbkBpbXBvcnQgXCJhcHAvaWJ6LW1peGluc1wiO1xuXG5zdWJtaXQtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgQGluY2x1ZGUgaWJ6LWJ1dHRvbihncmV5KTtcbn1cblxuemYtbW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MCwxODAsMTgwLC41KTtcbn1cblxuLmJveC1jb250ZW50IHtcbiAgICAgQGluY2x1ZGUgaWJ6LWJveC1jb250ZW50O1xuXG4gICAgLmJveC10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG59XG5cbi8vIENoYW5nZSBOb3RpZmljYXRpb25zIGRlZmF1bHQgc2l6ZVxuLnVpLW5vdGlmaWNhdGlvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufSIsIi8qXG4gICAgRXZlcnkgU0NTUyBmaWxlcyB3aWxsIGJlIGluamVjdGVkIGludG8gbWFpbiBIVE1MIHBhZ2VcbiovXG4lc2hhZG93LXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGxpbmVhciAwcywgYm94LXNoYWRvdyAwLjJzIGxpbmVhciAwcztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbkBtaXhpbiBpYnotYm94LWNvbnRlbnQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGdhaW5zYm9ybyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiA5OCUgIWltcG9ydGFudDsgXG4gICAgbWFyZ2luOiAuNXJlbSAuNXJlbSAuNXJlbSAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwMCwyMDUsMjAwLC4zKTtcbn1cblxuQG1peGluIGliei1idXR0b24gKCRjb2xvciwgJHNpemU6MnJlbSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLDEwJSk7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAxcHggYWRqdXN0LWh1ZSgkY29sb3IsMjBkZWcpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiAwcmVtIC41cmVtIDByZW0gLjVyZW07XG4gICAgbWFyZ2luOi41cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oIzk0OTRiNywgMjAlKTtcbiAgICBpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4zcmVtO1xuICAgICAgICBmb250LXNpemU6ICRzaXplO1xuICAgIH1cbiAgICBzcGFuIHtmb250LXNpemU6IDFyZW19XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvciwgNDUlKTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGRhcmtlbigkY29sb3IsMjAlKTtcbiAgICAgIFxuICAgIH1cbn1cblxuQG1peGluIGliei1pbnB1dC1hbGVydCAoJGNvbG9yLCAkYmFja2dyb3VuZCkge1xuICAgIHBvc2l0aW9uICA6Zml4ZWQ7XG4gICAgbWFyZ2luOiAtMi4ycmVtIDAgMCAxNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLDEwJSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */ diff --git a/afb-client/dist.prod/opa/AFBclient.min.css b/afb-client/dist.prod/opa/AFBclient.min.css new file mode 100644 index 0000000..c3fcafe --- /dev/null +++ b/afb-client/dist.prod/opa/AFBclient.min.css @@ -0,0 +1,9 @@ +submit-button{float:right;display:inline-block;border:1px solid #676767;box-shadow:2px 2px 1px gray;color:grey;border-radius:5px;font-style:italic;padding:0 .5rem;margin:.5rem;background:#d1d1e0}submit-button i{padding-right:.3rem;font-size:2rem}submit-button span{font-size:1rem}submit-button:hover{background:#f3f3f3;border:2px solid #4d4d4d}zf-modal{background-color:rgba(180,180,180,.5)}.box-content{border:2px solid #dcdcdc!important;border-radius:5px;min-width:98%!important;margin:.5rem;background:rgba(200,205,200,.3)}.box-content .box-title{display:block;font-size:1.3rem}.ui-notification{width:auto;border-radius:5px} +token-refresh{display:block;float:right;margin:.5rem 1rem 0 0}.button-box{height:4.5rem}.button-box .session-button{float:left;width:5rem}.button-box .response>span{display:block;margin:.3rem .5rem}.button-box .fail{color:red;border:1px solid #c00}.button-box .success{color:green;border:1px solid #004d00}.message-box{height:auto;width:100%;font-size:.75rem}.message-box .response .err-no{color:grey}.message-box .response .res.err-ok{color:#00f}.message-box .response .req.err-ok{color:#8a2be2}.message-box .response .status.err-ok{color:green}.message-box .response .status.err-fx{color:red} +.sample-box{display:block;height:4.5rem}.sample-box .sample-button{float:right;width:5rem}.sample-box .muted-off-off,.sample-box .muted-on-on{background:#8a2be2}.sample-box .muted-error{background:red} +.upload-file{display:inline-block;float:right;height:5rem;width:5rem;margin:.5rem}.upload-file img{height:inherit}.upload-file .ibz-range-slider{height:10%!important;border-radius:5px;background-color:#d3d3d3!important}.upload-file .ibz-range-slider .range-slider-handle{width:10%!important;height:100%!important;margin-top:.2rem;background-color:purple!important}.upload-file .ibz-range-slider .range-slider-active-segment{height:80%!important;background-color:#90ee90}input-text alert{position:fixed;margin:-2.2rem 0 0 15rem;border-radius:5px;font-style:italic;border-color:rgba(175,175,175,.6);color:#00008b;background-color:rgba(200,200,200,.6)!important;padding:.2rem!important}input-text input{margin-bottom:.5rem!important}input-text label{margin-top:1rem!important}input-text .required{float:right;color:#87cefa}input-text .required.valid{color:green}input-text .required.invalid{color:plum}input-text .status-untouch{border-color:rgba(200,200,200,.6)!important;box-shadow:0 1px 1px rgba(0,0,0,.075) inset,0 0 8px rgba(200,200,200,.6)!important;color:#696969!important}input-text input:focus{border-color:rgba(82,168,236,.8);box-shadow:0 1px 1px rgba(0,0,0,.075) inset,0 0 8px rgba(82,168,236,.8)!important;transition:border .2s linear 0s,box-shadow .2s linear 0s;color:#483d8b!important}input-text .status-valid{border-color:rgba(154,205,50,.6)!important;box-shadow:0 1px 1px rgba(0,0,0,.075) inset,0 0 8px rgba(154,205,50,.6)!important}input-text .status-invalid{border-color:rgba(154,17,69,.6);box-shadow:0 1px 1px rgba(0,0,0,.075) inset,0 0 8px rgba(154,17,69,.6)!important;color:#9a1145} +link-button,link-button.secondary{display:inline-block;font-style:italic;margin:.5rem}link-button i,link-button span,link-button.secondary span{font-size:1rem}link-button{border:1px solid #0040ff;box-shadow:2px 2px 1px #43f;color:#36f;border-radius:5px;padding:0 .5rem;background:#d1d1e0}link-button i{padding-right:.3rem}link-button:hover{background:#fff;border:2px solid #03c}link-button.secondary{border:1px solid #668dff;box-shadow:2px 2px 1px #a199ff;color:#99b3ff;border-radius:5px;padding:0 .5rem;background:#d1d1e0}link-button.secondary i{padding-right:.3rem;font-size:1rem}link-button.secondary:hover{background:#fff;border:2px solid #3367ff} +link-button i,link-button span,token-refresh span{font-size:1rem}link-button{display:inline-block;border:1px solid #0040ff;box-shadow:2px 2px 1px #43f;color:#36f;border-radius:5px;font-style:italic;padding:0 .5rem;margin:.5rem;background:#d1d1e0}link-button i{padding-right:.3rem}link-button:hover{background:#fff;border:2px solid #03c}tip-modal{position:relative}.tip-modal-popup{width:20rem;position:absolute;top:1em;padding:.2em .6em;border:1px solid #963;background-color:#e5ffff;color:#000;opacity:0;transition:visibility .5s linear 1s,opacity 1s linear;border-radius:5px}.tip-modal-popup i{margin:0 .3rem 0 0;display:inline}token-refresh{display:inline-block;border:1px solid #676767;box-shadow:2px 2px 1px gray;color:grey;border-radius:5px;font-style:italic;padding:0 .5rem;margin:.5rem 1rem .5rem .5rem;background:#d1d1e0}token-refresh i{padding-right:.3rem;font-size:1rem;margin-left:.5rem}token-refresh:hover{background:#f3f3f3;border:2px solid #4d4d4d}token-refresh.online{color:#06c}token-refresh.online i{color:#0f0}token-refresh.offline{color:#f0f}token-refresh.offline i{color:red} +.range-slider-handle{display:inline-block;position:absolute;z-index:1;top:-.2rem;width:2rem;height:1.375rem;border:1px solid;cursor:pointer;background:#008cba}.range-slider-handle,.range-slider.radius{background:#008cba;-webkit-border-radius:3px;border-radius:3px}.range-slider-active-segment{display:inline-block;top:.07rem;position:absolute;height:.8rem;background:#e5e5e5}.ibz-range-slider{background-color:rgba(154,205,50,.6)!important;height:1rem;position:relative}.ibz-range-slider .range-slider-active-segment{background-color:rgba(82,168,200,.6)}.ibz-range-slider-display{background-color:rgba(82,168,200,.6)!important;width:4rem!important;padding:.25rem;text-align:center}.ibz-range-slider-start,.ibz-range-slider-stop{display:inline-block;position:absolute;padding-top:2px;height:95%;background:repeating-linear-gradient(45deg,#606dbc,#606dbc 10px,#465298 10px,#465298 20px)} + +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy9hcHAvaWJ6LWdsb2JhbC5zY3NzIiwic3R5bGVzL2FwcC9faWJ6LW1peGlucy5zY3NzIiwicGFnZXMvSG9tZS9Ib21lTW9kdWxlLnNjc3MiLCJwYWdlcy9TYW1wbGUvU2FtcGxlTW9kdWxlLnNjc3MiLCJ3aWRnZXRzL0Zvcm1JbnB1dC9Gb3JtSW5wdXQuc2NzcyIsIndpZGdldHMvTmF2aWdhdGlvbi9OYXZpZ2F0aW9uLnNjc3MiLCJ3aWRnZXRzL05vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9ucy5zY3NzIiwid2lkZ2V0cy9SYW5nZVNsaWRlcnMvUmFuZ2VzbGlkZXIuc2NzcyIsIndpZGdldHMvQnV0dG9ucy9TdWJtaXRCdXR0b25zL1N1Ym1pdEJ1dHRvbnMuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9CYSxjQUNULE1BQU8sTUNEUCxRQUFTLGFBQ1QsT0FBVyxJQUFNLE1BQUMsUUFDbEIsV0FBZSxJQUFJLElBQUksSUFBQyxLQUN4QixNRERvQixLQ0VwQixjQUFlLElBQ2YsV0FBWSxPQUNaLFFBQVMsRUFBQSxNQUNULE9BQU8sTUFDUCxXQUFZLFFBQ1gsZ0JBQ0csY0FBZSxNQUNmLFVBWnlCLEtBY3pCLG1CQUFFLFVBQVcsS0FFVixvQkFDTCxXQUFZLFFBQ1osT0FBVyxJQUFNLE1BQUMsUURaaEIsU0FDTixpQkFBa0IscUJBR1IsYUNwQlIsT0FBUSxJQUFBLE1BQUEsa0JBQ1IsY0FBZSxJQUlmLFVBQVcsY0FDWCxPQUFRLE1BQ1IsV0FBWSxxQkRnQkYsd0JBQ04sUUFBUyxNQUNULFVBQVcsT0FLSCxpQkFDWixNQUFPLEtBQ1AsY0FBZTtBRWxCTixjQUNULFFBQVMsTUFDVCxNQUFPLE1BQ1AsT0FBUSxNQUFBLEtBQUEsRUFBQSxFQUdELFlBQ1AsT0FBVSxPQUVLLDRCQUNiLE1BQU8sS0FDUCxNQUFPLEtBR08sMkJBQ1osUUFBUyxNQUNULE9BQVEsTUFBQSxNQUdQLGtCQUNELE1BdEJLLElBdUJMLE9BQVcsSUFBTSxNQUFDLEtBRWQscUJBQ0osTUEzQlEsTUE0QlIsT0FBVyxJQUFNLE1BQUMsUUFLZCxhQUNSLE9BQVUsS0FDVixNQUFPLEtBQ1AsVUFBVyxPQUdBLCtCQUFHLE1BQU0sS0FDTCxtQ0FBRyxNQUFPLEtBQ1YsbUNBQUcsTUFBTSxRQUNOLHNDQUFHLE1BQU0sTUFDVCxzQ0FBRyxNQUFNO0FDMUNwQixZQUNQLFFBQVMsTUFDVCxPQUFVLE9BRUksMkJBQ1osTUFBTyxNQUNQLE1BQU8sS0FHa0IsMkJBQTNCLHlCQUNJLFdBQVksUUFHSix5QkFDUixXQUFZO0FDMUJSLGFBQ1IsUUFBUyxhQUNULE1BQU8sTUFDUCxPQUFTLEtBQ1QsTUFBUyxLQUNULE9BQVEsTUFFTCxpQkFBRyxPQUFRLFFBRUcsK0JBQ2IsT0FBUSxjQUNSLGNBQWUsSUFDZixpQkFBa0Isa0JBRUUsb0RBQ2hCLE1BQU8sY0FDUCxPQUFRLGVBQ1IsV0FBWSxNQUNaLGlCQUFrQixpQkFHTSw0REFDeEIsT0FBUSxjQUNSLGlCQUFrQixRQVFyQixpQkhHTCxTQUFXLE1BQ1gsT0FBUSxRQUFBLEVBQUEsRUFBQSxNQUNSLGNBQWUsSUFDZixXQUFZLE9BQ1osYUFBYyxxQkFDZCxNR1JnQyxRSFNoQyxpQkdUOEMsK0JIVTlDLFFBQVMsZ0JHUkosaUJBQ0QsY0FBZSxnQkFHZCxpQkFDRCxXQUFZLGVBR1AscUJBRUwsTUFBTyxNQUNQLE1BQU8sUUFFSSwyQkFDWCxNQUFPLE1BR00sNkJBQ2IsTUFBTyxLQUdJLDJCQUNYLGFBQWtCLCtCQUNsQixXQUFhLEVBQUksSUFBSSxJQUFLLGlCQUFzQixNQUFHLEVBQUUsRUFBSSxJQUFLLCtCQUM5RCxNQUFPLGtCQUdBLHVCQUNQLGFBQWMsb0JBQ2QsV0FBYSxFQUFJLElBQUksSUFBSyxpQkFBc0IsTUFBRyxFQUFFLEVBQUksSUFBSyw4QkFDOUQsV0FBWSxPQUFBLElBQUEsT0FBQSxHQUFBLFdBQUEsSUFBQSxPQUFBLEdBQ1osTUFBTyxrQkFJRSx5QkFDVCxhQUFrQiw4QkFDbEIsV0FBYSxFQUFJLElBQUksSUFBSyxpQkFBc0IsTUFBRyxFQUFFLEVBQUksSUFBSyw4QkFJbkQsMkJBQ1gsYUFBYyxtQkFDZCxXQUFhLEVBQUksSUFBSSxJQUFLLGlCQUFzQixNQUFHLEVBQUUsRUFBSSxJQUFLLDZCQUM5RCxNQUFPO0FDakVKLFlBR1Usc0JKSmpCLFFBQVMsYUFLVCxXQUFZLE9BRVosT0FBTyxNQUVOLGNBSUcsaUJBQUEsMkJBQUUsVUFBVyxLSVpWLFlKQVAsT0FBVyxJQUFNLE1BQUMsUUFDbEIsV0FBZSxJQUFJLElBQUksSUFBQyxLQUN4QixNSUY2QixLSkc3QixjQUFlLElBRWYsUUFBUyxFQUFBLE1BRVQsV0FBWSxRQUNYLGNBQ0csY0FBZSxNQUtaLGtCQUNMLFdBQVksS0FDWixPQUFXLElBQU0sTUFBQyxLSWJILHNCSkhqQixPQUFXLElBQU0sTUFBQyxRQUNsQixXQUFlLElBQUksSUFBSSxJQUFDLFFBQ3hCLE1JQ3VDLFFKQXZDLGNBQWUsSUFFZixRQUFTLEVBQUEsTUFFVCxXQUFZLFFBQ1gsd0JBQ0csY0FBZSxNQUNmLFVJUDJDLEtKV3hDLDRCQUNMLFdBQVksS0FDWixPQUFXLElBQU0sTUFBQztBQVJuQixjQUlHLGlCQUFBLG1CQUFFLFVBQVcsS0tWVixZTEhQLFFBQVMsYUFDVCxPQUFXLElBQU0sTUFBQyxRQUNsQixXQUFlLElBQUksSUFBSSxJQUFDLEtBQ3hCLE1LQTZCLEtMQzdCLGNBQWUsSUFDZixXQUFZLE9BQ1osUUFBUyxFQUFBLE1BQ1QsT0FBTyxNQUNQLFdBQVksUUFDWCxjQUNHLGNBQWUsTUFLWixrQkFDTCxXQUFZLEtBQ1osT0FBVyxJQUFNLE1BQUMsS0tYZixVQUNMLFNBQVMsU0FHRyxpQkFFWixNQUFPLE1BQ1AsU0FBUyxTQUNULElBQUksSUFDSixRQUFTLEtBQUEsS0FDVCxPQUFPLElBQUEsTUFBQSxLQUNQLGlCQUFpQixRQUNqQixNQUFNLEtBQ04sUUFBUSxFQUNSLFdBQVcsV0FBQSxJQUFBLE9BQUEsR0FBQSxRQUFBLEdBQTJDLE9BQ3RELGNBQWUsSUFDZCxtQkFDRyxPQUFRLEVBQUEsTUFBQSxFQUFBLEVBQ1IsUUFBUyxPQUlKLGNMNUJULFFBQVMsYUFDVCxPQUFXLElBQU0sTUFBQyxRQUNsQixXQUFlLElBQUksSUFBSSxJQUFDLEtBQ3hCLE1LMEJvQixLTHpCcEIsY0FBZSxJQUNmLFdBQVksT0FDWixRQUFTLEVBQUEsTUFDVCxPQUFPLE1Ld0JPLEtMeEJQLE1BQUEsTUFDUCxXQUFZLFFBQ1gsZ0JBQ0csY0FBZSxNQUNmLFVLa0JxQixLQUN0QixZQUFhLE1MZlQsb0JBQ0wsV0FBWSxRQUNaLE9BQVcsSUFBTSxNQUFDLFFLaUJKLHFCQUNoQixNQUFPLEtBQ04sdUJBQUUsTUFBTyxLQUdPLHNCQUNqQixNQUFPLEtBQ04sd0JBQUUsTUFBTztBQ2xETSxxQkFDbEIsUUFBUyxhQUNULFNBQVUsU0FDVixRQUFTLEVBQ1QsSUFBSyxPQUNMLE1BQU8sS0FDUCxPQUFRLFNBQ1IsT0FBUSxJQUFBLE1BQ1IsT0FBUSxRQUNSLFdBQVksUUFHNEIscUJBQTdCLHFCQUNYLFdBQVksUUFDWixzQkFBdUIsSUFDdkIsY0FBZSxJQUdXLDZCQUMxQixRQUFTLGFBQ1QsSUFBSyxPQUNMLFNBQVUsU0FDVixPQUFRLE1BQ1IsV0FBWSxRQUdHLGtCQUNkLGlCQUFzQiw4QkFDdEIsT0FBUSxLQUNSLFNBQVUsU0FFaUIsK0NBQzFCLGlCQUFrQixvQkFOTCwwQkFVYixpQkFBc0IsOEJBQ3RCLE1BQVEsZUFDUixRQUFTLE9BQ1QsV0FBVyxPQWJiLHdCQUFlLHVCQWlCZCxRQUFTLGFBQ1QsU0FBVSxTQUNWLFlBQWEsSUFDYixPQUFRLElBQ1IsV0FBWTtBQzFEZiIsImZpbGUiOiJBRkJjbGllbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG5cblRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG5pdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxudGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG5cblRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2Zcbk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG5cbllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG5hbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiovXG5cbkBpbXBvcnQgXCJhcHAvaWJ6LW1peGluc1wiO1xuXG5zdWJtaXQtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgQGluY2x1ZGUgaWJ6LWJ1dHRvbihncmV5KTtcbn1cblxuemYtbW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MCwxODAsMTgwLC41KTtcbn1cblxuLmJveC1jb250ZW50IHtcbiAgICAgQGluY2x1ZGUgaWJ6LWJveC1jb250ZW50O1xuXG4gICAgLmJveC10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG59XG5cbi8vIENoYW5nZSBOb3RpZmljYXRpb25zIGRlZmF1bHQgc2l6ZVxuLnVpLW5vdGlmaWNhdGlvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufSIsIi8qXG4gICAgRXZlcnkgU0NTUyBmaWxlcyB3aWxsIGJlIGluamVjdGVkIGludG8gbWFpbiBIVE1MIHBhZ2VcbiovXG4lc2hhZG93LXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGxpbmVhciAwcywgYm94LXNoYWRvdyAwLjJzIGxpbmVhciAwcztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbkBtaXhpbiBpYnotYm94LWNvbnRlbnQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGdhaW5zYm9ybyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiA5OCUgIWltcG9ydGFudDsgXG4gICAgbWFyZ2luOiAuNXJlbSAuNXJlbSAuNXJlbSAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwMCwyMDUsMjAwLC4zKTtcbn1cblxuQG1peGluIGliei1idXR0b24gKCRjb2xvciwgJHNpemU6MnJlbSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLDEwJSk7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAxcHggYWRqdXN0LWh1ZSgkY29sb3IsMjBkZWcpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiAwcmVtIC41cmVtIDByZW0gLjVyZW07XG4gICAgbWFyZ2luOi41cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oIzk0OTRiNywgMjAlKTtcbiAgICBpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4zcmVtO1xuICAgICAgICBmb250LXNpemU6ICRzaXplO1xuICAgIH1cbiAgICBzcGFuIHtmb250LXNpemU6IDFyZW19XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvciwgNDUlKTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGRhcmtlbigkY29sb3IsMjAlKTtcbiAgICAgIFxuICAgIH1cbn1cblxuQG1peGluIGliei1pbnB1dC1hbGVydCAoJGNvbG9yLCAkYmFja2dyb3VuZCkge1xuICAgIHBvc2l0aW9uICA6Zml4ZWQ7XG4gICAgbWFyZ2luOiAtMi4ycmVtIDAgMCAxNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLDEwJSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbiRDT0xPUl9TVUNDRVNTOiBncmVlbjtcbiRDT0xPUl9GQUlMOiByZWQ7XG5cbnRva2VuLXJlZnJlc2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IC41cmVtIDFyZW0gMCAwO1xufVxuXG4uYnV0dG9uLWJveCB7XG4gICAgaGVpZ2h0ICA6IDQuNXJlbTtcbiAgICBcbiAgICAuc2Vzc2lvbi1idXR0b24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNXJlbTtcbiAgICB9O1xuICAgIFxuICAgIC5yZXNwb25zZSA+IHNwYW57XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IC4zcmVtIC41cmVtIC4zcmVtIC41cmVtOyAgICAgICAgXG4gICAgfSAgXG4gICAgXG4gICAgLmZhaWwgeyBcbiAgICAgICAgY29sb3I6JENPTE9SX0ZBSUw7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkQ09MT1JfRkFJTCwxMCUpO1xuICAgIH1cbiAgICAuc3VjY2VzcyB7IFxuICAgICAgICBjb2xvcjokQ09MT1JfU1VDQ0VTUzsgXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkQ09MT1JfU1VDQ0VTUywxMCUpO1xuICAgIH1cblxufTtcblxuLm1lc3NhZ2UtYm94IHtcbiAgICBoZWlnaHQgIDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgXG4gICAgLnJlc3BvbnNlIHtcbiAgICAgICAgLmVyci1ubyB7IGNvbG9yOmdyZXk7IH1cbiAgICAgICAgLnJlcy5lcnItb2sgeyBjb2xvcjogYmx1ZTsgfVxuICAgICAgICAucmVxLmVyci1vayB7IGNvbG9yOmJsdWV2aW9sZXQ7IH1cbiAgICAgICAgLnN0YXR1cy5lcnItb2sgeyBjb2xvcjpncmVlbjsgfVxuICAgICAgICAuc3RhdHVzLmVyci1meCB7IGNvbG9yOnJlZDsgfSAgICAgICBcbiAgICB9IFxuICAgIFxuXG59O1xuXG5cblxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cblxuLnNhbXBsZS1ib3gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodCAgOiA0LjVyZW07XG4gICAgXG4gICAgLnNhbXBsZS1idXR0b24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDVyZW07XG4gICAgfTtcbiAgICBcbiAgICAubXV0ZWQtb24tb24sLm11dGVkLW9mZi1vZmZ7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsdWV2aW9sZXQ7XG4gICAgfTtcbiAgICAgICAgXG4gICAgLm11dGVkLWVycm9ye1xuICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgfTtcbn07XG5cblxuXG4iLCIvKlxuICAgIFNhbXBsZSBvZiBzdHlsZSBvdmVybG9hZCBmb3IgYSBzcGVjaWZpYyB3aWRnZXRcblxuICAgIE5vdGU6IHRoaXMgU0NTUyBpcyBpbmplY3RlZCB3aXRoIG1haW4gSFRNTCBwYWdlLCBpdCBzY29wZSBzaG91bGQgYmUgcmVkdWNlXG4gICAgdG8gYSBzcGVjaWZpYyB3aWRnZXQgb3IgaXQgdmFsdWUgd2lsbCBiZSBwcm9wYWdhdGVkIGF0IGEgZ2xvYmFsIGxldmVsLlxuKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbi51cGxvYWQtZmlsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQgOiA1cmVtO1xuICAgIHdpZHRoICA6IDVyZW07XG4gICAgbWFyZ2luOiAwLjVyZW07XG5cbiAgICBpbWcgeyBoZWlnaHQ6IGluaGVyaXQ7fVxuICAgIFxuICAgIC5pYnotcmFuZ2Utc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZXkgIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgLnJhbmdlLXNsaWRlci1oYW5kbGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuMnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHB1cnBsZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5pbnB1dC10ZXh0IHtcbiAgXG4gICAgYWxlcnQge0BpbmNsdWRlIGliei1pbnB1dC1hbGVydChkYXJrYmx1ZSwgcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjYpKX07XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5yZXF1aXJlZCB7XG4gICAgICAgIGNvbG9yOiBibHVlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGNvbG9yOiBsaWdodHNreWJsdWU7XG4gICAgfVxuICAgIC5yZXF1aXJlZC52YWxpZCB7XG4gICAgICAgIGNvbG9yOiBncmVlbjtcbiAgICB9XG4gICAgXG4gICAgLnJlcXVpcmVkLmludmFsaWQge1xuICAgICAgICBjb2xvcjogcGx1bTtcbiAgICB9ICBcblxuICAgIC5zdGF0dXMtdW50b3VjaCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjYpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSBpbnNldCwgMCAwIDhweCByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNikgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM2OTY5NjkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg4MiwxNjgsMjM2LDAuOCkgO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSkgaW5zZXQsIDAgMCA4cHggcmdiYSg4MiwxNjgsMjM2LDAuOCkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuMnMgbGluZWFyIDBzLCBib3gtc2hhZG93IDAuMnMgbGluZWFyIDBzO1xuICAgICAgICBjb2xvcjogZGFya3NsYXRlYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBAZXh0ZW5kIHNoYWRvdy10cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIC5zdGF0dXMtdmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTU0LCAyMDUsIDUwLCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpIGluc2V0LCAwIDAgOHB4IHJnYmEoMTU0LCAyMDUsIDUwLCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgQGV4dGVuZCBzaGFkb3ctdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICAuc3RhdHVzLWludmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTU0LCAxNywgNjksIDAuNik7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSBpbnNldCwgMCAwIDhweCByZ2JhKDE1NCwgMTcsIDY5LCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHJnYigxNTQsIDE3LCA2OSk7XG4gICAgICAgIEBleHRlbmQgc2hhZG93LXRyYW5zaXRpb247XG4gICAgfVxuXG59XG4iLCIvKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5AaW1wb3J0IFwiYXBwL2liei1taXhpbnNcIjtcblxuXG5saW5rLWJ1dHRvbiB7QGluY2x1ZGUgaWJ6LWJ1dHRvbigjMzM2NmZmLDFyZW0pfTtcblxuLy9wYWxlIGJsdWUgZm9yIHNlY29uZGF0eSBsaW5rXG5saW5rLWJ1dHRvbi5zZWNvbmRhcnkge0BpbmNsdWRlIGliei1idXR0b24oIzk5YjNmZiwxcmVtKX07XG5cbiIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICogXG4gKiBSZWZlcmVuY2U6IGh0dHA6Ly93d3cuZ3JleXd5dmVybi5jb20vP3Bvc3Q9MzM3XG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cblxubGluay1idXR0b24ge0BpbmNsdWRlIGliei1idXR0b24oIzMzNjZmZiwxcmVtKX07XG5cbi8vIE1vZGFsIHNob3VsZCBiZSByZWxhdGl2ZSBhbmQgdGlwLW1vZGFsLXBvcHVwIGFic29sdXRlXG50aXAtbW9kYWwge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG4udGlwLW1vZGFsLXBvcHVwIHtcbiAgICAvL3Zpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMjByZW07XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjFlbTtcbiAgICBwYWRkaW5nOiAwLjJlbSAwLjZlbTtcbiAgICBib3JkZXI6MXB4IHNvbGlkICM5OTY2MzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjojZTVmZmZmO1xuICAgIGNvbG9yOiMwMDA7XG4gICAgb3BhY2l0eTowO1xuICAgIHRyYW5zaXRpb246dmlzaWJpbGl0eSAuNXMgbGluZWFyIDFzLG9wYWNpdHkgMXMgbGluZWFyO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBpIHtcbiAgICAgICAgbWFyZ2luOiAwIC4zcmVtIDAgMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbn1cblxudG9rZW4tcmVmcmVzaCB7XG4gICAgQGluY2x1ZGUgaWJ6LWJ1dHRvbihncmV5LDFyZW0pXG4gICAgaSB7bWFyZ2luLWxlZnQ6IC41cmVtO31cbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbnRva2VuLXJlZnJlc2gub25saW5lIHtcbiAgICBjb2xvcjogIzAwNjZjYztcbiAgICBpIHtjb2xvcjogbGltZTt9ICAgIFxufVxuXG50b2tlbi1yZWZyZXNoLm9mZmxpbmUge1xuICAgIGNvbG9yOiAjZmYwMGZmO1xuICAgIGkge2NvbG9yOiByZWQ7fSAgICBcbn1cbiIsIi8qXG4gKiBpYnotRGF0ZXBpY2tlciBmb3IgRm91bmRhdGlvblxuICpcbiAqIEF1dGhvcjogRnVsdXAgQXIgRm9sbFxuICogRGF0ZSAgOiBNYXJjaC0yMDE1XG4gKiBPYmplY3Q6IFNBU1Mgc3R5bGVzaGVldCwgY3VzdG9taXplZCB0byBGb3VuZGF0aW9uXG4gKiBSZWZlcmVuY2VzOiBodHRwczovL2Nzcy10cmlja3MuY29tL3N0cmlwZXMtY3NzL1xuICpcbiAqL1xuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbi5yYW5nZS1zbGlkZXItaGFuZGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogLTAuMnJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMS4zNzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogIzAwOGNiYTtcbn1cblxuLnJhbmdlLXNsaWRlci5yYWRpdXMsIC5yYW5nZS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZDogIzAwOGNiYTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdG9wOiAwLjA3cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMC44MHJlbTtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbn1cblxuLmliei1yYW5nZS1zbGlkZXIge1xuICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTQsIDIwNSwgNTAsIDAuNikgIWltcG9ydGFudDtcbiAgIGhlaWdodDogMXJlbTtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgIFxuICAucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgyLCAxNjgsIDIwMCwgMC42KTtcbiAgfVxuICBcbiAgJi1kaXNwbGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgyLCAxNjgsIDIwMCwgMC42KSAhaW1wb3J0YW50O1xuICAgIHdpZHRoIDogNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IC4yNXJlbTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlclxuICAgfVxuXG4gICAmLXN0YXJ0LCYtc3RvcCB7XG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBwYWRkaW5nLXRvcDogMnB4O1xuICAgaGVpZ2h0OiA5NSU7XG4gICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgIDQ1ZGVnLFxuICAgICM2MDZkYmMsXG4gICAgIzYwNmRiYyAxMHB4LFxuICAgICM0NjUyOTggMTBweCxcbiAgICAjNDY1Mjk4IDIwcHhcbiAgKTt9XG5cbn1cbiIsbnVsbF0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */ diff --git a/afb-client/dist.prod/opa/AFBclient.min.js b/afb-client/dist.prod/opa/AFBclient.min.js new file mode 100644 index 0000000..1d9a736 --- /dev/null +++ b/afb-client/dist.prod/opa/AFBclient.min.js @@ -0,0 +1,2 @@ +!function(){"use strict";var e='
{{label}}
';angular.module("SubmitButton",[]).directive("submitButton",function(){function t(e,t,n){e.icon=n.icon||"fi-foot",e.label=n.label||"Next",t.addClass(e.label.toLowerCase())}return{restrict:"E",template:e,link:t,scope:{clicked:"="}}})}(),function(){"use strict";function e(e){var t=[],n=[];this.getId=function(){return e.sliderid},this.getCbHandle=function(){return e.cbhandle},this.getView=function(a){return a||(a=0),e.value[a]===t[a]?n[a]:(t[a]=e.value[a],e.formatter?n[a]=e.formatter(e.value[a],e.ctrlhandle):n[a]=e.value[a],n[a])},this.updateClass=function(t,n){e.updateClass(t,n)},this.forceRefresh=function(t){e.forceRefresh(t)},this.getValue=function(t){return t||(t=0),e.value[t]},this.getRelative=function(t){return t||(t=0),e.relative[t]},this.setValue=function(t,n){n||(n=0),e.setValue(t,n)},this.setDisable=function(t){e.setDisable(t)}}var t=angular.module("RangeSlider",[]);t.directive("rangeSlider",["$log","$document","$timeout",function(t,n,a){function i(t,i,s,o){t.initWidget=function(e){e.byStep&&(t.byStep=parseInt(e.byStep)),e.notMore&&(t.notMore=parseInt(e.notMore)),e.notLess&&(t.notLess=parseInt(e.notLess)),e.id&&(t.sliderid=e.id),void 0!==e.value&&(t.value=e.value,t.forceRefresh(50))},t.forceRefresh=function(e){var n=t.value;t.value=[void 0,void 0],a(function(){t.setValue(n[0],0),t.dual&&t.setValue(n[1],1)},e)},t.updateClass=function(e,t){t?i.addClass(e):i.removeClass(e)},t.setDisable=function(e){e?(i.addClass("disable"),t.handles[0].css("visibility","hidden"),t.dual&&t.handles[1].css("visibility","hidden")):(i.removeClass("disable"),t.handles[0].css("visibility","visible"),t.dual&&t.handles[1].css("visibility","visible"))},t.normalize=function(e){var n,a=t.notMore-t.notLess,i=e*a;if(t.byStep>0){var s=(i-i%t.byStep)/t.byStep,o=i%t.byStep,l=o>=.5*t.byStep?t.byStep:0;return n=s*t.byStep+l+t.notLess}if(t.byStep<0){var r=Math.pow(10,-1*t.byStep);return n=t.notLess+parseInt(i*r)/r}return i},t.getValue=function(e,n){t.vertical?t.relative[n]=(e-t.bounds.handles[n].getBoundingClientRect().height)/(t.bounds.bar.getBoundingClientRect().height-t.bounds.handles[n].getBoundingClientRect().height):t.relative[n]=e/(t.bounds.bar.getBoundingClientRect().width-t.bounds.handles[n].getBoundingClientRect().width);var a=t.normalize(t.relative[n]);a!==t.value[n]&&(at.stopValue&&(a=t.stopValue),t.formatter?t.viewValue=t.formatter(a,t.ctrlhandle):t.viewValue=a,t.displays[n]&&t.displays[n].html(t.viewValue),t.value[n]=a,o&&o.$setViewValue(t.viewValue),t.$apply(),a>t.startValue&&at.value[0]&&(t.dual?t.setValue(e,1):t.setValue(e,0)),t.vertical?(n=t.bounds.bar.getBoundingClientRect().height*(e-t.notLess)/(t.notMore-t.notLess),t.start.css("height",n+"px")):(n=t.bounds.bar.getBoundingClientRect().width*(e-t.notLess)/(t.notMore-t.notLess),t.start.css("width",n+"px")),t.startValue=e},t.setStop=function(e){var n;et.notMore&&(e=t.notMore),e0&&t.$apply(t.setValue(t.value[t.actif]+t.byStep,t.actif)),t.byStep<0&&t.$apply(t.setValue(t.value[t.actif]+1/Math.pow(10,-1*t.byStep),t.actif)),t.callback&&t.callback(t.value[t.actif],t.ctrlhandle);break;case 37:case 40:t.byStep>0&&t.$apply(t.setValue(t.value[t.actif]-t.byStep,t.actif)),t.byStep<0&&t.$apply(t.setValue(t.value[t.actif]-1/Math.pow(10,-1*t.byStep),t.actif)),t.callback&&t.callback(t.value[t.actif],t.ctrlhandle);break;case 27:t.handles[t.actif][0].blur()}},t.moveHandle=function(e,n,a){var i;t.vertical?(i=t.bounds.bar.getBoundingClientRect().bottom-a,i>t.bounds.bar.getBoundingClientRect().height&&(i=t.bounds.bar.getBoundingClientRect().height),ii&&(i=0),n+t.bounds.handles[e].getBoundingClientRect().width>t.bounds.bar.getBoundingClientRect().right&&(i=t.bounds.bar.getBoundingClientRect().width-t.bounds.handles[e].getBoundingClientRect().width)),t.getValue(i,e),t.dual&&t.value[0]>t.value[1]&&(0===e?t.setValue(t.value[0],1):t.setValue(t.value[1],0))},t.focusCB=function(e){e?n.on("keydown",t.keydown):n.unbind("keydown",t.keydown)},t.touchBarCB=function(e){var n,a=0,i=e.changedTouches,s=t.value[a];if(e.preventDefault(),t.dual){n=t.vertical?(i[0].pageY-t.bounds.bar.getBoundingClientRect().bottom)/t.bounds.bar.getBoundingClientRect().height:(i[0].pageX-t.bounds.bar.getBoundingClientRect().left)/t.bounds.bar.getBoundingClientRect().width;var o=Math.abs(n-t.relative[0]),l=Math.abs(n-t.relative[1]);o>l&&(a=1)}t.moveHandle(a,i[0].pageX,i[0].pageY),t.callback&&s!==t.value[a]&&t.callback(t.value[a],t.ctrlhandle)},t.touchHandleCB=function(e,a){function s(e){e.preventDefault();for(var n=e.changedTouches,i=0;it.stopAt,t.stopAt&&t.setStop(t.stopAt)}),t.initialSettings(t.initial)},t.init(),t.$watch("inithook",function(){t.inithook&&t.inithook(t.ctrlhandle)}),t.$watch("initvalues",function(){t.initvalues&&t.initWidget(t.initvalues)}),t.$watch("ngModel",function(e){t.setValue(e,0)})}var s='
';return{restrict:"E",scope:{startAt:"=",stopAt:"=",callback:"=",formatter:"=",inithook:"=",cbhandle:"=",initvalues:"=",ngModel:"="},require:"?ngModel",template:s,replace:!0,link:i}}])}(),function(){"use strict";var e='
afb://{{hostname}}:{{httpdport}}
';angular.module("TokenRefresh",["ConfigApp","ModalNotification"]).directive("tokenRefresh",["$timeout","$http","$location","Notification","ConfigApp",function(t,n,a,i,s){function o(e,o,l){e.status=void 0,e.online=function(){o.addClass("online"),o.removeClass("offline")},e.offline=function(){o.addClass("offline"),o.removeClass("online")},e.onerror=function(t,n,a){e.status!==!1&&(i.warning({message:"AppFramework Binder Lost",delay:5e3}),e.offline()),e.status=0},e.onsuccess=function(t,n,a,o){e.status!==!0&&(t.request.token&&(s.session.token=t.request.token),t.request.uuid&&(s.session.uuid=t.request.uuid),t.request.timeout&&(s.session.timeout=t.request.timeout),i.success({message:"AppFramework Binder Back to Live",delay:3e3}),e.online()),e.status=1},e.getping=function(){var a=n.get(s.session.ping+"?token="+s.session.token);a.success(e.onsuccess),a.error(e.onerror),t(e.getping,1e3*s.session.pingrate)},e.refresh=function(){var a=n.get(s.session.refresh+"?token="+s.session.token);a.success(e.onsuccess),a.error(e.onerror),t(e.refresh,250*s.session.timeout)},e.tkcreate=function(){var t=n.get(s.session.create+"?token="+s.session.initial);t.success(e.onsuccess),t.error(e.onerror)},e.icon=l.icon||"fi-lightbulb",e.hostname=a.host(),e.httpdport=a.port(),e.autolog=JSON.parse(l.autolog||!1),e.autolog&&e.tkcreate(),t(e.getping,1e3*s.session.pingrate),t(e.refresh,250*s.session.timeout)}return{template:e,scope:{callback:"="},restrict:"E",link:o}}])}(),function(){"use strict";var e='
{{tip}}
';angular.module("ModalNotification",[]).directive("tipModal",["$timeout",function(t){function n(e,n,a){function i(){function n(){e.show&&e.modal.css({opacity:1,visibility:"visible"})}e.show=!0,e.timeout=t(n,e.delay)}function s(){e.show=!1,e.modal.css({opacity:0,visibility:"hidden"})}e.parent=n.parent(),e.modal=n.find("div"),e.icon=a.icon||"fi-lightbulb",e.parent.addClass("as-modal-tip"),e.parent.bind("click",s),e.parent.bind("focus",i),e.parent.bind("mouseover",i),e.parent.bind("mouseleave",s),e.parent.bind("blur",s),e.delay=a.delay||1e3}return{restrict:"E",template:e,link:n,scope:{tip:"="}}}])}(),function(){"use strict";var e='{{label}}';angular.module("LinkButton",[]).directive("linkButton",["$location",function(t){function n(e,n,a){e.clicked=function(){a.query?t.path(a.href).search(a.query):t.path(a.href)},e.icon=a.icon||"fi-link",e.label=a.label||"Jump",e.href=a.href||"/home",n.addClass(e.label.toLowerCase())}return{restrict:"E",template:e,link:n,scope:{}}}])}(),function(){"use strict";function e(e,t,n,a,i){var s=new XMLHttpRequest,o=new FormData,l=function(e){i(e)};s.upload.onprogress=function(t){var n=Math.round(t.lengthComputable?100*t.loaded/t.total:0);e.slider&&e.slider.setValue(n)},s.onload=function(){t.addClass("success"),t.removeClass("error");var n={status:s.status,headers:s.getAllResponseHeaders()};e.callback(n)},s.onerror=function(){t.addClass("error"),t.removeClass("success");var n={status:s.status,headers:s.getAllResponseHeaders()};e.callback(n)},s.onabort=function(){t.addClass("error"),t.removeClass("success");var n={status:s.status,headers:s.getAllResponseHeaders()};e.callback(n)};for(var r=0;r1024*e.maxsize)return e.thumbnail=e.istoobig,void e.$apply("thumbnail");if(isNaN(u.size))return e.thumbnail=e.isnotvalid,void e.$apply("thumbnail");if(e.Basename=u.name.split("/").reverse()[0],e.imgElem[0].file=u,i){var c=new FileReader;c.readAsArrayBuffer(u),c.onload=l}o.append(e.name,u,u.name)}}s.open("POST",n,!0),s.send(o)}var t='
';angular.module("UploadFiles",["ConfigApp","ModalNotification","RangeSlider"]).directive("uploadImage",["ConfigApp","JQemu","Notification",function(n,a,i){function s(t,a,i){if(t.imgElem=a.find("img"),t.inputElem=a.find("input"),t.imgClicked=function(){t.inputElem[0].click()},t.SliderInitCB=function(e){t.slider=e},t.UpLoadFile=function(s){var o=function(e){return t.imgElem[0].src=window.URL.createObjectURL(new Blob([e.target.result],{type:"image"})),!0},l=i.posturl+"?token="+n.session.token;new e(t,a,l,s,o)},t.name=i.name||"avatar",t.category=i.category||"image",t.mimetype=(i.accept||"image")+"/*",t.maxsize=i.maxsize||100,t.regexp=new RegExp(i.accept+".*","i"),i.thumbnail?t.thumbnail=n.paths[t.category]+i.thumbnail:t.thumbnail=n.paths[t.category]+"tux-bzh.png",i.thumbnail?t.isnotvalid=n.paths[t.category]+i.isnotvalid:t.isnotvalid=n.paths[t.category]+"isnotvalid.png",i.istoobig?t.istoobig=n.paths[t.category]+i.istoobig:t.istoobig=n.paths[t.category]+"istoobig.png",t.noslider=i.noslider||!1,!i.posturl)throw new TypeError("file-upload %s posturl=/api/xxxx/xxxx required",t.attrs)}return{restrict:"E",template:t,link:s,scope:{callback:"="}}}]).directive("uploadAudio",["ConfigApp","JQemu","Notification",function(n,a,i){function s(t,a,i){if(t.imgElem=a.find("img"),t.inputElem=a.find("input"),t.imgClicked=function(){t.inputElem[0].click()},t.SliderInitCB=function(e){t.slider=e},t.UpLoadFile=function(s){var o=i.posturl+"?token="+n.session.token;new e(t,a,o,s,!1)},t.name=i.name||"audio",t.category=i.category||"audio",t.mimetype=(i.accept||"audio")+"/*",t.maxsize=i.maxsize||1e4,t.regexp=new RegExp(i.accept+".*","i"),i.thumbnail?t.thumbnail=n.paths[t.category]+i.thumbnail:t.thumbnail=n.paths[t.category]+"upload-music.png",i.thumbnail?t.isnotvalid=n.paths[t.category]+i.isnotvalid:t.isnotvalid=n.paths[t.category]+"isnotvalid.png",i.istoobig?t.istoobig=n.paths[t.category]+i.istoobig:t.istoobig=n.paths[t.category]+"istoobig.png",t.noslider=i.noslider||!1,!i.posturl)throw new TypeError("file-upload %s posturl=/api/xxxx/xxxx required",t.attrs)}return{restrict:"E",template:t,link:s,scope:{callback:"="}}}]).directive("uploadAppli",["ConfigApp","JQemu","Notification",function(n,a,i){function s(t,a,i){if(t.imgElem=a.find("img"),t.inputElem=a.find("input"),t.imgClicked=function(){t.inputElem[0].click()},t.SliderInitCB=function(e){t.slider=e},t.UpLoadFile=function(s){var o=function(e){var a=new JSZip(e.target.result),i=a.file("afa-pkg/thumbnail.jpg");return i?(t.imgElem[0].src=window.URL.createObjectURL(new Blob([i.asArrayBuffer()],{type:"image"})),!0):(t.thumbnail=n.paths[t.category]+"isnotvalid.png",t.$apply("thumbnail"),!1)},l=i.posturl+"?token="+n.session.token;new e(t,a,l,s,o)},t.name=i.name||"appli",t.category=i.category||"appli",t.mimetype=i.accept||".zip",t.maxsize=i.maxsize||1e5,t.regexp=new RegExp(i.accept+".*","i"),i.thumbnail?t.thumbnail=n.paths[t.category]+i.thumbnail:t.thumbnail=n.paths[t.category]+"upload-appli.png",i.thumbnail?t.isnotvalid=n.paths[t.category]+i.isnotvalid:t.isnotvalid=n.paths[t.category]+"isnotvalid.png",i.istoobig?t.istoobig=n.paths[t.category]+i.istoobig:t.istoobig=n.paths[t.category]+"istoobig.png",t.noslider=i.noslider||!1,!i.posturl)throw new TypeError("file-upload %s posturl=/api/xxxx/xxxx required",t.attrs)}return{restrict:"E",template:t,link:s,scope:{callback:"="}}}])}(),function(){"use strict";var e='{{errmsg}}',t=/^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;angular.module("InputText",["JQueryEmu"]).directive("inputText",["JQemu",function(n){function a(e,a,i){e.error=!1,e.valid=!1,e.status="untouch",e.input=a.find("input"),e.required=0,"required"in i&&(e.required=1,a.addClass("required")),e.selected=function(){e.error=!1,e.errmsg=!1,e.status="touch"},e.validate=function(){e.parent.removeClass("ng-pristine"),e.value?(e.error=!1,e.value=e.value.trim(),"nospace"in i&&(e.value=e.value.replace(/\s/g,"")),"lowercase"in i&&(e.value=e.value.toLowerCase()),"minlen"in i&&e.value.length0&&e.l4acounter.validated--),e.callback(i.name,null,e.done)):(e.required&&!e.valid&&e.l4acounter.validated++,e.status="valid",e.valid=!0,e.callback(i.name,e.value,e.done))},e.done=function(t){for(var n in t)e[n]=t[n]},e.label=i.label,e.name=i.name,e.placeholder=i.placeholder,e.type=i.type||"text",e.tip=i.tip,e.parent=n.parent(a,"FORM"),"email"in i&&(i.lowercase=!0,i.nospace=!0,i.minlen=6),e.required&&(e.l4acounter=e.parent.data("l4acounter"),e.l4acounter?e.l4acounter.required++:(e.l4acounter={required:1,validated:0},e.parent.data("l4acounter",e.l4acounter))),e.$watch("value",function(){e.value&&e.validate()})}return{restrict:"E",template:e,link:a,scope:{callback:"=",value:"="}}}])}(),function(){"use strict";var e=' ';angular.module("InputPassword",[]).directive("inputPassword",function(){function t(e,t,n){e.valid1=function(t,n){e.firstpwd=n},e.valid2=function(t,a,i){e.firstpwd!==a?i({valid:!1,status:"invalid",errmsg:"both password should match"}):e.callback(n.name,a)},e.done=function(t){for(var n in t)e[n]=t[n]},e.name=n.name,e.label1=n.label||"Password",e.label2=n.label||"Password Verification",e.place1=n.placeholder1||"User Password",e.tip1=n.tip||"Choose a Password",e.place2=n.placeholder1||"Password Verification",e.tip2=n.tip||"Confirme your Password",e.minlen=n.minlen||10,"required"in n&&(e.required="required")}return{restrict:"E",template:e,link:t,scope:{callback:"="}}})}(),function(){"use strict";angular.module("SampleModule",["SubmitButton","UploadFiles"]).controller("SampleController",["$http",function(e){var t=this;t.FileUploaded=function(e){}}])}(),function(){"use strict";angular.module("HomeModule",["SubmitButton","TokenRefresh"]).controller("HomeController",["$http","ConfigApp",function(e,t){var n=this;n.uuid="none",n.token="none",n.session="none",n.status="err-no",n.ProcessResponse=function(e,a,i,s){var o="API"+e.request.api.replace("-","_");n.status="err-ok",n.errcode=a,n.request=e.request,n.response=e.response,e.request.token&&(t.session.token=e.request.token),e.request.uuid&&(t.session.uuid=e.request.uuid),e.request.timeout&&(t.session.timeout=e.request.timeout),("APIcreate"===o||"APIreset"===o)&&(n.APIreset="",n.APIcreate="",n.APIrefresh="",n.APIcheck=""),n[o]="success",e.request.token&&(n.token=e.request.token)},n.ProcessError=function(e,t,a,i){var s="API"+e.request.api.replace("-","_");n.status="err-fx",n.errcode=t,n.request=e.request,n.response="",n[s]="fail"},n.OpenSession=function(){var a={},i=e.post(t.session.create+"?token="+t.session.initial,a);i.success(n.ProcessResponse),i.error(n.ProcessError)},n.CheckSession=function(){var a={},i=e.post(t.session.check+"?token="+t.session.token,a);i.success(n.ProcessResponse),i.error(n.ProcessError)},n.RefreshSession=function(){var a={},i=e.post(t.session.refresh+"?token="+t.session.token,a);i.success(n.ProcessResponse),i.error(n.ProcessError)},n.ResetSession=function(){var a={},i=e.post(t.session.reset+"?token="+t.session.token,a);i.success(n.ProcessResponse),i.error(n.ProcessError)}}])}(),function(){"use strict";angular.module("JQueryEmu",[]).factory("JQemu",function(){var e=function(e,t){for(var n=e,a=t.toUpperCase();n[0];){if(a===n[0].tagName)return n;n=n.parent()}},t=function(e,t,n){for(var a=n.toLowerCase(),i=t.toLowerCase()+"Name",s=e.children();s[0];){if(a===s[0][i])return s;s=s.next()}},n=function(e,t){for(var n=t.toLowerCase(),a=e.children();a[0];){if(a.hasClass(n))return a;a=a.next()}},a={FindInParent:e,FindByTag:t,FindByClass:n};return a})}();var foundationRoutes=[{name:"mysample",url:"/sample",controller:"SampleController as ctrl",animationIn:"slideInRight",path:"pages/Sample/Sample.html"},{name:"myhome",url:"/home",controller:"HomeController as ctrl",animationIn:"slideInRight",path:"pages/Home/Home.html"}];!function(){"use strict";angular.module("ConfigApp",[]).factory("ConfigApp",["$location","$window",function(e,t){var n={paths:{image:"images/",avatar:"images/avatars/",audio:"images/audio/",appli:"images/appli/"},myapi:{token:"/api/myplugin/xxxx"},session:{create:"/api/token/create",refresh:"/api/token/refresh",check:"/api/token/check",reset:"/api/token/reset",ping:"/api/token/check",initial:"123456789",timeout:3600,pingrate:60,uuid:"",token:""}};return n}])}(),function(){"use strict";function e(e,t,n){e.otherwise("/home"),t.html5Mode(!0).hashPrefix("!")}function t(){FastClick.attach(document.body)}angular.module("AFBclient",["ui.router","ngAnimate","foundation","foundation.dynamicRouting","foundation.dynamicRouting.animations","ui-notification","ConfigApp","JQueryEmu","HomeModule","SampleModule","UploadFiles","LinkButton","TokenRefresh","RangeSlider","ModalNotification"]).config(e).run(t),e.$inject=["$urlRouterProvider","$locationProvider"]}(),function(){angular.module("AFBclient").run(["$templateCache",function(e){e.put("pages/Sample/Sample.html",'

Post File Upload

')}])}(),function(){angular.module("AFBclient").run(["$templateCache",function(e){e.put("pages/Home/Home.html",'

App Framework Binder Simple Client

req= {{ctrl.request}} res= {{ctrl.response}} status= {{ctrl.errcode}}
')}])}(); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndpZGdldHMvQnV0dG9ucy9TdWJtaXRCdXR0b25zL1N1Ym1pdEJ1dHRvbnMuanMiLCJ3aWRnZXRzL1JhbmdlU2xpZGVycy9SYW5nZVNsaWRlck1vZC5qcyIsIndpZGdldHMvTm90aWZpY2F0aW9ucy9Ub2tlblJlZnJlc2hTdmMuanMiLCJ3aWRnZXRzL05vdGlmaWNhdGlvbnMvTW9kYWxOb3RpZmljYXRpb24uanMiLCJ3aWRnZXRzL05hdmlnYXRpb24vTGlua0J1dHRvbi5qcyIsIndpZGdldHMvRm9ybUlucHV0L1VwbG9hZEZpbGVzLmpzIiwid2lkZ2V0cy9Gb3JtSW5wdXQvSW5wdXRUZXh0LmpzIiwid2lkZ2V0cy9Gb3JtSW5wdXQvSW5wdXRQYXNzd29yZC5qcyIsInBhZ2VzL1NhbXBsZS9TYW1wbGVNb2R1bGUuanMiLCJwYWdlcy9Ib21lL0hvbWVNb2R1bGUuanMiLCJzZXJ2aWNlcy9KUXVlcnlFbXUuanMiLCJldGMvcm91dGVzLmpzIiwiZXRjL0NvbmZpZ0FwcC5qcyIsImFwcC5qcyIsInBhZ2VzL1NhbXBsZS9TYW1wbGUuanMiLCJwYWdlcy9Ib21lL0hvbWUuanMiXSwibmFtZXMiOlsidG1wbCIsImFuZ3VsYXIiLCJtb2R1bGUiLCJkaXJlY3RpdmUiLCJteW1ldGhvZHMiLCJzY29wZSIsImVsZW0iLCJhdHRycyIsImljb24iLCJsYWJlbCIsImFkZENsYXNzIiwidG9Mb3dlckNhc2UiLCJyZXN0cmljdCIsInRlbXBsYXRlIiwibGluayIsImNsaWNrZWQiLCJSYW5nZVNsaWRlckhhbmRsZSIsImludGVybmFscyIsImV4dGVybmFscyIsInRoaXMiLCJnZXRJZCIsInNsaWRlcmlkIiwiZ2V0Q2JIYW5kbGUiLCJjYmhhbmRsZSIsImdldFZpZXciLCJoYW5kbGUiLCJ2YWx1ZSIsImZvcm1hdHRlciIsImN0cmxoYW5kbGUiLCJ1cGRhdGVDbGFzcyIsImNsYXNzZSIsInN0YXR1cyIsImZvcmNlUmVmcmVzaCIsInRpbWVyIiwiZ2V0VmFsdWUiLCJnZXRSZWxhdGl2ZSIsInJlbGF0aXZlIiwic2V0VmFsdWUiLCJzZXREaXNhYmxlIiwiZmxhZyIsIlJhbmdlU2xpZGVyIiwiJGxvZyIsIiRkb2N1bWVudCIsIiR0aW1lb3V0IiwiZWxlbWVudCIsIm1vZGVsIiwiaW5pdFdpZGdldCIsImluaXR2YWx1ZXMiLCJieVN0ZXAiLCJwYXJzZUludCIsIm5vdE1vcmUiLCJub3RMZXNzIiwiaWQiLCJ1bmRlZmluZWQiLCJkdWFsIiwicmVtb3ZlQ2xhc3MiLCJkaXNhYmxlZCIsImhhbmRsZXMiLCJjc3MiLCJub3JtYWxpemUiLCJyZXN1bHQiLCJyYW5nZSIsInBvaW50IiwibW9kIiwicmVtIiwicm91bmQiLCJwb3dlciIsIk1hdGgiLCJwb3ciLCJvZmZzZXQiLCJ2ZXJ0aWNhbCIsImJvdW5kcyIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImhlaWdodCIsImJhciIsIndpZHRoIiwibmV3dmFsdWUiLCJzdGFydFZhbHVlIiwic3RvcFZhbHVlIiwidmlld1ZhbHVlIiwiZGlzcGxheXMiLCJodG1sIiwiJHNldFZpZXdWYWx1ZSIsIiRhcHBseSIsInRyYW5zbGF0ZSIsInNldFN0YXJ0Iiwic3RhcnQiLCJzZXRTdG9wIiwic3RvcCIsInJpZ2h0Iiwidm9mZnNldCIsIi13ZWJraXQtdHJhbnNmb3JtIiwiLW1vei10cmFuc2Zvcm0iLCItbXMtdHJhbnNmb3JtIiwiLW8tdHJhbnNmb3JtIiwidHJhbnNmb3JtIiwic2xpZGVyIiwiYm90dG9tIiwibGVmdCIsImtleWRvd24iLCJlIiwia2V5Q29kZSIsImFjdGlmIiwiY2FsbGJhY2siLCJibHVyIiwibW92ZUhhbmRsZSIsImNsaWVudFgiLCJjbGllbnRZIiwiZm9jdXNDQiIsImluc2lkZSIsIm9uIiwidW5iaW5kIiwidG91Y2hCYXJDQiIsImV2ZW50IiwidG91Y2hlcyIsImNoYW5nZWRUb3VjaGVzIiwib2xkdmFsdWUiLCJwcmV2ZW50RGVmYXVsdCIsInBhZ2VZIiwicGFnZVgiLCJkaXN0YW5jZTAiLCJhYnMiLCJkaXN0YW5jZTEiLCJ0b3VjaEhhbmRsZUNCIiwidG91Y2hldnQiLCJ0b3VjaG1vdmUiLCJpZHgiLCJsZW5ndGgiLCJ0b3VjaGVuZCIsImhhbmRsZUNCIiwiY2xpY2tldmVudCIsIm1vdXNlbW92ZSIsIm1vdXNldXAiLCJhdXRvbWF0aWMiLCJmb2N1cyIsImZpbmQiLCJzZWxlY3QiLCJkb21lbGVtIiwicXVlcnlTZWxlY3RvciIsImFuZ2VsZW0iLCJpbml0aWFsU2V0dGluZ3MiLCJpbml0aWFsIiwiZGVjaW1hbF9wbGFjZXNfbWF0Y2hfcmVzdWx0IiwicHJlY2lzaW9uIiwibWF0Y2giLCJldnQiLCJpbml0IiwicmFuZG9tIiwiSW5maW5pdHkiLCJkdWFsSGFuZGxlcyIsInRyaWdnZXJfaW5wdXRfY2hhbmdlIiwiZGlzYWJsZSIsImRpc3BsYXlUYXJnZXQiLCJnZXRFbGVtZW50QnlJZCIsInNwbGl0IiwibmdNb2RlbCIsIiR3YXRjaCIsInN0YXJ0QXQiLCJzdG9wQXQiLCJpbml0aG9vayIsIm5ld1ZhbHVlIiwicmVxdWlyZSIsInJlcGxhY2UiLCIkaHR0cCIsIiRsb2NhdGlvbiIsIk5vdGlmaWNhdGlvbiIsIkNvbmZpZ0FwcCIsIm9ubGluZSIsIm9mZmxpbmUiLCJvbmVycm9yIiwiZGF0YSIsImVycmNvZGUiLCJoZWFkZXJzIiwid2FybmluZyIsIm1lc3NhZ2UiLCJkZWxheSIsIm9uc3VjY2VzcyIsImNvbmZpZyIsInJlcXVlc3QiLCJ0b2tlbiIsInNlc3Npb24iLCJ1dWlkIiwidGltZW91dCIsInN1Y2Nlc3MiLCJnZXRwaW5nIiwiaGFuZGxlciIsImdldCIsInBpbmciLCJlcnJvciIsInBpbmdyYXRlIiwicmVmcmVzaCIsInRrY3JlYXRlIiwiY3JlYXRlIiwiaG9zdG5hbWUiLCJob3N0IiwiaHR0cGRwb3J0IiwicG9ydCIsImF1dG9sb2ciLCJKU09OIiwicGFyc2UiLCJkaXNwbGF5IiwiYWN0aW9uIiwic2hvdyIsIm1vZGFsIiwib3BhY2l0eSIsInZpc2liaWxpdHkiLCJjbG9zZSIsInBhcmVudCIsImJpbmQiLCJ0aXAiLCJxdWVyeSIsInBhdGgiLCJocmVmIiwic2VhcmNoIiwiTG9hZEZpbGVTdmMiLCJwb3N0dXJsIiwiZmlsZXMiLCJ0aHVtYm5haWxDQiIsInhtbFJlcSIsIlhNTEh0dHBSZXF1ZXN0IiwieGZvcm0iLCJGb3JtRGF0YSIsIk9uTG9hZENCIiwidGFyZ2V0IiwidXBsb2FkIiwib25wcm9ncmVzcyIsInByb2dyZXNzIiwibGVuZ3RoQ29tcHV0YWJsZSIsImxvYWRlZCIsInRvdGFsIiwib25sb2FkIiwicmVzcG9uc2UiLCJnZXRBbGxSZXNwb25zZUhlYWRlcnMiLCJvbmFib3J0IiwiaSIsImZpbGUiLCJ0eXBlIiwibWltZXR5cGUiLCJzaXplIiwibWF4c2l6ZSIsInRodW1ibmFpbCIsImlzdG9vYmlnIiwiaXNOYU4iLCJpc25vdHZhbGlkIiwiQmFzZW5hbWUiLCJuYW1lIiwicmV2ZXJzZSIsImltZ0VsZW0iLCJyZWFkZXIiLCJGaWxlUmVhZGVyIiwicmVhZEFzQXJyYXlCdWZmZXIiLCJhcHBlbmQiLCJvcGVuIiwic2VuZCIsIkpRZW11IiwiaW5wdXRFbGVtIiwiaW1nQ2xpY2tlZCIsImNsaWNrIiwiU2xpZGVySW5pdENCIiwiVXBMb2FkRmlsZSIsInJlYWRlckNCIiwic3JjIiwid2luZG93IiwiVVJMIiwiY3JlYXRlT2JqZWN0VVJMIiwiQmxvYiIsImNhdGVnb3J5IiwiYWNjZXB0IiwicmVnZXhwIiwiUmVnRXhwIiwicGF0aHMiLCJub3NsaWRlciIsIlR5cGVFcnJvciIsInppcGFwcCIsIkpTWmlwIiwiYXNBcnJheUJ1ZmZlciIsImVtYWlscGF0ZXJuIiwidmFsaWQiLCJpbnB1dCIsInJlcXVpcmVkIiwic2VsZWN0ZWQiLCJlcnJtc2ciLCJ2YWxpZGF0ZSIsInRyaW0iLCJtaW5sZW4iLCJ0ZXN0IiwibDRhY291bnRlciIsInZhbGlkYXRlZCIsImRvbmUiLCJwbGFjZWhvbGRlciIsImxvd2VyY2FzZSIsIm5vc3BhY2UiLCJ2YWxpZDEiLCJmaXJzdHB3ZCIsInZhbGlkMiIsImxhYmVsMSIsImxhYmVsMiIsInBsYWNlMSIsInBsYWNlaG9sZGVyMSIsInRpcDEiLCJwbGFjZTIiLCJ0aXAyIiwiY29udHJvbGxlciIsIkZpbGVVcGxvYWRlZCIsIlByb2Nlc3NSZXNwb25zZSIsImFwaW5hbWUiLCJhcGkiLCJBUElyZXNldCIsIkFQSWNyZWF0ZSIsIkFQSXJlZnJlc2giLCJBUEljaGVjayIsIlByb2Nlc3NFcnJvciIsIk9wZW5TZXNzaW9uIiwicG9zdGRhdGEiLCJwb3N0IiwiQ2hlY2tTZXNzaW9uIiwiY2hlY2siLCJSZWZyZXNoU2Vzc2lvbiIsIlJlc2V0U2Vzc2lvbiIsInJlc2V0IiwiZmFjdG9yeSIsIkZpbmRJblBhcmVudCIsInNlbGVjdG9yIiwidG9VcHBlckNhc2UiLCJ0YWdOYW1lIiwiRmluZEJ5VGFnIiwidGFnIiwiY2hpbGRyZW4iLCJuZXh0IiwiRmluZEJ5Q2xhc3MiLCJoYXNDbGFzcyIsIm15TWV0aG9kcyIsImZvdW5kYXRpb25Sb3V0ZXMiLCJ1cmwiLCJhbmltYXRpb25JbiIsIiR3aW5kb3ciLCJteUNvbmZpZyIsImltYWdlIiwiYXZhdGFyIiwiYXVkaW8iLCJhcHBsaSIsIm15YXBpIiwiJHVybFByb3ZpZGVyIiwiJGxvY2F0aW9uUHJvdmlkZXIiLCJvdGhlcndpc2UiLCJodG1sNU1vZGUiLCJoYXNoUHJlZml4IiwicnVuIiwiRmFzdENsaWNrIiwiYXR0YWNoIiwiZG9jdW1lbnQiLCJib2R5IiwiJGluamVjdCIsIiR0ZW1wbGF0ZUNhY2hlIiwicHV0Il0sIm1hcHBpbmdzIjoiQ0FvQkEsV0FDQSxZQUVBLElBQUFBLEdBQUEsK0ZBS0FDLFNBQUFDLE9BQUEsbUJBQ0FDLFVBQUEsZUFBQSxXQUVBLFFBQUFDLEdBQUFDLEVBQUFDLEVBQUFDLEdBR0FGLEVBQUFHLEtBQUFELEVBQUFDLE1BQUEsVUFDQUgsRUFBQUksTUFBQUYsRUFBQUUsT0FBQSxPQUdBSCxFQUFBSSxTQUFBTCxFQUFBSSxNQUFBRSxlQU1BLE9BQ0FDLFNBQUEsSUFDQUMsU0FBQWIsRUFDQWMsS0FBQVYsRUFDQUMsT0FBQVUsUUFBQSxXQ0VBLFdBQ0EsWUFJ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LFFBQUEsWUFDQXlDLFFBQUEsS0FDQU8sU0FBQSxHQUNBUixLQUFBLEdBQ0FGLE1BQUEsSUFJQSxPQUFBNkosU0NyQ0EsV0FDQSxZQWlDQSxTQUFBL0osR0FBQXFLLEVBQUFDLEVBQUFqTCxHQUNBZ0wsRUFBQUUsVUFBQSxTQUdBRCxFQUFBRSxXQUFBLEdBQUFDLFdBQUEsS0FJQSxRQUFBQyxLQUNBQyxVQUFBQyxPQUFBQyxTQUFBQyxNQXhDQTlWLFFBQUFDLE9BQUEsYUFDQSxZQUNBLFlBR0EsYUFDQSw0QkFDQSx1Q0FHQSxrQkFHQSxZQUNBLFlBQ0EsYUFDQSxlQUNBLGNBQ0EsYUFDQSxlQUNBLGNBQ0Esc0JBRUErSyxPQUFBQSxHQUNBMEssSUFBQUEsR0FHQTFLLEVBQUErSyxTQUFBLHFCQUFBLHdCQzlCQSxXQUFBL1YsUUFBQUMsT0FBQSxhQUFBeVYsS0FBQSxpQkFBQSxTQUFBTSxHQUFBQSxFQUFBQyxJQUFBLDJCQUNBLHFzQkNEQSxXQUFBalcsUUFBQUMsT0FBQSxhQUFBeVYsS0FBQSxpQkFBQSxTQUFBTSxHQUFBQSxFQUFBQyxJQUFBLHVCQUNBIiwiZmlsZSI6IkFGQmNsaWVudC5taW4uanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqIFxuICogQnVnczogSW5wdXQgd2l0aCBDYWxsYmFjayBTSE9VTEQgQkUgZ2V0ICdyZXF1aXJlZCcgY2xhc3NcbiAqL1xuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciB0bXBsID0gJzxkaXYgIG5nLWNsaWNrPVwiY2xpY2tlZCgpXCI+IDxzcGFuPicgK1xuICAgICAgICAgICAgJzxpIGNsYXNzPVwie3tpY29ufX1cIj48L2k+JyArXG4gICAgICAgICAgICAnPHNwYW4+e3tsYWJlbH19PC9zcGFuPicgK1xuICAgICAgICAgICAgJzwvc3Bhbj48L2Rpdj4nO1xuXG4gICAgYW5ndWxhci5tb2R1bGUoJ1N1Ym1pdEJ1dHRvbicsIFtdKVxuICAgICAgICAgICAgLmRpcmVjdGl2ZSgnc3VibWl0QnV0dG9uJywgZnVuY3Rpb24gKCkge1xuXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gbXltZXRob2RzKHNjb3BlLCBlbGVtLCBhdHRycykge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIGFqdXN0IGljb24gb3IgdXNlIGRlZmF1bHRcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaWNvbiA9IGF0dHJzLmljb24gfHwgJ2ZpLWZvb3QnO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5sYWJlbCA9IGF0dHJzLmxhYmVsIHx8ICdOZXh0JztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vIGFkZCBsYWJlbCBhcyBjbGFzc1xuICAgICAgICAgICAgICAgICAgICBlbGVtLmFkZENsYXNzIChzY29wZS5sYWJlbC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vIG5vdGU6IGNsaWNrZWQgaW4gaW1wb3J0ZWQgYW5kIHdoZW4gdGVtcGxhdGUgaXMgY2xpY2tlZFxuICAgICAgICAgICAgICAgICAgICAvLyBpdCB3aWxsIGNhbGwgY2xpY2tlZCBtZXRob2QgcGFzc2VkIGluIHBhcmFtLlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgICAgICAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICAgICAgICAgICAgICBzY29wZToge2NsaWNrZWQgOiAnPSd9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xufSkoKTtcbiIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICogXG4gKiBCdWdzOiBJbnB1dCB3aXRoIENhbGxiYWNrIFNIT1VMRCBCRSBnZXQgJ3JlcXVpcmVkJyBjbGFzc1xuICogXG4gKiByZWY6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9tb3VzZW92ZXJcbiAqIFxuICogdXNhZ2U6IFxuVXNhZ2UgIDxyYW5nZS1zbGlkZXI+XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIDxyYW5nZS1zbGlkZXJcbiAgICAgIGlkPVwibXktc2xpZGVyLW5hbWVcIiAgICAgICAgICAgICAgICAgICAgIC8vIG9ubHkgdXNlIGFzIGFuIGFyZ3VtZW50IHRvIGNhbGxiYWNrXG4gICAgICBjbGFzcz1cIm15LWN1c3RvbS1jbGFzc1wiICAgICAgICAgICAgICAgICAvLyBkZWZhdWx0IGNsYXNzIGlzIGliei1yYW5nZS1zbGlkZXJcbiAgICAgIHBsYWNlaG9sZGVyPVwiVHJhY2sgRGF0ZSBTZWxlY3Rpb25cIiAgICAgIC8vIHBsYWNlIGhvbGRlciBmb3IgZGF0ZSByZWFkb25seSBpbnB1dCB6b25lXG5cbiAgICAgIDwhLS0gRm91bmRhdGlvbiBjbGFzc2VzIC0tPlxuICAgICAgY2xhc3M9XCJyYWRpdXNcIiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2hlY2sgWnVyYiBmb3VuZGF0aW9uIGRvYyBmb3IgZnVydGhlciBpbmZvLlxuICAgICAgY2xhc3M9XCJpYnotaGFuZGxlLWRpc3BsYXlcIiAgICAgICAgICAgICAgLy8gaW5jcmVhc2UgaGFuZGxlIHdpZHRoIHRvIGhvbGQgc2xpZGVyIGN1cnJlbnQgdmFsdWVcblxuICAgICAgPCEtLSBBbmd1bGFyIFNjb3BlIFZhcmlhYmxlcyAtLT5cbiAgICAgIGNhbGxiYWNrPVwibXlDYWxsQmFja1wiICAgICAgICAgICAgICAgICAgICAvLyAkc2NvcGUubXlDYWxsQmFjayhzbGlkZXJoYW5kbGUpIGlzIGNhbGxlZCB3aGVuIGV2ZXIgc2xpZGVyIGhhbmRsZSBibHVyXG4gICAgICBmb3JtYXR0ZXI9XCJTbGlkZXJGb3JtYXRDQlwiICAgICAgICAgICAgICAgLy8gJHNjb3BlLm15Rm9ybWF0dGVyKHZhbHVlLCBzbGlkZXJpZCkgd2hlbiBleGlzdCBpcyBjYWxsIHdoZW4gZXZlciBzbGlkZXIgaGFuZGxlIG1vdmVzLiBTaG91bGQgcmV0dXJuIGV4dGVybmFsIGZvcm0gb2Ygc2xpZGVyIHZhbHVlLlxuICAgICAgbmctbW9kZWw9XCJ4eHh4eHhcIiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHh4eCBNdXN0IGJlIGRlZmluZWQsIHNjcmlwdCB3aWxsIHN0b3JlIGEgbmV3IFJhbmdlck9iamVjdCB3aXRoaW4gcHJvdmlkZWQgbmctbW9kZWwgdmFyaWFibGUuXG4gICAgICBzdGFydC1hdD1cIlNjb3BlVmFyXCIgICAgICAgICAgICAgICAgICAgICAgLy8gRHluYW1pYyBsaW1pdGF0aW9uIHdoZW4gc2xpZGVyIGlzIGNvbnN0cmFpbnMgYnkgYW4gZXh0ZXJuYWwgY29tcG9uYW50IFtleDogY2hlY2sgaW4vb3V0XVxuICAgICAgc3RvcC1hdD1cIlNjb3BlVmFyXCIgICAgICAgICAgICAgICAgICAgICAgIC8vIElkZW0gYnV0IGZvciBlbmQuXG5cbiAgICAgIDwhLS0gQW5ndWxhciBEaXJlY3RpdmUgQXR0cmlidXRlcyAtLT5cbiAgICAgIG5vdC1sZXNzPVwiaW50ZWdlclwiICAgICAgICAgICAgICAgICAgICAgICAvLyBGaXhlZCBzdGFydGluZyB2YWx1ZSBmb3Igc2xpZGVyIFtkZWZhdWx0IDBdXG4gICAgICBub3QtbW9yZT1cImludGVnZXJcIiAgICAgICAgICAgICAgICAgICAgICAgLy8gRml4ZWQgZW5kIHZhbHVlIGZvciBzbGlkZXJzIFtkZWZhdWx0IDEwMF1cbiAgICAgIGJ5LXN0ZXA9XCIrLWludGVnZXJcIiAgICAgICAgICAgICAgICAgICAgICAvLyBJZiBieS1zdGVwIGlzID4wIHRoZW4gc2xpZGVyIHVzZSBpdCBhcyBzdGVwLXZhbHVlLCB3aGVuIG5lZ2F0aXZlIHVzZSBpdCBmb3IgZGVjaW1hbCBwcmVjaXNpb25cbiAgICAgIGRpc3BsYXktdGFyZ2V0PVwiaGFuZGxlXCIgICAgICAgICAgICAgICAgICAvLyBkaXNwbGF5IHNsaWRlciBleHRlcm5hbCBmb3JtYXRlZCB2YWx1ZSBpbiB0aGUgaGFuZGxlIFtyZXF1aXJlciBjYWxzcz1cImliei1oYW5kbGUtZGlzcGxheVwiXVxuICAgICAgZHVhbC1oYW5kbGVzPSd0cnVlJyAgICAgICAgICAgICAgICAgICAgICAvLyBhZGQgYSBzZWNvbmQgaGFuZGxlIHRvIHNsaWRlciBmb3IgbWluL21heCByYW5nZVxuICAgICAgaW5pdGlhbD0ndmFsdWV8W3N0YXJ0L3N0b3BdJyAgICAgICAgICAgICAvLyBzbGlkZXIgaW5pdGlhbCB2YWx1ZSBbZHVhbC1oYW5kbGVzXSBtYXkgaGF2ZSBpbml0aWFsIHZhbHVlc1xuICAgLz48L3JhbmdlLXNsaWRlcj5cbiAqL1xuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxudmFyIFJhbmdlU2xpZGVyID0gYW5ndWxhci5tb2R1bGUoJ1JhbmdlU2xpZGVyJyxbXSk7XG5cbmZ1bmN0aW9uIFJhbmdlU2xpZGVySGFuZGxlIChzY29wZSkge1xuICAgIHZhciBpbnRlcm5hbHMgPSBbXTtcbiAgICB2YXIgZXh0ZXJuYWxzID0gW107XG5cbiAgICB0aGlzLmdldElkID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBzY29wZS5zbGlkZXJpZDtcbiAgICB9O1xuXG4gICAgdGhpcy5nZXRDYkhhbmRsZSA9IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gc2NvcGUuY2JoYW5kbGU7XG4gICAgfTtcblxuICAgIHRoaXMuZ2V0Vmlldz0gZnVuY3Rpb24gKGhhbmRsZSkge1xuICAgICAgICBpZiAoIWhhbmRsZSkgaGFuZGxlID0gMDtcblxuICAgICAgICAvLyBpZiB2YWx1ZSBkaWQgbm90IGNoYW5nZSByZXR1cm4gY3VycmVudCBleHRlcm5hbCByZXByZXNlbnRhdGlvblxuICAgICAgICBpZiAoc2NvcGUudmFsdWVbaGFuZGxlXSA9PT0gaW50ZXJuYWxzW2hhbmRsZV0pIHJldHVybiBleHRlcm5hbHNbaGFuZGxlXTtcblxuICAgICAgICAvLyBidWlsZCBleHRlcm5hbCByZXByZXNlbnRhdGlvbiBhbmQgc2F2ZSBpdCBmb3IgZnVydGhlciByZXF1ZXN0c1xuICAgICAgICBpbnRlcm5hbHNbaGFuZGxlXSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG4gICAgICAgIGlmIChzY29wZS5mb3JtYXR0ZXIpIGV4dGVybmFsc1toYW5kbGVdID0gc2NvcGUuZm9ybWF0dGVyKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICBlbHNlICBleHRlcm5hbHNbaGFuZGxlXSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG5cbiAgICAgICAgcmV0dXJuIGV4dGVybmFsc1toYW5kbGVdO1xuICAgIH07XG5cbiAgICB0aGlzLnVwZGF0ZUNsYXNzID0gZnVuY3Rpb24gKGNsYXNzZSwgc3RhdHVzKSB7XG4gICAgICAgc2NvcGUudXBkYXRlQ2xhc3MgKGNsYXNzZSwgc3RhdHVzKTtcbiAgICB9O1xuXG4gICAgdGhpcy5mb3JjZVJlZnJlc2ggPSBmdW5jdGlvbiAodGltZXIpIHtcbiAgICAgICBzY29wZS5mb3JjZVJlZnJlc2godGltZXIpO1xuICAgIH07XG5cbiAgICB0aGlzLmdldFZhbHVlPSBmdW5jdGlvbiAoaGFuZGxlKSB7XG4gICAgICAgIGlmICghaGFuZGxlKSBoYW5kbGUgPSAwO1xuICAgICAgICByZXR1cm4gc2NvcGUudmFsdWVbaGFuZGxlXTtcbiAgICB9O1xuXG4gICAgdGhpcy5nZXRSZWxhdGl2ZT0gZnVuY3Rpb24gKGhhbmRsZSkge1xuICAgICAgICBpZiAoIWhhbmRsZSkgaGFuZGxlID0gMDtcbiAgICAgICAgcmV0dXJuIHNjb3BlLnJlbGF0aXZlW2hhbmRsZV07XG4gICAgfTtcblxuICAgIHRoaXMuc2V0VmFsdWU9IGZ1bmN0aW9uICh2YWx1ZSwgaGFuZGxlKSB7XG4gICAgICAgIGlmICghaGFuZGxlKSBoYW5kbGUgPSAwO1xuICAgICAgICBzY29wZS5zZXRWYWx1ZSAodmFsdWUsIGhhbmRsZSk7XG4gICAgfTtcblxuICAgIHRoaXMuc2V0RGlzYWJsZT0gZnVuY3Rpb24gKGZsYWcpIHtcbiAgICAgICAgc2NvcGUuc2V0RGlzYWJsZShmbGFnKTtcbiAgICB9O1xufVxuXG5SYW5nZVNsaWRlci5kaXJlY3RpdmUoJ3JhbmdlU2xpZGVyJywgW1wiJGxvZ1wiLCBcIiRkb2N1bWVudFwiLCBcIiR0aW1lb3V0XCIsIGZ1bmN0aW9uICgkbG9nLCAkZG9jdW1lbnQsICR0aW1lb3V0KSB7XG5cbiAgICB2YXIgdGVtcGxhdGU9ICc8ZGl2IGNsYXNzPVwiaWJ6LXJhbmdlLXNsaWRlciByYW5nZS1zbGlkZXJcIiB0aXRsZT1cInt7dGl0bGV9fVwiZGF0YS1zbGlkZXI+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cInJhbmdlLXNsaWRlci1oYW5kbGUgaGFuZGxlLW1pblwiIG5nLW1vdXNlZG93bj1cImhhbmRsZUNCKCRldmVudCwwKVwiIG5nLWZvY3VzPVwiZm9jdXNDQih0cnVlKVwiIG5nLWJsdXI9XCJmb2N1c0NCKGZhbHNlKVwiIHJvbGU9XCJzbGlkZXJcIiB0YWJpbmRleD1cIjBcIj48L3NwYW4+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cImhhbmRsZS1tYXhcIiBuZy1tb3VzZWRvd249XCJoYW5kbGVDQigkZXZlbnQsMSlcIiBuZy1mb2N1cz1cImZvY3VzQ0IodHJ1ZSlcIiBuZy1ibHVyPVwiZm9jdXNDQihmYWxzZSlcIiByb2xlPVwic2xpZGVyXCIgdGFiaW5kZXg9XCIwXCI+PC9zcGFuPicrXG4gICAgICAgICAgICAgICAgICAnPHNwYW4gY2xhc3M9XCJyYW5nZS1zbGlkZXItYWN0aXZlLXNlZ21lbnRcIj48L3NwYW4+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cImliei1yYW5nZS1zbGlkZXItc3RhcnRcIiA+PC9zcGFuPiAnK1xuICAgICAgICAgICAgICAgICAgJzxzcGFuIGNsYXNzPVwiaWJ6LXJhbmdlLXNsaWRlci1zdG9wXCI+PC9zcGFuPiAnK1xuICAgICAgICAgICAgICAgICAgJzxpbnB1dCBpZD17e3NsaWRlcmlkfX0gdHlwZT1cImhpZGRlblwiPicrXG4gICAgICAgICAgICAgICAgICAnPC9kaXY+JztcblxuXG4gICAgZnVuY3Rpb24gbGluayAoc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBtb2RlbCkge1xuICAgICAgICAvLyBmdWxsIGluaXRpYWxpc2F0aW9uIG9mIHNsaWRlciBmcm9tIGEgc2luZ2xlIG9iamVjdFxuICAgICAgICBzY29wZS5pbml0V2lkZ2V0ID0gZnVuY3Rpb24gKGluaXR2YWx1ZXMpIHtcblxuICAgICAgICAgICAgaWYgKGluaXR2YWx1ZXMuYnlTdGVwKSAgc2NvcGUuYnlTdGVwICA9IHBhcnNlSW50KGluaXR2YWx1ZXMuYnlTdGVwKTtcbiAgICAgICAgICAgIGlmIChpbml0dmFsdWVzLm5vdE1vcmUpIHNjb3BlLm5vdE1vcmUgPSBwYXJzZUludChpbml0dmFsdWVzLm5vdE1vcmUpO1xuICAgICAgICAgICAgaWYgKGluaXR2YWx1ZXMubm90TGVzcykgc2NvcGUubm90TGVzcyA9IHBhcnNlSW50KGluaXR2YWx1ZXMubm90TGVzcyk7XG4gICAgICAgICAgICBpZiAoaW5pdHZhbHVlcy5pZCkgICAgICBzY29wZS5zbGlkZXJpZD0gaW5pdHZhbHVlcy5pZDtcblxuICAgICAgICAgICAgLy8gaHVnZWx5IGJ1dCBpbiBzb21lIGNhc2UgRE9NIGlzIG5vdCBmaW5pc2ggd2hlbiB3ZSB0cnkgdG8gc2V0IHZhbHVlcyAhISFcbiAgICAgICAgICAgIGlmIChpbml0dmFsdWVzLnZhbHVlICE9PSB1bmRlZmluZWQpICAge1xuICAgICAgICAgICAgICAgIHNjb3BlLnZhbHVlID0gaW5pdHZhbHVlcy52YWx1ZTtcbiAgICAgICAgICAgICAgICBzY29wZS5mb3JjZVJlZnJlc2ggKDUwKTsgLy8gd2FpdCA1MG1zIGZvciBET00gdG8gYmUgcmVhZHlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICAvLyB0aGlzIGZ1bmN0aW9uIHJlY29tcHV0ZSBzbGlkZSBwb3NpdGlvbmluZ1xuICAgICAgICBzY29wZS5mb3JjZVJlZnJlc2ggPSBmdW5jdGlvbiAodGltZXIpIHtcbiAgICAgICAgICAgdmFyIHZhbHVlID0gc2NvcGUudmFsdWU7XG4gICAgICAgICAgIHNjb3BlLnZhbHVlID0gW3VuZGVmaW5lZCx1bmRlZmluZWRdO1xuICAgICAgICAgICAkdGltZW91dCAoZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICBzY29wZS5zZXRWYWx1ZSh2YWx1ZVswXSwwKTtcbiAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSAgc2NvcGUuc2V0VmFsdWUodmFsdWVbMV0sMSk7XG4gICAgICAgICAgIH0sIHRpbWVyKTtcbiAgICAgICAgfTtcblxuICAgICAgICAvLyBoYW5kbGVyIHRvIGNoYW5nZSBjbGFzcyBmcm9tIHNsaWRlciBoYW5kbGVcbiAgICAgICAgc2NvcGUudXBkYXRlQ2xhc3MgPSBmdW5jdGlvbiAoY2xhc3NlLCBzdGF0dXMpIHtcblxuICAgICAgICAgICAgaWYgKHN0YXR1cykgZWxlbWVudC5hZGRDbGFzcyAoY2xhc3NlKTtcbiAgICAgICAgICAgIGVsc2UgIGVsZW1lbnQucmVtb3ZlQ2xhc3MgKGNsYXNzZSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUuc2V0RGlzYWJsZSA9IGZ1bmN0aW9uIChkaXNhYmxlZCkge1xuXG4gICAgICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmFkZENsYXNzIChcImRpc2FibGVcIik7XG4gICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1swXS5jc3MgKCd2aXNpYmlsaXR5JywnaGlkZGVuJyk7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmR1YWwpIHtcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1sxXS5jc3MgKCd2aXNpYmlsaXR5JywnaGlkZGVuJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnJlbW92ZUNsYXNzIChcImRpc2FibGVcIik7XG4gICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1swXS5jc3MgKCd2aXNpYmlsaXR5JywndmlzaWJsZScpO1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSBzY29wZS5oYW5kbGVzWzFdLmNzcyAoJ3Zpc2liaWxpdHknLCd2aXNpYmxlJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5ub3JtYWxpemUgPSBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgICAgIHZhciByZXN1bHQ7XG4gICAgICAgICAgICB2YXIgcmFuZ2UgPSBzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcztcbiAgICAgICAgICAgIHZhciBwb2ludCA9IHZhbHVlICogcmFuZ2U7XG5cbiAgICAgICAgICAgIC8vIGlmIHN0ZXAgaXMgcG9zaXRpdmUgbGV0J3Mgcm91bmQgc3RlcCBieSBzdGVwXG4gICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gIDApIHtcbiAgICAgICAgICAgICAgICB2YXIgbW9kID0gKHBvaW50IC0gKHBvaW50ICUgc2NvcGUuYnlTdGVwKSkgLyBzY29wZS5ieVN0ZXA7XG4gICAgICAgICAgICAgICAgdmFyIHJlbSA9IHBvaW50ICUgc2NvcGUuYnlTdGVwO1xuXG4gICAgICAgICAgICAgICAgdmFyIHJvdW5kID0gKHJlbSA+PSBzY29wZS5ieVN0ZXAgKiAwLjUgPyBzY29wZS5ieVN0ZXAgOiAwKTtcbiAgICAgICAgICAgICAgICByZXN1bHQ9IChtb2QgKiBzY29wZS5ieVN0ZXAgKyByb3VuZCkgKyBzY29wZS5ub3RMZXNzO1xuICAgICAgICAgICAgICAgIC8vY29uc29sZS5sb2cgKFwicmFuZ2U9JWQgdmFsdWU9JWQgcG9pbnQ9JWQgbW9kPSVkIHJlbT0lZCByb3VuZD0lZCByZXN1bHQ9JWRcIiwgcmFuZ2UsIHZhbHVlLCBwb2ludCwgbW9kLCByZW0sIHJvdW5kLCByZXN1bHQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gaWYgc3RlcCBpcyBuZWdhdGl2ZSByZXR1cm4gcm91bmQgdG8gYXNrZWQgZGVjaW1hbFxuICAgICAgICAgICAgaWYgKHNjb3BlLmJ5U3RlcCA8ICAwKSB7XG4gICAgICAgICAgICAgICAgdmFyIHBvd2VyICA9ICBNYXRoLnBvdyAoMTAsKHNjb3BlLmJ5U3RlcCAqIC0xKSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gc2NvcGUubm90TGVzcyArIHBhcnNlSW50IChwb2ludCAqIHBvd2VyKSAvIHBvd2VyO1xuICAgICAgICAgICAgICAgIHJldHVybiAocmVzdWx0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gaWYgc3RlcCBpcyBudWxsIHJldHVybiBmdWxsIHZhbHVlXG4gICAgICAgICAgICByZXR1cm4gcG9pbnQ7XG4gICAgICAgfTtcblxuICAgICAgICAvLyByZXR1cm4gY3VycmVudCB2YWx1ZVxuICAgICAgICBzY29wZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uIChvZmZzZXQsIGhhbmRsZSkge1xuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUucmVsYXRpdmVbaGFuZGxlXSA9IChvZmZzZXQgLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCkgLyAoc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNjb3BlLnJlbGF0aXZlW2hhbmRsZV0gPSBvZmZzZXQgLyAgKHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdmFyIG5ld3ZhbHVlID0gc2NvcGUubm9ybWFsaXplIChzY29wZS5yZWxhdGl2ZVtoYW5kbGVdKTtcblxuXG4gICAgICAgICAgICAvLyBpZiBpbnRlcm5hbCB2YWx1ZSBjaGFuZ2UgdXBkYXRlIG9yIG1vZGVsXG4gICAgICAgICAgICBpZiAobmV3dmFsdWUgIT09IHNjb3BlLnZhbHVlW2hhbmRsZV0pIHtcbiAgICAgICAgICAgICAgICBpZiAobmV3dmFsdWUgPCBzY29wZS5zdGFydFZhbHVlKSBuZXd2YWx1ZT1zY29wZS5zdGFydFZhbHVlO1xuICAgICAgICAgICAgICAgIGlmIChuZXd2YWx1ZSA+IHNjb3BlLnN0b3BWYWx1ZSkgIG5ld3ZhbHVlPXNjb3BlLnN0b3BWYWx1ZTtcblxuXG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmZvcm1hdHRlcikge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS52aWV3VmFsdWUgPSBzY29wZS5mb3JtYXR0ZXIgKG5ld3ZhbHVlLCBzY29wZS5jdHJsaGFuZGxlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS52aWV3VmFsdWUgPSBuZXd2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmRpc3BsYXlzW2hhbmRsZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXNbaGFuZGxlXS5odG1sIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBleHRlcm5hbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWxcbiAgICAgICAgICAgICAgICBzY29wZS52YWx1ZVtoYW5kbGVdID0gbmV3dmFsdWU7XG4gICAgICAgICAgICAgICAgaWYgKG1vZGVsKSBtb2RlbC4kc2V0Vmlld1ZhbHVlIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgICAgIHNjb3BlLiRhcHBseSgpO1xuICAgICAgICAgICAgICAgIGlmIChuZXd2YWx1ZSA+IHNjb3BlLnN0YXJ0VmFsdWUgJiYgbmV3dmFsdWUgPCBzY29wZS5zdG9wVmFsdWUpIHNjb3BlLnRyYW5zbGF0ZShvZmZzZXQsIGhhbmRsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cblxuICAgICAgICBzY29wZS5zZXRTdGFydCA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKHZhbHVlID4gc2NvcGUudmFsdWVbMF0pIHtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmR1YWwpIHNjb3BlLnNldFZhbHVlICh2YWx1ZSwwKTtcbiAgICAgICAgICAgICAgICBlbHNlIHNjb3BlLnNldFZhbHVlICh2YWx1ZSwxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSB7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgKiAodmFsdWUgLSBzY29wZS5ub3RMZXNzKSAvIChzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcyk7XG4gICAgICAgICAgICAgICAgc2NvcGUuc3RhcnQuY3NzKCdoZWlnaHQnLG9mZnNldCArICdweCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICogKHZhbHVlIC0gc2NvcGUubm90TGVzcykgLyAoc2NvcGUubm90TW9yZSAtIHNjb3BlLm5vdExlc3MpO1xuICAgICAgICAgICAgICAgIHNjb3BlLnN0YXJ0LmNzcygnd2lkdGgnLG9mZnNldCArICdweCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzY29wZS5zdGFydFZhbHVlPSB2YWx1ZTtcbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5zZXRTdG9wID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgICAgICAgICB2YXIgb2Zmc2V0O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiAodmFsdWUgPCBzY29wZS52YWx1ZVswXSkge1xuICAgICAgICAgICAgICAgIGlmICghc2NvcGUuZHVhbCkgc2NvcGUuc2V0VmFsdWUgKHZhbHVlLDApO1xuICAgICAgICAgICAgICAgIGVsc2Ugc2NvcGUuc2V0VmFsdWUgKHZhbHVlLDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoc2NvcGUudmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCAqICh2YWx1ZSAtIHNjb3BlLm5vdExlc3MpIC8gKHNjb3BlLm5vdE1vcmUgLSBzY29wZS5ub3RMZXNzKTtcbiAgICAgICAgICAgICAgICBzY29wZS5zdGFydC5jc3MoJ2hlaWdodCcsb2Zmc2V0ICsgJ3B4Jyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggKiAodmFsdWUgLSBzY29wZS5ub3RMZXNzKSAvIChzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcyk7XG4gICAgICAgICAgICAgICAgc2NvcGUuc3RvcC5jc3MoeydyaWdodCc6IDAsICd3aWR0aCc6IChzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICAtIG9mZnNldCkgKyAncHgnfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNjb3BlLnN0b3BWYWx1ZT0gdmFsdWU7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUudHJhbnNsYXRlID0gZnVuY3Rpb24gKG9mZnNldCwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgc3RhcnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkge1xuICAgICAgICAgICAgICAgIC8vIHRha2UgaGFuZGxlIHNpemUgaW4gYWNjb3VudCB0byBjb21wdXRlIG1pZGRsZVxuICAgICAgICAgICAgICAgIHZhciB2b2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLSBvZmZzZXQ7XG5cbiAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzW2hhbmRsZV0uY3NzKHtcbiAgICAgICAgICAgICAgICAgICAgJy13ZWJraXQtdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tb3otdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tcy10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWSgnICsgdm9mZnNldCArICdweCknLFxuICAgICAgICAgICAgICAgICAgICAnLW8tdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zZm9ybSc6ICd0cmFuc2xhdGVZKCcgKyB2b2Zmc2V0ICsgJ3B4KSdcbiAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgaWYgKCFzY29wZS5kdWFsKSBzY29wZS5zbGlkZXIuY3NzKCdoZWlnaHQnLCBvZmZzZXQgKyAncHgnKTtcbiAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjb3BlLnJlbGF0aXZlWzFdICYmIHNjb3BlLnJlbGF0aXZlWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgdmFyIGhlaWdodCA9IChzY29wZS5yZWxhdGl2ZVsxXSAtIHNjb3BlLnJlbGF0aXZlWzBdKSAqICBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgICAgICAgICAgICAgICAgICBzdGFydCAgPSAoc2NvcGUucmVsYXRpdmVbMF0gKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgIHNjb3BlLnNsaWRlci5jc3MgKHsnYm90dG9tJzogc3RhcnQrJ3B4JywnaGVpZ2h0JzogaGVpZ2h0ICsgJ3B4J30pO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbaGFuZGxlXS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICAnLXdlYmtpdC10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICctbW96LXRyYW5zZm9ybSc6ICd0cmFuc2xhdGVYKCcgKyBvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tcy10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICctby10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KSdcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmR1YWwpIHNjb3BlLnNsaWRlci5jc3MoJ3dpZHRoJyxvZmZzZXQgKyAncHgnKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzY29wZS5yZWxhdGl2ZVsxXSAmJiBzY29wZS5yZWxhdGl2ZVswXSkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgd2lkdGggPSAoc2NvcGUucmVsYXRpdmVbMV0gLSBzY29wZS5yZWxhdGl2ZVswXSkgKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQgPSAoc2NvcGUucmVsYXRpdmVbMF0gKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnNsaWRlci5jc3MgKHsnbGVmdCc6IHN0YXJ0KydweCcsJ3dpZHRoJzogd2lkdGggKyAncHgnfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vIHBvc2l0aW9uIGhhbmRsZSBvbiB0aGUgYmFyIGRlcGVuZGluZyBhIGdpdmVuIHZhbHVlXG4gICAgICAgIHNjb3BlLnNldFZhbHVlID0gZnVuY3Rpb24gKHZhbHVlICwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgb2Zmc2V0O1xuXG4gICAgICAgICAgICAvLyBpZiB2YWx1ZSBkaWQgbm90IGNoYW5nZSBpZ25vcmVcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpICAgdmFsdWU9MDtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA+IHNjb3BlLm5vdE1vcmUpIHZhbHVlPXNjb3BlLm5vdE1vcmU7XG4gICAgICAgICAgICBpZiAodmFsdWUgPCBzY29wZS5ub3RMZXNzKSB2YWx1ZT1zY29wZS5ub3RMZXNzO1xuXG4gICAgICAgICAgICBpZiAoc2NvcGUudmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdID0gKHZhbHVlIC0gc2NvcGUubm90TGVzcykgLyAoc2NvcGUubm90TW9yZSAtIHNjb3BlLm5vdExlc3MpO1xuICAgICAgICAgICAgICAgIGlmIChoYW5kbGUgPT09IDApIG9mZnNldCA9IChzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpICsgc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQvMjtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlID09PSAxKSBvZmZzZXQgPSBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc2NvcGUucmVsYXRpdmVbaGFuZGxlXSA9ICh2YWx1ZSAtIHNjb3BlLm5vdExlc3MpIC8gKHNjb3BlLm5vdE1vcmUgLSBzY29wZS5ub3RMZXNzKTtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogIChzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoIC0gc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNjb3BlLnRyYW5zbGF0ZSAob2Zmc2V0LGhhbmRsZSk7XG4gICAgICAgICAgICBzY29wZS52YWx1ZVtoYW5kbGVdID0gdmFsdWU7XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5mb3JtYXR0ZXIpIHtcbiAgICAgICAgICAgICAgICAvLyB3aGVuIGNhbGwgdGhyb3VnaCBzZXRWYWx1ZSB3ZSBkbyBub3QgcGFzcyBjYkhhbmRsZVxuICAgICAgICAgICAgICAgIHNjb3BlLnZpZXdWYWx1ZSA9IHNjb3BlLmZvcm1hdHRlciAodmFsdWUsIHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNjb3BlLnZpZXdWYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobW9kZWwpIG1vZGVsLiRzZXRWaWV3VmFsdWUoIHNjb3BlLnZpZXdWYWx1ZSk7XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5kaXNwbGF5c1toYW5kbGVdKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXNbaGFuZGxlXS5odG1sIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG5cbiAgICAgICAgLy8gTWluaW1hbCBrZXlzdHJva2UgaGFuZGxpbmcgdG8gY2xvc2UgcGlja2VyIHdpdGggRVNDIFtzY29wZS5hY3RpZiBpcyBjdXJyZW50IGhhbmRsZSBpbmRleF1cbiAgICAgICAgc2NvcGUua2V5ZG93bj0gIGZ1bmN0aW9uKGUpe1xuXG4gICAgICAgICAgICBzd2l0Y2goZS5rZXlDb2RlKXtcbiAgICAgICAgICAgICAgICBjYXNlIDM5OiAvLyBSaWdodFxuICAgICAgICAgICAgICAgIGNhc2UgMzg6IC8vIHVwXG4gICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdK3Njb3BlLmJ5U3RlcCksIHNjb3BlLmFjdGlmKSk7XG4gICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwIDwgMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdKygxIC8gTWF0aC5wb3coMTAsIHNjb3BlLmJ5U3RlcCotMSkpKSxzY29wZS5hY3RpZikpO1xuICAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLmNhbGxiYWNrKSAgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW3Njb3BlLmFjdGlmXSwgc2NvcGUuY3RybGhhbmRsZSk7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDM3OiAvLyBsZWZ0XG4gICAgICAgICAgICAgICAgY2FzZSA0MDogLy8gZG93blxuICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdIC0gc2NvcGUuYnlTdGVwKSwgc2NvcGUuYWN0aWYpKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLmJ5U3RlcCA8IDApIHNjb3BlLiRhcHBseShzY29wZS5zZXRWYWx1ZSAoKHNjb3BlLnZhbHVlW3Njb3BlLmFjdGlmXSAtICgxIC8gTWF0aC5wb3coMTAsIHNjb3BlLmJ5U3RlcCotMSkpKSxzY29wZS5hY3RpZikpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuY2FsbGJhY2spICBzY29wZS5jYWxsYmFjayAoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdLCBzY29wZS5jdHJsaGFuZGxlKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAyNzogLy8gZXNjXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbc2NvcGUuYWN0aWZdWzBdLmJsdXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5tb3ZlSGFuZGxlID0gZnVuY3Rpb24gKGhhbmRsZSwgY2xpZW50WCwgY2xpZW50WSkge1xuICAgICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tIC0gY2xpZW50WTtcbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0ID4gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPCBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCkgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IGNsaWVudFggLSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XG5cbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0IDwgMCkgb2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICBpZiAoKGNsaWVudFggKyBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKSA+IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkucmlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCAtIHNjb3BlLmJvdW5kcy5oYW5kbGVzW2hhbmRsZV0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzY29wZS5nZXRWYWx1ZSAgKG9mZnNldCwgaGFuZGxlKTtcblxuICAgICAgICAgICAgLy8gcHJldmVudCBkdWFsIGhhbmRsZSB0byBjcm9zc1xuICAgICAgICAgICAgaWYgKHNjb3BlLmR1YWwgJiYgc2NvcGUudmFsdWUgWzBdID4gc2NvcGUudmFsdWVbMV0pIHtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlID09PSAwKSBzY29wZS5zZXRWYWx1ZSAoc2NvcGUudmFsdWVbMF0gLCAxKTtcbiAgICAgICAgICAgICAgICBlbHNlIHNjb3BlLnNldFZhbHVlKHNjb3BlLnZhbHVlWzFdLDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG5cbiAgICAgICAgc2NvcGUuZm9jdXNDQiA9IGZ1bmN0aW9uIChpbnNpZGUpIHtcbiAgICAgICAgICAgIGlmIChpbnNpZGUpIHtcbiAgICAgICAgICAgICAgICAkZG9jdW1lbnQub24oJ2tleWRvd24nLHNjb3BlLmtleWRvd24pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAkZG9jdW1lbnQudW5iaW5kKCdrZXlkb3duJyxzY29wZS5rZXlkb3duKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICAvLyBiYXIgd2FzIHRvdWNoIGxldCBtb3ZlIGhhbmRsZSB0byB0aGlzIHBvaW50XG4gICAgICAgIHNjb3BlLnRvdWNoQmFyQ0IgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgIHZhciBoYW5kbGU9MDtcbiAgICAgICAgICAgIHZhciByZWxhdGl2ZTtcbiAgICAgICAgICAgIHZhciB0b3VjaGVzID0gZXZlbnQuY2hhbmdlZFRvdWNoZXM7XG4gICAgICAgICAgICB2YXIgb2xkdmFsdWUgPSBzY29wZS52YWx1ZVtoYW5kbGVdO1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgICAgICAvLyBpZiB3ZSBoYXZlIHR3byBoYW5kbGVzIHNlbGVjdCBjbG9zZXN0IG9uZSBmcm9tIHRvdWNoIHBvaW50XG4gICAgICAgICAgICBpZiAoc2NvcGUuZHVhbCkge1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkgcmVsYXRpdmUgPSAodG91Y2hlc1swXS5wYWdlWSAtIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tKSAvIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGVsc2UgcmVsYXRpdmU9ICh0b3VjaGVzWzBdLnBhZ2VYIC0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0KSAvIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG5cbiAgICAgICAgICAgICAgICB2YXIgZGlzdGFuY2UwID0gTWF0aC5hYnMocmVsYXRpdmUgLSBzY29wZS5yZWxhdGl2ZVswXSk7XG4gICAgICAgICAgICAgICAgdmFyIGRpc3RhbmNlMSA9IE1hdGguYWJzKHJlbGF0aXZlIC0gc2NvcGUucmVsYXRpdmVbMV0pO1xuICAgICAgICAgICAgICAgIGlmIChkaXN0YW5jZTEgPCBkaXN0YW5jZTApIGhhbmRsZT0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBtb3ZlIGhhbmRsZSB0byBuZXcgcGxhY2VcbiAgICAgICAgICAgIHNjb3BlLm1vdmVIYW5kbGUgKGhhbmRsZSx0b3VjaGVzWzBdLnBhZ2VYLCB0b3VjaGVzWzBdLnBhZ2VZKTtcbiAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIGhhbmRsZSB3YXMgdG91Y2ggYW5kIGRyYWdcbiAgICAgICAgc2NvcGUudG91Y2hIYW5kbGVDQiA9IGZ1bmN0aW9uICh0b3VjaGV2dCwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgb2xkdmFsdWUgPSBzY29wZS52YWx1ZVtoYW5kbGVdO1xuXG4gICAgICAgICAgICB0b3VjaGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgJGRvY3VtZW50Lm9uKCd0b3VjaG1vdmUnLHRvdWNobW92ZSk7XG4gICAgICAgICAgICAkZG9jdW1lbnQub24oJ3RvdWNoZW5kJyAsdG91Y2hlbmQpO1xuICAgICAgICAgICAgZWxlbWVudC51bmJpbmQoJ3RvdWNoc3RhcnQnLCBzY29wZS50b3VjaEJhckNCKTtcblxuICAgICAgICAgICAgZnVuY3Rpb24gdG91Y2htb3ZlKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB2YXIgdG91Y2hlcyA9IGV2ZW50LmNoYW5nZWRUb3VjaGVzO1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGlkeCA9IDA7IGlkeCA8IHRvdWNoZXMubGVuZ3RoOyBpZHgrKykge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5tb3ZlSGFuZGxlIChoYW5kbGUsdG91Y2hlc1tpZHhdLnBhZ2VYLCB0b3VjaGVzW2lkeF0ucGFnZVkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZnVuY3Rpb24gdG91Y2hlbmQoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ3RvdWNobW92ZScsdG91Y2htb3ZlKTtcbiAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ3RvdWNoZW5kJyAsdG91Y2hlbmQpO1xuICAgICAgICAgICAgICAgZWxlbWVudC5vbigndG91Y2hzdGFydCcsIHNjb3BlLnRvdWNoQmFyQ0IpO1xuXG4gICAgICAgICAgICAgICAgLy8gaWYgdmFsdWUgY2hhbmdlIG5vdGlmeSBhcHBsaWNhdGlvbiBjYWxsYmFja1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHNjb3BlLmhhbmRsZUNCID0gZnVuY3Rpb24gKGNsaWNrZXZlbnQsIGhhbmRsZSkge1xuXG4gICAgICAgICAgICBpZiAoYXR0cnMuYXV0b21hdGljKSByZXR1cm47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHZhciBvbGR2YWx1ZSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG4gICAgICAgICAgICAvLyByZWdpc3RlciBtb3VzZSBldmVudCB0byB0cmFjayBoYW5kbGVcbiAgICAgICAgICAgIGNsaWNrZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgICAgJGRvY3VtZW50Lm9uKCdtb3VzZW1vdmUnLG1vdXNlbW92ZSk7XG4gICAgICAgICAgICAkZG9jdW1lbnQub24oJ21vdXNldXAnLCBtb3VzZXVwKTtcbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbaGFuZGxlXVswXS5mb2N1cygpO1xuICAgICAgICAgICAgc2NvcGUuYWN0aWY9aGFuZGxlO1xuXG4gICAgICAgICAgICAvLyBzbGlkZXIgaGFuZGxlIGlzIG1vdmluZ1xuICAgICAgICAgICAgZnVuY3Rpb24gbW91c2Vtb3ZlKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgc2NvcGUubW92ZUhhbmRsZSAoaGFuZGxlLCBldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gbW91c2UgaXMgdXAgZGFucyBsZWF2ZSBzbGlkZXIgc2VuZCByZXNpemUgZXZlbnRzXG4gICAgICAgICAgICBmdW5jdGlvbiBtb3VzZXVwKCkge1xuICAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ21vdXNlbW92ZScsIG1vdXNlbW92ZSk7XG4gICAgICAgICAgICAgICAgJGRvY3VtZW50LnVuYmluZCgnbW91c2V1cCcsIG1vdXNldXApO1xuXG4gICAgICAgICAgICAgICAgLy8gaWYgdmFsdWUgY2hhbmdlIG5vdGlmeSBhcHBsaWNhdGlvbiBjYWxsYmFja1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vIHNpbXVsYXRlIGpxdWVyeSBmaW5kIGJ5IGNsYXNzZXMgY2FwYWJpbGl0aWVzIFt3YXJuaW5nIG9ubHkgcmV0dXJuIDFzdCBlbGVtZW50c11cbiAgICAgICAgc2NvcGUuZmluZCA9IGZ1bmN0aW9uIChzZWxlY3QsIGVsZW0pIHtcbiAgICAgICAgICAgIHZhciBkb21lbGVtO1xuXG4gICAgICAgICAgICBpZiAoZWxlbSkgZG9tZWxlbSA9IGVsZW1bMF0ucXVlcnlTZWxlY3RvcihzZWxlY3QpO1xuICAgICAgICAgICAgZWxzZSBkb21lbGVtID0gZWxlbWVudFswXS5xdWVyeVNlbGVjdG9yKHNlbGVjdCk7XG5cbiAgICAgICAgICAgIHZhciBhbmdlbGVtID0gYW5ndWxhci5lbGVtZW50KGRvbWVsZW0pO1xuICAgICAgICAgICAgcmV0dXJuIChhbmdlbGVtKTtcbiAgICAgICAgfTtcblxuXG5cbiAgICAgICAgc2NvcGUuaW5pdGlhbFNldHRpbmdzID0gZnVuY3Rpb24gKGluaXRpYWwpIHtcbiAgICAgICAgICAgIHZhciBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHQ7XG4gICAgICAgICAgICBzY29wZS52YWx1ZT1bXTsgIC8vIHN0b3JlIGxvdy9oZWlnaHQgdmFsdWUgd2hlbiB0d28gaGFuZGxlc1xuICAgICAgICAgICAgc2NvcGUucmVsYXRpdmU9W107XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5wcmVjaXNpb24gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHQgPSAoJycgKyBzY29wZS5ieVN0ZXApLm1hdGNoKC9cXC4oW1xcZF0qKS8pO1xuICAgICAgICAgICAgICAgIHNjb3BlLnByZWNpc2lvbiA9IGRlY2ltYWxfcGxhY2VzX21hdGNoX3Jlc3VsdCAmJiBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHRbMV0gPyBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHRbMV0ubGVuZ3RoIDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gcG9zaXRpb24gaGFuZGxlIHRvIGluaXRpYWwgdmFsdWUocylcbiAgICAgICAgICAgIGVsZW1lbnQub24oJ3RvdWNoc3RhcnQnLCBzY29wZS50b3VjaEJhckNCKTtcbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbMF0ub24oJ3RvdWNoc3RhcnQnLCBmdW5jdGlvbihldnQpe3Njb3BlLnRvdWNoSGFuZGxlQ0IoZXZ0LDApO30pO1xuXG4gICAgICAgICAgICAvLyB0aGlzIHNsaWRlciBoYXMgdHdvIGhhbmRsZXMgbG93L2hpZ2h0XG4gICAgICAgICAgICBpZiAoc2NvcGUuZHVhbCkge1xuICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbMV0uYWRkQ2xhc3MoJ3JhbmdlLXNsaWRlci1oYW5kbGUnKTtcbiAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzWzFdLm9uKCd0b3VjaHN0YXJ0JywgZnVuY3Rpb24oZXZ0KXtzY29wZS50b3VjaEhhbmRsZUNCKGV2dCwxKTt9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmluaXR2YWx1ZXMpIHNjb3BlLnNldFZhbHVlIChpbml0aWFsWzFdLDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBpZiB3ZSBoYXZlIGFuIGluaXRzdGF0ZSBvYmplY3QgYXBwbHkgaXRcbiAgICAgICAgICAgIGlmIChzY29wZS5pbml0dmFsdWVzKSBzY29wZS5pbml0V2lkZ2V0IChzY29wZS5pbml0dmFsdWVzKTtcbiAgICAgICAgICAgIGVsc2UgICBzY29wZS5zZXRWYWx1ZSAoaW5pdGlhbFswXSwwKTtcbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5pbml0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgc2NvcGUuc2xpZGVyaWQgICA9IGF0dHJzLmlkIHx8IFwic2xpZGVyLVwiICsgcGFyc2VJbnQgKE1hdGgucmFuZG9tKCkgKiAxMDAwKTtcbiAgICAgICAgICAgIHNjb3BlLnN0YXJ0VmFsdWUgPSAtSW5maW5pdHk7XG4gICAgICAgICAgICBzY29wZS5zdG9wVmFsdWUgID0gSW5maW5pdHk7XG4gICAgICAgICAgICBzY29wZS5ieVN0ZXAgICA9IHBhcnNlSW50KGF0dHJzLmJ5U3RlcCkgfHwgMTtcbiAgICAgICAgICAgIHNjb3BlLnZlcnRpY2FsID0gYXR0cnMudmVydGljYWwgICB8fCBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLmR1YWwgICAgID0gYXR0cnMuZHVhbEhhbmRsZXN8fCBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLnRyaWdnZXJfaW5wdXRfY2hhbmdlPSBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLm5vdE1vcmUgID0gcGFyc2VJbnQoYXR0cnMubm90TW9yZSkgICB8fCAxMDA7XG4gICAgICAgICAgICBzY29wZS5ub3RMZXNzICA9IHBhcnNlSW50KGF0dHJzLm5vdExlc3MpICAgfHwgMDtcblxuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSBlbGVtZW50LmFkZENsYXNzKFwidmVydGljYWwtcmFuZ2VcIik7XG5cbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXM9IFtzY29wZS5maW5kKCcuaGFuZGxlLW1pbicpLCBzY29wZS5maW5kKCcuaGFuZGxlLW1heCcpXTtcbiAgICAgICAgICAgIHNjb3BlLmJhciAgICA9IGVsZW1lbnQ7XG4gICAgICAgICAgICBzY29wZS5zbGlkZXIgPSBzY29wZS5maW5kKCcucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50Jyk7XG4gICAgICAgICAgICBzY29wZS5zdGFydCAgPSBzY29wZS5maW5kKCcuaWJ6LXJhbmdlLXNsaWRlci1zdGFydCcpO1xuICAgICAgICAgICAgc2NvcGUuc3RvcCAgID0gc2NvcGUuZmluZCgnLmliei1yYW5nZS1zbGlkZXItc3RvcCcpO1xuICAgICAgICAgICAgc2NvcGUuZGlzYWJsZT0gYXR0cnMuZGlzYWJsZSB8fCBmYWxzZTtcblxuICAgICAgICAgICAgc2NvcGUuY3RybGhhbmRsZSA9IG5ldyBSYW5nZVNsaWRlckhhbmRsZSAoc2NvcGUpO1xuXG4gICAgICAgICAgICAvLyBwcmVwYXJlIERPTSBvYmplY3QgcG9pbnRlciB0byBjb21wdXRlIHNpemUgZHluYW1pY2FsbHlcbiAgICAgICAgICAgIHNjb3BlLmJvdW5kcyA9IHtcbiAgICAgICAgICAgICAgICBiYXIgICAgOiBlbGVtZW50WzBdLFxuICAgICAgICAgICAgICAgIGhhbmRsZXM6IFtzY29wZS5oYW5kbGVzWzBdWzBdLCBzY29wZS5oYW5kbGVzWzFdWzBdXVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgaWYgKGF0dHJzLmRpc2FibGUgPT09ICd0cnVlJykgc2NvcGUuc2V0RGlzYWJsZSh0cnVlKTtcblxuICAgICAgICAgICAgaWYgKGF0dHJzLmRpc3BsYXlUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGF0dHJzLmRpc3BsYXlUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSB0cnVlIDpcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnaGFuZGxlJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS5kaXNwbGF5cyA9IHNjb3BlLmhhbmRsZXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzWzBdLmFkZENsYXNzKCdpYnotcmFuZ2Utc2xpZGVyLWRpc3BsYXknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSBzY29wZS5oYW5kbGVzWzFdLmFkZENsYXNzKCdpYnotcmFuZ2Utc2xpZGVyLWRpc3BsYXknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXMgPSAgWyRkb2N1bWVudC5nZXRFbGVtZW50QnlJZCAoYXR0cnMuZGlzcGxheVRhcmdldCldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSBzY29wZS5kaXNwbGF5cz1bXTtcblxuICAgICAgICAgICAgLy8gZXh0cmFjdCBpbml0aWFsIHZhbHVlcyBmcm9tIGF0dHJzIGFuZCBwYXJzZSBpbnRvIGludFxuICAgICAgICAgICAgaWYgKCFhdHRycy5pbml0aWFsKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuaW5pdGlhbCAgPSBbc2NvcGUubmdNb2RlbCwgc2NvcGUubmdNb2RlbF07IC8vIGluaXRpYWxpemUgdG8gbW9kZWwgdmFsdWVzXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHZhciBpbml0aWFsICA9IGF0dHJzLmluaXRpYWwuc3BsaXQoJywnKTtcbiAgICAgICAgICAgICAgICBzY29wZS5pbml0aWFsID0gW1xuICAgICAgICAgICAgICAgICAgICBpbml0aWFsWzBdICE9PSB1bmRlZmluZWQgPyBwYXJzZUludCAoaW5pdGlhbFswXSkgOiBzY29wZS5ub3RMZXNzLFxuICAgICAgICAgICAgICAgICAgICBpbml0aWFsWzFdICE9PSB1bmRlZmluZWQgPyBwYXJzZUludCAoaW5pdGlhbFsxXSkgOiBzY29wZS5ub3RNb3JlXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTW9uaXRvciBhbnkgY2hhbmdlcyBvbiBzdGFydC9zdG9wIGRhdGVzLlxuICAgICAgICAgICAgc2NvcGUuJHdhdGNoKCdzdGFydEF0JywgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlIDwgc2NvcGUuc3RhcnRBdCApIHtcbiAgICAgICAgICAgICAgICAgICAgLy9zY29wZS5zZXRWYWx1ZSAoc2NvcGUuc3RhcnRBdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzY29wZS5zdGFydEF0KSBzY29wZS5zZXRTdGFydCAoc2NvcGUuc3RhcnRBdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgc2NvcGUuJHdhdGNoKCdzdG9wQXQnICwgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlID4gc2NvcGUuc3RvcEF0KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vc2NvcGUuc2V0VmFsdWUgKHNjb3BlLnN0b3BBdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzY29wZS5zdG9wQXQpIHNjb3BlLnNldFN0b3AgKHNjb3BlLnN0b3BBdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gZmluaXNoIHdpZGdldCBpbml0aWFsaXNhdGlvblxuICAgICAgICAgICAgc2NvcGUuaW5pdGlhbFNldHRpbmdzIChzY29wZS5pbml0aWFsKTtcblxuICAgICAgICB9O1xuXG4gICAgICAgIHNjb3BlLmluaXQoKTtcbiAgICAgICAgXG4gICAgICAgICAvLyBzbGlkZXIgaXMgcmVhZHkgcHJvdmlkZSBjb250cm9sIGhhbmRsZSB0byBhcHBsaWNhdGlvbiBjb250cm9sbGVyXG4gICAgICAgIHNjb3BlLiR3YXRjaCAoJ2luaXRob29rJywgZnVuY3Rpb24gKCkgeyAgICAgICAgIC8vIGluaXQgVmFsdWVzIG1heSBhcnJpdmUgbGF0ZVxuICAgICAgICAgICAgaWYgKHNjb3BlLmluaXRob29rKSBzY29wZS5pbml0aG9vayAoc2NvcGUuY3RybGhhbmRsZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNjb3BlLiR3YXRjaCAoJ2luaXR2YWx1ZXMnLCBmdW5jdGlvbiAoKSB7IFx0Ly8gaW5pdCBWYWx1ZXMgbWF5IGFycml2ZSBsYXRlXG4gICAgICAgICAgICBpZiAoc2NvcGUuaW5pdHZhbHVlcykgc2NvcGUuaW5pdFdpZGdldChzY29wZS5pbml0dmFsdWVzKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gdHdvLXdheSBiaW5kaW5nIGlmIG1vZGVsIHZhbHVlIGNoYW5nZXNcbiAgICAgICAgc2NvcGUuJHdhdGNoICgnbmdNb2RlbCcsIGZ1bmN0aW9uIChuZXdWYWx1ZSkge1xuICAgICAgICAgIHNjb3BlLnNldFZhbHVlKG5ld1ZhbHVlLCAwKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG5yZXR1cm4ge1xuICAgIHJlc3RyaWN0OiBcIkVcIiwgICAgLy8gcmVzdHJpY3QgdG8gPHJhbmdlLXNsaWRlcj4gSFRNTCBlbGVtZW50IG5hbWVcbiAgICBzY29wZToge1xuICAgICAgICBzdGFydEF0ICA6Jz0nLCAgLy8gRmlyc3QgYWNjZXB0YWJsZSBkYXRlXG4gICAgICAgIHN0b3BBdCAgIDonPScsICAvLyBMYXN0IGFjY2VwdGFibGUgZGF0ZVxuICAgICAgICBjYWxsYmFjayA6Jz0nLCAgLy8gQ2FsbGJhY2sgdG8gYWN0aWYgd2hlbiBhIGRhdGUgaXMgc2VsZWN0ZWRcbiAgICAgICAgZm9ybWF0dGVyOic9JywgIC8vIENhbGxiYWNrIGZvciBkcmFnIGV2ZW50IGNhbGwgZWFjaCB0aW1lIGludGVybmFsIHZhbHVlIGNoYW5nZXNcbiAgICAgICAgaW5pdGhvb2sgOic9JywgIC8vIEhvb2sgcG9pbnQgdG8gY29udHJvbCBzbGlkZXIgZnJvbSBBUElcbiAgICAgICAgY2JoYW5kbGUgOic9JywgIC8vIEFyZ3VtZW50IGFkZGVkIHRvIGV2ZXJ5IGNhbGxiYWNrXG4gICAgICAgIGluaXR2YWx1ZXM6Jz0nLCAgIC8vIEluaXRpYWwgdmFsdWVzIGFzIGEgc2luZ2xlIG9iamVjdFxuICAgICAgICBuZ01vZGVsOiAnPScgICAgLy8gdGhlIG1vZGVsIHZhbHVlXG4gICAgfSxcbiAgICByZXF1aXJlOiAnP25nTW9kZWwnLFxuICAgIHRlbXBsYXRlOiB0ZW1wbGF0ZSwgLy8gaHRtbCB0ZW1wbGF0ZSBpcyBidWlsZCBmcm9tIEpTXG4gICAgcmVwbGFjZTogdHJ1ZSwgICAgICAvLyByZXBsYWNlIGN1cnJlbnQgZGlyZWN0aXZlIHdpdGggdGVtcGxhdGUgd2hpbGUgaW5oZXJpdGluZyBvZiBjbGFzc1xuICAgIGxpbms6IGxpbmsgICAgICAgICAgLy8gcGlja2FkYXRlIG9iamVjdCdzIG1ldGhvZHNcbn07XG59XSk7XG5cbmNvbnNvbGUubG9nIChcIlJhbmdlU2xpZGVyIExvYWRlZFwiKTtcblxufSkoKTsiLCIvKlxuIGFsc2EtZ2F0ZXdheSAtLSBwcm92aWRlIGEgUkVTVC9IVFRQIGludGVyZmFjZSB0byBBTFNBLU1peGVyXG5cbiBDb3B5cmlnaHQgKEMpIDIwMTUsIEZ1bHVwIEFyIEZvbGxcblxuIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvclxuIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG5cbiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG4gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiBhbG9uZyB3aXRoIHNjb3BlIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmVcbiBGb3VuZGF0aW9uLCBJbmMuLCA2NzUgTWFzcyBBdmUsIENhbWJyaWRnZSwgTUEgMDIxMzksIFVTQS5cblxuIFJlZmVyZW5jZXM6XG5cbiAqL1xuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciB0ZW1wbGF0ZSA9XG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJhZmItbW9uaXRvclwiIG5nLWNsaWNrPVwiZ2V0cGluZygpXCI+JyArXG4gICAgICAgICAnPHNwYW4gY2xhc3M9XCJhZmItcmVmcmVzaC10b2tlblwiICA+YWZiOi8ve3tob3N0bmFtZX19Ont7aHR0cGRwb3J0fX08L3NwYW4+JyArXG4gICAgICAgICAnPGkgY2xhc3M9XCJ7e2ljb259fVwiPjwvaT4nICtcbiAgICAgICAgICc8L2Rpdj4nO1xuXG5cbi8vIHNjb3BlIG1vZHVsZSBpcyBsb2FkIHN0YXRpY2FsbHkgYmVmb3JlIGFueSByb3V0ZSBpcyBjYXRpdmF0ZWRcbmFuZ3VsYXIubW9kdWxlKCdUb2tlblJlZnJlc2gnLCBbJ0NvbmZpZ0FwcCcsICdNb2RhbE5vdGlmaWNhdGlvbiddKVxuXG4gICAgLmRpcmVjdGl2ZSAoJ3Rva2VuUmVmcmVzaCcsIFtcIiR0aW1lb3V0XCIsIFwiJGh0dHBcIiwgXCIkbG9jYXRpb25cIiwgXCJOb3RpZmljYXRpb25cIiwgXCJDb25maWdBcHBcIiwgZnVuY3Rpb24oJHRpbWVvdXQsICRodHRwLCAkbG9jYXRpb24sIE5vdGlmaWNhdGlvbiwgQ29uZmlnQXBwKSB7XG5cbiAgICBmdW5jdGlvbiBteW1ldGhvZHMoc2NvcGUsIGVsZW0sIGF0dHJzKSB7XG4gICAgICAgIHNjb3BlLnN0YXR1cz11bmRlZmluZWQ7IC8vIG5laXRoZXIgdGh1IG5laXRoZXIgZmFsc2VcbiAgICAgICAgXG4gICAgXG4gICAgICAgIHNjb3BlLm9ubGluZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGVsZW0uYWRkQ2xhc3MgICAgKFwib25saW5lXCIpO1xuICAgICAgICAgICAgZWxlbS5yZW1vdmVDbGFzcyAoXCJvZmZsaW5lXCIpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHNjb3BlLm9mZmxpbmUgPSBmdW5jdGlvbigpe1xuICAgICAgICAgICAgZWxlbS5hZGRDbGFzcyAgICAoXCJvZmZsaW5lXCIpO1xuICAgICAgICAgICAgZWxlbS5yZW1vdmVDbGFzcyAoXCJvbmxpbmVcIik7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICBzY29wZS5vbmVycm9yID0gZnVuY3Rpb24oZGF0YSwgZXJyY29kZSwgaGVhZGVycykge1xuICAgICAgICAgICAgaWYgKHNjb3BlLnN0YXR1cyAhPT0gZmFsc2UpICB7XG4gICAgICAgICAgICAgICAgTm90aWZpY2F0aW9uLndhcm5pbmcgKHttZXNzYWdlOiBcIkFwcEZyYW1ld29yayBCaW5kZXIgTG9zdFwiLCBkZWxheTogNTAwMH0pO1xuICAgICAgICAgICAgICAgIHNjb3BlLm9mZmxpbmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNjb3BlLnN0YXR1cyA9IDA7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICBzY29wZS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbihkYXRhLCBlcnJjb2RlLCBoZWFkZXJzLCBjb25maWcpIHtcbiAgICAgICAgICAgIGlmIChzY29wZS5zdGF0dXMgIT09IHRydWUpICB7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50b2tlbikgQ29uZmlnQXBwLnNlc3Npb24udG9rZW4gPSBkYXRhLnJlcXVlc3QudG9rZW47XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC51dWlkKSAgQ29uZmlnQXBwLnNlc3Npb24udXVpZCAgPSBkYXRhLnJlcXVlc3QudXVpZDtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YS5yZXF1ZXN0LnRpbWVvdXQpICBDb25maWdBcHAuc2Vzc2lvbi50aW1lb3V0ICA9IGRhdGEucmVxdWVzdC50aW1lb3V0O1xuXG4gICAgICAgICAgICAgICAgTm90aWZpY2F0aW9uLnN1Y2Nlc3MgKHttZXNzYWdlOiBcIkFwcEZyYW1ld29yayBCaW5kZXIgQmFjayB0byBMaXZlXCIsIGRlbGF5OiAzMDAwfSk7XG4gICAgICAgICAgICAgICAgc2NvcGUub25saW5lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzY29wZS5zdGF0dXMgPSAxO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIENoZWNrIEJpbmRlciBzdGF0dXNcbiAgICAgICAgc2NvcGUuZ2V0cGluZyA9IGZ1bmN0aW9uKCkge1xuXG4gICAgICAgICAgICB2YXIgaGFuZGxlciA9ICRodHRwLmdldChDb25maWdBcHAuc2Vzc2lvbi5waW5nKyc/dG9rZW49JysgQ29uZmlnQXBwLnNlc3Npb24udG9rZW4pO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBwcm9jZXNzIHN1Y2Nlc3MgYW5kIGVycm9yXG4gICAgICAgICAgICBoYW5kbGVyLnN1Y2Nlc3Moc2NvcGUub25zdWNjZXNzKTtcbiAgICAgICAgICAgIGhhbmRsZXIuZXJyb3Ioc2NvcGUub25lcnJvcik7XG5cbiAgICAgICAgICAgIC8vIHJlc3RhcnQgYSBuZXcgdGltZXIgZm9yIG5leHQgcGluZ1xuICAgICAgICAgICAgJHRpbWVvdXQgKHNjb3BlLmdldHBpbmcsIENvbmZpZ0FwcC5zZXNzaW9uLnBpbmdyYXRlKjEwMDApO1xuICAgICAgICB9O1xuICAgICAgICBcbiAgICAgICAgLy8gQ2hlY2sgQmluZGVyIHN0YXR1c1xuICAgICAgICBzY29wZS5yZWZyZXNoID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICB2YXIgaGFuZGxlciA9ICRodHRwLmdldChDb25maWdBcHAuc2Vzc2lvbi5yZWZyZXNoKyc/dG9rZW49JysgQ29uZmlnQXBwLnNlc3Npb24udG9rZW4pO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBwcm9jZXNzIHN1Y2Nlc3MgYW5kIGVycm9yXG4gICAgICAgICAgICBoYW5kbGVyLnN1Y2Nlc3Moc2NvcGUub25zdWNjZXNzKTtcbiAgICAgICAgICAgIGhhbmRsZXIuZXJyb3Ioc2NvcGUub25lcnJvcik7XG4gICAgICAgICAgICAvLyByZXN0YXJ0IGEgbmV3IHRpbWVyIGZvciBuZXh0IHJlZnJlc2ggdG8gMS80IG9mIHRpbWVvdXQgc2Vzc2lvblxuICAgICAgICAgICAgJHRpbWVvdXQgKHNjb3BlLnJlZnJlc2gsIENvbmZpZ0FwcC5zZXNzaW9uLnRpbWVvdXQgKjI1MCk7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBJbml0aWFsIGNvbm5lY3Rpb25cbiAgICAgICAgc2NvcGUudGtjcmVhdGUgPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHZhciBoYW5kbGVyID0gJGh0dHAuZ2V0KENvbmZpZ0FwcC5zZXNzaW9uLmNyZWF0ZSsnP3Rva2VuPScrIENvbmZpZ0FwcC5zZXNzaW9uLmluaXRpYWwpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBwcm9jZXNzIHN1Y2Nlc3MgYW5kIGVycm9yXG4gICAgICAgICAgICBoYW5kbGVyLnN1Y2Nlc3Moc2NvcGUub25zdWNjZXNzKTtcbiAgICAgICAgICAgIGhhbmRsZXIuZXJyb3Ioc2NvcGUub25lcnJvcik7XG4gICAgICAgIH07XG4gXG4gICAgICAgIHNjb3BlLmljb24gICAgICA9IGF0dHJzLmljb24gICB8fCBcImZpLWxpZ2h0YnVsYlwiO1xuICAgICAgICBzY29wZS5ob3N0bmFtZSAgPSAkbG9jYXRpb24uaG9zdCgpO1xuICAgICAgICBzY29wZS5odHRwZHBvcnQgPSAkbG9jYXRpb24ucG9ydCgpO1xuICAgICAgICBzY29wZS5hdXRvbG9nICAgPSBKU09OLnBhcnNlKGF0dHJzLmF1dG9sb2cgfHwgZmFsc2UpO1xuICAgICAgICBcbiAgICAgICAgaWYgKHNjb3BlLmF1dG9sb2cpIHNjb3BlLnRrY3JlYXRlKCk7XG5cbiAgICAgICAgLy8gSW5pdCBwaW5nIGFuZCByZWZyZXNoIHByb2Nlc3NcbiAgICAgICAgJHRpbWVvdXQgKHNjb3BlLmdldHBpbmcsIENvbmZpZ0FwcC5zZXNzaW9uLnBpbmdyYXRlKjEwMDApO1xuICAgICAgICAkdGltZW91dCAoc2NvcGUucmVmcmVzaCwgQ29uZmlnQXBwLnNlc3Npb24udGltZW91dCAqMjUwKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0ZW1wbGF0ZTogdGVtcGxhdGUsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6IFwiPVwiXG4gICAgICAgIH0sXG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIGxpbms6IG15bWV0aG9kc1xuICAgIH07XG59XSk7XG5cbn0pKCk7XG5jb25zb2xlLmxvZyAoXCJUb2tlbiBSZWZyZXNoIExvYWRlZFwiKTtcblxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKiBcbiAqIEJ1Z3M6IElucHV0IHdpdGggQ2FsbGJhY2sgU0hPVUxEIEJFIGdldCAncmVxdWlyZWQnIGNsYXNzXG4gKiBcbiAqIHJlZjogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL21vdXNlb3ZlclxuICogXG4gKiB1c2FnZTogXG4gKiBcbiAqIHRpcE1vZGFsOiBsaXN0ZW4gZXZlbnQgZnJvbSBlbGVtLnBhcmVudCgpIHRvIGRpc3BsYXkgdGlwLW1vZGFsXG4gKiAgICAgIDxkaXYgY2xhc3M9XCJ4eHh4XCI+XG4gKiAgICAgICAgICA8dGlwLW1vZGFsIHRpcD14eHh4PjwvdGlwLW1vZGFsPlxuICogICAgICAgICAgPGlucHV0LXRleHQgLi4uLj48L2lucHV0LXRleHQ+XG4gKiAgICAgIDwvZGl2PlxuICogICAgICBcbiAqIE5vdGU6IHVzZSBDU1MudmlzaWJpbGl0eSB0byBhdm9pZCBkaXNwbGF5IGZsaWNrZXJpbmcgYXQgaW5pdGlhbCBkaXNwbGF5LlxuICovXG5cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIHRtcGwgPSAnPGRpdiBjbGFzcz1cInRpcC1tb2RhbC1wb3B1cFwiPicgK1xuICAgICAgICAgICAgJzxpIGNsYXNzPVwie3tpY29ufX1cIj48L2k+JyArXG4gICAgICAgICAgICAnPHNwYW4+e3t0aXB9fTwvc3Bhbj4nICtcbiAgICAgICAgICAgICc8L3NwYW4+PC9kaXY+JyA7XG5cbiAgICBhbmd1bGFyLm1vZHVsZSgnTW9kYWxOb3RpZmljYXRpb24nLCBbXSlcbiAgICAgICAgICAgIC5kaXJlY3RpdmUoJ3RpcE1vZGFsJywgW1wiJHRpbWVvdXRcIiwgZnVuY3Rpb24gKCR0aW1lb3V0KSB7XG5cbiAgICAgICAgICAgICAgICBmdW5jdGlvbiBteW1ldGhvZHMoc2NvcGUsIGVsZW0sIGF0dHJzKSB7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudCA9IGVsZW0ucGFyZW50KCk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLm1vZGFsICAgID0gZWxlbS5maW5kKFwiZGl2XCIpO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLy8gZGVsYXkgdGlwIGRpc3BsYXkgdG8gYXZvaWQgYmxpbmtpbmcgd2hlbiBtb3ZpbmcgbW91c2UgZmFzdFxuICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBkaXNwbGF5ICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGFjdGlvbigpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLnNob3cpIHNjb3BlLm1vZGFsLmNzcyh7b3BhY2l0eTogMSwgdmlzaWJpbGl0eTondmlzaWJsZSd9KTsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGUuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS50aW1lb3V0ID0gJHRpbWVvdXQoYWN0aW9uLCBzY29wZS5kZWxheSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGNsb3NlICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICBzY29wZS5zaG93ID0gZmFsc2U7ICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgc2NvcGUubW9kYWwuY3NzKHtvcGFjaXR5OiAwLCB2aXNpYmlsaXR5OidoaWRkZW4nfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgLy8gYWp1c3QgaWNvbiBvciB1c2UgZGVmYXVsdFxuICAgICAgICAgICAgICAgICAgICBzY29wZS5pY29uICA9IGF0dHJzLmljb24gfHwgJ2ZpLWxpZ2h0YnVsYic7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAvLyBVcGRhdGUgUGFyZW50IGVsZW1lbnQgdG8gZ2V0IG1vdXNlIGV2ZW50XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5hZGRDbGFzcyAoJ2FzLW1vZGFsLXRpcCcpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnY2xpY2snLCBjbG9zZSk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5iaW5kKCdmb2N1cycsIGRpc3BsYXkpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnbW91c2VvdmVyJywgZGlzcGxheSk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5iaW5kKCdtb3VzZWxlYXZlJywgY2xvc2UpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnYmx1cicsIGNsb3NlKTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmRlbGF5ID0gYXR0cnMuZGVsYXkgfHwgMTAwMDsgLy8gd2FpdCAxcyBiZWZvcmUgZGlzcGxheWluZyB0aXBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgICAgICAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICAgICAgICAgICAgICBzY29wZToge3RpcDogXCI9XCJ9IC8vIHRpcCBtYXkgbm90IGJlIGRlZmluZWQgd2hlbiB3aWRnZXQgaXMgZGlzcGxheVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XSk7XG59KSgpO1xuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKiBcbiAqIEJ1Z3M6IElucHV0IHdpdGggQ2FsbGJhY2sgU0hPVUxEIEJFIGdldCAncmVxdWlyZWQnIGNsYXNzXG4gKi9cblxuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgdG1wbCA9ICc8c3BhbiB0aXRsZT1cIkdvdG86IHt7aHJlZn19XCIgbmctY2xpY2s9XCJjbGlja2VkKClcIj4nICtcbiAgICAgICAgICAgICc8aSBjbGFzcz1cInt7aWNvbn19XCI+PC9pPicgK1xuICAgICAgICAgICAgJzxzcGFuPnt7bGFiZWx9fTwvc3Bhbj4nICtcbiAgICAgICAgICAgICc8L3NwYW4+JztcblxuXG4gICAgYW5ndWxhci5tb2R1bGUoJ0xpbmtCdXR0b24nLCBbXSlcbiAgICAgICAgICAgIC5kaXJlY3RpdmUoJ2xpbmtCdXR0b24nLCBbXCIkbG9jYXRpb25cIiwgZnVuY3Rpb24gKCRsb2NhdGlvbikge1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcblxuICAgICAgICAgICAgICAgICAgICBzY29wZS5jbGlja2VkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWF0dHJzLnF1ZXJ5KSAkbG9jYXRpb24ucGF0aChhdHRycy5ocmVmKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgJGxvY2F0aW9uLnBhdGgoYXR0cnMuaHJlZikuc2VhcmNoKGF0dHJzLnF1ZXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBhanVzdCBpY29uIG9yIHVzZSBkZWZhdWx0XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmljb24gPSBhdHRycy5pY29uICAgfHwgJ2ZpLWxpbmsnO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5sYWJlbCA9IGF0dHJzLmxhYmVsIHx8ICdKdW1wJztcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaHJlZiAgPSBhdHRycy5ocmVmICB8fCAnL2hvbWUnO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLy8gYWRkIGxhYmVsIGFzIGNsYXNzXG4gICAgICAgICAgICAgICAgICAgIGVsZW0uYWRkQ2xhc3MgKHNjb3BlLmxhYmVsLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICAgICAgICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlOiB7fVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XSk7XG59KSgpO1xuIiwiXG4vKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLi5cbiAqIFxuICogUmVmZXJlbmNlOlxuICogICBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9kb2NzL1dlYi9BUEkvRmlsZVJlYWRlciBcbiAqICAgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9Vc2luZ19maWxlc19mcm9tX3dlYl9hcHBsaWNhdGlvbnMjVXNpbmdfaGlkZGVuX2ZpbGVfaW5wdXRfZWxlbWVudHNfdXNpbmdfdGhlX2NsaWNrJTI4JTI5X21ldGhvZFxuICogICBodHRwczovL3VuY29ya2Vkc3R1ZGlvcy5jb20vYmxvZy9tdWx0aXBhcnRmb3JtZGF0YS1maWxlLXVwbG9hZC13aXRoLWFuZ3VsYXJqc1xuICogICBodHRwczovL3d3dy50ZXJsaWNpLmNvbS8yMDE1LzA1LzE2L3VwbG9hZGluZy1maWxlcy1sb2NhbGx5Lmh0bWxcbiAqICAgaHR0cHM6Ly9naXRodWIuY29tL25lcnZnaC9hbmd1bGFyLWZpbGUtdXBsb2FkL2Jsb2IvbWFzdGVyL3NyYy9zZXJ2aWNlcy9GaWxlVXBsb2FkZXIuanNcbiAqICAgaHR0cHM6Ly9zdHVrLmdpdGh1Yi5pby9qc3ppcC9kb2N1bWVudGF0aW9uL2hvd3RvL3JlYWRfemlwLmh0bWxcbiAqICAgaHR0cDovL29uZWh1bmdyeW1pbmQuY29tL3ppcC1wYXJzaW5nLWpzemlwLWFuZ3VsYXIvXG4gKiAgIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTUzNDE5MTIvaG93LXRvLWdvLWZyb20tYmxvYi10by1hcnJheWJ1ZmZlclxuICogICBcbiAqICAgQnVnczogemlwIGZpbGUgc2VudCBldmVuIHdoZW4gZmxhZyBhcyBpbnZhbGlkIFxuICovXG5cbiBcblxuKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG4vLyBXQVJOSU5HOiBBbmd1bGFyIG5nLWNoYW5nZSBkb2VzIG5vdCB3b3JrIG9uIGlucHV0L2ZpbGUuIExldCdzIGhvb2sgb3VyIGNhbGxiYWNrIHRocm91Z2ggc3RhbmRhcmQgSlMgZnVuY3Rpb25cbnZhciB0bXBsID0gICc8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwie3tuYW1lfX0taW5wdXRcIiBvbmNoYW5nZT1cImFuZ3VsYXIuZWxlbWVudCh0aGlzKS5zY29wZSgpLlVwTG9hZEZpbGUodGhpcy5maWxlcylcIiBhY2NlcHQ9XCJ7e21pbWV0eXBlfX1cIiBzdHlsZT1cImRpc3BsYXk6bm9uZVwiPicrXG4gICAgICAgICAgICAnPGRpdiBjbGFzcz1cInVwbG9hZC1maWxlXCIgbmctY2xpY2s9XCJpbWdDbGlja2VkKClcIj4nICtcbiAgICAgICAgICAgICc8aW1nIGlkPVwie3tuYW1lfX0taW1nXCIgc3JjPVwie3t0aHVtYm5haWx9fVwiPicgK1xuICAgICAgICAgICAgJzxyYW5nZS1zbGlkZXIgbmctc2hvdz1cIiFub3NsaWRlclwiIGlkPVwie3tuYW1lfX0tc2xpZGVyXCIgYXV0b21hdGljPXRydWUgaW5pdGhvb2s9XCJTbGlkZXJJbml0Q0JcIj48L3JhbmdlLXNsaWRlcj4nICtcbiAgICAgICAgICAgICc8L2Rpdj4nO1xuICAgIFxuXG4vLyBTZXJ2aWNlIENyZWF0ZSB4Zm9ybSBpbnNlcnQgZmlsZXMgaW4gYW5kIFBvc3QgaXQgdG8gdXJsXG5mdW5jdGlvbiBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCB0aHVtYm5haWxDQikge1xuICAgIHZhciB4bWxSZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgeGZvcm0gID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgXG4gICAgdmFyIE9uTG9hZENCID0gZnVuY3Rpb24gKHRhcmdldCkge1xuICAgICAgICB2YXIgc3RhdHVzID0gdGh1bWJuYWlsQ0IgKHRhcmdldCk7XG4gICAgICAgIC8vaWYgKHN0YXR1cykgeGZvcm0uYXBwZW5kKHNjb3BlLm5hbWUsIGZpbGUsIGZpbGUubmFtZSk7XG4gICAgfTtcbiAgICAgICAgICAgIC8vIFVwZGF0ZSBzbGlkZXIgZHVyaW5nIFVwbG9hZFxuICAgIHhtbFJlcS51cGxvYWQub25wcm9ncmVzcyA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB2YXIgcHJvZ3Jlc3MgPSBNYXRoLnJvdW5kKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUgPyBldmVudC5sb2FkZWQgKiAxMDAgLyBldmVudC50b3RhbCA6IDApO1xuICAgICAgICBpZiAoc2NvcGUuc2xpZGVyKSBzY29wZS5zbGlkZXIuc2V0VmFsdWUgKHByb2dyZXNzKTtcbiAgICB9O1xuXG4gICAgLy8gVXBsb2FkIGlzIGZpbmlzaCBsZXQncyBub3RpZnkgY29udHJvbGVyIGNhbGxiYWNrXG4gICAgeG1sUmVxLm9ubG9hZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZWxlbS5hZGRDbGFzcyAoXCJzdWNjZXNzXCIpO1xuICAgICAgICBlbGVtLnJlbW92ZUNsYXNzIChcImVycm9yXCIpO1xuICAgICAgICB2YXIgcmVzcG9uc2UgPXtcbiAgICAgICAgICAgIHN0YXR1cyA6IHhtbFJlcS5zdGF0dXMsXG4gICAgICAgICAgICBoZWFkZXJzOiB4bWxSZXEuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkgXG4gICAgICAgIH07XG4gICAgICAgIHNjb3BlLmNhbGxiYWNrIChyZXNwb25zZSk7XG4gICAgfTtcblxuICAgIHhtbFJlcS5vbmVycm9yID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBlbGVtLmFkZENsYXNzIChcImVycm9yXCIpO1xuICAgICAgICBlbGVtLnJlbW92ZUNsYXNzIChcInN1Y2Nlc3NcIik7XG4gICAgICAgIHZhciByZXNwb25zZSA9e1xuICAgICAgICAgICAgc3RhdHVzIDogeG1sUmVxLnN0YXR1cyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHhtbFJlcS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSBcbiAgICAgICAgfTtcbiAgICAgICAgc2NvcGUuY2FsbGJhY2sgKHJlc3BvbnNlKTtcbiAgICB9O1xuXG4gICAgeG1sUmVxLm9uYWJvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGVsZW0uYWRkQ2xhc3MgKFwiZXJyb3JcIik7XG4gICAgICAgIGVsZW0ucmVtb3ZlQ2xhc3MgKFwic3VjY2Vzc1wiKTtcbiAgICAgICAgdmFyIHJlc3BvbnNlID17XG4gICAgICAgICAgICBzdGF0dXMgOiB4bWxSZXEuc3RhdHVzLFxuICAgICAgICAgICAgaGVhZGVyczogeG1sUmVxLmdldEFsbFJlc3BvbnNlSGVhZGVycygpIFxuICAgICAgICB9O1xuICAgICAgICBzY29wZS5jYWxsYmFjayAocmVzcG9uc2UpO1xuICAgIH07XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBmaWxlID0gZmlsZXNbaV07XG4gICAgICAgIGlmICghZmlsZS50eXBlLm1hdGNoKHNjb3BlLm1pbWV0eXBlKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zb2xlLmxvZyAoXCJTZWxlY3RlZCBmaWxlPVwiICsgZmlsZS5uYW1lICsgXCIgc2l6ZT1cIisgZmlsZS5zaXplLzEwMjQgKyBcIiBUeXBlPVwiKyBmaWxlLnR5cGUpO1xuXG4gICAgICAgIC8vIEZpbGUgdG8gdXBsb2FkIGlzIHRvbyBiaWdcbiAgICAgICAgaWYgKGZpbGUuc2l6ZSA+IHNjb3BlLm1heHNpemUqMTAyNCkge1xuICAgICAgICAgICAgc2NvcGUudGh1bWJuYWlsID0gc2NvcGUuaXN0b29iaWc7IC8vIHdhcm5pbmcgaWYgaW1hZ2UgcGF0aCBpcyB3cm9uZyBub3RoaW5nIGhhcHBlblxuICAgICAgICAgICAgc2NvcGUuJGFwcGx5KCd0aHVtYm5haWwnKTsgLy8gd2Ugc2hvcnQtY2lyY3VpdCBBbmd1bGFyIHJlc3luYyBJbWFnZVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBpcyBub3QgYW4gdXBsb2FkYWJsZSBmaWxlXG4gICAgICAgIGlmKGlzTmFOKGZpbGUuc2l6ZSkpIHtcbiAgICAgICAgICAgIHNjb3BlLnRodW1ibmFpbCA9IHNjb3BlLmlzbm90dmFsaWQ7IFxuICAgICAgICAgICAgc2NvcGUuJGFwcGx5KCd0aHVtYm5haWwnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHNjb3BlLkJhc2VuYW1lPSBmaWxlLm5hbWUuc3BsaXQoJy8nKS5yZXZlcnNlKClbMF07XG4gICAgICAgIHNjb3BlLmltZ0VsZW1bMF0uZmlsZSA9IGZpbGU7XG5cbiAgICAgICAgLy8gSWYgRmlsZSBpcyBhbiBpbWFnZSBsZXQgZGlzcGxheSBpdCBub3dcbiAgICAgICAgaWYgKHRodW1ibmFpbENCKSB7XG4gICAgICAgICAgICB2YXIgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcihmaWxlKTtcbiAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSBPbkxvYWRDQjtcbiAgICAgICAgfSBcbiAgICAgICAgLy8gaWYgZXZlcnl0aGluZyBpcyBPSyBsZXQncyBhZGQgZmlsZSB0byB4Zm9ybVxuICAgICAgICB4Zm9ybS5hcHBlbmQoc2NvcGUubmFtZSwgZmlsZSwgZmlsZS5uYW1lKTtcbiAgICB9XG5cblxuICAgIC8vIGV2ZXJ5dGhpbmcgbG9va3MgT0sgbGV0J3MgUG9zdCBpdFxuICAgIHhtbFJlcS5vcGVuKFwiUE9TVFwiLCBwb3N0dXJsICwgdHJ1ZSk7XG4gICAgeG1sUmVxLnNlbmQoeGZvcm0pO1xufVxuXG5hbmd1bGFyLm1vZHVsZSgnVXBsb2FkRmlsZXMnLFsnQ29uZmlnQXBwJywgJ01vZGFsTm90aWZpY2F0aW9uJywgJ1JhbmdlU2xpZGVyJ10pXG5cbi5kaXJlY3RpdmUoJ3VwbG9hZEltYWdlJywgW1wiQ29uZmlnQXBwXCIsIFwiSlFlbXVcIiwgXCJOb3RpZmljYXRpb25cIiwgZnVuY3Rpb24oQ29uZmlnQXBwLCAgSlFlbXUsIE5vdGlmaWNhdGlvbikge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICAgICAgXG4gICAgICAgIC8vIGdldCB3aWRnZXQgaW1hZ2UgaGFuZGxlIGZyb20gdGVtcGxhdGVcbiAgICAgICAgc2NvcGUuaW1nRWxlbSAgICA9IGVsZW0uZmluZCgnaW1nJyk7XG4gICAgICAgIHNjb3BlLmlucHV0RWxlbSAgPSBlbGVtLmZpbmQoJ2lucHV0Jyk7XG4gICAgICAgIFxuICAgICAgICAvLyBJbWFnZSB3YXMgY2tpY2sgbGV0J3Mgc2ltdWxhdGUgYW4gaW5wdXQgKGZpbGUpIGNsaWNrXG4gICAgICAgIHNjb3BlLmltZ0NsaWNrZWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzY29wZS5pbnB1dEVsZW1bMF0uY2xpY2soKTsgLy8gV2FybmluZyBBbmd1bGFyIFRyaWdnZXJFdmVudCBkb2VzIG5vdCB3b3JrISEhXG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBTbGlkZXIgY29udHJvbCBoYW5kbGUgcmVnaXN0cmF0aW9uIGFmdGVyIGNyZWF0aW9uXG4gICAgICAgIHNjb3BlLlNsaWRlckluaXRDQj1mdW5jdGlvbiAoc2xpZGVyKSB7XG4gICAgICAgICAgIHNjb3BlLnNsaWRlcj0gc2xpZGVyOyBcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFVwbG9hZCBpcyBkZWxlZ2F0ZWQgdG8gYSBzaGFyZWQgZnVuY3Rpb25cbiAgICAgICAgc2NvcGUuVXBMb2FkRmlsZT1mdW5jdGlvbiAoZmlsZXMpIHtcbiAgICAgICAgICAgIHZhciByZWFkZXJDQiA9IGZ1bmN0aW9uICh1cGxvYWQpIHtcbiAgICAgICAgICAgICAgICAvLyBzY29wZS50aHVtYm5haWwgPSB1cGxvYWQudGFyZ2V0LnJlc3VsdDtcbiAgICAgICAgICAgICAgICBzY29wZS5pbWdFbGVtWzBdLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt1cGxvYWQudGFyZ2V0LnJlc3VsdF0sIHt0eXBlOiBcImltYWdlXCJ9KSk7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOyAvLyB0cnVlIGFjdGl2YXRlcyBwb3N0XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdmFyIHBvc3R1cmwgPSBhdHRycy5wb3N0dXJsICsgXCI/dG9rZW49XCIgKyBDb25maWdBcHAuc2Vzc2lvbi50b2tlbjtcbiAgICAgICAgICAgIG5ldyBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCByZWFkZXJDQik7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gSW5pdGlhbGxpemUgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhdHRyaWJ1dGVzIHZhbHVlc1xuICAgICAgICBzY29wZS5uYW1lPSBhdHRycy5uYW1lIHx8ICdhdmF0YXInO1xuICAgICAgICBzY29wZS5jYXRlZ29yeT0gYXR0cnMuY2F0ZWdvcnkgIHx8ICdpbWFnZSc7XG4gICAgICAgIHNjb3BlLm1pbWV0eXBlPSAoYXR0cnMuYWNjZXB0IHx8ICdpbWFnZScpICsgJy8qJztcbiAgICAgICAgc2NvcGUubWF4c2l6ZT0gYXR0cnMubWF4c2l6ZSB8fCAxMDA7IC8vIGRlZmF1bHQgbWF4IHNpemUgMTAwS0JcbiAgICAgICAgc2NvcGUucmVnZXhwID0gbmV3IFJlZ0V4cCAoYXR0cnMuYWNjZXB0KyAnLionLCdpJyk7XG5cbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUudGh1bWJuYWlsPSBDb25maWdBcHAucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLnRodW1ibmFpbDtcbiAgICAgICAgZWxzZSAgc2NvcGUudGh1bWJuYWlsPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAndHV4LWJ6aC5wbmcnO1xuICAgICAgICBcbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUuaXNub3R2YWxpZD0gQ29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc25vdHZhbGlkO1xuICAgICAgICBlbHNlICBzY29wZS5pc25vdHZhbGlkPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXNub3R2YWxpZC5wbmcnO1xuXG4gICAgICAgIGlmIChhdHRycy5pc3Rvb2JpZykgc2NvcGUuaXN0b29iaWc9IENvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAgYXR0cnMuaXN0b29iaWc7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzdG9vYmlnPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXN0b29iaWcucG5nJztcbiAgICAgICAgc2NvcGUubm9zbGlkZXIgPSBhdHRycy5ub3NsaWRlciB8fCBmYWxzZTtcblxuICAgICAgICBpZiAoIWF0dHJzLnBvc3R1cmwpIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbGUtdXBsb2FkICVzIHBvc3R1cmw9L2FwaS94eHh4L3h4eHggcmVxdWlyZWQnLCBzY29wZS5hdHRycyk7ICAgICAgICAgICAgXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbn1dKVxuICAgIFxuLmRpcmVjdGl2ZSgndXBsb2FkQXVkaW8nLCBbXCJDb25maWdBcHBcIiwgXCJKUWVtdVwiLCBcIk5vdGlmaWNhdGlvblwiLCBmdW5jdGlvbihDb25maWdBcHAsICBKUWVtdSwgTm90aWZpY2F0aW9uKSB7XG4gICAgZnVuY3Rpb24gbXltZXRob2RzKHNjb3BlLCBlbGVtLCBhdHRycykge1xuICAgICAgICBcbiAgICAgICAgLy8gZ2V0IHdpZGdldCBpbWFnZSBoYW5kbGUgZnJvbSB0ZW1wbGF0ZVxuICAgICAgICBzY29wZS5pbWdFbGVtICAgID0gZWxlbS5maW5kKCdpbWcnKTtcbiAgICAgICAgc2NvcGUuaW5wdXRFbGVtICA9IGVsZW0uZmluZCgnaW5wdXQnKTtcbiAgICAgICAgXG4gICAgICAgIC8vIEltYWdlIHdhcyBja2ljayBsZXQncyBzaW11bGF0ZSBhbiBpbnB1dCAoZmlsZSkgY2xpY2tcbiAgICAgICAgc2NvcGUuaW1nQ2xpY2tlZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHNjb3BlLmlucHV0RWxlbVswXS5jbGljaygpOyAvLyBXYXJuaW5nIEFuZ3VsYXIgVHJpZ2dlckV2ZW50IGRvZXMgbm90IHdvcmshISFcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFNsaWRlciBjb250cm9sIGhhbmRsZSByZWdpc3RyYXRpb24gYWZ0ZXIgY3JlYXRpb25cbiAgICAgICAgc2NvcGUuU2xpZGVySW5pdENCPWZ1bmN0aW9uIChzbGlkZXIpIHtcbiAgICAgICAgICAgc2NvcGUuc2xpZGVyPSBzbGlkZXI7IFxuICAgICAgICB9O1xuICAgICAgICBcbiAgICAgICAgLy8gVXBsb2FkIGlzIGRlbGVnYXRlZCB0byBhIHNoYXJlZCBmdW5jdGlvblxuICAgICAgICBzY29wZS5VcExvYWRGaWxlPWZ1bmN0aW9uIChmaWxlcykge1xuICAgICAgICAgICAgdmFyIHBvc3R1cmwgPSBhdHRycy5wb3N0dXJsICsgXCI/dG9rZW49XCIgKyBDb25maWdBcHAuc2Vzc2lvbi50b2tlbjtcbiAgICAgICAgICAgIG5ldyBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCBmYWxzZSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gSW5pdGlhbGxpemUgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhdHRyaWJ1dGVzIHZhbHVlc1xuICAgICAgICBzY29wZS5uYW1lPSBhdHRycy5uYW1lIHx8ICdhdWRpbyc7XG4gICAgICAgIHNjb3BlLmNhdGVnb3J5PSBhdHRycy5jYXRlZ29yeSAgfHwgJ2F1ZGlvJztcbiAgICAgICAgc2NvcGUubWltZXR5cGU9IChhdHRycy5hY2NlcHQgfHwgJ2F1ZGlvJykgKyAnLyonO1xuICAgICAgICBzY29wZS5tYXhzaXplPSBhdHRycy5tYXhzaXplIHx8IDEwMDAwOyAvLyBkZWZhdWx0IG1heCBzaXplIDEwTUJcbiAgICAgICAgc2NvcGUucmVnZXhwID0gbmV3IFJlZ0V4cCAoYXR0cnMuYWNjZXB0KyAnLionLCdpJyk7XG5cbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUudGh1bWJuYWlsPSBDb25maWdBcHAucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLnRodW1ibmFpbDtcbiAgICAgICAgZWxzZSAgc2NvcGUudGh1bWJuYWlsPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAndXBsb2FkLW11c2ljLnBuZyc7XG4gICAgICAgIFxuICAgICAgICBpZiAoYXR0cnMudGh1bWJuYWlsKSBzY29wZS5pc25vdHZhbGlkPSBDb25maWdBcHAucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLmlzbm90dmFsaWQ7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzbm90dmFsaWQ9Q29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc25vdHZhbGlkLnBuZyc7XG5cbiAgICAgICAgaWYgKGF0dHJzLmlzdG9vYmlnKSBzY29wZS5pc3Rvb2JpZz0gQ29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc3Rvb2JpZztcbiAgICAgICAgZWxzZSAgc2NvcGUuaXN0b29iaWc9Q29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc3Rvb2JpZy5wbmcnO1xuICAgICAgICBzY29wZS5ub3NsaWRlciA9IGF0dHJzLm5vc2xpZGVyIHx8IGZhbHNlO1xuXG4gICAgICAgIGlmICghYXR0cnMucG9zdHVybCkgdGhyb3cgbmV3IFR5cGVFcnJvcignZmlsZS11cGxvYWQgJXMgcG9zdHVybD0vYXBpL3h4eHgveHh4eCByZXF1aXJlZCcsIHNjb3BlLmF0dHJzKTsgICAgICAgICAgICBcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdHJpY3Q6ICdFJyxcbiAgICAgICAgdGVtcGxhdGU6IHRtcGwsXG4gICAgICAgIGxpbms6IG15bWV0aG9kcyxcbiAgICAgICAgc2NvcGU6IHtcbiAgICAgICAgICAgIGNhbGxiYWNrIDogJz0nXG4gICAgICAgIH1cbiAgICB9O1xuICAgIFxufV0pXG5cbi5kaXJlY3RpdmUoJ3VwbG9hZEFwcGxpJywgW1wiQ29uZmlnQXBwXCIsIFwiSlFlbXVcIiwgXCJOb3RpZmljYXRpb25cIiwgZnVuY3Rpb24oQ29uZmlnQXBwLCAgSlFlbXUsIE5vdGlmaWNhdGlvbikge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICAgICAgXG4gICAgICAgIC8vIGdldCB3aWRnZXQgaW1hZ2UgaGFuZGxlIGZyb20gdGVtcGxhdGVcbiAgICAgICAgc2NvcGUuaW1nRWxlbSAgICA9IGVsZW0uZmluZCgnaW1nJyk7XG4gICAgICAgIHNjb3BlLmlucHV0RWxlbSAgPSBlbGVtLmZpbmQoJ2lucHV0Jyk7XG4gICAgICAgIFxuICAgICAgICAvLyBJbWFnZSB3YXMgY2tpY2sgbGV0J3Mgc2ltdWxhdGUgYW4gaW5wdXQgKGZpbGUpIGNsaWNrXG4gICAgICAgIHNjb3BlLmltZ0NsaWNrZWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzY29wZS5pbnB1dEVsZW1bMF0uY2xpY2soKTsgLy8gV2FybmluZyBBbmd1bGFyIFRyaWdnZXJFdmVudCBkb2VzIG5vdCB3b3JrISEhXG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBTbGlkZXIgY29udHJvbCBoYW5kbGUgcmVnaXN0cmF0aW9uIGFmdGVyIGNyZWF0aW9uXG4gICAgICAgIHNjb3BlLlNsaWRlckluaXRDQj1mdW5jdGlvbiAoc2xpZGVyKSB7XG4gICAgICAgICAgIHNjb3BlLnNsaWRlcj0gc2xpZGVyOyBcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFVwbG9hZCBpcyBkZWxlZ2F0ZWQgdG8gYSBzaGFyZWQgZnVuY3Rpb25cbiAgICAgICAgc2NvcGUuVXBMb2FkRmlsZT1mdW5jdGlvbiAoZmlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB2YXIgcmVhZGVyQ0IgPSBmdW5jdGlvbiAodXBsb2FkKSB7XG4gICAgICAgICAgICAgICAgdmFyIHppcGFwcCA9IG5ldyBKU1ppcCh1cGxvYWQudGFyZ2V0LnJlc3VsdCk7XG4gICAgICAgICAgICAgICAgdmFyIHRodW1ibmFpbCA9IHppcGFwcC5maWxlKFwiYWZhLXBrZy90aHVtYm5haWwuanBnXCIpO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIENoZWNrIGlzIHdlIGhhdmUgYSB0aHVtYm5haWwgd2l0aGluIGxvYWRlZCBaaXBmaWxlXG4gICAgICAgICAgICAgICAgaWYgKCF0aHVtYm5haWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cgKFwiVGhpcyBpcyBub3QgYSB2YWxpZCBBcHBsaWNhdGlvbiBGcmFtZXdvcmsgQVBQXCIpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS50aHVtYm5haWw9Q29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc25vdHZhbGlkLnBuZyc7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLiRhcHBseSgndGh1bWJuYWlsJyk7IC8vIHdlIHNob3J0LWNpcmN1aXQgQW5ndWxhciByZXN5bmMgSW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOyAvLyBkbyBub3QgcG9zdCB6aXAgb24gYmluZGVyXG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICBzY29wZS5pbWdFbGVtWzBdLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt0aHVtYm5haWwuYXNBcnJheUJ1ZmZlcigpXSwge3R5cGU6IFwiaW1hZ2VcIn0pKTsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gdHJ1ZSBhY3RpdmF0ZXMgcG9zdFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHZhciBwb3N0dXJsID0gYXR0cnMucG9zdHVybCArIFwiP3Rva2VuPVwiICsgQ29uZmlnQXBwLnNlc3Npb24udG9rZW47XG4gICAgICAgICAgICBuZXcgTG9hZEZpbGVTdmMgKHNjb3BlLCBlbGVtLCBwb3N0dXJsLCBmaWxlcywgcmVhZGVyQ0IpO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIEluaXRpYWxsaXplIGRlZmF1bHQgdmFsdWVzIGZyb20gYXR0cmlidXRlcyB2YWx1ZXNcbiAgICAgICAgc2NvcGUubmFtZT0gYXR0cnMubmFtZSB8fCAnYXBwbGknO1xuICAgICAgICBzY29wZS5jYXRlZ29yeT0gYXR0cnMuY2F0ZWdvcnkgIHx8ICdhcHBsaSc7XG4gICAgICAgIHNjb3BlLm1pbWV0eXBlPSAoYXR0cnMuYWNjZXB0IHx8ICcuemlwJyk7XG4gICAgICAgIHNjb3BlLm1heHNpemU9IGF0dHJzLm1heHNpemUgfHwgMTAwMDAwOyAvLyBkZWZhdWx0IG1heCBzaXplIDEwME1CXG4gICAgICAgIHNjb3BlLnJlZ2V4cCA9IG5ldyBSZWdFeHAgKGF0dHJzLmFjY2VwdCsgJy4qJywnaScpO1xuXG4gICAgICAgIGlmIChhdHRycy50aHVtYm5haWwpIHNjb3BlLnRodW1ibmFpbD0gQ29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy50aHVtYm5haWw7XG4gICAgICAgIGVsc2UgIHNjb3BlLnRodW1ibmFpbD1Db25maWdBcHAucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgJ3VwbG9hZC1hcHBsaS5wbmcnO1xuICAgICAgICBcbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUuaXNub3R2YWxpZD0gQ29uZmlnQXBwLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc25vdHZhbGlkO1xuICAgICAgICBlbHNlICBzY29wZS5pc25vdHZhbGlkPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXNub3R2YWxpZC5wbmcnO1xuXG4gICAgICAgIGlmIChhdHRycy5pc3Rvb2JpZykgc2NvcGUuaXN0b29iaWc9IENvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAgYXR0cnMuaXN0b29iaWc7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzdG9vYmlnPUNvbmZpZ0FwcC5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXN0b29iaWcucG5nJztcbiAgICAgICAgc2NvcGUubm9zbGlkZXIgPSBhdHRycy5ub3NsaWRlciB8fCBmYWxzZTtcblxuICAgICAgICBpZiAoIWF0dHJzLnBvc3R1cmwpIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbGUtdXBsb2FkICVzIHBvc3R1cmw9L2FwaS94eHh4L3h4eHggcmVxdWlyZWQnLCBzY29wZS5hdHRycyk7ICAgICAgICAgICAgXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbiAgICBcbn1dKTtcblxuY29uc29sZS5sb2cgKFwiVXBsb2FkRmlsZSBMb2FkZWRcIik7XG59KSgpO1xuIiwiXG4vKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLi5cbiAqL1xuXG5cblxuKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG52YXIgdG1wbCA9ICc8dGlwLW1vZGFsIHRpcD1cInRpcFwiPjwvdGlwLW1vZGFsPicgK1xuICAgICAgICAgICAnPGxhYmVsIGZvcj1cInt7bmFtZX19LWludGV4dFwiPnt7bGFiZWx9fSA8aSBuZy1zaG93PVwicmVxdWlyZWRcIiBuZy1jbGljaz1cIlRvQmVEZWZpbmVkXCIgJyArXG4gICAgICAgICAgICdjbGFzcz1cInJlcXVpcmVkIHt7c3RhdHVzfX0gZmktY2hlY2tib3hcIiB0aXRsZT1cIkZyZWUgVmFsdWUgQnV0IE1hbmRhdG9yeSBBcmd1bWVudFwiIGFsdD1cIj9cIj4gJm5ic3A7IDwvaT48L2xhYmVsPicrICAgICAgICAgIFxuICAgICAgICAgICAnPGlucHV0ICcrXG4gICAgICAgICAgICcgdHlwZT1cInt7dHlwZX19XCIgaWQ9XCJ7e25hbWV9fS1pbnRleHRcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiICBjbGFzcz1cInN0YXR1cy17e3N0YXR1c319XCInK1xuICAgICAgICAgICAnIG5nLW1vZGVsPVwidmFsdWVcIiBuZy1ibHVyPVwidmFsaWRhdGUoKVwiIG5nLWZvY3VzPVwic2VsZWN0ZWQoKVwiICcrXG4gICAgICAgICAgICcgbmctbW9kZWwtb3B0aW9ucz1cInsgdXBkYXRlT246IFxcJ2RlZmF1bHQgYmx1clxcJywgZGVib3VuY2U6IHtkZWZhdWx0OiA1MDAsIGJsdXI6IDB9IH1cIicgK1xuICAgICAgICAgICAnPjxhbGVydCBkYXRhLW5nLXNob3c9XCIhdmFsaWQmJmVycm1zZ1wiPnt7ZXJybXNnfX08L2FsZXJ0Pic7XG5cbnZhciBlbWFpbHBhdGVybiA9IC9eKChbXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdKyhcXC5bXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdKykqKXwoXFxcIi4rXFxcIikpQCgoW148PigpW1xcXVxcLiw7Olxcc0BcXFwiXStcXC4pK1tePD4oKVtcXF1cXC4sOzpcXHNAXFxcIl17Mix9KSQvaTtcblxuYW5ndWxhci5tb2R1bGUoJ0lucHV0VGV4dCcsWydKUXVlcnlFbXUnXSlcblxuLmRpcmVjdGl2ZSgnaW5wdXRUZXh0JywgW1wiSlFlbXVcIiwgZnVuY3Rpb24oSlFlbXUpIHtcbiAgICBmdW5jdGlvbiBteW1ldGhvZHMoc2NvcGUsIGVsZW0sIGF0dHJzKSB7XG4gICAgXG4gICAgLy8gZGVmYXVsdCB2YWx1ZSBhdCAxc3QgcmVuZGVyaW5nXG4gICAgc2NvcGUuZXJyb3IgID0gZmFsc2U7XG4gICAgc2NvcGUudmFsaWQgID0gZmFsc2U7XG4gICAgc2NvcGUuc3RhdHVzID0gJ3VudG91Y2gnO1xuICAgXG4gICAgc2NvcGUuaW5wdXQgPSBlbGVtLmZpbmQgKFwiaW5wdXRcIik7XG4gICAgc2NvcGUucmVxdWlyZWQgPSAwO1xuICAgIFxuICAgIC8vIHJlcXVpcmVyIGlzIHVzZSB0byBpbmNyZW1lbnQgcmVxdWVzdGVkIGNvdW50ZXJcbiAgICBpZiAoXCJyZXF1aXJlZFwiIGluIGF0dHJzKSB7XG4gICAgICAgIHNjb3BlLnJlcXVpcmVkID0gMTtcbiAgICAgICAgZWxlbS5hZGRDbGFzcyAoXCJyZXF1aXJlZFwiKTtcbiAgICB9XG4gICAgICAgXG4gICAgIC8vIHVzZXIgZW50ZXIgaW5wdXQgcmVzZXQgZXJyb3Igc3RhdHVzXG4gICAgIHNjb3BlLnNlbGVjdGVkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBzY29wZS5lcnJvcj1mYWxzZTsgXG4gICAgICAgIHNjb3BlLmVycm1zZz1mYWxzZTsgXG4gICAgICAgIHNjb3BlLnN0YXR1cyA9ICd0b3VjaCc7XG4gICAgIH07ICAgXG4gICAgICAgICAgICBcbiAgICAgc2NvcGUudmFsaWRhdGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICBcbiAgICAgICAgIC8vIGdldCB2YWx1ZSBmcm9tIGlucHV0IGZpZWxkIGJ5cGFzc2luZyBBbmd1bGFyIG5nLW1vZGVsXG4gICAgICAgICBjb25zb2xlLmxvZyAoXCJDbGlja2VkIElucHV0VGV4dCBuYW1lPSVzIHZhbHVlPSVzIHZhbGlkPSVzXCIsIHNjb3BlLm5hbWUsIHNjb3BlLnZhbHVlLCBzY29wZS52YWxpZCk7ICAgICAgICBcblxuICAgICAgICAgLy8gZm9ybSBpcyBub3QgdW50b3VjaGVkIGFueW1vcmVcbiAgICAgICAgIHNjb3BlLnBhcmVudC5yZW1vdmVDbGFzcyAoXCJuZy1wcmlzdGluZVwiKTtcblxuICAgICAgICAgLy8gaWYgdmFsdWUgbm90IG51bGwgY2xlYW4gdXAgc3RyaW5nXG4gICAgICAgICBpZiAoc2NvcGUudmFsdWUpIHtcbiAgICAgICAgICAgICBzY29wZS5lcnJvcj1mYWxzZTsgXG4gICAgICAgICAgICAvLyByZW1vdmUgbGVhZGluZyBhbmQgdHJhaWxsaW5nIHNwYWNlXG4gICAgICAgICAgICBzY29wZS52YWx1ZSA9IHNjb3BlLnZhbHVlLnRyaW0oKTtcbiAgICAgICAgIFxuICAgICAgICAgICAgLy8gcmVtb3ZlIGFueSBzcGFjZSBpcyBub3QgYWxsb3dlZFxuICAgICAgICAgICAgaWYgKCdub3NwYWNlJyBpbiBhdHRycykge1xuICAgICAgICAgICAgICAgc2NvcGUudmFsdWU9c2NvcGUudmFsdWUucmVwbGFjZSgvXFxzL2csICcnKTsgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICBcbiAgICAgICAgICAgIGlmICgnbG93ZXJjYXNlJyBpbiBhdHRycykge1xuICAgICAgICAgICAgICAgc2NvcGUudmFsdWUgPSBzY29wZS52YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgXG4gICAgICAgICAgICAvLyBjaGVjayBtaW5pbXVtIGxlbmdodFxuICAgICAgICAgICAgaWYgKFwibWlubGVuXCIgaW4gYXR0cnMpIHtcbiAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlLmxlbmd0aCA8IGF0dHJzLm1pbmxlbikge1xuICAgICAgICAgICAgICAgICBzY29wZS5zdGF0dXM9J2ludmFsaWQnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJtc2c9c2NvcGUubmFtZSArICc6IE1pbmludW0gTGVuZ2g9ICcgKyBhdHRycy5taW5sZW4gKyAnIENoYXJhY3RlcnMnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJvcj10cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmICgnZW1haWwnIGluIGF0dHJzKSB7XG4gICAgICAgICAgICBpZiAoIWVtYWlscGF0ZXJuLnRlc3QgKHNjb3BlLnZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHNjb3BlLnN0YXR1cz0naW52YWxpZCc7XG4gICAgICAgICAgICAgICAgc2NvcGUuZXJybXNnPSdpbnZhbGlkIGVtYWlsIGFkZHJlc3MnO1xuICAgICAgICAgICAgICAgIHNjb3BlLmVycm9yPXRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgICBcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChzY29wZS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICBzY29wZS5zdGF0dXM9J2ludmFsaWQnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJtc2c9c2NvcGUubmFtZSArICc6IFJlcXVpcmVkIEF0dHJpYnV0ZSc7XG4gICAgICAgICAgICAgICAgIHNjb3BlLmVycm9yPXRydWU7IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgIC8vIElmIGxvY2FsIGNvbnRyb2wgZmFpbCBsZXQncyByZWZ1c2UgaW5wdXRcbiAgICAgICAgIGlmIChzY29wZS5lcnJvcikge1xuICAgICAgICAgICAgIGlmIChzY29wZS5yZXF1aXJlZCAmJiBzY29wZS52YWxpZCkge1xuICAgICAgICAgICAgICAgICBzY29wZS52YWxpZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICBpZiAoc2NvcGUubDRhY291bnRlci52YWxpZGF0ZWQgPiAwKSBzY29wZS5sNGFjb3VudGVyLnZhbGlkYXRlZCAtLTtcbiAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgIC8vIHVzZSBjYWxsIHRvIHVwZGF0ZSBmb3JtIHNjb3BlIG9uIGZvcm0gY29tcGxldGVuZXNzXG4gICAgICAgICAgICAgc2NvcGUuY2FsbGJhY2sgKGF0dHJzLm5hbWUsIG51bGwsIHNjb3BlLmRvbmUpO1xuICAgICAgICAgfSBlbHNlIHsgXG4gICAgICAgICAgICAgLy8gbG9jYWxjaGVjayBpcyBPSyBiYWNrdXAgbWF5IG5ldmVydGhlbGVzcyBjaGFuZ2Ugc3RhdHVzIHRvIGZhbHNlXG4gICAgICAgICAgICBpZiAoc2NvcGUucmVxdWlyZWQgICYmICFzY29wZS52YWxpZCkgc2NvcGUubDRhY291bnRlci52YWxpZGF0ZWQgKys7XG4gICAgICAgICAgICBzY29wZS5zdGF0dXM9J3ZhbGlkJztcbiAgICAgICAgICAgIHNjb3BlLnZhbGlkPXRydWU7XG4gICAgICAgICAgICBzY29wZS5jYWxsYmFjayAoYXR0cnMubmFtZSwgc2NvcGUudmFsdWUsIHNjb3BlLmRvbmUpO1xuICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICB9O1xuICAgICBcbiAgICAgLy8gdGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBmcm9tIGNvbnRyb2xsZXIgdG8gdXBkYXRlIHdpZGdldCBzdGF0dXNcbiAgICAgc2NvcGUuZG9uZT1mdW5jdGlvbiAoZGF0YSkge1xuICAgICAgIGNvbnNvbGUubG9nIChcIlRleHQtSW5wdXQgQ2FsbGJhY2sgSUQ9XCIrIGF0dHJzLm5hbWUgKyBcIiBkYXRhPVwiLCBkYXRhKTtcbiAgICAgICBmb3IgKHZhciBpIGluIGRhdGEpIHNjb3BlW2ldID0gZGF0YVtpXTsgICAgICAgICBcbiAgICAgfTtcbiAgICAgXG4gICAgIC8vIEV4cG9ydCBzb21lIGF0dHJpYnV0ZXMgd2l0aGluIGRpcmVjdGl2ZSBzY29wZSBmb3IgdGVtcGxhdGVcbiAgICAgc2NvcGUubGFiZWwgICAgICAgPSBhdHRycy5sYWJlbDtcbiAgICAgc2NvcGUubmFtZSAgICAgICAgPSBhdHRycy5uYW1lO1xuICAgICBzY29wZS5wbGFjZWhvbGRlciA9IGF0dHJzLnBsYWNlaG9sZGVyO1xuICAgICBzY29wZS50eXBlICAgICAgICA9IGF0dHJzLnR5cGUgfHwgXCJ0ZXh0XCI7XG4gICAgIHNjb3BlLnRpcCAgICAgICAgID0gYXR0cnMudGlwO1xuXG4gICAgIC8vIHNlYXJjaCBmb3IgZm9ybSB3aXRoaW4gcGFyZW50IGVsZW1udHNcbiAgICAgc2NvcGUucGFyZW50ID0gSlFlbXUucGFyZW50IChlbGVtLCBcIkZPUk1cIik7XG5cbiAgICAgLy8gZW1haWwgZW5mb3JjZSBsb3dlcmNhc2UgYW5kIG5vc3BhY2UgICBcbiAgICAgaWYgKFwiZW1haWxcIiBpbiBhdHRycykge1xuICAgICAgICBhdHRycy5sb3dlcmNhc2U9dHJ1ZTsgXG4gICAgICAgIGF0dHJzLm5vc3BhY2U9dHJ1ZTsgXG4gICAgICAgIGF0dHJzLm1pbmxlbj02OyBcbiAgICAgfVxuXG4gICAgIGlmIChzY29wZS5yZXF1aXJlZCkge1xuICAgICAgICAgc2NvcGUubDRhY291bnRlciA9IHNjb3BlLnBhcmVudC5kYXRhIChcImw0YWNvdW50ZXJcIik7XG4gICAgICAgICBpZiAoIXNjb3BlLmw0YWNvdW50ZXIpIHsgXG4gICAgICAgICAgICBzY29wZS5sNGFjb3VudGVyID0gIHtyZXF1aXJlZDoxLCB2YWxpZGF0ZWQ6MH07XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZpZWxkIFwiK3Njb3BlLm5hbWUrXCIgaXMgcmVxdWlyZWQgKDFzdClcIik7XG4gICAgICAgICAgICBzY29wZS5wYXJlbnQuZGF0YSAoXCJsNGFjb3VudGVyXCIsIHNjb3BlLmw0YWNvdW50ZXIpOyBcbiAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgY29uc29sZS5sb2coXCJGaWVsZCBcIitzY29wZS5uYW1lK1wiIGlzIHJlcXVpcmVkXCIpO1xuICAgICAgICAgICAgIHNjb3BlLmw0YWNvdW50ZXIucmVxdWlyZWQgKys7XG4gICAgICAgICB9XG4gICAgIH1cbiAgICAgICAgIFxuICAgICAvLyByZWZyZXNoIHZhbGlkYXRpb24gZWFjaCB0aW1lIGNvbnRyb2xlciB1cGRhdGUgdmFsdWVcbiAgICAgc2NvcGUuJHdhdGNoICgndmFsdWUnLCBmdW5jdGlvbigpe1xuICAgICAgICAgaWYoc2NvcGUudmFsdWUpIHNjb3BlLnZhbGlkYXRlKCk7IH1cbiAgICAgKTtcbiAgICBcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdHJpY3Q6ICdFJyxcbiAgICAgICAgdGVtcGxhdGU6IHRtcGwsXG4gICAgICAgIGxpbms6IG15bWV0aG9kcyxcbiAgICAgICAgc2NvcGU6IHtcbiAgICAgICAgICAgIGNhbGxiYWNrIDogJz0nLFxuICAgICAgICAgICAgdmFsdWU6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbn1dKTtcblxuY29uc29sZS5sb2cgKFwiSW5wdXRUZXh0IExvYWRlZFwiKTtcbn0pKCk7XG4iLCIvKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICovXG5cbihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxudmFyIHRtcGwgPSAnPGlucHV0LXRleHQgIGNsYXNzPVwicGFzc3dvcmRcIiB0aXA9XCJ7e3RpcDF9fVwiICBwbGFjZWhvbGRlcj1cInt7cGxhY2UxfX1cIicgK1xuICAgICAgICAgICAnbGFiZWw9XCJ7e2xhYmVsMX19XCIgY2FsbGJhY2s9XCJ2YWxpZDFcIiBuYW1lPVwie3tuYW1lfX0tMVwiIHZhbHVlPVwicGFzczFcIiByZXF1aXJlZCBtaW5sZW49XCJ7e21pbmxlbn19XCIgdHlwZT1cInBhc3N3b3JkXCIgPicgK1xuICAgICAgICAgICAnPC9pbnB1dC10ZXh0PicgKyBcbiAgICAgICAgICAgJzxpbnB1dC10ZXh0ICBjbGFzcz1cInBhc3N3b3JkXCIgdGlwPVwidGlwMlwiICBwbGFjZWhvbGRlcj1cInt7cGxhY2UyfX1cIicgK1xuICAgICAgICAgICAnbGFiZWw9XCJ7e2xhYmVsMn19XCIgY2FsbGJhY2s9XCJ2YWxpZDJcIiBuYW1lPVwie3tuYW1lfX0tMlwiIHZhbHVlPVwicGFzczJcIiByZXF1aXJlZCBtaW5sZW49XCJ7e21pbmxlbn19XCIgdHlwZT1cInBhc3N3b3JkXCIgPiAnK1xuICAgICAgICAgICAnPC9pbnB1dC10ZXh0Pic7XG5cbmFuZ3VsYXIubW9kdWxlKCdJbnB1dFBhc3N3b3JkJyxbXSlcblxuLmRpcmVjdGl2ZSgnaW5wdXRQYXNzd29yZCcsIGZ1bmN0aW9uKCkge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICBcbiAgICBzY29wZS52YWxpZDEgPSBmdW5jdGlvbiAobmFtZSwgdmFsdWUpIHtcbiAgICAgICAgY29uc29sZS5sb2cgKFwiQ2xpY2tlZCBJbnB1dFBhc3N3b3JkMSBuYW1lPSVzIHZhbHVlPSVzXCIsIG5hbWUsIHZhbHVlKTsgICAgICAgIFxuICAgICAgICBzY29wZS5maXJzdHB3ZCA9IHZhbHVlO1xuICAgIH07XG4gICAgXG4gICAgc2NvcGUudmFsaWQyID0gZnVuY3Rpb24gKG5hbWUsIHZhbHVlLCBkb25lKSB7ICAgICAgICBcbiAgICAgICAgY29uc29sZS5sb2cgKFwiQ2xpY2tlZCBJbnB1dFBhc3N3b3JkMiBuYW1lPSVzIHZhbHVlPSVzXCIsIG5hbWUsIHZhbHVlKTsgICAgICAgIFxuICAgICAgICBcbiAgICAgICAgLy8gaWYgYm90aCBwYXNzd2QgZXF1YWwgdGhlbiBjYWxsIGZvcm0gQ0JcbiAgICAgICAgaWYgKHNjb3BlLmZpcnN0cHdkICE9PSB2YWx1ZSkge1xuICAgICAgICAgIGRvbmUoe3ZhbGlkOiBmYWxzZSwgc3RhdHVzOiAnaW52YWxpZCcsIGVycm1zZzogXCJib3RoIHBhc3N3b3JkIHNob3VsZCBtYXRjaFwifSk7ICBcbiAgICAgICAgfSBlbHNlIHsgIFxuICAgICAgICAgIHNjb3BlLmNhbGxiYWNrIChhdHRycy5uYW1lLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIFxuICAgICB9O1xuICAgICBcbiAgICAgLy8gdGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBmcm9tIGNvbnRyb2xsZXIgdG8gdXBkYXRlIHdpZGdldCBzdGF0dXNcbiAgICAgc2NvcGUuZG9uZT1mdW5jdGlvbiAoZGF0YSkge1xuICAgICAgIGNvbnNvbGUubG9nIChcIlRleHQtSW5wdXQgQ2FsbGJhY2sgSUQ9XCIrIGF0dHJzLm5hbWUgKyBcIiBkYXRhPVwiLCBkYXRhKTtcbiAgICAgICBmb3IgKHZhciBpIGluIGRhdGEpIHNjb3BlW2ldID0gZGF0YVtpXTsgICAgICAgICBcbiAgICAgfTtcbiAgICAgXG4gICAgIC8vIEV4cG9ydCBzb21lIGF0dHJpYnV0ZXMgd2l0aGluIGRpcmVjdGl2ZSBzY29wZSBmb3IgdGVtcGxhdGVcbiAgICAgc2NvcGUubmFtZSAgID0gYXR0cnMubmFtZTtcbiAgICAgc2NvcGUubGFiZWwxID0gYXR0cnMubGFiZWwgfHwgJ1Bhc3N3b3JkJztcbiAgICAgc2NvcGUubGFiZWwyID0gYXR0cnMubGFiZWwgfHwgJ1Bhc3N3b3JkIFZlcmlmaWNhdGlvbic7XG4gICAgIHNjb3BlLnBsYWNlMSA9IGF0dHJzLnBsYWNlaG9sZGVyMSB8fCAnVXNlciBQYXNzd29yZCc7XG4gICAgIHNjb3BlLnRpcDEgICA9IGF0dHJzLnRpcCB8fCAnQ2hvb3NlIGEgUGFzc3dvcmQnO1xuICAgICBzY29wZS5wbGFjZTIgPSBhdHRycy5wbGFjZWhvbGRlcjEgfHwgJ1Bhc3N3b3JkIFZlcmlmaWNhdGlvbic7XG4gICAgIHNjb3BlLnRpcDIgICA9IGF0dHJzLnRpcCAgICB8fCAnQ29uZmlybWUgeW91ciBQYXNzd29yZCc7XG4gICAgIHNjb3BlLm1pbmxlbiA9IGF0dHJzLm1pbmxlbiB8fCAxMDtcbiAgICAgXG4gICAgIGlmIChcInJlcXVpcmVkXCIgaW4gYXR0cnMpIHNjb3BlLnJlcXVpcmVkID0gJ3JlcXVpcmVkJztcbiAgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICByZXR1cm4ge1xuICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICBzY29wZToge1xuICAgICAgICAgICAgY2FsbGJhY2sgOiAnPScsXG4gICAgICAgIH1cbiAgICB9O1xufSk7XG5cbmNvbnNvbGUubG9nIChcIklucHV0UGFzc3dvcmQgTG9hZGVkXCIpO1xufSkoKTtcbiIsIihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxuLy8gbGlzdCBhbGwgcmVwZW5kZW5jaWVzIHdpdGhpbiB0aGUgcGFnZSArIGNvbnRyb2xlciBpZiBuZWVkZWRcbmFuZ3VsYXIubW9kdWxlKCdTYW1wbGVNb2R1bGUnLCBbJ1N1Ym1pdEJ1dHRvbicsJ1VwbG9hZEZpbGVzJ10pXG5cbiAgLmNvbnRyb2xsZXIoJ1NhbXBsZUNvbnRyb2xsZXInLCBbXCIkaHR0cFwiLCBmdW5jdGlvbiAoJGh0dHApIHtcbiAgICAgICAgdmFyIHNjb3BlID0gdGhpczsgLy8gSSBoYXRlIEphdmFTY3JpcHRcblxuICAgICAgICBjb25zb2xlLmxvZyAoXCJzYW1wbGUgSW5pdFwiKTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLkZpbGVVcGxvYWRlZCA9IGZ1bmN0aW9uIChyZXNwb25zZSkge1xuICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJGaWxlVXBsb2FkZWQgcmVzcG9uc2U9JXNcIiwgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpKTtcbiAgICAgICAgfTtcbiAgIH1dKTtcblxuY29uc29sZS5sb2cgKFwiU2FtcGxlQ29udHJvbGVyIExvYWRlZFwiKTtcbn0pKCk7ICIsIihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxuLy8gV0FSTklORzogbWFrZSBzdXJlIHRoYW4gYXBwL2Zyb250ZW5kL3NlcnZpY2VzL0NvbmZpZ0FwcC5qcyBtYXRjaCB5b3VyIHNlcnZlclxuXG4vLyBsaXN0IGFsbCByZXBlbmRlbmNpZXMgd2l0aGluIHRoZSBwYWdlICsgY29udHJvbGVyIGlmIG5lZWRlZFxuYW5ndWxhci5tb2R1bGUoJ0hvbWVNb2R1bGUnLCBbJ1N1Ym1pdEJ1dHRvbicsICdUb2tlblJlZnJlc2gnXSlcblxuICAuY29udHJvbGxlcignSG9tZUNvbnRyb2xsZXInLCBbXCIkaHR0cFwiLCBcIkNvbmZpZ0FwcFwiLCBmdW5jdGlvbiAoJGh0dHAsIENvbmZpZ0FwcCkge1xuICAgICAgICB2YXIgc2NvcGUgPSB0aGlzOyAvLyBJIGhhdGUgSmF2YVNjcmlwdFxuICAgICAgICBzY29wZS51dWlkICAgPVwibm9uZVwiO1xuICAgICAgICBzY29wZS50b2tlbiAgPVwibm9uZVwiO1xuICAgICAgICBzY29wZS5zZXNzaW9uPVwibm9uZVwiO1xuICAgICAgICBzY29wZS5zdGF0dXMgPVwiZXJyLW5vXCI7XG5cbiAgICAgICAgY29uc29sZS5sb2cgKFwiSG9tZSBDb250cm9sbGVyXCIpO1xuICAgICAgICBcbiAgICAgICAgc2NvcGUuUHJvY2Vzc1Jlc3BvbnNlPSBmdW5jdGlvbihkYXRhLCBlcnJjb2RlLCBoZWFkZXJzLCBjb25maWcpIHtcbiAgICAgICAgICAgIHZhciBhcGluYW1lPSAnQVBJJysgZGF0YS5yZXF1ZXN0LmFwaS5yZXBsYWNlKCctJywnXycpO1xuICAgICAgICAgICAgc2NvcGUuc3RhdHVzID0gXCJlcnItb2tcIjtcbiAgICAgICAgICAgIHNjb3BlLmVycmNvZGU9IGVycmNvZGU7XG4gICAgICAgICAgICBzY29wZS5yZXF1ZXN0ICA9IGRhdGEucmVxdWVzdDtcbiAgICAgICAgICAgIHNjb3BlLnJlc3BvbnNlID0gZGF0YS5yZXNwb25zZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gaWYgdG9rZW4gd2FzIHJlZnJlc2ggbGV0J3MgdXBkYXRlIENvbmZpZ0FwcFxuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50b2tlbikgQ29uZmlnQXBwLnNlc3Npb24udG9rZW4gPSBkYXRhLnJlcXVlc3QudG9rZW47XG4gICAgICAgICAgICBpZiAoZGF0YS5yZXF1ZXN0LnV1aWQpICBDb25maWdBcHAuc2Vzc2lvbi51dWlkICA9IGRhdGEucmVxdWVzdC51dWlkO1xuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50aW1lb3V0KSAgQ29uZmlnQXBwLnNlc3Npb24udGltZW91dCAgPSBkYXRhLnJlcXVlc3QudGltZW91dDtcblxuICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHdlIGNsZWFuIGV2ZXJ5dGhpbmcgd2hlbiBPcGVuL0Nsb3NlIGlzIGNhbGxlZFxuICAgICAgICAgICAgaWYgKGFwaW5hbWUgPT09IFwiQVBJY3JlYXRlXCIgfHwgYXBpbmFtZSA9PT0gXCJBUElyZXNldFwiKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuQVBJcmVzZXQgID0nJztcbiAgICAgICAgICAgICAgICBzY29wZS5BUEljcmVhdGUgPScnO1xuICAgICAgICAgICAgICAgIHNjb3BlLkFQSXJlZnJlc2g9Jyc7XG4gICAgICAgICAgICAgICAgc2NvcGUuQVBJY2hlY2sgID0nJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNjb3BlW2FwaW5hbWVdPVwic3VjY2Vzc1wiO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGEgbmV3IHRva2VuIGxldCdzIHVwZGF0ZSBpdFxuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50b2tlbikgc2NvcGUudG9rZW49ZGF0YS5yZXF1ZXN0LnRva2VuO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJPSzogXCIrIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLlByb2Nlc3NFcnJvcj0gZnVuY3Rpb24oZGF0YSwgZXJyY29kZSwgaGVhZGVycywgY29uZmlnKSB7XG4gICAgICAgICAgICB2YXIgYXBpbmFtZT0gJ0FQSScrZGF0YS5yZXF1ZXN0LmFwaS5yZXBsYWNlKCctJywnXycpO1xuICAgICAgICAgICAgc2NvcGUuc3RhdHVzICAgPSBcImVyci1meFwiO1xuICAgICAgICAgICAgc2NvcGUuZXJyY29kZSAgPSBlcnJjb2RlO1xuICAgICAgICAgICAgc2NvcGUucmVxdWVzdCAgPSBkYXRhLnJlcXVlc3Q7XG4gICAgICAgICAgICBzY29wZS5yZXNwb25zZSA9IFwiXCI7XG4gICAgICAgICAgICBzY29wZVthcGluYW1lXT1cImZhaWxcIjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgY29uc29sZS5sb2cgKFwiRlg6IFwiKyBKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUuT3BlblNlc3Npb24gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nIChcIk9wZW5TZXNzaW9uXCIpOyBcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KENvbmZpZ0FwcC5zZXNzaW9uLmNyZWF0ZSArICc/dG9rZW49JytDb25maWdBcHAuc2Vzc2lvbi5pbml0aWFsLCBwb3N0ZGF0YSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGhhbmRsZXIuc3VjY2VzcyhzY29wZS5Qcm9jZXNzUmVzcG9uc2UpO1xuICAgICAgICAgICAgaGFuZGxlci5lcnJvcihzY29wZS5Qcm9jZXNzRXJyb3IpO1xuICAgICAgICB9OyAgICAgICAgXG5cbiAgICAgICAgc2NvcGUuQ2hlY2tTZXNzaW9uID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJDbG9zZVNlc3Npb25cIik7XG4gICAgICAgICAgICB2YXIgcG9zdGRhdGE9IHsvKiBhbnkganNvbiB5b3VyIGFwcGxpY2F0aW9uIG1heSBuZWVkICovfTtcbiAgICAgICAgICAgIHZhciBoYW5kbGVyID0gJGh0dHAucG9zdChDb25maWdBcHAuc2Vzc2lvbi5jaGVjayArICc/dG9rZW49JytDb25maWdBcHAuc2Vzc2lvbi50b2tlbiwgcG9zdGRhdGEpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBoYW5kbGVyLnN1Y2Nlc3Moc2NvcGUuUHJvY2Vzc1Jlc3BvbnNlKTtcbiAgICAgICAgICAgIGhhbmRsZXIuZXJyb3Ioc2NvcGUuUHJvY2Vzc0Vycm9yKTtcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLlJlZnJlc2hTZXNzaW9uID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJSZWZyZXNoU2Vzc2lvblwiKTtcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KENvbmZpZ0FwcC5zZXNzaW9uLnJlZnJlc2ggKyAnP3Rva2VuPScrQ29uZmlnQXBwLnNlc3Npb24udG9rZW4sIHBvc3RkYXRhKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaGFuZGxlci5zdWNjZXNzKHNjb3BlLlByb2Nlc3NSZXNwb25zZSk7XG4gICAgICAgICAgICBoYW5kbGVyLmVycm9yKHNjb3BlLlByb2Nlc3NFcnJvcik7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICBzY29wZS5SZXNldFNlc3Npb24gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nIChcIlJlc2V0U2Vzc2lvblwiKTtcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KENvbmZpZ0FwcC5zZXNzaW9uLnJlc2V0ICsgJz90b2tlbj0nK0NvbmZpZ0FwcC5zZXNzaW9uLnRva2VuLCBwb3N0ZGF0YSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGhhbmRsZXIuc3VjY2VzcyhzY29wZS5Qcm9jZXNzUmVzcG9uc2UpO1xuICAgICAgICAgICAgaGFuZGxlci5lcnJvcihzY29wZS5Qcm9jZXNzRXJyb3IpO1xuICAgICAgICB9O1xuICAgICAgICBcbiAgIH1dKTtcblxuY29uc29sZS5sb2cgKFwiU2FtcGxlQ29udHJvbGVyIExvYWRlZFwiKTtcbn0pKCk7ICIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKiBcbiAqIFVzYWdlOlxuICogXG4gKiAgIC8vIG1vdXNlIGV2ZW50IHByb2JhYmx5IHBvaW50IG9uIGljb24gYW5kIG5vdCBvbiBidXR0b24gZGl2XG4gKiAgIC4uLiBuZy1jbGljaz1cIkxvY2tDaGFubmVsKCRldmVudClcbiAgICAgdmFyIHRhcmdldD0gYW5ndWxhci5lbGVtZW50KGV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICAgICB2YXIgYnV0dG9uPSBKUWVtdS5GaW5kSW5QYXJlbnQgKHRhcmdldCwgJ2RpdicpO1xuICogXG4gKi9cblxuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuXG4gICAgICAgICAgXG4gICAgLy8gX2FsbCBtb2R1bGVzIG9ubHkgcmVmZXJlbmNlIGRlcGVuZGVuY2llc1xuICAgIGFuZ3VsYXIubW9kdWxlKCdKUXVlcnlFbXUnLCBbXSlcblxuICAgICAgICAgICAgLy8gRmFjdG9yeSBpcyBhIHNpbmdsZXRvbiBhbmQgc2hhcmUgaXRzIGNvbnRleHQgd2l0aGluIGFsbCBpbnN0YW5jZXMuXG4gICAgICAgICAgICAuZmFjdG9yeSgnSlFlbXUnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAgICAgICB2YXIgRmluZEluUGFyZW50ID0gZnVuY3Rpb24gKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBwYXJlbnQgPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICB2YXIgc2VhcmNoID0gc2VsZWN0b3IudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHBhcmVudFswXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNlYXJjaCA9PT0gcGFyZW50WzBdLnRhZ05hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSAgLy8gSFRNTERpdkVsZW1lbnQgcHJvcGVydGllc1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50ID0gcGFyZW50LnBhcmVudCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB2YXIgIEZpbmRCeVRhZz0gZnVuY3Rpb24gKGVsZW1lbnQsIHRhZywgc2VsZWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlYXJjaCA9IHNlbGVjdG9yLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIHZhciB0eXBlICAgPSB0YWcudG9Mb3dlckNhc2UoKSsgXCJOYW1lXCI7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGVsZW1lbnQuY2hpbGRyZW4oKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGNoaWxkcmVuWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2VhcmNoID09PSBjaGlsZHJlblswXVt0eXBlXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gIC8vIEhUTUxEaXZFbGVtZW50IHByb3BlcnRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4ubmV4dCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB2YXIgIEZpbmRCeUNsYXNzPSBmdW5jdGlvbiAoZWxlbWVudCwgc2VsZWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlYXJjaCA9IHNlbGVjdG9yLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGVsZW1lbnQuY2hpbGRyZW4oKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGNoaWxkcmVuWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGRyZW4uaGFzQ2xhc3Moc2VhcmNoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gIC8vIEhUTUxEaXZFbGVtZW50IHByb3BlcnRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4ubmV4dCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHZhciBteU1ldGhvZHMgPSB7XG4gICAgICAgICAgICAgICAgICAgIEZpbmRJblBhcmVudDogRmluZEluUGFyZW50LFxuICAgICAgICAgICAgICAgICAgICBGaW5kQnlUYWc6IEZpbmRCeVRhZyxcbiAgICAgICAgICAgICAgICAgICAgRmluZEJ5Q2xhc3M6IEZpbmRCeUNsYXNzXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBteU1ldGhvZHM7XG4gICAgICAgICAgICB9KTtcblxufSkoKTsiLCJ2YXIgZm91bmRhdGlvblJvdXRlcyA9IFt7XCJuYW1lXCI6XCJteXNhbXBsZVwiLFwidXJsXCI6XCIvc2FtcGxlXCIsXCJjb250cm9sbGVyXCI6XCJTYW1wbGVDb250cm9sbGVyIGFzIGN0cmxcIixcImFuaW1hdGlvbkluXCI6XCJzbGlkZUluUmlnaHRcIixcInBhdGhcIjpcInBhZ2VzL1NhbXBsZS9TYW1wbGUuaHRtbFwifSx7XCJuYW1lXCI6XCJteWhvbWVcIixcInVybFwiOlwiL2hvbWVcIixcImNvbnRyb2xsZXJcIjpcIkhvbWVDb250cm9sbGVyIGFzIGN0cmxcIixcImFuaW1hdGlvbkluXCI6XCJzbGlkZUluUmlnaHRcIixcInBhdGhcIjpcInBhZ2VzL0hvbWUvSG9tZS5odG1sXCJ9XTsgXG4iLCIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8vIF9hbGwgbW9kdWxlcyBvbmx5IHJlZmVyZW5jZSBkZXBlbmRlbmNpZXNcbiAgICBhbmd1bGFyLm1vZHVsZSgnQ29uZmlnQXBwJywgW10pXG5cbiAgICAgICAgICAgIC8vIEZhY3RvcnkgaXMgYSBzaW5nbGV0b24gYW5kIHNoYXJlIGl0cyBjb250ZXh0IHdpdGhpbiBhbGwgaW5zdGFuY2VzLlxuICAgICAgICAgICAgLmZhY3RvcnkoJ0NvbmZpZ0FwcCcsIFtcIiRsb2NhdGlvblwiLCBcIiR3aW5kb3dcIiwgZnVuY3Rpb24gKCRsb2NhdGlvbiwgJHdpbmRvdykge1xuXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2cgKFwiVVJMPVwiKyAkbG9jYXRpb24udXJsKCkgKyBcIiBRdWVyeT1cIiArIGxvY2F0aW9uLmhyZWYrIFwiIHdpbmRvdz1cIiArIGRvY3VtZW50LnJlZmVycmVyKTtcblxuICAgICAgICAgICAgICAgIHZhciBteUNvbmZpZyA9IHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aHM6IHsgLy8gV2FybmluZyBwYXRocyBzaG91bGQgZW5kIHdpdGggL1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2UgOiAnaW1hZ2VzLycsXG4gICAgICAgICAgICAgICAgICAgICAgICBhdmF0YXI6ICdpbWFnZXMvYXZhdGFycy8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXVkaW8gOiAnaW1hZ2VzL2F1ZGlvLycsXG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBsaSA6ICdpbWFnZXMvYXBwbGkvJ1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbXlhcGk6IHsgLy8gV2FybmluZyBwYXRocyBzaG91bGQgZW5kIHdpdGggL1xuICAgICAgICAgICAgICAgICAgICAgICB0b2tlbiA6ICcvYXBpL215cGx1Z2luL3h4eHgnXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBzZXNzaW9uOiB7IC8vIFRob3NlIGRhdGEgYXJlIHVwZGF0ZWQgYnkgc2Vzc2lvbiBzZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZSAgOiAnL2FwaS90b2tlbi9jcmVhdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoIDogJy9hcGkvdG9rZW4vcmVmcmVzaCcsXG4gICAgICAgICAgICAgICAgICAgICAgIGNoZWNrICAgOiAnL2FwaS90b2tlbi9jaGVjaycsXG4gICAgICAgICAgICAgICAgICAgICAgIHJlc2V0ICAgOiAnL2FwaS90b2tlbi9yZXNldCcsXG4gICAgICAgICAgICAgICAgICAgICAgIHBpbmcgICAgOiAnL2FwaS90b2tlbi9jaGVjaycsXG4gICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWwgOiAnMTIzNDU2Nzg5JywgIC8vIHR5cGljYWwgZGV2IGluaXRpYWwgdG9rZW5cbiAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dCA6IDM2MDAsICAgICAgICAgLy8gdGltZW91dCBpcyB1cGRhdGVkIGNsaWVudCBzZXNzaW4gY29udGV4dCBjcmVhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICBwaW5ncmF0ZTogNjAsICAgICAgICAgICAvLyBQaW5nIHJhdGUgdG8gY2hlY2sgaWYgc2VydmVyIGlzIHN0aWxsIGFsaXZlXG4gICAgICAgICAgICAgICAgICAgICAgIHV1aWQgICAgOiAnJywgICAgICAgICAgIC8vIHV1aWQgbWFwIHdpdGggY29va2llIG9yIGxvbmcgdGVybSBzZXNzaW9uIGFjY2VzcyBrZXlcbiAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4gICA6ICcnICAgICAgICAgICAgLy8gd2lsbCBiZSByZXR1cm5lZCBmcm9tIGF1dGhlbnRpY2F0aW9uICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBteUNvbmZpZztcbiAgICAgICAgICAgIH1dKTtcblxufSkoKTsiLCIoZnVuY3Rpb24oKSB7XG4gICd1c2Ugc3RyaWN0JztcblxuICBhbmd1bGFyLm1vZHVsZSgnQUZCY2xpZW50JywgWyAvLyBXYXJuaW5nOiBBcHBuYW1lIHNob3VsZCBmaXQgd2l0aCBndWxwZmlsZS5qcyAmIGluZGV4Lmh0bWxcbiAgICAndWkucm91dGVyJyxcbiAgICAnbmdBbmltYXRlJyxcblxuICAgIC8vZm91bmRhdGlvblxuICAgICdmb3VuZGF0aW9uJyxcbiAgICAnZm91bmRhdGlvbi5keW5hbWljUm91dGluZycsXG4gICAgJ2ZvdW5kYXRpb24uZHluYW1pY1JvdXRpbmcuYW5pbWF0aW9ucycsXG4gICAgXG4gICAgLy8gZXh0ZXJuYWwgY29tcG9uZW50c1xuICAgICd1aS1ub3RpZmljYXRpb24nLFxuICAgIFxuICAgIC8vIEFwcGxpY2F0aW9uIENvbXBvbmVudHNcbiAgICAnQ29uZmlnQXBwJyxcbiAgICAnSlF1ZXJ5RW11JyxcbiAgICAnSG9tZU1vZHVsZScsXG4gICAgJ1NhbXBsZU1vZHVsZScsXG4gICAgJ1VwbG9hZEZpbGVzJyxcbiAgICAnTGlua0J1dHRvbicsXG4gICAgJ1Rva2VuUmVmcmVzaCcsXG4gICAgJ1JhbmdlU2xpZGVyJyxcbiAgICAnTW9kYWxOb3RpZmljYXRpb24nXG4gIF0pXG4gICAgLmNvbmZpZyhjb25maWcpXG4gICAgLnJ1bihydW4pXG4gIDtcblxuICBjb25maWcuJGluamVjdCA9IFsnJHVybFJvdXRlclByb3ZpZGVyJywgJyRsb2NhdGlvblByb3ZpZGVyJ107XG4gIFxuICBjb25zb2xlLmxvZyAoXCIqKipsb2NhdGlvbj1cIiArIHdpbmRvdy5sb2NhdGlvbiArIFwiIHNlYXJjaFwiICsgd2luZG93LnNlYXJjaCk7XG5cbiAgZnVuY3Rpb24gY29uZmlnKCR1cmxQcm92aWRlciwgJGxvY2F0aW9uUHJvdmlkZXIsIENvbmZpZ0FwcCkge1xuICAgICR1cmxQcm92aWRlci5vdGhlcndpc2UoJy9ob21lJyk7XG5cbiAgICAvLyBodHRwczovL2RvY3MuYW5ndWxhcmpzLm9yZy9lcnJvci8kbG9jYXRpb24vbm9iYXNlXG4gICAgJGxvY2F0aW9uUHJvdmlkZXIuaHRtbDVNb2RlKHRydWUpLmhhc2hQcmVmaXgoJyEnKTtcbiAgICBcbiAgfVxuXG4gIGZ1bmN0aW9uIHJ1bigpIHtcbiAgICBGYXN0Q2xpY2suYXR0YWNoKGRvY3VtZW50LmJvZHkpO1xuICB9XG5cbmNvbnNvbGUubG9nIChcIm9wYT1BRkJjbGllbnQgTG9hZGVkXCIpO1xufSkoKTtcbiIsIihmdW5jdGlvbigpIHthbmd1bGFyLm1vZHVsZSgnQUZCY2xpZW50JykucnVuKFsnJHRlbXBsYXRlQ2FjaGUnLCBmdW5jdGlvbigkdGVtcGxhdGVDYWNoZSkgeyR0ZW1wbGF0ZUNhY2hlLnB1dCgncGFnZXMvU2FtcGxlL1NhbXBsZS5odG1sJyxcbiAgICAnPGgxPjxpbWcgY2xhc3M9XCJsb2dvXCIgc3JjPVwiaW1hZ2VzL2xvZ28vdHJpc2tlbF9pb3RfYnpoeDI1MC5wbmdcIiBhbHQ9XCJJb1QuYnpoIExvZ29cIiBzdHlsZT1cImhlaWdodDoxNTBweFwiPiBQb3N0IEZpbGUgVXBsb2FkPC9oMT48ZGl2IGNsYXNzPVwic2FtcGxlLWJveCBib3gtY29udGVudFwiPjx1cGxvYWQtaW1hZ2UgbmFtZT1cImF2YXRhclwiIGNhdGVnb3J5PVwiYXZhdGFyXCIgdGh1bWJuYWlsPVwidHV4LXZpc2l0b3IucG5nXCIgbWF4c2l6ZT1cIjEwMFwiIHBvc3R1cmw9XCIvYXBpL3Bvc3QvdXBsb2FkLWltYWdlXCIgY2FsbGJhY2s9XCJjdHJsLkZpbGVVcGxvYWRlZFwiIGFjY2VwdD1cImltYWdlXCIgdGl0bGU9XCJDaGFuZ2UgeW91ciBBdmF0YXJcIj48L3VwbG9hZC1pbWFnZT48dXBsb2FkLWF1ZGlvIG5hbWU9XCJtdXNpY1wiIHBvc3R1cmw9XCIvYXBpL3Bvc3QvdXBsb2FkLW11c2ljXCIgY2FsbGJhY2s9XCJjdHJsLkZpbGVVcGxvYWRlZFwiIHRpdGxlPVwiVXBsb2FkIHlvdXIgTXVzaWNcIj48L3VwbG9hZC1hdWRpbz48dXBsb2FkLWFwcGxpIG5hbWU9XCJhcHBsaVwiIHBvc3R1cmw9XCIvYXBpL3Bvc3QvdXBsb2FkLWFwcGxpXCIgY2FsbGJhY2s9XCJjdHJsLkZpbGVVcGxvYWRlZFwiIHRpdGxlPVwiVXBsb2FkIEFHTCBBcHBcIj48L3VwbG9hZC1hcHBsaT48L2Rpdj48bGluay1idXR0b24gaHJlZj1cImhvbWVcIiBpY29uPVwiZmktaG9tZVwiIGxhYmVsPVwiaG9tZVwiPjwvbGluay1idXR0b24+Jyk7fV0pO1xufSkoKTtcbiIsIihmdW5jdGlvbigpIHthbmd1bGFyLm1vZHVsZSgnQUZCY2xpZW50JykucnVuKFsnJHRlbXBsYXRlQ2FjaGUnLCBmdW5jdGlvbigkdGVtcGxhdGVDYWNoZSkgeyR0ZW1wbGF0ZUNhY2hlLnB1dCgncGFnZXMvSG9tZS9Ib21lLmh0bWwnLFxuICAgICc8aDM+PGltZyBjbGFzcz1cImxvZ29cIiBzcmM9XCJpbWFnZXMvbG9nby90cmlza2VsX2lvdF9iemh4MjUwLnBuZ1wiIGFsdD1cIklvVC5iemggTG9nb1wiIHN0eWxlPVwiaGVpZ2h0OjE1MHB4XCI+IEFwcCBGcmFtZXdvcmsgQmluZGVyIFNpbXBsZSBDbGllbnQ8L2gzPjx0b2tlbi1yZWZyZXNoIGF1dG9sb2c9XCJ0cnVlXCI+PC90b2tlbi1yZWZyZXNoPjxkaXYgY2xhc3M9XCJidXR0b24tYm94IGJveC1jb250ZW50XCI+PHN1Ym1pdC1idXR0b24gY2xhc3M9XCJzZXNzaW9uLWJ1dHRvbiB7e2N0cmwuQVBJY3JlYXRlfX1cIiBpY29uPVwiZmktdW5sb2NrXCIgbGFiZWw9XCJPcGVuXCIgY2xpY2tlZD1cImN0cmwuT3BlblNlc3Npb25cIj48L3N1Ym1pdC1idXR0b24+PHN1Ym1pdC1idXR0b24gY2xhc3M9XCJzZXNzaW9uLWJ1dHRvbiB7e2N0cmwuQVBJY2hlY2t9fVwiIGljb249XCJmaS1jaGVja2JveFwiIGxhYmVsPVwiQ2hlY2tcIiBjbGlja2VkPVwiY3RybC5DaGVja1Nlc3Npb25cIj48L3N1Ym1pdC1idXR0b24+PHN1Ym1pdC1idXR0b24gY2xhc3M9XCJzZXNzaW9uLWJ1dHRvbiB7e2N0cmwuQVBJcmVmcmVzaH19XCIgaWNvbj1cImZpLWFycm93cy1jb21wcmVzc1wiIGxhYmVsPVwiUmVmcmVzaFwiIGNsaWNrZWQ9XCJjdHJsLlJlZnJlc2hTZXNzaW9uXCI+PC9zdWJtaXQtYnV0dG9uPjxzdWJtaXQtYnV0dG9uIGNsYXNzPVwic2Vzc2lvbi1idXR0b24ge3tjdHJsLkFQSXJlc2V0fX1cIiBpY29uPVwiZmktbG9ja1wiIGxhYmVsPVwiQ2xvc2VcIiBjbGlja2VkPVwiY3RybC5SZXNldFNlc3Npb25cIj48L3N1Ym1pdC1idXR0b24+PC9kaXY+PGRpdiBjbGFzcz1cIm1lc3NhZ2UtYm94IGJveC1jb250ZW50IHZlcnRpY2FsIGdyaWQtZnJhbWVcIj48ZGl2IGNsYXNzPVwicmVzcG9uc2VcIj48c3BhbiBjbGFzcz1cImdyaWQtY29udGVudCBub3Njcm9sbCByZXEge3tjdHJsLnN0YXR1c319XCI+cmVxPSB7e2N0cmwucmVxdWVzdH19PC9zcGFuPiA8c3BhbiBjbGFzcz1cImdyaWQtY29udGVudCBub3Njcm9sbCByZXMge3tjdHJsLnN0YXR1c319XCI+cmVzPSB7e2N0cmwucmVzcG9uc2V9fTwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJncmlkLWNvbnRlbnQgbm9zY3JvbGwgc3RhdHVzIHt7Y3RybC5zdGF0dXN9fVwiPnN0YXR1cz0ge3tjdHJsLmVycmNvZGV9fTwvc3Bhbj48L2Rpdj48L2Rpdj48bGluay1idXR0b24gaHJlZj1cInNhbXBsZVwiIGljb249XCJmaS1ob21lXCIgbGFiZWw9XCJzYW1wbGVcIj48L2xpbmstYnV0dG9uPicpO31dKTtcbn0pKCk7XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= diff --git a/afb-client/dist.prod/opa/images/appli/isnotvalid.png b/afb-client/dist.prod/opa/images/appli/isnotvalid.png new file mode 100644 index 0000000000000000000000000000000000000000..057c21502bbf57c5b99ee645d597031e411afb61 GIT binary patch literal 11124 zcmbt)bySpJyY?U{DGgF8ARwi5Bb@`%F^ot{58Z+&BHbX}%^(a70uo9y3_XB!j&y^> z8T_5|p7(s;_s?11Gi&X&WHzFh=7P*qe>1Ylrb0Pa43+gX4d01pQT z7Y7>;7Z>;beLQ?ZN@79+0zz6cauP~Lx<^cmbPNoSS)X$}X69yLV0b3_jQa(@kdV+L zc5!Jj0jcMLLi~4=VBEidpOAo%hM1U!{|Unr{{QuJ`yD`v2e<@WVq%a2?vY|(l49I; z1L)D4ymt>1z0-d^n7G(D827O7&~N1)05C8y?_u4;!NWp#qlchJV`5>G;yivKqh*Fm zM*f7)<$W9lGrw$Zbq9iyMcZ7?b)Sk_(83M2q@x?(d4QgT4vhtRg@0e-9ySIh77i}@ zr7(Ig_wE6(F>tVOFt9N1Hi3a&ffSqUZUr3l{AMl`=*hL;$8{itty{(h5bih1?4L>_A5QI=yW`>u z4s6sW2*vWeNv@{%ahHqf%aB7hfWa86_UfuvcC$o7?fqce0!f0a;scOg)jJIW2%p_W z&S1-HM!0|zG42;p0&~A@SHa5Fl6!!lM|l5_Mr61r9+TFy9psR>ZXeUB3qcr_sKs!U2{GZs{BnWwBN!8?kwupa+yT@VoU`=}x`mbU=CmBkh_ced#xA46K2uln-CxHf6i zE}5Z3BlJ1{Cu+pR9T@B7UyE~!0u)RJKT#1j?TKKR1C`3zz&bFKDv%Yh?8?+FV$1!{ z%eTFP+QiapOwCITyxk;vAGQxiv(#=Bbc{?5+)CU}Jjmdj(P~-Sm9#2t+b5Jd_$vd( zqaxvHMkbR24%($ zBJCtUw}u9HC zTuFzuP4w5Ibp0JFvT28FZUNO_tK%IjkpyxUIYn>jar5#0W5IF#ht4TJ?IOP81&ebANjWvq&fv-jh1-POP`0{W_BAWqa9y+g zJK~x1WJ@tl+OJdRUUunE(`<9ug1joIO3f8cxyn{92nyr01wq-NQ_oC|sbED?)fwWe zfeP?vT%qGN<>AXFb61+uqAl4OrYJGrL}Xg{(ukF!t57%%ub6%{5!( zkO=c~A+3Fx0P^(|7s7nYl&XBEuy!h2&`Ov@RSMDGyj{+twZ+qu1wVaP?)8i@d())e zZ>Q~#{7iX(&eO<)p4tWPWy+6iw9x!sOAAm84@f^X-nKt3XYGH|2QJnU##dAT*m;aX zD!F=baOninFymtktl=}_%pgkrX zSNm_XmB9tu|4w2eY z=$rEJO->D3X32H$W9Dp9s;{q~!gDNEx)|{v7%L}_S(Ufw!;+(^)i@h|iVzp)1#38K zi4}`gzu9iuq83USNu;7u&@u>5yK;e?SV#s}6;nMw&vyIi!XxNuy=1EVZhdBBpP<|^ zu?!9K8#K&YRQF5bL{Ti`${EK`^AulK^`XE1CQJ(>&#D5-hrxIAfbvmrv{W<#J;>0l zZ-*e6aJysU2{2yk1+_hpdsG_goGi25FB0QBA-2M^;UuK@Wp60}|8mDVYk@zV69X3s zSu_wx_<(vnC3a}hcy|1v3dl{rolI*=QQau|)$CEQXmAa!z-bgeR7C{nei*UPweVo2 zy}EujA#EUmF6ic-*|?W}q9q4ZY9nNM?(vGSmD-Vn>1N37Ke^;s7qu;a-KWb(NMR=(Q2#M{e(Cp_m~2D zq`H)9BQ+j+s$V-I@{39tJmjibk0N7)IK(sUjaX z%0;ex*Jv^G?&cu{$=Lp?ctSI}7p{dCz{c4f)^{kgsr-^hi=hDhdqqpposUQEXUvqxV*0~K)ffZ{Cj;n%_SX%5S2 zz-0!bB;92tVN2i>N#~krPR*zG+qxqSgD&0JU=DZ5D7_;|sUHKm?whqE_?Mq=0T~%K zSZ}H`#mQQ#OIJnWUgLZ8`X<0GPGllBGqWl?*I^Dk88dI0}b9^F!<0| zJrOBNjdpiQ`E&$y=q{$IOjt0)s&>=01u0ZQfg_ZTu zK!=SkT8YK4$=8fb$f+=>EknYtNM7t2L2Mny2vCU^ zp28441+@et2h6`Xy7}oux1l1*FNyJoGs0tRAY`eota%*LS>i!1^&+Z`U?Z&A+qA4b zXhDHN{!2deab+JeW;IarGq|z-a3CqmCVH`a^Q_vG>^deVO=dwNkn*iJ@a^tDxc*qE z9GTv(^P>Gs6!J0hNFo%DPoB+X5_LYV`X}G`(7z5+k+uQJf_YJ^@ej;tdZ=+Y)(42C z<(p8tY)6&LPAiO}kXBB%Ti0G2dyF#H;n%CDf1c1AaPBwGRbLcN3t>zy!||ElYM3h{F) zkB-GyTEK~hqn`3?1haH1m|}Ex_L)e`gGg%Dz@hX^1(+xY;p1p8*dKBY&-6nv8!m);>xDUMgN zF3Uz0okioWR=(KY_=G%)<_$eJ`IKTaL1#Co|2OxcB#9D+^=@$?q`jDc&v!cVZ}#FB z2eWl!47MkE=DxlYai|%pkkbihHNB!peVHAx=m|J~=ws?&7L~#v-7YLy*?7#%N)`q(cS7_Xx38Tx)J z4iz15Cus{+LQ|b-RwR0~n>nCu6@|-22f-dwR|EJov;+`D8!WjRMQ*!Qi41*NOE^YJpK8YOZ|JN z)LWdIW_c)-2P25mDbREm@t5>|qDhZWe7Hxr#4tchp!U?vE}t7BA<9A<`DJfe@nnf% z@7%LgfUJeoK)7EFH>&6N5qP?0Evr?Ndk2TNwdbt-TcG(ZKtD9(F6-D_2~rU!8nXax z`u9}w47b|-4$*L<@rjlia$3mJ6Fgi`w;A;YGp>-mICLq1uD6}3(1n(+A4i`NO_nI7 z!K=+uoR{|3q`ui;vL#yl<3 z0o|;w6^gGY_xCtC1g^5ZklkQp8V|Huh>|ZnP(IAC51%mh&`rK--!`Eb-zko&ppn$n zdz)Y2t;Xf%CrQ9^592)oBdY0Dhk@p!Bq(Cr3JxvzYKd?R*oXjYZ!Lm{#n1`r7Lr-EFOgK<0EGk&gSc~fZ&B)rZ zXFR1wCgtyZne<2Wgqnl1N}~s?-grMc!QbVZ(~&ZAbZYA7ZMLbl40`#12C87pJ@al! z9~`5A8SS@%dGx9pMU+XC)Z)raqVHd3vh|eLWgx>^dhDJ_Zh4{1Ru)b3iv=bm^gdoiD?q%) zlGD{U99aUcGl{>}!#I4-R40Wv<1w0FP)_+W_l(00G_~pIOZQq#g;ov{ctq31!e%SZ z_`95rGmtP`L-6~BL2IG=VJm?-{wG~|7PDUIU|0l@@d*UtYq=8K_aNxaqemsh(RqA5 zF)o|cd60~p(4Oxa$TC$)Z^)Ix|~?>QX)#Qk9RqB;hX` z4_zs!Qrt!%??@!Vc22ir$Nj>d^)M}?N(fKZD+tk3E|rPTR=Sd33t+r44^7{M#NV9;53s9)j6u15?njsn;J|vlSXA7)!6>*~IS|eZ|i7^2uvURHhtm{~7 zJLd^V+Ey&pez!0qN$o-{4{tPWH^N*g#CSFe7Oxn6_-A+45|bP~6gn$a(^3i6Vpki> z!c+#D{%<$|RV0#{5A=KaBRG7x_OObifAYLKe2(j%K^aZ0BH+DXn|li&WZgUlmvtZH z0$%E63B_}rcJvPJ_405nBr&EVW3G<=P(Y;{j`ZBN{k}P8)V=ZKFk_&RW*u)~h7b9> z2I_?Ny^p-oSK=9xz4j1vy=G*yrpjX8qa3h28)@zMv1+o{^l^CFID#dZ_Rc|VPl>kG zs1VZyi>y(*>DFFSN53y?1v-A7teF%!OmT7Z%|flv4i(mH(7RR`&Rrwh8`5?p`bFg) z171S*EOP_{3`|W`6!^DnBMYGeG$eI%mG*1w#d!-M2)%k%(YF_u^{}F5m~nV<)0pIZ zwL}t2!R+t3%MgkwJv&M$i%&9f&VSYe2mrzPDXk9gdy=NB{VCypw2X0YrfvaM`Xbrl z5}~yVSKim?0+(+&dG|*Q48!vYTF>;nScsJ(NjHxK8krbm@h!lG^_YW3`Dg`Jo^3I| za&^h|#cGI49&$+1=g!kx6o0-j_rsLOIt>%c<~Ivn)_Xgc@22O{ieI0bRPO|}sAsIK z47yT8tgMv!eq&z zFz-G(Mfk3G*`C;W&3kfZOdb{F~_U=lYq_hfb^oJ^XU=gPsc z&6ZIv%B9c*tlQpl)7!-Hb{6=+0gF2C^w|xN{CTijbg{$AEs!M8N(_ z8A*lf})-pNs|6%T;&8-tf)u%Mxn;dZy-e9Q8(;uv~%_ zQPbrIln#IJCmFRXQH6HjlAxD7zWN&~Q41J7-<&VGJ)s?$-a>yWzNn%6>+jolh(GYs zjlA@?DoXtlV4v+A{)OTF+^O+g^V^*$&Uw)+S=Su*JJ!LwM`IO{Cm@b02ya`Vnje4F zezU=|?cjK&EfMo@MYR@Hc)f6{(4(f^N@XqoHUIBT=6kRCgkp*oP4}wvrFFe?z0xEqjl6i@rU(%K###I% zi}5{|)|0RKUD>DT6RZY2`6|rDO&>~FQDOu0htCF%wWbKznPnRIE(m_Wa7g8a5loQ641S(V-pQbe2RvM<1C7&Z>T>i+6 zoaxgbdDr4rMHaBtJja`*$F@NNM=(#pgN)jP?TQ2-NkrlAgIS=^?j@eFf!Xl zI_=}kl+HT=>y5@l99T)c?(2--e!_I>r+;|7tW;u`*Y>lumLBwm5G+VnSGsY^K6%`SW6=)#0}n`As6=`<@Ew>-p5ei-9bD^gNwSPE?Kc)n1=7Us(t!n*v_7gqa&gZ}fJe}^=yX)1APRu}SH z!O}C+=#uiqcMNN&@}h59Jr8|-ZSrB0ULX0;&d|YCB=>{es4omexD#x?fsoh$?9rmA zfz-|O+2*0)`(LcO(j-~hP4juh^+xHUB%CaxSi86(chX7Q)>axibg@#Ov2WP4QUVmY zX1-pp5*-%7bgi0?ENuHca#BPO4^+B?@zwmxFe z7anOA!?uGf_sht_^2UgfEoxuB!BMR^X%qBZqi@B2+7%zBt*!JqgPt*s&FG1DxxJCX zeZT1QX?MfKM6LQXFl>|q>I^jn2_#bRGd-TMRhqv+AayNQ8}_>|aj_TsYoT=kDQBF^ zt_Gy2sW+dLNV}Fl(Qf7Er`5meopBlJ3DS-P34s0WK-M0o&2|J1aL7@k@Qg(N%wj%6 zQd}QwR$EXkGy~^D_ikMW15#(JKdPnkH)rL{&n%moA#6sgcZx_x_{xWU@RyPGsv{FO z4xRAPJ)Tg6-Sqxn%EQ4lm`*Qo-vQqT^sf8lZ7((60>G0kxo{$e3~7!POT~92U#z2! zCrF|e>lH=nz8^l;uB(i^v~mM-$RF3uTL;$)7J&?SEL}f#-gy}d#fgFwhskHja<4Yp z!g^dXS0t6To8Puh9``eHc3Pz1ERCABBT_Oe_pk%#tQ>~i{F_K{ZHUX(sW`Z^h5NcQ z`PU|+K*sjUjso-1(ywijO*^Bk9csgTukd&-83gj$iiB)rxrI zXZKx)$<@aqZvk(&%V4ga7v_GuL>+oA`ZH|WZ0%3;C%Ye)$`iNWM*)DVN zz=S@gWJ&41HlFyzzlHnFr7U{a_lX7(V!E@Hok!~MHPo*#h-8@b(dDzb<|eDb7RD*$ z)rq51m{fVgbmekj;)QD?D-&Bq-n>CST=gHr#lRR=mV2n!^=6_jncbA&Au<=jTH*8E zzBvZzZV>luGTh;YTwga~KJ9s3T^;3#tL}KeWzq&q_81I-ra;(m_+y~mzvTkN#%dW0B#Nw|X5QL$wH`zKMR4uib3}N(V zC2L=J@oE`&G6Y0AN9+VDFHdz$O7%f85i;pGeM*Y^NlOkOqQQ(usj1~Eh|_1yihM2o zG%J6Z>ec`gOH7Q9{vp`^hl12-&Th4=%s)odZ&=f5AX+@78?GQ}Kxv}B7kX(mlcJ?S zmwHtwN~RI`_yDY{yYVC`j&|>pfE%^!m;EI=cnvTxLcR)kC~`&>Ny@ zNzYmoz)a3VOTqcZCpUo$Q0XJzl=lnDXA!N+Ce!&hw04n|D0%$oKf_x*3+2ZN-&~{& z>f)-JhD88QS{}ZF{dSzr)eT0qU1r@UIif2rOtQ`8#b6`3)b5M3hwY`cN;rUN?2))v z>#7Izq-{p8X?{jF4KGspvNlXlrYC5{==V=)&Hr*OWz90v7|L@-`Biej=cO`ZfDzHv zoU<3HAB%(SW*T$eNBhT%2twcXv6Qkl6v)m}JlRgM*y1KH%o{xw*{UMaZS+4RcG}v- zpHG``k#gxi%Cg#hO>JS*IcJcObLTuB;SuA(1#r^89_#w%A-5hK)-PeY5yZ^jj5h5R z8nzWS++Wu2Y|vZ{fM*s5tBS6EvKAA~bFrUZ3dUQeRL>h5llovX9-qND_B8tCL0eDW z82e^T*@S?Xq3}Pk+h0+j8_`8BQsi!faapAs&dW~FS(Z1ph)iF`1+52yVJQ7qw&vI@ zZHBK(@4T#tUy7p#yO+f9YxhIOY=up0BjOkBjD{e;W6rtD&7`HogEpg#NyU!%4Td0X z-|*STR2w{o(0T*0Y@J&GX<*I=t^%{A%vDL%C0LJe;q(cOh}Mr7i5utX@rcZ)Zt=d@ z6m=s=(IzQta2xfe5-87VcZ2cSs?(dOF7Mg#vuE&!(RxG7-3P;*dxg7pf%v<|j~l_E z>36B)KWD+17&@ZB_E}~Mjco69(w`I(Pr$82RDB^gio+vcJ@+{MDebY7sN17_v~4A+4|w6LV4EL(KnExS2iB6EtMYR7ClH zje2~$>aV{2(_ogrXST$NtCWx|7_SzCWe8=hB5FT;%*1T>fP3H%mp8d|iPU{@)e5lq zLm@Z=2U|fs7y`s|Q@_Pv&M}(l4HJ{7pNU+c>-F>cmyB=MzhnHcb2;X+>$NWk>-zBN zhrPX$gLUEb+MC$UzNnD*RWOTGEc#w9S|pdin68Krd)A>hP6#X2pNHG^4?qbB*sMEP zcTvUg05dShX$?VW{U`B4!kTnT8`(Hpk?6UO0VI&C{uVkTO*w(TLiT}KXf|v877&+U z`RMYSA2dy5?kZmWoPCLJytns@ND4jk=&m`wr&=Uh^(Xy9BAbnyx%6yIV1=oJz@f&p6AB2%opv zzV^?ppk+DK(Q?ic-Eer*R1rW>F6)gh*CFP<0v+lsuwxl!X;HpO78-mpKbU_WXo!k8 z=t)wS+SE0kxr0N~5Xid(?_VkmcO*u>HtGWj3yaZX7CEQhPE-#Yra<{+zJ)<9_~xT1|WDn&|sQ5_Gl0Q><*U$yRiDoX;N3plc%4<^w&*mp&bd_{M!6aet~*H??)E z3<&mry2u4)4Qc#b)*>L0+*i92{|C`@Aw%>1v(K9|s3I zz@5t{yQ9rdrwVhK6k|pwNJGb!B`tP0DWlwf)_Pa$vc0o7U+CI&*r5T1AN}h>`oG8s zApQ|ob}o`(ggakvT#Cu?1kXKQ=bEwL77zvKIFGgme%a5~H!?f$&v+fSQSmccBu)yAP7(8rN zoK~qtPpZNR$EhytS)~{~R!kj!0ZK*By}YWAbOP{k1H(i+dM>=7`#)jee*a4G z2qpQ8?2%gcvye$~-gvt&LmqNo#EHH+rv&xi-YS*v`eY1?C-|;~b}`)oe1xqPr)TKs z9{!99!UXVSK1phAg(>d;!nmvK{NoV+jiu0i5+3@O#_OUv>krjr>#Ltw%%I% z12pJL1ss!FI@o|$cpPl|`Q}uF{T;DdjacrEpmZ8hK&{U$U=DgFav4C~K6#z6pKu}+ zIF7!c?Cdk&S4DwOro>)K*HudAy(89ac`R*PGNmlNk$o~L4An0TO literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/appli/istoobig.png b/afb-client/dist.prod/opa/images/appli/istoobig.png new file mode 100644 index 0000000000000000000000000000000000000000..c3b794be6882ddb64131edc0af24c431493c246c GIT binary patch literal 15144 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 LNkvXXu0mjf8ZJ0k literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/avatars/istoobig.jpg b/afb-client/dist.prod/opa/images/avatars/istoobig.jpg new file mode 100644 index 0000000000000000000000000000000000000000..da0f255a923b36eb143693f2db09b6385afd3487 GIT binary patch literal 7204 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 literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/avatars/istoobig.png b/afb-client/dist.prod/opa/images/avatars/istoobig.png new file mode 100644 index 0000000000000000000000000000000000000000..c3b794be6882ddb64131edc0af24c431493c246c GIT binary patch literal 15144 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 literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/avatars/tux-bzh.png b/afb-client/dist.prod/opa/images/avatars/tux-bzh.png new file mode 100644 index 0000000000000000000000000000000000000000..e2cd2625b088ecacca971761ea9b7302679ddd30 GIT binary patch literal 18451 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 JPDHLkV1mxkxtIU| literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/avatars/tux-visitor.png b/afb-client/dist.prod/opa/images/avatars/tux-visitor.png new file mode 100644 index 0000000000000000000000000000000000000000..05698222030535b981d87416ad8ab4a2ee458cb5 GIT binary patch literal 29307 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 literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/login/gh-logo.png b/afb-client/dist.prod/opa/images/login/gh-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0ecb071989d8c1f08a2a2678ee765516a520c06b GIT binary patch literal 2779 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 literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/login/iot-logo.png b/afb-client/dist.prod/opa/images/login/iot-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3fea4f817252e056280ffb02f16cb89b9eb02844 GIT binary patch literal 2349 zcmai!X;c!37RPatOdZp*#j-*tb15eawQOEirsj^zn38Vy@5kzQ6PS=iK|h_uSu?`{CYHCy14j!bt@H0H9=J zZQ-)#;Qz#deS2B&pQwaAlMOU;FarQ8vlO>{fP1}6q>I&UKw0OhSpZ-kz{%d#a`*pf zXJ_YsA)A|k>UK5bvKSe*5;# zU5_w5Gc6DZ+_dqFi;G1?MXRf;Q&UqF6%~_{le4q463N2E#Du3o;XPf#*w~n>7Ou6m zRVtN!ng1db3WtV=e*3v_d3kwmZmz$-|HFq53E}W&*BL#Ntn*qoWH83v4zAjYhLrtj726OG;=XBO_2Sv8lO<$K#ckmoF_Xg+d5< zC?t(W%gIILqw*UX>H}{RyusuGG_IqgqpPcHe0;pRx_WPEA7e5WS0L_~7KuduH}JXe z(%s!{0)c>rzk@lJF9%d1y(hsjYcz zTSCj}gt?KT9^jIn5CU$J5C}xc-^`3;RIv5mY)W5#7PpKTnMdn?5&Hk4RTHH`cdW*~9IEmRM*p=`{nFT01c| z(|dl`w0^}{joB2)si65IWj&0to(eIAG@%4(uut0O(opGOu8a^DnT zD_R?RJ_`CX!fF^)E=T;ltmSgLD#hjAR{0{L|tf(;&AUD;Ia?AjXpf$Va`Rwi$2Vxmf7I|u*( zsWuj7uGTG?s3-2~_f_h9gs2GPG93dB;)Axj2K!o$ik~@A-YxCefrAbo$DFXj5)Nmy z`WRlbvTf0`J`0AdYTD#MZjJdnAl9at8RqZ&Osyz>R zJqdA+wKN9mU5S0~)ORTi8rQcYCnuXnkDfxUjU@Hh^_9}cT%IQ?$ryxcF4_VBb39c_ za-zvN_7KHs@R9E|pkzIkxx8Nv;M^nGhjvEOe)-F=!6-H5Ey6P>Spw`okV<4{j4ttP zNwCNAx#p=4^32Xp`BJa?A3gXE1L|#)!S$$5*efI$rEA$#dXDwBNBU&fUlk7e19WbH4X*zj;7Vkj0gA*gJ`LX>R+Duj;EC z+^J6!e?8W0Z=ZVBHAC|T;&(xNQ=9Sd8hM8(lNwD8B=tr53dEE0>0^bzhY`*9(jTp)V zIMeyf8XD81n@AmpYY-DR^)+3K06&|y1k3K~mgmHGzJkUm z$jzCyosOJs{j*ccuL8T+ZnugChfvL4oqpE;8ZD)z#7AH{K_(_VaBVZbHWlK;Hf==e zhHHunD}JRYrow+orV0uoMR(V3F+vvP{$Q}Q(wFZBfxJzI)ykh~iXD0IvYz)@tn(_| zKnORuY~b`C9rJJEK%xB`8*Vjro%S5ag{Qz1y`bEe3_@5c@qA}l-4;`iX2p-~IjeB* z_|c;d*X13b`Gf`}ijp*t>-!IyT;O?%6qdHIm<>^G{wt%^&q$fDe3@>I^eZQa4tR%B zm43ihR7*#KqrZM#b<6bcU^TlH>O^vnF6;)UogMMoN_puj0()FDSrC@(Xm5N|Q}+LE zdCCZz$mU zzMjzc8c`%jdg$l($bU`C3y#vg;*b(KLoA(SIXJe#Fs6gRv^FN(;f|LXEKOKupBf5t zm)EngRa&;Fbc-#wi#TVf*N8D8HflVVF}Uom?gMkz*E~qB65oo@%NTEu_RZN+U1TGj z$GUU&6&!|tt&I>;TvTKWFAZ8#O6u+4Sw5nH3Uvssla@U?+M<%^D8CYMCQIj&;w2Gz z@d#bvsRsoU3~z`5ixhy+TX;|x%(U!D^EqAX49VxiRtvG-!&~X?Mw(`iddNE?RzSyV zBKzMDX@Ai&R8}_@e7YsnQS6hCO73p+5Q9`qve(bVszr0*be#@apJXy$*JLeYMNw_p zo2!ZReCTw-+Vsj#^#<9-H^PU+R?iI&SXk?|sb1fj5kLOZZwHv0wnk`8G%MJ9>i`=| Lh(+1$2k?IbZ8HNe literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/login/lk-logo.png b/afb-client/dist.prod/opa/images/login/lk-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..11ae02049136240b5ffd90eb21caeb5a5d0348b4 GIT binary patch literal 2511 zcmV;=2{87FP)Px&08mU+Mb6mZpVZ;K)Z9^Bl~HP%^Y-=%N0&@#amLTs z!`k2gBZ31fgbYxZ&*9<+G>O*Z>Md=lQgxP{&fS>D+W{d!Pd~i6@4n9B!Jh zz0la=<}#3~XN;x?LXtIQl3by(`u+U{JdJ9Ht@io)Zl}1JuFD=inWN$DPJgD++~7Wz ztQKI9F;1yOSD%^KF5hhuMShQ_V)G$IioJ0+W7eR2R)?_UAhQIs}Nwk4_deqXTkpd{uFA&=j7uQ zZp8^ott*+=-rU(SrQ9>C-xPDm+St_vHJ=hiE~y(o)3fHi^(@((XXI=1aimNUPpcv*DVlz8F!kCVa{je9Y0$%_or4J)7BR!RK1B z-*d_9DO0)b1EwxP+g#cAvOYip_7W-b97Vl;icS@|@oCmDTQ&z}Y*ulg^^n?}3z}g}UUI#^{Z@(@mSNO`+NfR=H=3wK8kFa<}7vqPQk$zLTN4 zPJqZfW4CCPrV(qsY^mCa!swjO>rRx@8)&e$z{HWJt5nJDgQ>e;hpbR_zDjwaB6zrH zz}m{n$v%0hZpY?mv&yNcri`n%I*7=Pm6mmytfjZXk+8xOdBbjppCD)_`214#KKf|>{{Hy>{{H?) zGyZ7)&HfMmj}_`;+VkQZ{`uUp)}*uk)tDi@^P?rb-~a#yDM>^@R7l5l)_Yh}br=Wm zbs1=aqkBO{rsgHPUmi9XIM^64#>Qn_9fNHS0htO2GH{JR5#=U?FcHFFCUL2xzyeZ; zTSR%I5Tyb{AjJE%+w=6kzjK)MJo$b2<2;=AbKZ0Id(VYo30Z7sJ^y}r@LuM#mSQ!- z(vrz~eZ`6g=sX60R34{t7;~KD&1G-cGLbN?U)%UTm5=CrO67Z!-!MOt9PVBD5)%mP zt$k3vk$*-6nNcvXVS~8e#A3Ff02Oyu2?4$BE$uZ1Nm=8&QnR$09B+h((fVf{iR0cNodl9*Vyb!!6F7bPbr*VGWO4YGYZAq{kWoVh*` z>Jvch+C@OkCNrQ(7^#n|Uk9ge23QXuJG*8RfIac?@rMp=-=36|L`WQf`uh6m8`rO= zUq-NX79=Csw1);sNx3aOK~|44tWVS<*fD**PA1F0av3_Lq@?T$38~G_jwS#E)aSN% z2YGn7dlIsPB(__vP;g}DGXbPfAbJ*Hy;o3BkcYdwI}iqv>gwurwTaEbS40(t&NV}5E>d96BARV1>kM&;i9wX`mDyr*zOEpU)ja0 za8gw_x@EY1W2V0|LoMcT#A;b*YdiKZlg7sI@K~8M{9@{>ZqfpId4>YE#TUmi)Cv=i z&*#C8i+2#XNRT{(00^wUh{w6*mX>zAT+I`S_$Gz3!o+8@*&-2}ZBmcf0Fh869EpD{ zu0G%SYMNFHgzw-Wf`dED@-xJ+#1101B7Z{SA`uEH0>B@M1CR@8+PtGj#Ds{)dizGM z8E+}j@YMUc5@Bg6A^s?6!nu$qms5nTI3A$v>#OJ~yU7>9F7a-zP+00n5s07PY!_HT znuyDz^pzDu$~7elHXd!a28826n)o5%Qv?R_XWZtgd!z0u^~zN4gqrNytpOoG@{}J4 zH@8?0`Tr3ZlVL*m>XIn;veYsacZ)CH7eGMJ#E%eC#yJ9WMG>BFi3gby?iLyOG5j(PlaJzFNHAkb-__n_ z+S3BptsK0YT82r56z4z>7(~aWroEV^4isGrSq$b9t6}O%9fYqB74=NS6%;yRaIRc& zL7YgsUR}yy+Syxqd7IxjscIYq%Xe2_o2+~48 z)f3Rw)%6Pb?6G9pEwQ(fh@%@7e$W002ovPDHLkV1o6~?VA7q literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/login/ms-logo.png b/afb-client/dist.prod/opa/images/login/ms-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..64cd877d1d44a29b84c4fcf113b168eedd5885fc GIT binary patch literal 3024 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 SQrs#40000sO+eX=)dEHzU0vLtS# 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 KMNUMnLSTa5Oo|i$ literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/login/yh-logo.png b/afb-client/dist.prod/opa/images/login/yh-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..40c314830374de6bed5ca3b5d330bb3bcb009595 GIT binary patch literal 3309 zcmc&$do>w~kWfrW?v-3(Fqm;0GsbO<`!!*NR78j{9CRE>iKq~{#Gz3x zxgH_vhgI(---5jAF4m>VcUT0ru+rW?$PoZP2+rZaM~V8<%SXvOmG2WdnBh;2~n60YAQO6Cq&? z_MQ?5-uOp@5eP}Lk3R)AI0TYkTKtX!`^$q=`9XrVf{vCjOj&Zp&z+wmO`~=a&KvJ` zcGvgF>cs|NV|mC?zx|=j<&?Vo#+-;eamaz`-nqM8Po_RjO}?A-5%HZL{+8;M@dIF3 z=pYw+mev+l!u8_5e)!^`jwuYi7knX%lH9&9H#_%zI$AI}_CO-Zi4WJXXXEvl@aC~Rufydva=##Bmg-l$V4-vtefs`f zl-yO~!4R@lW_NcFwQP>rNw<(kzk51B*q71BZHzjSBif1M7@b4k<1p8!UeW4{-}f)F zYG(oFPmX^0?E3l!hrU?c|Nfs2;J(=Z_u!0Ui?To<*n6b8DaNYTupq|%FkU>ZS1-TA z;Cb5nw&vy;=KMEG`fnDc*5Zyx8ReTwN(#eA1r+SnByKA~FZcCws3BsR z{t{(yFLG!vdw{s$_M*!Fsi$*7ZCgSu^ZY`GZis%Ein^+Xoyn2UBg$)0iv4h*vSpF& zD6_Y>@;3MLSl-l|VgcgKBFlHb!iJo75Y%VzB(}Z5QJAGKj zcfFPW#nngUk6((LF=NAzT)o(s4j`=}4|LRp5w7prxXHORANJuj=9v@r9x^77hc2br7rd7%G#j)9jxu{GTNj-2-yR~85k4gRJ@L2~8Hc67E5DQTj_nzoX7YIWMyOrtHXY3<8*uNPj zm?NbTp4Z4FCp9dNP5Ma|iOhdJ%$MAbg_G%46r)m1S6o}0e1k+i)C0*Qtv>QLrMN8M z{k^S7C34>LxgUbp{A&h3%^W8q^6YT}x+}pc=T>Xx#Ke_pY43c{rIl!vYNO(4wDqLZ z`4Wq&+B-Cvsp%Vk2%#RD9MrTvF+G)8XnE-xDWz>;??Mef z!xJ53oL8NSt%Q|RT-ErCJ$)Wv!>Ps{<mkNc)DWu}wdFEfra!5#4M0u|9 zZu*avv-D!s1svbI-paFf?LKXWFM30@dy4b^ueJ+2XdLlEB z0>YZY1Ac8EcQeRsYezo^uSRSaP2(vO%c}+BWpE6&X06?% zuY1r?+^@p0_s_)7h83Yyf)?pqchbGVn0Nk@z5WKYS75Q|6akwa&9 z9VJNV(mGGGL&(OKJb9UxkI{8dXu&{-xJ$>NRo?J z<<aaVvyHN(&PCqb+xvgTJfo@1~+4OGTP@rYz%Coz3bHFV4 zX8El*Mn#DgIfV)x8nqw-ywN4t9wQ2rh1l!qj4MTXX6V{7c5hWVrT-hRFx@ljiMj5f6mY`+aLQ)QUft zil$!w=y#$ps!~M0D1@*4Au2^v%-bk-+&BG5p)lv?et|@d1WnSnZc*NJQ}3lMH~wb? zd@3r38CRXh+TOI0jR{ayvewz#IvDT+H+fTfQacivcag9n>$MXmPZ%_V!i2?vXWx;FXOUP?tIyNWn@e? zY^`x`mVFhs%To~^=pR_RWsz(E@m5+7Xzi}>mli^t-k15ACZ^(PE~SjSeLKhUZN`iB z_?4J_;e)cb=e`RjEPYdL={8ZRP&2@S-`IR5iMa0Sx1P#F)}DgLL-%G44)`wM-$)$~ zelq#7MR{cAN`6-VU5r{X` zMw*Ur(^zy?HFbp=?TDe(wCN;9KOQ7SqiS5&4RyP^7x=ITrB(ej_z()pXzA0JBNUxc zsJp%>vk#KzcMMP{%EHt|N~4x@SL$!((I^5%Fyy?cm)Q-cbW5?RHL*MX={8mvoUWtx z4s~>F+zAENOElc6rjF$a$x^q3Pm)kgV{drzz6yhKvGdjiAW`4NgNZuN=1>NFth0$I e0}(3;5s;D6&wO{^moD6I83>6$n?JkYmGmDg2>NdT literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg b/afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg new file mode 100644 index 0000000..e37a9f3 --- /dev/null +++ b/afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg @@ -0,0 +1 @@ +IOTBZH \ No newline at end of file diff --git a/afb-client/dist.prod/opa/images/logo/logo_iot_bzhx350.png b/afb-client/dist.prod/opa/images/logo/logo_iot_bzhx350.png new file mode 100644 index 0000000000000000000000000000000000000000..2bee568032abc944ae4e35f6c0b4e34ebb2eff8e GIT binary patch literal 9416 zcmb`tb8uzB+b$X#6Wg{klO3Bowrz7yY;)p?H8Cf)ZQHhHf(g#P_jm7Cr@m9)e`nRI z?x&xA@w{DY)vDFiQOb(as7QoJ5D*ZkvN95?5D<`tU~Gf{4Q|u7jrhPFjFl)*6au0? z0r|}Y7CeS@QN#O&|tHF@YhNmV(>I4QjNOb7%L;zwda5`{yu#9g+=3E4NU>RcM9?UpO0wnfW zh*aQQU}Lasba-MQO%zx&I5<8sBN*T!(Nkgw36r_<5*mYRRA)#9uLe9ciXv?^SOyP) zAt4GY*hPjah!bBMtOTr_2}gkuTLBY+T!_>Wygmpp=wLH&`JDJV_$bWaWdu6{X`(4H z1c}i&z_S7*c3?Ab;kwKP+&p*W;K94Qs-hYM90C#yJS-#>Gzzf=9x5FbvN8G>02-nd zIsUr_N0*eT9oJVm3|uTRWlS||31(e3MEkWT6fV5 z9{Wxg{!x)sCEzy(Rh^HSdqKsgx1Gt?lj4`>oQB%9q|Mli@VO;_pPOw^bMJ85_1}Sl zpo`MVGDVa_I*P4p<<8q^*C+IjB{;&gZ6sssP_KE{GZ{0 z9NEtC!zT_kOnvns$0EPQgh1(r>g8d8xg>c%V2M({6Ge3;Rfr70SqcRX!wiRs)3Lk8 z!qW4Lwz%S+vw@Mbr7u1_B`G&Tzu`Fn1Oz#Rtc0jKX#FzN#u@8`V1(tOp}47PLYGX{ zL%YFV2a{>6fyUg%W37qBr~-YAca?TEFfJ~x4SvAc{JarcOgtYYQGw#n_=jb`f;h!l zl6eM0*n~-JXJ$e z$KpTD(n5^97Vd~EQ$qU4(C6*_{e44Zx>DZ9;rZpeTRN)&z{~RQxuB&XX-pW$G?XD+ zPPg0jb$J)M+WC&p-zlzPP-`_>~PDD-2Cn2d-$7NjvS``*|Z=~IK$|ErDtrAJu8`* zuEAT*&oh8u1()@sU4@7xRsyNWLYHP&?+X&P&#Y^RA!|56mHjiTrQtIO7=4{2Y#rbw zXwRE9FfEgbYXdXKg!C-f_ro?duS@P-c6&o)#rk3GcIiP5L7%IsKVl-`|vJzD)Gdqu^J4UC(;9O}=(D%I` z=koK<&FLg`bsW&2yJx*DUA9EEO`jE;%k6IM^3$xyVof2JLK9PZ+Nd?^GZ}Oz)~Zav zBvol4)}0ZB9Nu^MPgp3^LXHi6MZn61Yd%}P2J_&0+sLprQwG@0riIOjEO5lBjNa=V zH_#he8ygkFRi9lhO(5{DIuMN-f`Ae8;wzLqbZ|#1If5&J^V1>gE7=wzD&yRy!1iWb zngG6{fs(9DqyXjd?Yx(jkWUtU=S#m_4#}cq&lFs z@Q<7q4{CeEF)i9c; zLv;+u^*b|Kj5L9h-fU5(BJKwY-!Z|x`d7L?+Okyptn+f|mn!T8(VubO3TzS*6L>Jj zQF^=%)CGVg{JPn$__SZ4)CcZR9zBrBTBfKR@@VnwgdYGx-xBltSJnt0@SpAX)hRhp z7anw3w|-j~86^UDGEa3^^KcX>nsFyxlq0yu#9@rq81K`YtN|IZG@C$O9h?TOi?C-X zh8O*$IPr&9Ud}m$_3sr~mEoNIl|%MiYs?LwGnf}qc#43V#N>y`lsImre{SFT=uW{%Z3R~Ob56*=OHreJYZ7uG(l=CppMh7e8pARXdu8;jl$ z&5654m>zb1DbkB=M%Zf-XBxFmMdOWljm4ChJj~RuE~hiLGVjYkM&D11_*aovmBfDmawWL7On~`jX^%J68a^9fWRol}5MJQ3s8}x43>*Aiv zYxQta)E&D0ICQ1g2UOQYQV3Bv5I-Rc@WYotPi${1fgAT({&62$f^ho`0TbFdw5_US zm&8k&kWiA|6S^uXMQE;1a4N{SDP?SW;!EvU)$q_@sfOZQ3TyuxXarUMiuT$sds)vP zJX(#%bGOz0l-tj?hzLTN_y<{#+to?*8K0M?JbzM>G1y)HO&l>qN+I3g8epPu2^Qey zdX->r1O3{ab>end&40IM7rF6kUfntqUNg`ij-}u6wa4Bniq<%1mSnhp2oJh`yW4k) zCeLc2^No4at=}_O!bjd|G}eJ|>g?hPhb6OCL_Q!{ui(O?q*PZN;4e^mi zy=m3LbG$V%&Lw5z;k#7UI?EnA8CR+L)pG&QRg|2Jb>TTfKsCHozmF++X()&?i&ar# zAh{CxOZ6*6Hl6CnqfW!)PlfYWLyg0{h_PeO!g1J&S``60?N(2uo5fWr1+$K`EtBzr zN1T%h5x-NyUme^Dc1>5dPD+w?3gjX5oh;FgIGT^iEk}gbAQ}i1>lST$0UASsuqOhb zUu|0xL~5Uau%N2cU!A4ad!S$XLmi3ey4TBbf{MscKLEHtPu+X!hJo&+vj;`mpg#P1mP*+85{9p8Y<+Zkak@kC$&ku_)~-~fB=O3~W`13Br};Cf!XmsP}4 zaWiB>1ueah8Il1EOjkDI18T6g-Rjnb!JbTcTr=(30&GpQM)|lY6a(rFpsc1vjA1+v z-U%K8>kndGLnllpQ-P3I@vxb>UU?Q;+|Mcp+Re-Xek0mFgcKqi<))$Ho zex`PQ49fW9A-g3JG^Y~1lkj)wd zL?I98E}30}2Nw9h`SgCCG9!BC5A7Pg72*9I7>l=J_Jtvt_qIw{^SY;(C|bsx392;S zpp|jUNkCc3B2?YWh1%M3d>({kd0f_~)%VK2#J{in5rz=fcfhfgxrxKm zTVe=U)s<26+cLjVz9zg3Qf}!~nM-R14{;B_1gu9|3Y3@<&mekB(c776xg%a%w2G~+ z-)+$PThM8&rvXtd%lWi3+=Q57P>7J2H5hXJG#rUCV!?rlp`kGnY53~w_$sroNimW7 zp_JAdWq`8NWyWi5hw2LpciX-i&8_8g(-y#zgB4)uuHkpbm1kv9&hoXRmlg2u_a3&f zCtC7GuBq1#SMv0dM#E_0Yt363)psJKKkkpyf)!sPI? zmS#`nLbyyy4yDSd$AP`0Us{Zq`kV3(27j8BmAKH?lV#w6WWX;!1_sm?Uk978*x!=467~))2 zwvc>dL_sg?aAijat$1b@tfkOUM<1(Xw{KIcV}?GKPW(I*xPE@KbH;Yv2G?`uJ$o)>P+Q0eT)WI@d{+pq41QLN1jdywBPD_(mwIjh!P4H(xXO*u&Oyjabul+`bPt)TIwo+jTSAvn38f2hq81 zA*)+D>JDL+h+@H@45B?sCsRLbL*nMDJAHv}_cc(|%tkySgRI)L5$>P+?7R(EUMXxR zz@}_)eVKiDpWE!slPyKqJwx^-;iP1smkm0Y8QzOKPB$W(UVuI*#KVf5vio=o*E$Qv z=cnJ zUOq)+ApPFm|D=DrjPA;o^kP1h^rf0T?9w^8H><66357ZBqOqoUjjEIwFm7pCqZK5I zS(3^m^AJ0Kegfe{d_-2MTOdrqaW<``9c0h9{BlTe1kt@tK-$o`o7(k~MJI+jzEyCq zbD-s>zX~`v`hM{{IYR&TT5zCC{f7Bmh1`iD=*E1B-@(HxLcft79!HECOCF9g&7{yI zO&>#IBGz=`4N^;HiiNMlm4buNcbKW_V66(`4NhIy3k7Bx4;hihZq&1~do5ca{@ z3;h(cFo-Z!2p-fVr|`WguotE}&cen1ClVDr$F+Os-jSAngCDx7lCSh-#8-h#lY=PH z7y^2gL#f633C#D3ee$h7_9~87SV&I{=a&gMY%8PL4TlPs^ z-|_Wc%&iwL)Mtl;w&c9-;z7PYt5Q8no1ObQG9e6EgSutQ+tN_QBk?9|If9EcLlZhfGVY zcY8M|`4Q2aJa7PAHENRY=4(}XScU`M3K@`{G%ld_exzd8uu@c46?@;LC>eO#;1=^m z|Ec_RnR3L-8)r$)-*&UU9`XTxp9Cu2uOsSKSQARhG#`B~u6Go9!Cnp{#C81oDI#8K z{rMGk-btxcsBU~V%|qhcB6pT#yc3;Knm?98ZV;n9Amk z-MI^+7vm$+^RoJOVqaJfhc+K*b!m9@&s?Iy2L(bxzn~sE4D4=MW{Ojn(dUIz86H!C zN~*PQFnzSxrXp3`9L2FC1QG>U;OnQ3lElur=w6tM^3!-bD;zL#cx@M-87$2Kd?cxR2+*qFlwF4|E2S2=fKJPk588(x} z-PLdOLJK#?8(O4kDSm>RCnB5V@bUUT1^2zNcuIdKIiL*fUNz(=HgeK2@H0dq<@>O# zN#rV~)YijuO^TOQ2U*jrVJ1626~}@7<+uVs-7CQXXp!a`@Uw{75>$P$yANjW# zbaP^*k^O#)otIZoshpA;kJ{0=vD3>II&Dvs_k??Lq=RQ%NnOupF*L~jV>?(j7=S(( zh$Z1VFzlF8l~kkcef27zA@K4Ni;w|#rDY|0_nYx@M7RI;HMM2qADa%l1u@tmYZNpl(NL3En*gO)t zKtK{QoT=%_nRm>14qsg!WG&BecHE%Wlv{1K7*j{|FY>d1)w44WxNSkdzs?oR@Uv4) z^z0;50evnQaidu5pc4tJ(O-0-)?q&nLp8MDveC3qvtiYm2@|S@jCGMLqQkh%f}>cz z@-|__Y1L*R*8o^yLW|)PgKBq|5I_bQnVDNP8UitUD(u@ zBU1Y1y@~a=Pvs%K9*x-9B@N%lRINATjrY49rO$^c>90=yZjWQDkSqHk3Q2WeBGO|t zDP|3S_(S8AJvGPR7F5#G+ueUbHI?IT_1cU~wM&>Z!HS%`L;%5#CDC^+v;M{DOzI3K z_06eL#Iu@(;edwG$*NnQ(zl|Rm%Ha}u)*q!VPt+rG~K*Hk8P<{X@1h9^nwlV;<6{g zyIs{paqmC7c)KQTLvuN0t6xK&5U9lKt7J*!F`m$Mz;&cR0;XKl*I9ix6BidhXl_qM z{;9WFQ(!tHXA+t;YuWL?&OY`>j7TQe+CrcFqN+tcL*mUvJDvE`L?a>?b=1JK* zO?eDG{mnt3lQv#CpeFoz{^*E}^;^&1Zm%y}T8r5!bkFuFuEw$9n%;ZXj) zt4E{@F&a-GVk2A;rq+;Z$@gsY3tzy+c2NSUKj;oKed6fzU~e>Ny8E-qtGdrdUu(4! z0|5p~RHDx~6e37ef*c15IZ`W>L$*8?;ybgB8oxh%6w%BesU7h~)6sBL*7FkW!D7<} zt;+_rBEUgSX&vBKOj4TM4&1O=ICFn3$`P6$bDviXcuYU#^TKPC38c~ao9FtmTGZw9 zwCQxi=QGo_!`J!j&GF}Y0d-gK@#7!N>+keedDa8q?v^J?6=E76$rw#Bm4NlHea;A} z*;Dcl-g{zVxf;!D`OCF=`(O6$L~vM)1U`k#4XPv{96-dn$-7Qi5SPbexf-5Q_P4u9 zc{*YF#4NxkveL?m;uZ5sh}XkRz^i*^Z^pUg&L~KM6?A?@z9*F-|XhaL(?Mhy}-NwqC1&_O>c%TMHHu9K!IF(*24NVPr=6Ffvl!QqU#SsHJ33VF~uWr;p)(Xu&VWU-7*kLwO_> z*@&9E4hQrODIF7q=$Y$43c&_<4$?j6BO#mq_hhfU3S{T+Cq!ByeY@J-#Ww**^XR$Y zr&N!vEBt=hY7|lb<=?@cs&PL%_8)Bh@3YwZ?ENR##0X(x&^fek0oI!YlaH-t?S^ri z7_wPcFaGwCP^&E~kz?G6)VIT3XcxE26uZO{xg7TvjF;~H!SeW=8pe}MCZ#bOFs^o! z$;c`FAt49uNRY$Eqj*6Kcto5^_#q{?&&Jlq5Kp&=D*`Df>A^MG1*_F+Olv59N!n%Z zGBFG*=HK`-P?XwLWjOY3`&O(w=R@iKO?YiTKkBpeAGKL284}DS=s-!C^>XUWN5EsS z*L^8&Mknu7Gg^uG2gN7ec*^^arQ}YzG%CDVES^*W>O+*O`zBJnCgqXRNT}>)B%Bt@ z?Tx(`6JL~U?d=a=CpOR=-tUgNr~yq3wAQNtI)y#u%n>J&HZ6*_3^1;$b>d`~qwC#m z*PT2moVdJwe2(iAvI2DqM;*xgjTo5j9O6m3FJ`b~X-BBlB#{NV));rEpqt*u#iIp( zq76$oFkK(Gl{W#5ZD%$MbjCEKqvXWzj=yNAR6LGiHsGm^kY58ZfBSyH~Wwui>?njf!p3J67IEw26D&m-+!8 z%uCBv281y3;$^pvn3zVvL^eT%OXmJ++mdkH;7D7GT8#P@vd$ETBUr9KYz?__1wEDk z3oT`RD(aXUZC>B7cN9XD4?uwp7|y-J6Cg=R=wuGAWvg+vqSH@1`SgZO>#~X`6Mk5K z%6(q$>D7cEo+ETFT1sSjzLG+IMx+bYBJ4nT_&5B(?&*`jKSv^;5crFg>i*EAc|mOa z275BM5DIIfwe_-o2rD-ik$=HCsaG&l-%|pkzWk7pEj7HEpkvF3y*K@5RFZ^4OpuPK zA<+R$G!@+MHHZw2WOSDgBoJXlY=2C-*tGCZNP@5=bJXkjjK%RovKZUApwcvzD2fC~ zZz4HmZN5PEZV00`)Lb+ASh!%n*N-6KDWCr7V*mM5rM^pbYCs{Wc!gbmo=e*ozJKNS zo5xNt!^2SiZuR`6rPyUQyi4NLVLv2?wuU4WRg(J>wQJ*0V;x|1GTCLrblb#fuQU_q?b}}#bq2LYH7e{Ip6e({EXuY?@nr#0 zNdrcGg@hE(a>nD*;bu`1l)S`unw{{wOfXhd1KdG13gifXx0LuH9uKEEM7*d4i4!C! z)xU}eKn?I%{np{SKD+ekv#4+FbuQ7Y#i?P!Jd6J>TZ*N$^dMiFyywf*C+JceV5i z{;{@rZa5n%pde~{_kMT3x%mNDfhTtxcUZM?L0ihb%7FzqVNbE3-+qW zrw%o@h!2y$8&?@xhYR%I1!mPXs0hWTmtA4qC6VVk=aC7Qw}-GrY|SnvYEJ4P@EuUu zCkE2l4iR8Bkw!ANWRDor_q^q){74` zK+Ux#B&PEwivRKpYk+CQWNmvOL|J?qJx{hjRO|<@wJsIZVis_^hH*=R(buuQmD6_~ zHD+v$IKu)mR>91_L@K^)TBHAuRKwS0`@OG~%mddBqJN0tjO)JHNdP8Whq<2x+>c@p zs)SG?Xau~zJML&NRTQahYuFa#1&uY;;pNmn z8!{+-7Npgu@)nE5upS5Ka7)ksa0p=wmWs2~E@NiWrG@x@e>lc-IWv$kX@at7>YkpG z7iB48*WmKI(I$A(@J3Ta5L#tf6}}>h8Ywk+={ME2s}cPA)Yc=zFR)fcF~0q5KL+&0 zAe+j&g1urX*d3`4y!CGcwanr}iTs_vI z>b29mqyKL{ekZ^aPBkc46aC z7q`BiriFgR-(zpal+{sLh5@NeJKp>!i{{m|uAm9HY{eXb}!9S+|f8qZy|B?SR z|H1G7(fAMfzu^Ct{&(YlQTYFb{1@2&qo3gaXAl1u0sQwI{-4_ZCk6kfR{ux(uK)W9 z`IpMj|4I6vQDpzuO88Hf|9h$YColhD{=@%0-su0y{6A5J{7=&VU7Y{SgZ}kGX30GP z1O#;8sw}SpRPhTM7_1xw7#tD?v=X)q4gvwO4!yns<#!`|X#i3hR*7e=H;!*rva^?8 zu)iBBfk%2~Okf74PgItBHI$`Il6;M;6_c%t19@~%h*P8%b+#I)CP^F>1BC=Gks%-= zhc=OnD>lqJffB<&q?m`sE|-u+w>ey)P!!ExR)*6|%27FwJ~fnISdvXq10r6415b!p zN!-|+wMCk_C|?X;kkLdZMc;@|j#M36uK?84LWNtKy-gJgjF+w*xfK`<85si}8)=(v zju@|F0CaTq{CFCQZfNpquX|&$^S)07QlJb$AqfbG5J*Z?NY!)Wa??gZdma1NEtF(? zC?P=9L{xYkd%-bo1xruOqjL8LyR>tt=tZ~#YAo~ z=~3+in0NQcmYa*Bgd)Smd;@-tzb~z~fBL=7;;JRL=j|Bd-`xJ+9j_{h^_Z$e*m~iE zhDMCY)a;+6L4xLxuM2G}SUL8i)~%QoZJ3zZoHMY&{V3xc^1l~|{b;n2Ya&N^_#$@< zrKF_hj-BbKPhv%ty@^mwa0iU;$~OmDn5Qih*rG%WOZufwCtW-o90xr-Jvq-F-pDU| zpce%U&dfm$J5#`44i46`-7+AFM!7kWBR%CxO6RjbH}0-dI=I3%^;Z>xEiEl?y+z#0 zdiTt_a&*~74RqQm z6K*}n*NAM-H*{F=JmbG#4v49ozAhw|ceqPP^%W9z_zCVeVC4DDa7CsMVt8%El5sn(bVApkf+NZ`cW3C(VlbCFwjGt|1Xi*$atN;=vEdZIc*Rsf zRhpXwuA)_HivKxl30{2e6u*g?a7X~uN1kvo`*JjnJI;7&d-FoL@=DV$aA_m(Rf#@o zWYTZ={NCXTFYFR#)9+A*!6Ti+)RnZwd&>jU>M}-hzjeWo?rX@|Cm?o=A|PK^4?70r zIM%ZB#nn%4c7m?`V**c9-Tb;onY4X6zOHz<#nJSH<(!Jc6eRaCCh{uI8`$(J$R`Ds zORTHCKeuSSxvHv4ro>gP%~)IWak(7f^ShAQ$=ur-yp32ON=4h zHCw_NJ{)RT8@9Ius7Q-4+U6THS8D;qOOkO%qTXz~I+(!m72>+Eeq8^_T`a zf{ks~7qU9HhRV9$SAA#6@i`<18(-826^y_pj2tbsYz{G39-X7|yeBd`4g&{a^}>E5 zazLRNveXr5hLNh3LaZwbcii?$9Rqz5Z)eqcE&Z%WvWLz6jcICX&3bpQ*kV-gokCAd z73+Z=^EWO|T2jv3r829r|LxiiMG+Nj=Y0<9`Ww&XPOPIEa9dYNNmp05m9=$cMFmxz zckuzd%of@;r*AEaAM4c3z2$fUow99vyFroTV@jg@27;#T>(P-ZY9_VfL~5)o*$#Yw zhLt(@%lS}i#mdUcbE~zSwZFgjZ_V})Td8ic(q1*K!)n6gci0HHG{dY%)22T)8$UwM zGUD5Xi?z|dE_p?(_6Qpyv!oelk~J;-Gcz;(TN{s#qGUWrDqb>ab}#I&Tv`>nrZ{iSoi%JcJ|xNxDhM4JFVZq2 zdNxEOvUWvgS{*)8B!&LvTl{%rJhl0}z#Obe@^681mav`r1akMqFCWR&BRTQKFV3Y#oQ2CDH9E)q(iFwx%lXYnPL`U_H zD>Q#=R>USrU2HreR3iV$R^3@t6j+j?{LtgM(0bsjzP;6YE>C{p$Zh8>@Qtf*_Lb9v z8rF8Kr>2+`m57j$y2p;HioS=nz1CXYDuHL28q-I{kWY=qfFuC2;sWQm_JWgBs&D0u z=6*v*XHz)}p)BlmW|eBntI1x-Y4Ag5WwE%J!QiRgvbqTdx!{)(-g>>>h(BFEtAm<2 zK0wxK8JN4^d$&lkv*b(s?Hb8=ynEYhd4`tyeYUGtMFvDPy|mYWFvbf3q{YR%jqjeb zxTHPlWqX#L6PElhj){dFNM*S>ZS3lZ#%CPQHCJWIa@Yu(IM(N^rC5@3hQrp^%ZDOaYQ zc8!Ll7FkxPn0g`g<@CjeO?tBJGSj~*z2dq!`%0iyoil{!Q~H*vAaHE)ehuPJ2&$dA zkq+`lXin`r!k-jL2+^UUqoH|O6j88v4X~rWAm!r0yR9UJ{NIa~~*2gcnHH(~4g>PZnoc`@00T%TmXw>bW;(Xp+jKp7u;vXQd?(P5Y z?)UfhJ{rT)(gFtu@3Uxsj+4}M_B+}}YS_VLb4Y15?$KvZT@~+Zbm!Ta$GX95^;WRS zr5}|E5&YTH7!I~hYQ8j>%05@o*1{g$M01SL(L$3!bSe}g#vCp;M72djLmB~Ri`;`~ zHx#9N5ltB7vtBAUW3@tI#V&~{Dlwr}Td%6>s_c7uk@}%9RXspS)A`E35&j#FM6^jSjD8 z0z*6`6onwMKnT@bt#a*W%=)3Zu2%UI;tO==2t(jP^m3eZeU0mb=a}xZ+mVyLAnC;m zKepDoN+S6?(%SoJ;Fv-O!y*>pEywo>F^l**MUoVn(OV7bvh@SQ1N6JLR;FLbR9_G^ zRnS^NWBr^KT}CrR1oOL51(L8<{t)S%H&vnI15Q3~x%+bMMn^%dSgItDD6Zp4bXX`d zbMR~3%tR?Mb&EE5bJ%QpdfG9oFZ|CjNMhnndxIm)kf@g)ULYhTx^QGN&T6d|@m(hF zGBq2Ct-H6kw*@`E(YYc;VEQ`X$7JxLbzhM~f-`*#2l}U0;?``vTooj|^mssv8-dCi zI^||z#kzYwf8Mfw`r93mXk?I9M!1hzT@$jOsqx{>8c}UFi~w(^pO~rl5av_xQ5qIU zaLV8VlpsVT(5UR4!S{qDx!J7aqx4f9o#EljgD)ryHb=fpm72;2IE4upA3^Czz8!i9 zI~B!_^^!GT{6?y2r?aei?+dz9Srt({_ahg@Qyr{G-@tVC6O1}V&|gC>VC zFc8>6bNN)-b36=+a56;Ve9CpN;Fe$h0~VxtjZqXymu*Uh^2LmAea2STdR(CHnCqYh zmjUlzn!WhKx}$%{@2+R=eK;i2HHVXa1RmHD_FPVWTCOMxNIK;}F{c*^GyD!*k~NKG zb6xMw(#mly3!$+^+c4i|&BHbgw({&ZrfIXq4e2HPOsvXB;=@otg+D(@M0R1tJz8A*0PgY${$=PE zvxrs4&K|p=>6vuXuwMiv^H`8f-b@$ey0tU0QHW7zxZ9=cwkwIjLB7Fzd$jugNc{NN z@4zAtCy1%e{MF8|<=y+;&O6Wn>@sE8G2$o!NWa|G!Dw(MI$4Bg$y+g7Fsnmg^u9fl zLus?JlLRo(C7MR1qY#crxPv;`8`Lxz_!b z21k5wlDK@jG1bhY-pBzYyQVSVV}OQF`6RG!ve3Y@MKX!JrCMy{^CNZG-`$19cqTQM zzAnQkaLk5qDNnZ5$oPEtY4b$hpea_kDuL0Ic{aWm*$t|*`vmS^cvJQT-BPJ^0f(+@ z+D?qu2p^MIIz;=)%Uksy=_(@!jt{0(Ipj_cuop3|D&c`Zi~m)vbW&`ym)P8SuE(Yg zH#~SFzOFiV^w9#-ca1%OfNjpzLAMTavwQQ_TNbmbZW*phY|43aGPsRA_C;1Zv~dM! z2hW;nH2=P$I`Pc~S8tzj6f0VV7crRm<@-4q@2_s0c^F8M*O{6Al@tnZTb(XFp5oL> z4h7BwSRE$ z;dynkiR;)OkCc?Fw^T6`A>o|K5h$=0H#C^RaUH|B*FAt_6a|17jw$W3xEL>rJrlxs ztagGBk~&^PNkk5D33<;sSj?yhpqH*!yo{!Xp@eyLm`$!w9hX;u%8hA4O)?UxT1Hp* zRnOu;6rDsq4{>B&>BXgZFyjulBT%$5UQ!RCCDUI9goqx!Z$;oXI)?FRVQW18Hq_av$}E z>6L7HTy|_}3KGjTPMtY<$VjWwx&-j@8axFGIR~u^MoNE?OM3Zx?Tcx2izFsNo@8a1 zKGUO*Ef@ky=p1l=A!EH)w|>5cECyAB6Wbsp$bnT+-uhcFR9y35O(`CIf$<}m`Gyc= zp9HFYy)QxSj+L7U8UK;MFcYuWG30%(~7PIeUF|Hf$TI@tE+Ov72H($RR`#n#c2AEUV6mB+k!0dBsQ%`~*|0 z&D|NYmKbpPqxv9;HQ1Jn1RfTcRgl7n3hAD&_~GkCB!U$e;`as}M8a~CKq1uT4&&4o zAz>>0{&^2Rj@fh^_B&)h+k1AZX$d1u;*j~ekt~R}X^~1Q9wE&yS2c=KlO2jm=1xPD zb3yu*@;s03UKw9-OgU;J5%T33-T4)+r|T+C&!T9w7>t2%^H=0MB5T*UeOXpuEbnNV z8xU_UhS_Q|N}b*ToP~yQ+ocM8D-x^{TdrC%4MCivi<-riFeA?1L`pCmWhE=K-+S5!>C&qMGcCWF4gSd% zrI%_X`}-H7s;K($0SJ`{q(t@Ba8zWJ9sf!cXPBh| z%fu=<`;U8coHDh9WoFd{{2 z4m6&WQ1bShpwIS1K6VV20W4we1O(f8GKF)@E4KdGoq=J`ex zK}N&OV0oUXWY}?hYjkBk- z8LohLQhO;tRBv~HD(N3 z9%1NeRWoCz_jcqD^?Mk&Dk{Za#cr@@GrE3DP6G$d(@L~!SSyg-noHi;dPpvI>PYS= zt8g4Am#{0t0=mDf{%I>E$Ut1#kEF%&qxzsiO2@aoaX4?*ufpI+j-y>`cG@(1NMK$~ z$rA&sMJCBzT!xA;LecO%Y;|vQZ*;_w)^0P!mC&YCG83JcSXO)xtm!UP@Q(JGowv3g zI&tjwq4ABzJMw}mVotqB$ut&m1+t>OI`T~5M%l zijkarSCr%!Z+k=Gk7ysuM;WTBPrSDsKQ}PEoUz=vL|+wP1jBI*=cqhkiw}fN{&L$Z zyfdC{KwitiSLOF5Uesjl7GvqVULZS}m@%c3SM9xD7AVek%B4gO=9TE->Is2sOZ(iQ z=n_PSbnh=cBO6^kv|#SG2l5Af+_s91xR*PSU!~Kpm!aY+e>w9h7cOrZ@Oe){s8ik( zV5n5#!8!`rZA<6)fx&`bHK=r2UK;J08mLj|Q4%HYIxn4W&y2#N7rAfJtPnjB5yjTq z!V!(->EILKirhjF<98;TBnwk{hwGYpaCx6DVFk|?6HYE)Zf@R>qB#z8b8|a@PkVoh zRxtqW)==F!XhzFF6<+O^EAcvi9VfDJ1QeRt2Wtsi4R%=r6{Nv`u?$QcK@#&B|JbmY z6r4GsAYi^G=jn9>q2cj>Ny<6dT8ib2 z+SO*RHk!}tvxM%98e-_}308i{rDPeO!;B|qGBmc&0~>zU-Ba#`79@hJiwjTx#kst) zM8He(*^||KX48Hi6d=jW$}qR`qMnTFoOlCBAs{LW<9+$4%szJRwB{L--ojD}3bMc* zZ17A5m^!4;69W?T7i!?|vYU;pRgeup!7vj0XZ{u~M-6Czx}G(OE#YSh@-4GDV$Y`mX|yt!rV0lg^&gn^Wm8~_;8*gqI?pju?cq&S6-$= zr4fK8YE}mh4ish}q~tz07|8w(fd&(*-io@7vtSk+zbJv^5+519+ziwM){bBXLhM7>Jco4=5Me>x|7`2!~t3TYSWijb7j!elBKT@ zHSyOuo-mMR4(ZrvK>bJf4p-N34j=60p>9D!+)c?Y^}o zqu19<%v0uy3XPh(Ez2Q#&t3iiqw2ryQxF!*Lzv`D5ceuk!0q;STs0Co|M0+cm#9BYv^FcEnpAiAkx zA@}zAzl@3I-3hq#$kWEwpy|25p{l2}Lm7%h=wax?+|9$g)GuV#5-&{<(<40FPXQxt zM$P31om;p@V(QP#W-GT_(WNqphD&`CAi^Q9ci&1Pf(3|>_sC3qq7I6LfS|D@2i<8s zlV5VYKvlLrVwOa4ZxB{kVERZd`yN*V;S1CSj>w&{vy-C4?pw3N21oJ!oYt(_*Er2s z>Q(Ia(3fnxT~y{PYr(OBK+^nQ+Lem2e`vJIcI|7<8GG+ zv%LfL2Uh)-9oJ%FI8RLGg1ApMu!1R1-yc37Zm=N6WE<#yME-q{EUeAHy$sV|?&&u3 z*!Xz)IqEv*hy(d+cp-gM>9Y7tX0%MtXoRbE!* zW8akqE1T6o2jx{SO=+5Q zIu~DJU7UWp2(WnrxM4^m=B1Qa<6XCeM2n7KCZTv-;FvMre2ZF?F`NS?-r^Z0oHcJ=Z^;2NAceyX4USY}B@mi=7&vL4zAn>!;bg&UT#@(AOhiyc7* z?}YQa@0RIcc69vLyBqiE$TACdiM=1 zh8m;?a8zq?y$fQypN-_O=Zp_>wA6jHY{5B!B?wz6$g}BZD5Fe^&!Z=xEV$O3H%Jsh zt495qJ>`$_r_W7(kNXj@Nm+`2b^X(Ww18uqXix!NvH$f!LI4`1;)=R-lGqow}O)mDR=KCru-Bc&pa#*HI4UC=xS? zIUfiyKz0BU`GJiV^MM`h6qSk2+D>Fy6)t`#3@g8d$;M>WRvw{5vB;#V!M&VUDlijv zB!ES4tsQeNJD=gW&^Fl!EyI~R<}%auIrA|y;v~~~S#M_Jp_f)Q=9HP!SqSUkU5|+% zs2z@}@9w@2rwVDncc(){@|x0<*B~>!de*ncal?(^>1nR0I?3JA+es4x>43L|<{e^o z+OVcEF?@GRq~`h&Xy`dbb^MuSlLZmv17FBuCUQ2*@1C{Rbc$v-A)Y6`+D#=gph>E)UyGc2blW`=g%WkEgO5Ze||&%SiN zv|V~_BMxXAgU6gZ;$RAb_~2)C1Bj3nmLJ_^na>n5&Yr_5g^FO`?pmZH<1wI*ZJS3-1aj)@n1&$aULcHG6X!rfg zGJyk^hUdQ1yUlfXDYl)Un&XEu6>~+|(_)XV#>VRs@x`*%%jf@Pe0)1W#2ggeIOM_> z_Gg?s>?Mb(!^Yxt&vD@7(<@3uM4XzhZSQ5CN4e+)R&dAu-M7;W?O>&R0)F>%b`xPX z_R&{TiT)f#A}9Caa?3RLy?eYKqv}qh-eaMW^ye-~2Q|hoA2){3&kFDS`bhUU!+w!mZLCKWTYyy9~v zeU~j%ET?29mc4*i?N7!SO7tLOKB}uVF-0nDCz<=@Toj%oUD%)Gbb&$^SwFYFXaNL?cy&;V27r!pOUAFIi@RSlx zK-h%~x${o}{!rSf;9K3>DM;~40h0ucCyS*nor_%Ff9kyH>1IFqy2ovs&L|wbK|HB? zgi?IQrGE49E8UyQEN?QwNP=_u)S5V@tn0FDhLn2sBNa9h)TZTlM*x}tNFa=$-B$u8 zy;W2nY-Gs&O>(#60@uSqy!~Bi_VgJId*o8i$54BaX>E0SxDf4CaPmvb(j14cuZ1+u z{SIn`F~7e__8@@gpDwy3PH^!{zND>z*C6lIs0yb0)jvc&at0UDrn!QqUeNft3`qd~ zcim*bE!$KZn0y@8JLL1@qRvhNYwP6W`c5)}5H6N0Pi!izEIOkA*Su1({*+?x0Xp#f zSOg}H)138RO5sALd<5H zGZ-G>GdVMMj}^zaP)(?Oiki?)rx|0j7^PLA#RRulbSE6Dsc#~@G5_vo=)}DTIrim; z@*AIMX4X==6N&`2rU!MCEhH%GL-wrL_F)P6;=tr4maXgQe$vrzK3(m^J&t3j!L5kc z%XZndZY-YDGUAcX#k9yXzm`4LMmWV>GgS}vRm?#2M1KL!uyU~S@3E0?l}~J}pNy=P zBK1cEUbR%H~*wJo+xw_y;n=ATznYyXlQdS$1s!~ zWUVA?_Hb%3pB)EL=V=8CyQ(6=12t?y_5Pu*wE=P+(Pq*{M?z$y&DAesVBX zCa`IkD}4AqAYZvYW$nsxI#77++($Gxh6{xL^L#YH2#nn`Vaz(%Cmcbec278O12)de zCnCUl(=!I$Ooqa7OqyutFy58K^Hd@t>-!kp_FFfOD} zm&@l{(3d;>w3XEfs4&Pw(rzeX)q_%XB~THwq1T<58!u$7)@1 z`TImT@K%(A`q?MI9Xtl2qmB<0hlrjg@QLi`8jRR(wI0?n>2D3UEF++L7Hb`?byLJs z1{XX_y4&F0@y(JOz7k(Dplw=KPH%)8Lc7ZE{MU^VpOU)1s~7c`G~JFgVcx{;LU=3s z4YLNU3Z#S0i&KuqB#z&5v|ZVVZe0f(y9=rxkp*;U1Y(DM#TO-4bpMLM!eDD0LJH`P zhEM%8-}s|@8K6in@m7-#(b7Qqy^(e^4By{x<<1rqLWne7(#l7y0dl{s6FMSz&5 zyAvG1h^z!8GFB8%eC|Gouv`dlK!+4NdcK@Qe-x%1RY)nK@UD^j4!c`a{jfyVN-Ieg znI@$oQ=vTK)zTwREBy^WP#uh zr#J&idC{J&BPW)Kc4NHdPI{ zoSkKa?mqQTp)(xYU9y;)9L!1lQdYee&zS6w*LBOkJG@}^`63(OM`so8HKo6f*963W zkkfAR*9~B({Ha**owwaW+;XvK;JAck$a8QL3U17USoIL##0+g{xf;);?Y4`uLQ+BU z)HKpjrbrSMB=+IU&+vuC{sz4Rf}97+)uk>MidWNVSw55xi-F8A1NZbZC(Ya2M>h#*(og>rvGHmle12LGHF;XtAj^`_PsjP4jvhG zo5N^E67A&N?EmY5#Sl|mie`!@e3xVPr01w_-@q_$Mt(e;I5U9wA~P|Y&a{P3rHUeP z@}sDTrS_VFjY1nY(hv}6wi4}7N)>yWDy~26E7f_K%y=(#SK9FVUzzJevuqx0BHj!85vPjON!3yG+>mw9P3EgIxs{e_CQ%qZ zy`PM$Ga&*1<8~{({Swd`v1Um?%+Qk^ipH!uk{kEVbH(nnvK;}aVL!lr8!H;=JO z{J21sNYrO7wIt?K6GC~Mhtd$wYpw_SNTAk2BDNIBbAY6oZfni^=*)UYK7Hf=v%|+m zCH!b%Yq84+4my1N6v#eA3470+O57~4QRj+U=izgCr{}NlE8wuDqnw9tyijNkQJ2BMCWzRH!Z83k<+f;p z$QWwb?|s3_{1FU(Lqn;5I+N{52<7WvA=WdtMi~gcOjb+uP?-Oz#emOpb(T4`LmsGNF&n-(O}-aHG0yQtc2Vk5R})5E?_} z)LY5Nd|Ck7XJlS}w{7kU_f>Jog~9Rfc}XW;4x6K{joF}iVVcOzkFmFW{h~gP?Va|W zb$iPQtF#)moF=PVCp|q^ockG0srLRrQ-AH%SqV=Jg=GLvXqIU(1A_vvUbm*}#;(6o zWikRps%Icd-KbriWYfA5->M#nH~=7A?{joMcnOJQlk)C=rmn057#9w`bHTM7&RpYs zl=SSkO(ZCTq5!i!sTHMxKFJ<}B}Z|>WDg;C61*mDl$4iKf4mZBs&&0y z%qOM6b47g`#<)c+@!cWGRvS#&sccNatyKXN-g4f4!@RF@>XlsbE5`^%W6qVJhW>IG=DJZ|)opB+jX2{tEqeqL$(v!+$Yh@u6c z*jQ)EQknqrS*NB7+#y2;GaNi5l4(5e9f2LI-nUe>ajkDVUWGZG@TZXzIM9Bx%b;+E zqbx6=pAmn8&T801o{8n1tY4awZlxalSVR&6)HIkHW?5d^#y^wE~0^K;g^3K2md1XjCFMh{|X zrKamF1qtqrCD#^^?;TR3`{c-#4XvEgP<2rk@KK=oc8}~myvDb+Gp^(X)@eRP>3w*!A&v47TBpXYQ->z@j z!W)<@>3d|fAIsJD3NRC80zm^;>U5xd`W}#TVsy-;ryqtoe~Ri{BFk5R zN8vgAI{B)Xj(2GB?lO8FOQk?G(KhoqCWh$_jGXF3B&#?1p!B@$L&fK~B5y+m)#?CZ zh$@kp`l431qwXvG#DYzfBlC2@rE0%h?(Q1QiAHFl5>BRS18o;&Zht}fHsC!xW;c|% zqDPb#GmQYAlpyi>JFL^jPx?ak(4qY?8x%Ge5u3851+^NpV{Np&B@k7#8%OZCkQrhr zA6<{NQyi&9v|C(Ju}UY%sb@5%O}=QNfmcGZ1edVDQTXWH3&RVl6bj zcp8m##M}(h8;yiGM#zsYqXh+>ljpfjRysxWe`4M zTqPL;%Ir~zlXBvxwEMFLl_q2qW5|sbqyA9nlm_{z4+bf4m;i}ays7?$A&_r7sam^l z>f-Osz5}Ha@wn}Tmh2JEQRQTGX~atXKphly*PpnhA!Aa`7}N z=?>Xs0e3)FUpI$I#3;(&&`zy=B8iV`l(`OTSCZZD`utKouZAPUS>=8PJ?QVrYAY+>C=ziF^;tXK1c`9IqW33uX`i4*M+PV8_9v)I| zg^(Dyh46!O-FC0xz~CW4*OZf(oMZ>{MQOCcvB?ARD~Yo-)U!X>*oceK#8as z_X7D{%OaxR!=$8fX)1_h1AgoL;VfCZtm*d>JHlw*Ipap7&*b=u9D^U}j0i_xXD6_u zB(~WpJTwi_q6P3cR#{>_ql-q(>%-rB(D;nMuEmPCM8vo|?FUD9tkr)M@%v-S@}zo; z9_esjS%$RI23WG^<`Gz^B(PSR@V*NISWz*mW`adU1CYT8sqsm^^f&sx#KlM00nM3{ znVOM$Z$zW49O0`%F#LMMW|y`Jz!t4cg^OW}MP`qJlYxN(BwzyQ*?&MyFP)cbrh#1^ zz@Jlf^=TPNXP$aSR1iVMALE!r0Nu`K!^}pY z`5-a7D*8HcU7rIcQ=zOo`28a@89(q9TOC)-!8w~eFEs00>2Uvz7K$~55l*|Bykhy486lCpWU#nbm>e4CaLzz`a}rFf^u_rKfzDpkU{M7T#M1 z*RYB!Af48an&TKR>EIwG_W!bPFfujMwK%lRQ?0Oy5d0<{<6r(aWe6i&*a6r2) zsYOHrx|Hg5WT1!8V8PLfinww_B##uD+RWFYr9jhj^{M2!m|g=(g5T!zxfJRUF;Xqn zlXN)#=da)V(p}@Gy;$Z2ICHi=&6<{TbM$SH=_+}Vk7QA;gU)W}1_#n_jyD%j631m= z$KQiWdaoP6oRe$OBy=_3m-E=8Xoz;}%s(ehRFVeC&*EiWh$XDvTm+>A+~U)(6@A*U ziO4Fy$;a#_^e)w;xdEf59qCQaFWYYrt{SlRQGb9}k{h8E+<)QY?x-u?f_UMQa4FRN zsE6Je?}g!{_Gh&~YM+a{IVeL>xaWm|zXh8yJFKGWWlN_cXl2ySw4NP ztmd|>Veo+kL3^?hf}!Suf-b;R-KAuqK_N>9lX_-{TAw5uo8_-A*ljZ~#1Yo*Z+wI} zXh%c>L8YQgisZzDzYwvo>$&>QrR1v--}2zGTW4Z?Pz{LZ%GexHWlRah|AP!y-P|kB>X#+zncI{ysfi+UiGn>wt$m< z%HnwrL=?FsTIXUI`TAnp*9f8faleQ9Q7HPQvOUm{F;Xs6ve?>78jhbl@k~vrz8=Wq zS6|!eIi*s>UOP+urOnnuRX4fnxolH|_j}@=?gUv!Afw!P0*v6Xg|7be&LwY!dVwNg zVlpHTPYZ_?T6;kn+yh+tbSKQ*Y$S-Eg|iB-Daa2P(Wa|N3AIq#W0|bk9(H_^^wf zJ@<7~OvaXBVkBWie`i_4$>!A*dkWH0JYn_5PcwUi2OZfr_{;u`i zeR=rz{O)`4x%nb*4H-w1Oc-z?FScc+QLH+OOg1z3iBVkE+gwcF3v_~xlOL7;OKx{G zO&8744DfC@!qOL=KrD(b;CE?E%G(J-r{t$Iqezoys(hGUrq>Wj^2CQ6PZiTN^maaA zWUG)B$kGu&+DTLK7M@C~r1CtE`NMG_z1^uz&O3#2%Ok?A?YvPoVoQN#^ALRD^YD$^ ziUd-*cBam-1u7&%CzFGi#BS6XD&G~9q>?Z;!vrSZ5LrhhcZpxgG=skhxmy8^*8+$Z z<42K@!+a3G@M)~5mJBZp06Qr69GUfs1`BQK9Jj@98m~X?h3U)<2!D!&>ZaM>0h7wo z8MTq^d~~%?!uBT5uqrR9Dx}WQEwUG^HkM9;Gp`yoBm*HelPgM+DBx`cpZg4Q>{E`G z6GbP^0Oo`hZ#)~Ip=iOBSWC@T+aFoaJ(G{mye#dUEKq-}n~2e%?K#mNeNE~1mtbKv zIG|52a0*f+M_sd^5uMlEi-?g)z$74{xMS(SK!-eNYu%91FMT-onOC@tm{-=4BqrQ= zlqmm!{N4YJIANfE0Iq3ZUOOw^Juy!lh&sZ-7ngq z#dvse3ccwb;>|aPkMiK&m8&JN8hJHC5v1qIdi{}a3V!*d@LT4=s(!Br#vILkE|IA7 zGacd-3RK6S{Eoq44+;lDyd|&>XrOw{?(vjB@Th|!!9}bfSP_W2W{p{$HnDRzy>S5h z_fJ@XF*UjH%jP#APg^Wrc2-)e&r=b~@|!XK&h3w3E515bWUVO0tl4&~@u^8oY8+>C zuNs62-hS|<=JU^ymFwBnKCtjDSmU=rELAH#)X4T9nqrV*_MBXCRy{gl2N#&1OM*f9 zi51x?=!dB0{R$U5VkMwf^017S&l=bV{RdDf$>?nz5>X_@iQCx~{zh;*E>J|b{hVAW z{z?I*&C>ke{W59(ZAIcP!C?#v9f_Aq8u%Rf>WXfU$|CNzxOl{AA!rLl+)koYFGQs$ z5Z0WHqodvU;6QqkvcVpZRG+x}kDeVzcH2?vyiUJFY0yLBLVl|(jctTZ;&K=Fl!jG$ zSHNVrYsp5?P8F&UsFa1Z7S*d&plcGr9wE9EURbf*WpGXka<*JX95l0;UJlgu9NRFq>q^ILz1CFMNzC3rR)u+3c2%Agao7eLsy?b+704w`Vu2S72h zASc@I@K~Q0>OdNrrHfCn^OEhoCn5E_;;U%GWOFw9nqz)|0hfq6I+5F2T~wa8j2)s3ZCSLRCnxSA9$HH3R(iPHARb z#*_ioe@wA?us|&LtL&olLRxV(Vm-hYwRrxsV0@NXUIE);jMl6w5EjO2q`{J>RW=6q z)3nTErn%Jon9vBP!$<|lwOA?yTTI+o8KwFFL7>>op73U=v7~d#xT(mFXxZaF^oh8D z&S_fnxND&UWR7YG8ZF|N^zN9rJ@lvm$557e5q4@=QA`mVf*M7b9C z&>er78DEA}!H*fFsE>yAVW#0ACUcZ|vUo^J+gI z87?9Z8~4U&YbJYI^KPi)kB!wx^a_uM+HDsA%mOmVc5Iddsv!*H)a}-Z!rKPd!OxH2Wk#nx^dd^5%+vh7S#&Xo`ye-mBmR%h=S^l$O>w zp{D@*LMV8>W90VA=Jr7Yi{L}!h6>CHcCRv&2)G5-FrSIQkZ+SC+`%EtC$>3LN6M-D zJDW@Escyu#zJOr}Rqq0SFo7sI#BYJg;Cx@$s_qq^{p*DTcUN|nUc6Yn7hXU7osWGD zejrr3u>YZfuwZdMQqR#!3Nsv4gOL_IDGImO72IGyx81cyLWZ8B*^#70;NF| zuOsZkjYa^89t}CnvkgjQC3VwX5&o&CE*!YH^?ZG01I6~rBOY=~J1bjvFMj;hrIcQ0 z?PK3`!Z@zjcHBPUMgS==iO!NZ+|J65$?6dQ{96YOUcCEeV|DXK53`><@@j9#dBEL! z?__>%O#D!Ll2S6r(+A)vK5Ntk>ZnYXPwzJcOu{2iS%XQ|dP{Ft#EF~t*VlGdw>Lcs za*x_iuU@@a+Fn}PUjE@$ZbD+0t9QEMo035mbCFCULi=FlK9D4eCSczh^51B?c&n@g)Z8_zG^JbFIM zKWeP0(rI)j>4qN$AvhxVZ*LUsGiObfC$eI%1@!|^;n9#(ChJ+ZhNCG~^|*!oqO+eK zKm4by^^LXVRgY$TE8DBf>({?Ll^Ym*rK?w1Hzn(41ko4C%@hIw_@l^TMXXB;VFw*d zzO0?gDX(mt9!U;6ar={VCqFs&?fZweRy-EYBRk6;SzFmUeeR4uH&`T29I31-;4tY_ z^2|TlyZ4`_&M*$(qX#$~ODkEDi4QeCon@b*i&TOxUEz9d?Bu%-QM>oIelS}wNg0}U6N6Ln^B@!Q9b zH#RmF_Z`U4cZ=e3$ELhG*VT$HgES>D+V)UL?K$e~UXsye6+3ZD6HJEK3BeC;hN*Io zq%w66E;~D9$?=8y+So%m`ywNwVqzk5IH9pU8A`Fbc$;b7HBs;WN%&m^v4@4&UN}Ql zWrzCa_BZ?d3;AaJgKOxQjdb-BiuPUgxBn`*S$ z%;QRZv+@1r#^c)V!-)!+jHWwUEpv5MhTE!M$&WU96y1Ba{f;`j$MQ?i7@BCEBjTbr3#QzR0L#YqW@Vv}=t+|#h2`KU|!FhwZ* zo{esMwJ70GrPr*M%hfWo=~#Ato;ptcZc@5PRCqYBJxP+QX__w1cFqj8PYkWpeONyt zlyJAGQj)|;`!(vsWoh|n*_5f6R>%Y5)fdhc31g%rFq%d*!Zok zUAf7|#zADga(DnNODX@;nmakSw<5%e_N$AC@BBD6iP+(ijv5sn`fS!5;DB5{0Ihq z!FsZwStMD;|16+FMPXCP6W~kocdbq*ID($B(9eioGnVyZ#nBXZym2Onms8~Ose3HM z3o^GsVm23KJPl8J>q)z_#)|PO%L(XeNjO?4M6)>CDyNF@oYI$ew^WQ}4V2(hV;Qw2 zpqJ!BZIqK)Ms=V)KbIscHCAw8ZaMQ)_gEb4l~aMds^WZSF3JV6GG!5SP<^Z?jlOm| zfrX_b;p}(@E6Jy>D}?}y*{B2Ur1;gf#2rVB*a`fT7p-N8*qZ9=Mu4^lU4hpyEp9| z*|>R*ALHa==K%2Xo!}P`6cQE@1&WDFNJ+}b%AJ%xC9kM(T3Ja|MdJ)eOGix|>>Y5& z>(*`U^Cr4yJv5Ckdb;cTm|5CfF|_qJbqh4oLti>~-OA4XvH|LX`L!F?R~;cvenTR1bmw!K_kc!3}L{NPh7t|5RDq*3>= z{mo;k&rcDLhGO4m+$xxPA86+t;aaa6^`xLChY;%Z;N8Qr;^^sM{g9}dhmLp3vt6(m zrT8Z?F2)W~$r*wUn5zn6bZI?ai()^fO|rU&5h(zq1GXY9z&%O&NE z31rl=v7KVGx^l@WVsd@j?K<|i?5CfGO_@L4z@=f~PWey_(-l~&>2pwjzWUPYdEceV znFrvx?rXLe;x&D*w*|K=eLQjd+R4|cIfa@o?U^|ZcB1}6x68tcG)Ld^8&2gH9mdVh z7O(t1c)4P*^5Z1PWF=+>_Un=UOW6Crrbh#j%Tf=8%y|_4pMI;^C))pkU7GbS3I1?V za&H;T>GJHQLxOm@tkZLgS_@tM;8W>d&b|T9&BRSSagFb|Yrd&D?Bx7zd2KzZ{%?Bt zI-LL0d104q3pXu@%Utbon|N`L;S6W~XM5}9^jqTS8*A{`cTGHTM)@4W=IR9sxHzW= z&*M}}%Q>lWRP&dqb0aW` z!T_Xy;GKc`+bBxzgp!x~jFQ-$DpSdIld|b#tY0!k>+yTj<7P za;g2-GdDW&wnHNV$ibgE)U7#i&nt@sWJ&4$emTU)?NsVX03pw>ErSy-_GriQm&2`f z<~z@W^?qad+DjgQwguYC#OZ39;Wxi~N{G-zN#>{6* zEz$$*e`QhXxe_+=)x|sx+dj%xMYxsJ55=Vo@t>DVsA8p|CS~*pL^c!?FpEb#iR=A*~{LI)Z^%5 ztdC3@1D;Y|?XO|WN4^Q(wt=j1^217jUa5Z0&J#{Yk7AqZXN=rqxzv|2;_k91t^Q_L zMz8nibU$Op3}4iMmFltt<=cF$ON(k3-+Pe6z>h}VGNw7gG|GPWCOHO#NHJ65eqMyX z8RM-@!>fh2b3}ipHw!k!aH~_jIO$r+H>s185nhQlK)c2sUOI2!!4hvd^f}~qY-g@* zgPyY}Ub^Z>K`f$h|E3Yy@P0skHt2;;Zf_)*@U3epjc|pTP4n={0-{$2i=)P7<__G1 zHFWei-Y2!~rrk4G+>IxWiPQf@n}aT4t=(QhrBY$28-5gLT~ErmvN;}5cUNb!d@v~U zOSmAbraFX{ckApq)h*;aple4>hUih z)dtPkNE5Gix*aa_!mn;Vde`$Vt;RRScnz2M5idwp*g%|UTIhw z?ek&88XZZ{Zi(VvC$}VGlD%8x_QcoeeBdsDQ=dR();FzIiACSX!Ocpn{LoABy306Y zi@9dO>m8UMhVj2mS|k#xU|eehU*;b`;GVazwk$qo)8_t5sq*#LYIxOc;b+~JOoh&) z2!}h7O_`^>@9WZG8I0@3r-j0Wzx{iG-;y=UfRwUS8DaE4LmY=jQ9fdZb_>3xC4|PE z`fkWZTqW(KUv}5xi&4sDI}7^@2Re1H8qO4o9X8lKDHjG)4Uul4p}M*3Zp1oR>_1ww z04wF^^rs38`sDU|7`&Vn{AT{Je4!Qj7_<*oi1`s@n~0+bz^8E3I!&J%-hOJ(9Z`#HfRbg9T)a`sg=A_8YzKq*FA{n+Aq#UL|;aIHrx}uQ}v&J z$UF1Z09OdsthZenxpX(ohoULkK-LVCJ2!*`e8eOSMs(?A3nNm@iG&qcA*%qI*yGdl z*4Z>vDp&(>9%+SZsYmF0{q?52!3{?6Uoc=LjMJ@GJxMQ)?X332`Ei$2BP?#}*Y4gp zsOaZa->z(^oClG6T4+Z9zRyt}??S#-X) zt>-7GF|8kh!IsgYTWJ!w9jE%i7H2DefLXQ|;z)EWH+S}6^h4A9Sb0=kf82+1`t#$} zFPH%at`py_JFpnfXdL|5SGl?9hm^6nms4Zb9YAEQIg=8kTIEY3=E2Kp{1uN=D;xxn z_;(W>mCHZndDM$ZF;r_JxzU&4L6(LuI%A*Gb`-R3;(ian-h(;k3R)5N$<3nsbMg$* zGMt7cO#ZGvTpMIXAkKhAZ| z0?(;nXx|e6AB$hkv|3qsl*8H~0x$wri$ef9$Uh+t@u#&_QhMgs)B$q^&WON=qkGMR zbp+jNIx^(G$Po9G=doO>2xGdFM!;I)QfU}k_S%~sLI^$?I$OcprhAT@Jaz1GTwUE0 zS+p>{a@t7mXg-!Hu`5VD6qQR*COyH8HDT@CAtRG}IvNBK+`gq>dL^^NjT7PtK|>Jj zz^l%0=soq}8(&JR;zGLjcM#mIF@>Mnbx3l=^GNX0S-On~P7Y5@;rfEBj0e3IfzApXCo(v$3$Ku!fPK9dB1)*-Ao63$7PCnRM6iSqwcBhH+YVVF!bVE8I%g1Ml8-9X0kz0{ns(l{4M_$5!ACsJRITSc>VG~Js0Sdd=v;Qsb! zqdu?$KQP;l{%4(*$ZirTeHgRIGSm)+hC_nWhosTx>fzGZ0G@Km?FCtdLGxD zAb8YB3%chSa_?)Fb(sRYdHMYD?ZsvM#MQDL#M^Y|or*E-%wC& zkswRAYs`?VI6j(3%fxu$4L@S;@lxdJ2zGdX4vA*z1=?sp+6KzKCKM`DTZo4^1{v| zCgiGo_S*)Z?i;;VCWeFoo8u*k%K^sdsD3c=qJx-^Ut3 zwlakNSEjh7hvyLWf+w%<%6)g!As*e?^t**K?!E9bu}VDb@k1Y-7u2014qN-#Ik70~ zRU2<_pL+;9pLw#+>XgrEhai5LQ<@jxwH7BK*`A_7p-l#&FNWJxPN&`Gy_tDK=hK0Q z$AXB+3iktN;~7TSd*k2RFGgREGV`tWU+n+uoA2FbUOZyncl{lfZp|0UzRdZ$p)`1D z5>yV^@S%K&lPN2_ zlzV3-v$5jK9AEh28+5?&5b+^i8x1m0y_oWM==MNN*s>a2)bx&D$&b=tlRrNEX)jwKS# zmFY^ixPQVz5ZzD;|=cI z%+d@k8C*+@oao~VS^@dE9%RSbK>)h`J)%d&>ST20E7~I_@|Er(lN^w%%|U2+dh6W3 z9g9>9MV4{0Gi`)AP;3^t_walz0evjWC}pPPAP#RyJ|26RANQx6r>vDu1g+x$}kv>*0M$mU1TFYkWJP&5qXQR-|vb2$T-VKKLT#eq{O5wo03bS)&A2Izc z+AghL({xqys%w#q;z^+`-hfl`(`@HR+07xFX^m_hkXhOFQ@YDamwivLq?wRweDYo7 zCixzYA5w&A`11iLcHSY|H3?3i;nQvT1CtV3<6M}l3mVAEs~b5;fWF@@}94X5@2LqTiC-}Vnjy} z$dD0P(qj9bG%CQKQmHZBlIFozlOTx{J%UI(IXWXd3<+_TnBZy~BW*(|KX+<~Q9MmN z*_kSuzO`pyiz=6Semo?3%pi;TX;#&Mq5YNc0{RSU%n~F5Bea-Mw=p8{!~!#K^98?n_u&2PdG|8Dwl0TspIOlwnH+g(#UQ#dKY^U-8x*1V9Woi9@))IpKim| z0O0;VQ3*K=r%zbDT-las#;BGL0Z$I{gqA3b&2CmsO3SR~hL=P!E#KBTplYF87|uO( z?zw1Pd72pFC(--T8FU%trgMVBef#2Om+JcFrj&=WZ9gcHfF363G)Ya1NH%ARS;7qo z@wie-;ExO$W0(`?U>l417g%&V`>F`Ke-yg`UqQ#E1+v@FQ9Q0LL5n zvtU8QRr{wwd*Sahp`F-t@Q9(1)T*?>f=ch&RimLA9H3G|&Pys%w;}HO7RPX}f(*e_ zlW0hoo}UW%x-+6Z$$rD1Mse9{8vBe{i%KBnpeN1-+LQxB$eJ@=z$i(POrG~JV&;Q`3rGfkTu4sKD zi~B63y^4QLSt=;>03X|$RO?VLq)PuTC|Iyw7e4ueN#-Ephn_%B=_J~n;@K1_zSqu7 zKSOE}@=8S|ETP`t{;I1Stn4qHCdc=UtjJot4o$p~3G}EKi+z8I205mTm^(Cs`mwI= z#l41p?%h&}KW8&vgQkuI7Ro~;5%rri3SJFQv6h`qPRrD)tYc@xtOzD-J15vfw9PXWp;pxOmF<#k~08#y49HR%4s59$Qo!Ve1s_Scf14VcCGbU}$dNNNo z*1QZdpSIA0XUnMMMPQ~T>rRFVx9pya+(=U;O`>y~fl|wT%39ehtp?bLC!w8?H1Hda zh~RQAI+{_p@ul?;Ah8w2{*^MNNxJadvsuiji%W4k$3&Ir#H<`fc#AT4#8GeU zke1cU5)Yg!UTlF>xyJ?)x-3zS*O2e%K)l&2Wg=GjCUTg!?IvH00xoKlzP06Y7b%$J z@s(nh$576tzLARDp*DyRnE$L@k?GGG%!|4{{@d1(wzRagzH8(YJg5K05OBz|)>CcuE@B^)clIZ2*&((Vy*l)Ss zYWj;sbL!PTpac0d)QA!D(!15{gsHXgb??9M3KgD2Nd6mbO#`XSqL<_#;<6@?-%N zoMg`D!LC58iY=G+_9yxJA>X&ISKN(kN!yy#_)3Waf0-OHtd7d{G;~3I+9@Ohp-E5Z z{UdyHvL=wv2Wvb_%2g)H zZb{YeR_Mzm)P{pWA)%q* zZvk`G@pqivSvwr(+=5<_B8`o5jnH>(g=8;dTReF|451g?#jPV_Kxo9wQ|*g~clCXW z;8;(eF6e=p|00)h3iB!1vUQ0QFUDtC{kkD-C8bdR83&$8Us_o?dK7?42h>3mpnj`G z8jD=iEGEo*-zDwMwdyPCB`A3=gcJ@l?tJwg0CrddiFX!1CmmJoY3ox6PL}%!{I#Oh zY2B+ygue3BxJ>|n9h#)QU7x0;eCKLq3Vw6WZ5c06iPCL|x{maTb}b{h$ZDL`JatpO zF+TGmw&l`LK_<(SDAucP19YjZ)h&|IZiqSo>sf1${q$0Jn&^ zAiFLYT1XDz(t5`QWYt-_B# zMi!iul3PEnd&~n`?_JOH)rez3n86#sDMa_|%{_}Me!Z~wv`6IXFWyki?k4u_cGlm0 zHy0nQY=#SjbvSkjAY=DJ*iE_?0vnb?z*WASZA~ZRW0TUDu-KaMC&S<-b}au}1%FY` z$cZM+YgBN=(JBLx*fLM#F?Bd|@Ae)WloINI93F90S0lclFGb`Y#-}lb-B?^b29$|1 zRd0C8|EGwIBc+9}-?$m~HhqtWD-sW-iKdspM0v}VG&ON8vUXRGYhf`rl+EW*(Wp1? zs3?s&qXpI6cWJm;^blxAHsT!Q%+dwxzq-zZdMzUleAb&Eibd<2_U;Wz z3`VhAS6f>sa%twwpS#&j(rreZ-U0E~h0~x=4BRJj`drzf$7SD;k%wP$@}GXpjCGw) zL#cJ5Zj^jFulfXr8uFajl>ZVwj!s?zSrHS)F>SYInrp&UK`rc_0c^IyzWQ~B>Ar1_ z7O?~@MO9;uRG;>dq$cv>H|}fElv|pOA_Cnt9l)zU`LWv z#{*Qn4p(C`cVId%-!*J~#}I6<(##N0xgy0*0)BoHn)|$G%a7Q!|E2Eyu_QFHLx?e7 z=Jgqwo?Eg2jIuy0Okno&CXV@M_0e+ZZ6kNfrH3dr>JlWymbw_i>$4^OL{FIf-eqFW z@Nq+;Hv#gf#k@+5;hQ_bOISGT>icTI%mEOHL8BG%TsOZRN>)jqBB7Sp zcFK*Dud9uqe7@W`(xFuz{W6^C-liKWQXqAT)@Gl%8Fb0T?i2U$G54eF^cTp%+!Cm` zDaS1&m1~tK<1m7|dzdXW^`TL2GQ-Qc@_Sfpxl0xbL2P`^JV~a5B93@|cVoE^f3|@Q z92|O^`CQChoayPXe$nbae`j+)zLm-O!pxoDO?TJ)+JGCro?dbA9KRB5aawbtp+Wv@uomfPAlf7i6XO>$@NjkU9P78Jz}0h29m*$X z7e&Ooqi@jvEr^8sp?{8LX(3f$!j+mTmb7^4c+EFRy#GA1e89{be&u?MZ^*!-)q6$p z!1&*aKV_W_?5`yJpI!j>A6mk~7caD7!%;tz&R%6Z;~E_FB!>zfWd&z%c%*qc`KEhk=Z{bgFFL{kyc9V(i<8$-OeYYF`XhlDP5ZgYq@a!T z2CkH=ow^tJ!EDSS$mSUl5s`(>?T~&gFFoEkkB=d((T~$$e}@$t#-EJfoLYISUUpOT zm!e9=FPsG}mOn~MTUcsRD0aoT!uU;4Ic~JJP{4&2=_uV};49>7#A#)stz8$dS!CtO z>S}>tECUf%(DfzuZ%c%73kbyt&sv-WhHP*)?wR;%h7zF;XRoK;PH9|Npxh{I)9SkN z#FtgRaqv?#1f2x?1Z-UFt^G{fbXE=uemw};iM5GIWm z-ad#NV-%*WT;*vnb4QHaD;Il?^aD?fl<0v9#Yl1@G%y{xg{`5X~$*;5?_9EC# zVej^|V;JRs0J9bisOzq5_*kfaO5?6E^f*#CbP26+EZ6C0d>{ zd2~y=WtYjBxA?ZL(UFSnh~syi_H3G~4F6)rg8fH#XCZCa>Hw|`tMfX48WN|o z!9~*XT}&Uo_k?cypS+^#M4l7vdy?0EkC&{O-TMcLx)&3P+Cc{Tg};MVg`a%vbK&F9 zmoy!#B6TvovX%@EzP{_r2frZ*=Z&d(kN7lP$e$O5y)U~o`Tcf2hLQ*jUCyxh=^~aV zyHF4SfUyyuM6s#Dk-~4=>&{BX2%|Cq@42cNiIC9SuAMtm^$EDeA53kp56=P9aedK2 zQ?KvVs4TnIhEOgAT`WMK9seFx<(J6XBz_wF#xzEERVu*qf~K8TLkQ?kIBl;EGheMA zsC0LovyK30Ln6&S=n`9dL4TE(C|CPKbM}_^mgQwh@|o;A_i=N@g(0d)n^e_|V3tm`sbZ;GYZ5wO&9m zu~W6hL2;k$k}(DR$o8hGe>(6<t(`&nJ7`N{U>fXRN~GyVDW=HRrA(Uk70$zxz@!6)-4ld@nq1YPtE zvVb^zHAPNj27WjLGQYht;M)6Fft3F|HZfH%m~%;W?;LvR#D1DF;tUl*G1oKB!cd~l zz5+1Mlb+BQm%fkk252D2-rXXg+)%;r3A3kU`*=g=Fg>|u1L4G%_HT6AIj3BuX&$^B z^RyS(vOnp@l^@p11$E)7k=Uj?-x0TSKD#tjRaFT+N%A=QWK`7O1#~(;&;4Fu+^p%G z%~i^?+Or>U7GTw%zZ=qr*E}UPe^}rDw*tE7!D%xaajQL%Gh3Y_I(_>x-3BSTvA|0| z6q3GPT+Z*5)%y94=M*nVylTD6?bZaJ6__^h@;DH_QuLtg;`fgh;`u?{J-wGb&WYby&`W9KX8%eQ{CKZ(x-p3*WRAHJfPesDiV zF)BkeHA%PKXC{XoMMQ6xeb(mmyV$>8_X<|sQr>rKv;zNF+Izz+Wg1vzI$#93a(~yd zypWQ}|0nbEF>x>WjBBFf7vv@Xn1{|)P%1A`cGVHue4D@vQM-#SnuF|ZEPbc*?)DDK zUM5lXgTCKx6sS%IM`$S^IH8M_r$2lXFuH#QdRr9`VNj`RY0~3o04;m)xc)O!6~UI} z;Fn_{ld>RLKP}kMNzsb<^5f75N+wfbPgaiM>wh|lgN}y{xV8RN_U2r%6tqBBGXyVO zyhSt9WrXe?{waU>{P_i5ab@^TA?-Y29@28u%b90=H>_}zpwsjZ3X9^efqt?kQRJ^X z#`mTm{b9wi7g52AAXA0p+wcN(@FnyE2J|JerDZkpA1wpwLDo3ViLa%$UMG}eOeKva zBQ18!=yBicaA_Fp%%Y3$58`~Cj5UvYC+<8A7#xbG9lXcu-m>UWb{kpPd2Eew(Nn52 zBq5Q?1YkgYlkXAzTDRTrZq;sH|$roSTnb$@6%h3Wg9EB})YhTx5k%s?1`gU2z-tcZWjQTLXfyg7w zMxB$ltX>BOchT53t@*wV#1gB(7ZS?%S5vkh(S8 zBg!(3IP1FcrUhRQjoagPY!w@4T?!kduURd+`VgXQ`>|jfx0sjD&awShyAlrQ24q_d zhTEw${k>3l~5?6SDTMEaH5OitH->o_ee1t98Xe`-f46C1*1?jWRz{a*6h>+*EXj~wYI*mbJh z_S1d<@Uu&on#$)5eaHBB|IEyhdEx)fHN9|jo7=(Gp(j?fx1VjBqyLTD@Voh_4?jX5 zd*V?CWA(6j1v9Q)cGBTun%oD>`l>6|o74K!f>4_;)l!2*KBN8I$Q8ttF*@YMIiG+n zyQWISLkNbWT$}3ru+a_jeDj19CRJf5vgk}i7uWTAlAOkgQ(sM&Z6-);#0+}1qB?c* zd-Bn&1ZTKz(m`Ciueg9M(xNmhup;ius(t_8`elx0bXQr{r4PyxONRjbizW9+ zTJWI}DWO&UKQcLUZJ=%0vRv4f(a}ljJb@i2rfot2RP%IZ{cy?UFl-5>&y$nh9t`^!_Pj@D%_|56!g#u>50gb zabf8F8B#q)l#oU4miN70r(qHpfx)Od-FHF}8@Q{%p3#(BoaVDI??aK}0{A4xjT_X> zo&jyfqC;76M?raV7w^z+yQ(dY*j#fSStyJAGxO`Kl3OwsR{p{wV&`ovEhsY+_-;?C z4N`_>18*BDjiCO-z5jJE_v-|`j(hI`WEgs#8E8A0`>uDS&#dJs=ID&7f#VY7Wcb_H zE+`71N#aqgy%WbLhhXKZ$Exk|kmMXoRnpzkwvrcE%0;oZ5nn-Y8O1z=!;Dz~vwcsp zf-s)_y>t~5Xky^=jFB|!P91oz+~a&VthYAY>^DdCk+|BHj0j=TLL0T=l_PKs)twc1 zBAMS?FvzDr?FtSW#EH<)4@l(K_iaFhhXX3M`6NjWgL^9T*t}ZfKyLL0Q>B_6c{Ear zAbL$Z0lQ&#cdK$;_#Q>8q*tDuzI&(u4dnL*s*iKJG!5Tf9oF&K2+C7NYq0XggCZu7(et$E3PQuQq($$fK(dpM z?bkvcx*urT+c4k^GVfFmQ9D6<>1{{zcuRW^SVQphYVHSI%2!$%=0QX_she!4)E-bz;YwSPTydxceTHe-t4Vov6i5JcARMagT}_(d+Q=AvSE za%HO)_R_RT+$Err5$kwat*ntOJC;5(ccUS51hzbAK5anr<=(N&QG=%{!nS=zH~Ci^ zzK6xAn(&fJjnUO46dB;_&Q|QD?77Z=1$mtCG)M^Tue!?IlK#7II2yZzxY%KF~B?T*}8)Tc<->g>GQ&%WybBXrkJM#SCd=RkDT zO|XKAM-qrJ2Ou}96j8+cwxi8=(y z@zfqG2S6TdGG*xvkf(0S3gi8L!)-I74*1jG-8fzMGBfp)fjy{x_ z*Hx4GnKr7?-P%J_x2apwMgIJeJHHkFj7x>cGunN@3AJ-eeyVcsJ;QkZ-Ho6Kq2z<1`4nsRUgEH~iz{$#!E4;A8N%bfUq|}6=17d!#Jc?4IBgdY5a=#vU;ii;vccx8K2)PIxL}C4%z>qWIdGA+4&|t5!FL z4OHuYyG#AxT@|k*Q45sC`PRSE${H#I=FE(@I9@sz9zRXgdoeA-$L$VAk`LV@p_WAqy17Xj}3pb7Rm z_^CTCNK{K2Zh`AVU}A#^yu!B7GTxK=IPdXzy0K!`aMX-4IH<O>l3@df_vqFFyh zNFv1G9{G=(amii4jJ>J@+OGzatWsoh-qjgyGF>!;E89>RR@tx~i&#ouo7C z*UU;GTO8Mr_vQvsx%;mSNGoYVq_Nfo-`v~WV+%N^zO!y4{yh$4OenF9zdLy7{g>^nLToqA2#UUQs}kC_rt>SM z9tdV5d#Nb9?$g*dw8UZo32d`}yF@jVh!#n|Y#VM<+rnPm#^n2QqpQsZ>hN1@&d5(^ zC<#A)o96idsdmEx+8d6jt4%u6p$rRGm%XGx#Z)8ERL z(AbBKv|Tj3f+KeXh^NmZ2Qj@*E_N&!7IDt&nxg6e!8wDf?S;pupC<~RSS1^-r4XB5 zKLWqfHJZAIn>D1fs2C zBL?Hly^A>A=ONv7ay5QELH)ezhwr{0I~l&Y>35?D{03;jeD}}VCv^Gs2>PNXEsn|UThq)5-9$WTZZ@Vcexvri%4p;E3BqQ`D)N9y_u`;ON3({)u zywV9i-t-q^Aj%*lT^Ka4%*5R~(-&dFT@0~|a=rEwc+YpLn;E1?df65Bt?Git1h4#` zV?jli0PMIQl@sj#$8s(R{5&dCDQV@@Xu8+cpyD|bslQPCbNN|g=-KMj)R>beaE;=* z?%?<Yp@5-D?VmEz0B}lSh^@xO4S@&z#wpe@=}wdIz^l zqYGqT*o=vWdX}~3(&nLB3#&%fo^0Nn$fu)-)BLCY+~A#um^y}wx((yCWo{$#vlrPI`AQ9~yBO{uWY~byRaWc$ z5HMUr0OcMAo18qxTFW#yY(RX{Q(tidR>FjOS0kFNI#l8s7^V}xrS=z zuta;>FfwBHMY6Y>UAI^PDc^o6zG$EaP!}G*y_d9oj^~Hslcune8CzsWvx@=gf*Ep@ zSBPjs-$4%Tayg+;$EZ){%IdrW`RX{bz1$JCwdYRN)NZb)|0`&!f8@s}Q9F)ExOq~j z2q4!5%;Q?HbivqPJOGsg0X7kyI2TdB4K@|}-zcc-DM*FxtL4H&EXK0XbG{#eDoEOl46ua-pST zQRrP=_w2Op7a4x73hjBGkV2x0?v17k$jnLF#kwv}pYL%iFJ?C*;|4>E`385`?>$X< zO8z(cI^r!$c7#be0TtGy*bMC9sN}) z(-)#hq|!go&5jfjS`IhveatF8cImh{Qv*OEeT&%Gukp`%l_r?sDgN7k_Djo>_=%R2 zZder$HD!kG2?i%$9_h1|#+ffpP}J5EX&~^kYiB&C$HaRHAMz71IKMc%&kH(UU7zc; zp4JZI)xQfXkx{Mz*GZG3xo~j2ATs#1v_tSlU=4z@->oFq9*NaR+ux;_s0R%^gPzRz z_uzeV+1iJj!Z>JUgQiQXhpW$}8}o0ro@6p-qcE2>0pY?mpzHcRi=5?VKLzuHmdH&{ zpVm4nsWwZIvM##{-VX%Wllb^o!_pL5Zfe;Czm4d!gT9YDJo36Z&?;}>qj-!how^Wu zN$77+1SR$%dL@R^7v*{teEsJUbt-a)wI<2!!3Z1(PvkZ`LuUXC(35cJ2PSJ5@^%5( zc^MP$GN2E21rphNb^K6om!L~e;(uAUz`{bzemj+1aH8(cFNDSCQp_~nFKv+mXE2BR3B#iZ-chK4% z&WZheJ7LT$nY(M)->AP|*@(c;UAd0IKws8|zdvoSDK$ska1j#Lzc*tO4x_~0*=g3S z0R#KYO(v%fseAPlk{4bFq0lHoH0OWDPRd3{;$a$k-cYt^c+eMJL7yEZW#vXB@wJlR zR)OdOroA0`IjVnn1cTP z8F$3ara@~{gJcNUhRDH)!NRUp8S7b-H6M11ix97Y+txz*-Pt>J(9_P8SF|Fd(4}8# z_Ack2mv4F+oM4<AKrtR_TK+-!HR z8LkaG0{)2*=*(rqv4KZ;FB7RLoFA~G(xRgB^2OOg@`I1Ulv#Zh8v?6${=ltC7Ywpr zreHV`S~j3MG46C&C55ZiHy|i7dh2U9555oAYQjdH^!F%w>O+e@8W|&M#_Feo`$HIBc$gxD-_h?SpsZ-(Xya6*IjQ=v8zC}$`fwQ{Q zb#wjOvD~CzIk&%7iroiL!{zBO5V) zF74$>+5UJSRfUmK!`?B%+nK#2X6wxX_0kpM@Y zp{8rk6dJjP(pdKzy5n7fUysa=R`2|3NsO7pKJo;yp&>ry2I>%A?P=b3y3)F)`>F*I zMT@NM7f-vw*HZ_knO(V(C$-ZkLPxKJnxTvJ+JFJkLUdodMwdW zbt0@H-Lw0>{@FO&)SLZmINqTz-^;V%ldySc2QYzh*(?@nOTIZGSipj7s(9I<72!v+ zMH>tYn5__L)T=RdOS?^lTb3Vg`=huK&gV~SZrq1N*R9ggW&ws}-YF$OzA%|nkBs3m z5|@2p@GqR4PG5{Lko^Clf1!MAdBgeiDM#yC(7{jG42fbr!A>^0gSm~z(xOnmuD^mf zQQvas^qpJR(%7;m*YTyM0~f%#czQ%h;d8xPTi@$L?-ZBO29Mu;An4J+NDcP3N0g7) zj;*xV4-M?_m4MS|`MSj`F?H>T93rT$d8bNLee+p?9@t#+vD<5ftOBSm0Lb#~_W6 z6Wr4lden{)3%Q_wC`?0ELYr$DefAWtp}oeXf7Z>{L?oL2S>W#JNBr8 ze|?joFuFfht0}T|(l#!O9Ff6YnF86Z&#)-Xa z`h5_`C?FUgaJ+x70H$)^o0JQf7vdi7Mf#Cumg;^+z@2`6@#yoPDX)oC)BD4rvu257 zEczb+Ge~LuVM%q=OOUP(@pbiQ+plMEBkV&( z1_YrJ_wG3M^vRPxL8pF628nmd{VNV`xE0hUOu2?-lrNz?mR(g#IW6q01Qe!uGc=`ubwxJj^Z0GTs)NeiK z8e`vY>9Rsq7=HWjNRfv2PG_4Z3a*b0h^vc?h$M4w=a0dbp`<9Xh>)tov#iZ>Xbhfq zU8^-?rkdQ~vi(J;Z0lcaM`_1OtAbuYVRwDKLb&hLU^TL~1C;H5a~w63U@2bvn_sA7 zcm<@x@hW@_6lSWhn%)w8Q&#kXTtzC(5>^~bzDw|1x|u;19n)||hXzYj;KN$8D4efR zl!?JZ`%e#vj5Sp^w^yIQOhDu&PH;x97C*TxbDVLfdu>bnlP}G!Ke$g8A4yMW{ z!;RltmN2q8A}VtU#%=?9x{CpP#XGFIeUgWV0Q;U0c6@~^8A=o z=AJxPZSeb8)xPyG-uCiUNHpr%b6Wu{Logh0DxCm+L5c&OF6-zLr)R`#J!pijqmY>5 z^YD_;BOR+Iw(V8r1W3oYhmK+`qhlq=<7WWy!`2^gfN0_*zrL!fSM__C6fDj*ne0ow z12X}B{gCidf{9hBFj%0Li;>F#Q6e$9f#2h(fV>3ORsq_9QzUcI9^{q-^7pbY4>^!t zQFXWSuHPsCf|2Ifw~@aFAvi0zkqo1El=r#uH61U3Bik%|+YTSKfp=gc6>7e*n&TVz zo4U1h^7Voj+kqd3Gc|CpJ4nw4;sk9zcSaz$!%puz%6s{3PjOkDxw)_Hh#dW7f4#Pd zKRKztEhoVS@%eNG8h1>;vCBrs`c-WcwdKhT`yFpR-32!BuD!OyzfZGWp6k3_NxL-f z0ryNntnA})7%eaxIF@g=W^ow$#Ds{t5q*8nEKi@2 zuRuMs!Ox?udUjPOV57gUa=yeiEn7zHeQ~vq@xlN~L$y%-R>P`Y?GJ}Fe1d*oC*;`X zgHnuJKO7Xl1@mI%JgLi3`7*e)5}@+l?gO@;z$#nF3i+8D*l+0JQZH01S{!k9Ys)Jy zBdb6l^8!6)xnKn!40p_g6MOHy2=|N{B+5O6(7CLD9KJVU&Raac9V2pmrg&;Kd#saj zwVQu)q#>_?Tz^!ud1V+JJZ}(+@!Sozl+thUDYw z9fa!vQlly<_-r-i)*O~1KYL%DC^=DF#XVEFPbQ)8pAOZhjp)2%o!0OTDcoTZ-R z1;x?0FpMI^H1~5uD`KtAJSzdW)un+cu}*+0v*kID5CDT55ZhJPECbeZR!Vdu)|52-s)^V@S30x_fCc2ddTW2AmecRqu-k_;WkKVfjl z5LigYPWg3y;@%Dpe!A)B@%|-t=Ak4sj-ST2f1gRNJXd5585=Nt^6H0EG>||Wns^`O z@#TT9!utk~uU=a}Lr>MuCoSOq*!O;X*q5Uthedz)rRH;SK6o^8t|9mh5Eq|jl^+(d zU$RhqQ(OIXqkqaLmzkh@VbZv-NgN96OLe5NQw*&x%tQL&tUn+SnGQK9U1I0L$2^m zY6FKFPQ-hD1b)?jsIbyW9gw~sLi$P5g9MLf$TD$U{Fy23io1V4y&Eol(Z|wx3~<}N zRQzScHUrgEo~gA7khW+jy6I&^gXD$FI{*%Rz$;)klD9IqCf&_cOk7OJ!zT3L*`~H? z&VQJX{-OOXplrc>Jbwc9?22wbT z{tYA5T)ad0vCY87d=?c)LB?<294PIhS&U~?nnEp_oj^>>tx$n)o# zzj7G^Si1Kt{-Eb08+@ORuJRWio%o!%Ipq+_uL*+8XXl08KeP3%<#Oby{_$D2C_l~8 zE7c?1eRH?}(mP0`#1qSZ64QobZ^~ExJd#l2*{~6Jk%6s|wz%exq#e!3k6$CNhLEJI z$xlPQ`nn!21Z*!GE{{vYS~&QeV~LEjJ_p->2+ylHwZt!!mnMxYR9%lnqgWtQCw&?Z ziJ{brtjM=AcEQXX9%c3^JY2vp{QP_62QT4M2*0<4&3&6zP924faF`>O$#O?85zlE1 ziw%Wg0;y?%XApaxGM}@@f5K4UGe>p)StrD%)Xc0H0_$$l&T5pK=p0F`7aPmg|xjbHs|eY^`&zj zv;0waW*R0!#^&DE*VjuZt>Mp0N}|c7guDFYUppQ=UO7-(r$EH+Yqd@F*kCF z%bi|;jha?XeZ%#8Q4*Jtb{8(~^J44?@%a=#U(jUqhjAySE!C&VpQAVOBw)jw5;#w0 z`U)wPSd?|{hRZOYXzk?lU+TYv*;Shpw^{FCJNtz$WkEDG5pn{E<1@%hv3_LV57@0e z-G5hcZp`Kgh6=8dNytWe&Eo@c1JPPsi!v!y$j8?f9N7E`l)T=2@U)!DTH8NR>+szP`4v#b%}Mmj@w$0ol`9v!00K zMH+}0PQHTO^DOw>qsT$CR>~MrveAgEE_&gHZzlcFUG@zD^&zb`qdcUFJOy4oxMhpr zGBbed5%uDu#As>POz(vGbo|1Sy^<)8CR63vA#mdFd5`P3YnljqyY0-ICLc6lh;NI2 z{5Y8kRx7a8)3b(^gA7wI{QA$tW>)y%#Gmd4d8V>}RY4Ywynl z1sb7n=G#etnK&X z1Y&PU<0PkdsP)fdnXGGO1_)3bzi!qd%Z`fjwdlhAmezd z^5J!z7wf<{8z(z^n8xn6h}Rwa5s`|!y{vuB4&%)dl^4r;9O*WIsis=l3B(xU#C)i+ zK$Fay4z(>9%&{65zmB@~b3UU@`uKek@~NUW=mx)p8A7(Qtmp3lC;R^G@nxjajYqvG z+ff~4>ZKvpG_Ymq#B~wosrz901CkGS=M#ll9@&=~F^?Nz8!J*^@j%j=lz_nZt105v zWQ&VPO=UylW*Um&H;;LK~0!$D|)L9@a!2BEnoDNcr=g*B>Q6 zNVySQ#^yB2hmF!Qlh<~FBRYk=bIL2Zz2|nCzK^7LiT?OIa>HWdFAt8{Lsd(xn$ZCy zf-;FNu+ln;hGd)__PQC(z)7XE^~h0`JP5{Z5b`D!@oqd>K`tkvAlkQdY5ZOO3$+_)e;%G zAX0OM{0gl>{Jyk-FM0TL1Yhy>*?ewpnx~_0EC+|*Y7`pTJQ%bU*tV6Nyk@ariSpjw zKZKY}(GgF%9-K(OPrW)uIS!EFW9F{lrTDd_e?JPZXZ3RYJl(mPxL`T+v}e*N-1E^J z%%2U%@-t#xoy7?em)Me$8MRNCDNi}W}R>|7? zJiye2{Fy{vXuw4iNk~5HC?caK)JvI8E%*0@50@~ggqmeuIO}@%TS9$$1owR3xh?DiqdYRXF?!^ySy&?*Y zKhe(=Bq4uzEPHfi9j>=N^bl|Nx|@cAVq!-0#W4J$?)Ds+K2xjM4yz=w**zU0oL}0P zL{1e2#eysi1p-;)WFRTPcv6L<2ONJqT=x&S|7n%b}f+xc05A z_R?}VWK7&#u+FuR%cym)yEiHzgYYLNE{7o5*AdV|)VeT$x-}iz)s5O5?tXyc58MzF zUb=i*DCY>k{YRm}j&yf-j}9#k&S5aCUe`?{@t_8~jIJ@VeRSZ>LpQMiQcd(>Xe&%l4=eJ>jABv7X3nPwB`t?bV# zE`9Hhvwi;?!c`QWH&+5zFZ}kVhK9z*eV?Tp0Uj*l4zP+iO+-~d55QZE-jSx*0s(%M zJf=)oT^MZycE}08`!bzC<~M4wBtp_n*=;B$iXJNy|M}LncAXz5LfUTDmVu8q_ezm> zz04-M8YwF3nFwZ&Eq!N0TPGL;rrQHPjkW!DHaPvS!zBdbd)wPLky8fE$@p%kq_}3G zI8|wSWa5hXk+f9A-w^>LHU-o#GkY7@7kFvTKs%f5O<#SwVZukjWI@9H2PW*pWrFqX zrD`gpY>o~N#9@@wwdsGFOJM{5@@IB$Ump^{g>woLW8>M6LI#hi?4N@nF5Gkcx?xrY zpzqRi563PFsog7-2Yv@Y+rT|3m&0NpKQ44{;Nt~VB1NkX88mIaE2Ow*Vt;nMmDT;{ z8FTFE%D-E_3;0%ik%{r;f}Bq%#S!4JTSiVjB%du48pjroMR2U)k#MRaH z&E-~LOy;G9hfEH>{^^^ZrX8=*my>TBn?{(kd4H&T%i@oNFX-|Mo^UYzm~qgSjB4#67p2uOqh6>ku`HPZ1#4zWLtQ2?Qx(VZ+g(f z$8TXNWT^N@XxSd}i5!1SW-5nu;JYGpZwwEzhtsSRC}KqUlxZ-yba(ZO9=8GAoW9sw zZIemyGCPesx6m1xdzJI=3flv$iJ^C*cIm)A#WBrt*sCq|z9+{sO%Y2+DOp;7Tkoi! z&hKlgJ(X&EIEd5@Bt=NeSsSpu_$^#Sa{7zKNd7a=CH&SBz7y&IgT)=cBW@e`TWwmu3kGeK2@{cR`J$dllEFw1Z7%06Cs z+qxmvo`7ZM;oh?SC*3GoQgrmgC<1-C3OmBfFCKz+m_vEj*v%w%Oqf5Q1GT>*Ao~ZeDp#+ejOme51u@YVh(b) zMo}qk!P;ZDvrT?;@ohm%86Ik^BppaeK{5evZ4$|Hl@p`Y+V_JFc|MhtyexEfidFJ4 zB&Xg{`BaeYKYSg@hR}h;M%sIR&uJ?WzT>=m-ETa-vWXd5mq!b8Rf$0JQuw!5MJnVF z4H852HiNfsbs z0R`lO)2aI&4<2+~O4{;g@6TcA0gK($meQaf@1oY~{4OLH(Xdc*tj&;78RlL{yf3j~`gvKJ$M& z2xsfBw#z$&H&*3S1-Ms)pvFxF%TD76<4?m=c(KqQV?_cWuC&t`KSFA z6#9z}{Q$2^ZUJvE8OfwZRH;CJ`h5s6 zK4tABSq<>wILNlH47gG6{>rFg7j>w7mbJ7e?rbFN*w*$IrdNMpIbuXDFiGFgLho9EaiZQVJP9+E#b>L#rSCvQ$?IE43=c*T8FR`I_{AA-_^OoD(isgrb zVm8!)oH}(O&C&&>ToXr%YQdD@f#MFw<)ow!rzd$ILw^UrL+!RSlLQhnz} ztJ4oZSz1tQ%F4?t;)*^J3A`ba=B46P+(Q~=am#@&WHvL@GYls$1GR<^kJ4UHLiXHE z+jQzjOn_jh6c+Ux#7}Qt@ol1z`F^W%MR&!1T^f%~a_&L9*5>-)^vQbopwdbn!%?>lErZ$`{kq)Gd4T zBhP2p+)po^=?)|`1scV(vIT#x6hN%30x|niX~16~9{L=5WRlKRPgZpC*qq_tBGs4Z z>h6hPdcaK>C+6SQCE@<9K;lfN?h}nv}vP{;^Py9dnPIVb|%I^{Sb9 z^3n}arFxgFve0Ap`Ki0GnG{}@Yr-bYVw8U-Q?!l$^kO#cO%iPF>e7`=D`< z35-nDO}vGJ6gV$0PyF5sNPn*H>Bx#&3dw_UH*|- z+j+RwwBQKn?u1yj(&ea39hoWvW*Ty;bs{NhC0-~hGsiS->Wi0RzO)klHqlFMGWtFw zoFsMoyuwFqK48_5>$N6)+`)(C1N&9S(v&zX3JhH{hCv39we!7lfLuR4M4j;vWLH+z z_Qnlq+X3wPGgv$1gBEVC^88;-fp>E28!(gpEqoQXPMTg7$pYBYTZ%1lV?AFJ?e&a7 zy9x}+)e6nj>MiNouZMhQrfgnQSV=QpyvZGg#aF(6rr>KE7iCHxEj9N3#eVaFYoeuC z9yOD0X9Z4CVw%VP$) z>Gw8vVuL;kC5jQ7qgk=pL*c%28G=l5@1g#8qYz%#tfE&ZgaBTg)?H`|V62i9WUim_ zAqi0id#AlkUavQY^PtFUSL}{N1N6SV;xC{NS|s z(T~BoMC`7j>>|~FjZp4o@7>9iRA5C3Reno@7E5wJMyArzBPI5RukyO&XXC#_Kl*0< zz&`#@=68djyo!^QE8lb?N#yvh6v)R6fxahf+4eLe0bV_G9w8|#WFUY`zMq5D!qdC0 zJ!iiGat`Y(61P2)425hZym!mVNnx`dqSX-YE&?|T)13MUzaGEYU;hx&o>>P995qk1 z(Rv)UChld(yn@#%5g6B~7dF768DNwE+r+gb22ZUP7rtoPJmX3uG__giT zC6gn6LR6xr*E7?Er*J34em~d)Z{fkAK~uq~CI0YUPX84kb<6M9u%!9g>CGFz-ISzH z-;`QxZ;Tr=YqsI)$?#2q(v0BS_aoB~D$Sv$2-(`lY9>cV)Wn+%-m7wOfJX@WE3H(Y zUKC`wNV2|l1+iwe$p5nv^Z`l>q&+g{?L-%iTSdv%a8A0YarfPCKgVJarTZ_wq4+gG;j1X7ODX zC;P{QACz}etmVS*O3)#pj)ormR*6Gghe|Fgy%N!6dy!$Uhb-VEwdZ9rb@h^_8mcVK zSkT7 zyGU{|GI5R0xB|{oL2bsWgatm4#EoWQaRHNZ@0R;&CO^ul1?D>R@?RaJg|B`B&UWaO z#%8$ z9s}Eqe4Z;^(CgNB$(R5=uc`Rcw4UGh^aq8%YvJM>SH{6$Pf-!a*k4Rz*$=AOk}?#n zER)_b7@x6O{a{YaXmh;Ca#bMVj}G(G?za)&9I`kp>>sy(vAzEYRg^LDWaH;9Vd-br z)7u9`(Psl!QgaN~#gDf3{}zN@n(NPY2wuFdDT|G?&=h+wa+rJVse0bMEKw|3H;mTA z(Udwgd&cZJ&wSrrmaDHIO4+8U^5=yBI4B$OvPTd5qv`#-rEgcBmxj4mT(orIe*uaD zNn-$O>JJ{c^vR7&{givwc6y2(;H$eK6>PSrfSYAHKdf)Z~CpZOx}Bhp{kdIuJIu0I^z|04)c^8QXsgPgMQL+ zo8jJK%z9wbnzrv1#fPF@iw84zwSEJ8yKO(q3nZd;04a{0aBT*#AN`GrWtO3iE0xA2 zF$0fDh#l)%iw^)ey~)&*+TEMl%#ZfbiuV4=FG1b#34TvxKV()rrga{PMCVQ$`YgIS`^c&P|)g^@#=m3oM?unFOb9qaz*sN5yX0$+S<(fn*w zdV!^Z?aC320_GAKs{1=z%&%MlWgvtSPUMU0x$ka#c~ zEp{)TMGAaD1eER^nyoCpHSMEE*+6jZZyB5|B~Ql7}Xe!Ley z+rOU})BFmvc&IOqa4P6=xzo*u@CA3$d9H60A}X zrr}XtRl@ggRP*3N{1T@QVyQ+6de=RE0qkDe^vSuxpBYOS(FJY+r0Be5nlrc7=S*pX zvcD@=?RvcJt>RO^UL5^Y9#EnLN-)?jWkd_KK?kcQII3@Xsz_IV?MWev3(!zNhD3O= zTmaFwF<#6?0{ixvCADFFIAM|-OPKh}G(2~R|YXU#J@1?1cn;{HXQ z+V`vES=i8A-^oo_OZi|HPngf%22$MgHb5RPeCFkt6tbRmXvQ4)3wfR{fauVfV^LOd z=$qN$Bb62(>~8D6AGw-oU2svSA7eTLG#9W^(JGwKTVL|1UaoEW(I;{Pi(7gOD=WV1 zR{T*#0{dtL4--})$J2Yh9*bd2=gc@dxf1Tcsk>ifA+Gut!O)t!OG~1=AH<{_=P6az zQGX0+4FI)f7zdXM0+>Sa9n@l5XJDs9-vZEr4bj&El}8c00ohJ+`zs69^L(8ZCcq~k zRCL83By_YXnCTPv^W>S)8wcNpvo>iK>?Gv+?tSm|pDo`0&#*1Js1-L5jET!rzVa?w zV)8pE`)bA!-yZoDAj5$F2_5+FOZ@JeWV)E-!IQ3b*6#r9+wLo{rdee}x9RaSSTge2 zkZ_(-FQW&GMWSVUW}8;ymx5wm@M_nM{va@H@pvJIc?|Wd@|uYv_0iz_umS z$BiVZZBPa1ni?RgVu7^Sv66Ty<-F(O7fHhVwQ^pFmfJvJFS-;M`CjO0Ygl} z>~gQ!5+0>k-4R7Iy~r#$Jhp<_^-Ew&vP#>fTKCz!e+7swiO676J90`1OmQ*5+KbQ9@no*FlQBlTX9<6kf>n`jrBu z9M+ZR*&gR%|q{wDxRMy9is4yUCe&$=M``14w0FZ}-6fZ1pl z3+1u-X1y-Tw>1B)@Sq#fmD=S)%CMJQ=xeoaZ)U$^mD~R{`zC|0jFqHlh2i`oZFEPm zBXlfg|8=;rPvGdAmL>xZ_a7mzm*jaMy$&E4W1Rvve$6~8CDAm^RKsM1dUZT|?C2Q! zL}y4=s1l0ed`+H>M&bzr``bTisD>0B~i6+`691>z7{hn4juJcTfIQHRwMl;{sz2b0IsbvOsdnL?}a0N z7791EU+exNcCF6nRO$EUjMN`|q>s&VX2*ZSE@Qqv&-DmdGYXN(`U3)pGD9I&SC zt<&)JlJy0_9+-OGfoNz9TXrvXIX=;>godEtlUiWW*f9- z_%Bl;WAat|0}O*K1+pc&SqP>lD7wg@F;=3-O`Fl|fH>e7Xu{}BvqbKah|3vozdNRgZW0 z&ly8cd|vJn=L;7@F_!YP?df>%Ecw{*0MJ|SJu-BB{rVQCbrC=1IpJSV-$knY8=6W| z?7P*V_Gj-(1+1d;8+!ED8Nj~Zc3p1=q*q2fNp{eU{eh8KY1zw^k8We|L1#Z7zoT_2`!^Abg;qL_keD_ zwCS`##NO7}x}6jjZ3Y2hIjsuL`fXawG=bdjtKa>HMu&eeKlz-`bCh^mwC}^_O5Xoz}o2T_CY zr5&)2CV;JA92C0?jSmjfbaoUDja^94U4-6 z?J^<^UaYp7We~_B26RlB+-`lI93+326L`zj-4`<<{#8%hEh2je%2`E~d03WDXh%)f zRJ4fbwh;7XDdsQ^NV3*YeVAl73t_u(8FnLC3LfP<^%gH7(&FM%1;AQKNMhqrdYd(k zKMbRvYQKt`U#+tG&A?6R=a}}WE_M&-w5$T?@+SY!q8##94OySfHu^*quCKEQ)yYp* z^4f+f!M~dPC${=Nj@m2GJv1hWAM^M8m%#Kp(kalXGIN|-=OQ-GZ)JN{N&i|kvhiDz zZzFvQf{9Q4NU_dfdCG7#SucqG62)|!H&EX#;37o6T~6KgB39tEC}1haW)7Cr&d&vn zK`mvFW0f&|1krGP>*%fb&Qx6nYheMs^>{Y6u7B@~tE?_#39o%szVN@cc4G(!OZ*>@ z&-?#AvnH=ONnle2w+IDNu#gX!lKrd0xlr2c|2fZ9^E}enj`NA~fBWv&(wwh19o5|} zYZyC0K?BM#h0vA&$bS9LbG6}Ien<)s5SE!W0fgTACHMd1Hw?)kSt8HbA=734U;&Dy zb>I4d5-zSrz=rk$B>58c2^YF~+fT){owaCQj(`obf=sn;-Nu9f5d^4cCi!X6!`W>S zGvr4CFSg?ECAFWL?){^}R?+pt9>Xfw!P^*3uC-q;fTQIdmcLjh|3s4#- zl!&v{h7x{^jvV$f7DbPoWG<@7<*!)Q#*FM89p;Pt;{VUVb%xtm8uanP<5Y42*bDaG zS~f}v`&$1UQ4K*V=lwDR4P>6*UQe>n-LeyeWMGFR-y4R8VTvt>g_D3Gv_|YS)VBC* z#)KNu&{kV}W1X&#(zA0v6~R4k`u1QgDWW$c-D(}y!WK+DAc`QhOsE2iFg-WeQc(HT z@}X}cw-h&yHxXJ6(S%Qev*}gQB46SYjueTD+iyODs*NHSR285>XosgH2?Eb?w2r`RR}BaG9iedwfn~#1Md4j zt_o4420cWmB=y}ae4`%o9>bq&r!Tu>b`VdsT;r&lM)R-L;9_--k=0i;P8AN&sT+Oh zC_U}B0H5B_M&sSLnhC%e9(5QU{31D(EUSm?q+S82N+8%LTPq^Mo3=94XwpNvfF1K! zL}&?OTQ!|s^3)tpJN!L54=iZhZCifqyKoJ#17M}-b;ubbZ(v*)s4*z{3%`>##ga&f zry5{HbdW&1(H|}bXhW&p*%kt6Se5LrOA^#sTlHZGkwRoKfIpKQ+z5f{ZixW_gesy% zO{5t%gVS0TH;>wqe`k)#?`|C(HCKX6gzW5Lu;;kVYa z${}Zd!aLPK*`L5jy1*U4E8upoZ);mpEocO+f)!}n1JGjSaqR0XQIU$vnZ) z^4KDr=q?<3dYSD{)esAP4K)I%e*x~oY(5N|Njn;5?E`cucAy9?)y7h|gqAxG6@wlf z!w*A^ki1R$XA#>_pZ$VM_bTH3)KxZ9N1ISen-?t*LKRN_T>LtK-iCSS(F$%R{W3(@nWQ2pYfw;qL zV{P+HuNPoCtwcu4!SxHdk$rM4iw=*=uRB-*^ZhY{(Rhl&*z6U(Dj}# zYEQeYb}#$fwjuT6mL>`)KasMkHNp-lqpO#b3+ldvm^S=rA!7s3oU}(v!b_k7s9;z> zrhtkexd=MQjlsZPSE`m+Vopwpo$#*+l+*QM5(qrn8wKN9(pkatiTo6)EYCRGh5pTr zY4~6<1)bWA;zL1Kv~eFPqMi!}UTBYEN8F7u8z2coTIDncp8BUWEF#`qt5nvYfN?1f zC19#V5Htmie($#;8O^}{ w!k5Hr<{9 literal 0 HcmV?d00001 diff --git a/afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg b/afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg new file mode 100644 index 0000000..9ec086c --- /dev/null +++ b/afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/afb-client/dist.prod/opa/images/logo/triskel_iot_bzhx250.png b/afb-client/dist.prod/opa/images/logo/triskel_iot_bzhx250.png new file mode 100644 index 0000000000000000000000000000000000000000..b7c7db1b4a73f7264dd35e8c5ce1f2f5f4d3c60b GIT binary patch literal 9799 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 Sample Application
\ No newline at end of file -- 2.16.6