From 95a5e12dca0e0e0eb93b3dad69e529d737840d38 Mon Sep 17 00:00:00 2001 From: Fulup Ar Foll Date: Sat, 28 May 2016 12:28:19 +0200 Subject: [PATCH] Clean up and documentation --- afb-client/README.md | 29 +-- afb-client/app/Backend/RestApis/PostMockApi.js | 53 ------ afb-client/app/Backend/RestApis/TokenMockApi.js | 114 ------------ afb-client/app/Backend/RestApis/_all.js | 29 --- afb-client/app/Backend/server.js | 58 ------ afb-client/app/Frontend/app.js | 5 +- afb-client/app/Frontend/etc/AppConfig.js | 4 +- afb-client/app/Frontend/etc/routes.js | 2 +- .../app/Frontend/images/appli/isnotvalid.png | Bin 11124 -> 0 bytes afb-client/app/Frontend/images/appli/istoobig.png | Bin 35678 -> 0 bytes .../app/Frontend/images/appli/upload-appli.png | Bin 24483 -> 0 bytes afb-client/app/Frontend/images/audio/istoobig.png | Bin 35678 -> 0 bytes .../app/Frontend/images/audio/upload-music.png | Bin 69741 -> 0 bytes afb-client/app/Frontend/images/login/fb-logo.png | Bin 2482 -> 0 bytes afb-client/app/Frontend/images/login/gg-logo.png | Bin 3554 -> 0 bytes afb-client/app/Frontend/images/login/gh-logo.png | Bin 4946 -> 0 bytes afb-client/app/Frontend/images/login/iot-logo.png | Bin 3471 -> 0 bytes afb-client/app/Frontend/images/login/lk-logo.png | Bin 4579 -> 0 bytes afb-client/app/Frontend/images/login/ms-logo.png | Bin 6036 -> 0 bytes afb-client/app/Frontend/images/login/og-logo.png | Bin 2706 -> 0 bytes afb-client/app/Frontend/images/login/pp-logo.png | Bin 3222 -> 0 bytes afb-client/app/Frontend/images/login/yh-logo.png | Bin 5491 -> 0 bytes .../{Home/Home.html => SampleHome/SampleHome.html} | 10 +- .../HomeModule.js => SampleHome/SampleHome.js} | 53 ++++-- .../HomeModule.scss => SampleHome/SampleHome.scss} | 0 .../Sample.html => SamplePost/SamplePost.html} | 14 +- .../SampleModule.js => SamplePost/SamplePost.js} | 6 +- .../SamplePost.scss} | 0 .../ActionButtons.scss} | 18 ++ .../Frontend/widgets/ActionButtons/AppliButton.js | 205 +++++++++++++++++++++ .../SubmitButton.js} | 2 +- .../Frontend/widgets/FormInput/InputPassword.js | 79 -------- .../app/Frontend/widgets/FormInput/InputText.js | 179 ------------------ .../app/Frontend/widgets/FormInput/UploadFiles.js | 2 +- .../widgets/Notifications/TokenRefreshSvc.js | 4 +- afb-client/app/etc/AppDefaults.js | 13 +- .../dist.prod/bower_components/vendor.min.js | 12 -- .../global_styles/foundation-conf.min.css | 2 - .../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 - .../dist.prod/opa/images/appli/isnotvalid.png | Bin 11124 -> 0 bytes afb-client/dist.prod/opa/images/appli/istoobig.png | Bin 15144 -> 0 bytes .../dist.prod/opa/images/appli/upload-appli.png | Bin 10094 -> 0 bytes afb-client/dist.prod/opa/images/audio/istoobig.png | Bin 15144 -> 0 bytes .../dist.prod/opa/images/audio/upload-music.png | Bin 19411 -> 0 bytes .../dist.prod/opa/images/avatars/istoobig.jpg | Bin 7204 -> 0 bytes .../dist.prod/opa/images/avatars/istoobig.png | Bin 15144 -> 0 bytes .../dist.prod/opa/images/avatars/tux-admin.png | Bin 15107 -> 0 bytes .../dist.prod/opa/images/avatars/tux-bzh.png | Bin 18451 -> 0 bytes .../dist.prod/opa/images/avatars/tux-visitor.png | Bin 29307 -> 0 bytes afb-client/dist.prod/opa/images/login/fb-logo.png | Bin 2092 -> 0 bytes afb-client/dist.prod/opa/images/login/gg-logo.png | Bin 2465 -> 0 bytes afb-client/dist.prod/opa/images/login/gh-logo.png | Bin 2779 -> 0 bytes afb-client/dist.prod/opa/images/login/iot-logo.png | Bin 2349 -> 0 bytes afb-client/dist.prod/opa/images/login/lk-logo.png | Bin 2511 -> 0 bytes afb-client/dist.prod/opa/images/login/ms-logo.png | Bin 3024 -> 0 bytes afb-client/dist.prod/opa/images/login/og-logo.png | Bin 2181 -> 0 bytes afb-client/dist.prod/opa/images/login/pp-logo.png | Bin 2236 -> 0 bytes afb-client/dist.prod/opa/images/login/yh-logo.png | Bin 3309 -> 0 bytes .../dist.prod/opa/images/logo/logo_iot_bzh.svg | 1 - .../dist.prod/opa/images/logo/logo_iot_bzhx350.png | Bin 9416 -> 0 bytes .../opa/images/logo/tampon-iot-bzhx450.png | Bin 19420 -> 0 bytes .../dist.prod/opa/images/logo/triskel_iot_bzh.png | Bin 30976 -> 0 bytes .../dist.prod/opa/images/logo/triskel_iot_bzh.svg | 1 - .../opa/images/logo/triskel_iot_bzhx250.png | Bin 9799 -> 0 bytes afb-client/dist.prod/opa/index.html | 3 - afb-client/gulpfile.js | 51 +---- 68 files changed, 290 insertions(+), 672 deletions(-) delete mode 100644 afb-client/app/Backend/RestApis/PostMockApi.js delete mode 100644 afb-client/app/Backend/RestApis/TokenMockApi.js delete mode 100644 afb-client/app/Backend/RestApis/_all.js delete mode 100644 afb-client/app/Backend/server.js delete mode 100644 afb-client/app/Frontend/images/appli/isnotvalid.png delete mode 100644 afb-client/app/Frontend/images/appli/istoobig.png delete mode 100644 afb-client/app/Frontend/images/appli/upload-appli.png delete mode 100644 afb-client/app/Frontend/images/audio/istoobig.png delete mode 100644 afb-client/app/Frontend/images/audio/upload-music.png delete mode 100644 afb-client/app/Frontend/images/login/fb-logo.png delete mode 100644 afb-client/app/Frontend/images/login/gg-logo.png delete mode 100644 afb-client/app/Frontend/images/login/gh-logo.png delete mode 100644 afb-client/app/Frontend/images/login/iot-logo.png delete mode 100644 afb-client/app/Frontend/images/login/lk-logo.png delete mode 100644 afb-client/app/Frontend/images/login/ms-logo.png delete mode 100644 afb-client/app/Frontend/images/login/og-logo.png delete mode 100644 afb-client/app/Frontend/images/login/pp-logo.png delete mode 100644 afb-client/app/Frontend/images/login/yh-logo.png rename afb-client/app/Frontend/pages/{Home/Home.html => SampleHome/SampleHome.html} (79%) rename afb-client/app/Frontend/pages/{Home/HomeModule.js => SampleHome/SampleHome.js} (56%) rename afb-client/app/Frontend/pages/{Home/HomeModule.scss => SampleHome/SampleHome.scss} (100%) rename afb-client/app/Frontend/pages/{Sample/Sample.html => SamplePost/SamplePost.html} (62%) rename afb-client/app/Frontend/pages/{Sample/SampleModule.js => SamplePost/SamplePost.js} (65%) rename afb-client/app/Frontend/pages/{Sample/SampleModule.scss => SamplePost/SamplePost.scss} (100%) rename afb-client/app/Frontend/widgets/{Buttons/SubmitButtons/SubmitButtons.scss => ActionButtons/ActionButtons.scss} (69%) create mode 100644 afb-client/app/Frontend/widgets/ActionButtons/AppliButton.js rename afb-client/app/Frontend/widgets/{Buttons/SubmitButtons/SubmitButtons.js => ActionButtons/SubmitButton.js} (97%) delete mode 100644 afb-client/app/Frontend/widgets/FormInput/InputPassword.js delete mode 100644 afb-client/app/Frontend/widgets/FormInput/InputText.js delete mode 100644 afb-client/dist.prod/bower_components/vendor.min.js delete mode 100644 afb-client/dist.prod/global_styles/foundation-conf.min.css delete mode 100644 afb-client/dist.prod/global_styles/ibz-global.min.css delete mode 100644 afb-client/dist.prod/opa/AFBclient.min.css delete mode 100644 afb-client/dist.prod/opa/AFBclient.min.js delete mode 100644 afb-client/dist.prod/opa/images/appli/isnotvalid.png delete mode 100644 afb-client/dist.prod/opa/images/appli/istoobig.png delete mode 100644 afb-client/dist.prod/opa/images/appli/upload-appli.png delete mode 100644 afb-client/dist.prod/opa/images/audio/istoobig.png delete mode 100644 afb-client/dist.prod/opa/images/audio/upload-music.png delete mode 100644 afb-client/dist.prod/opa/images/avatars/istoobig.jpg delete mode 100644 afb-client/dist.prod/opa/images/avatars/istoobig.png delete mode 100644 afb-client/dist.prod/opa/images/avatars/tux-admin.png delete mode 100644 afb-client/dist.prod/opa/images/avatars/tux-bzh.png delete mode 100644 afb-client/dist.prod/opa/images/avatars/tux-visitor.png delete mode 100644 afb-client/dist.prod/opa/images/login/fb-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/gg-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/gh-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/iot-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/lk-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/ms-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/og-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/pp-logo.png delete mode 100644 afb-client/dist.prod/opa/images/login/yh-logo.png delete mode 100644 afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg delete mode 100644 afb-client/dist.prod/opa/images/logo/logo_iot_bzhx350.png delete mode 100644 afb-client/dist.prod/opa/images/logo/tampon-iot-bzhx450.png delete mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.png delete mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg delete mode 100644 afb-client/dist.prod/opa/images/logo/triskel_iot_bzhx250.png delete mode 100644 afb-client/dist.prod/opa/index.html diff --git a/afb-client/README.md b/afb-client/README.md index 2eb0f6f..8be3dec 100644 --- a/afb-client/README.md +++ b/afb-client/README.md @@ -19,9 +19,6 @@ Install HTML5 development toolchain on your host npm install # this install all development tool chain dependencies sudo npm install --global gulp # this is not mandatory but it will make your live simpler - 4. For livereload functionality [automatic refresh of HTML/CSS] - install [livereload Chrome extension](https://chrome.google.com/webstore/detail/livereload/jnihajbhpnppcggbcgedagnkighmdlei) - ### Overload ./app/etc/AppDefaults.js with '.noderc.js' var config= { @@ -30,34 +27,33 @@ Install HTML5 development toolchain on your host BACKEND : "Backend", // NodeJS Rest API [no leading ./] URLBASE : '/opa/', // HTML basedir when running in production [should end with a /] APIBASE : '/api/', // Api url base dir [should end with a /] - DEBUG : 4001, // Node Debug Port [for mock API debug only] - DBG_LVL : 5, // Debug Trace Level 0=no trace. }; module.exports = config; - WARNING: in current version Frontend/services/AppConfig.js is not updated automatically - you should make sure than your backend config fit with your frontend config. - Note: FCS version should have AppConfig.js configurated automatically from GULP, but this is for "tomorrow" + WARNING: in current development version Frontend/services/AppConfig.js is not updated automatically + you should manually assert that backend config is in sync with frontend config. ### Build project gulp help gulp build-app-dev - gulp watch-dev - http://localhost:3001/opa /* debug mock api base on Backend/RestApi */ + rsync -az dist.dev xxxx@agl-target:afb-client -### Test with Application server binder +### Test with Application # Start AppFramework Binder export MYWORKSPACE=$HOME/Workspace $MYWORKSPACE/afb-daemon/build/afb-daemon --port=1234 --verbose --token=123456789 --rootdir=$MYWORKSPACE/afb-client/dist.dev - Point your browser onto: http://localhost:1234/opa + Point your browser onto: http://agl-target:1234/opa Note: - do not forget '/opa' that should match with your config.URLBASE - if you change --token=xxxx do not forget to update ./Frontend/pages/HomeModules.js - Force HTML/OPA reload with F5 after each HTML5/OPA update or new pages may not be loaded. - - When reloading HTML/OPA with F5 do not forget that your initial token wont be accepted anymore. You should either restart to clean existing session or cleanup AJB_session cookie. + - When reloading HTML/OPA with F5 do not forget that your initial token wont be accepted anymore. You should either: + + restart to clean existing session + + cleanup AJB_session cookie + + start an anonymous web page to get a fresh and clean environment. ### Move to Target cd $MYWORKSPACE/afb-client @@ -72,7 +68,6 @@ Install HTML5 development toolchain on your host |---- package.json |---- bower.json |---- gulpfile.js - |---- .noderc.js [Warning: contains private keys should not uploaded in Github] | |---- /Frontend | | @@ -94,12 +89,6 @@ Install HTML5 development toolchain on your host | |... | | - |---- /Backend - | |-- server.js // launcher - | |----/ models // mogoose database schemas - | |----/ providers // authentication services - | |----/ restapis // application APIs - | |---- (/dist.dev) |---- (/dist.prod) diff --git a/afb-client/app/Backend/RestApis/PostMockApi.js b/afb-client/app/Backend/RestApis/PostMockApi.js deleted file mode 100644 index 022f774..0000000 --- a/afb-client/app/Backend/RestApis/PostMockApi.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (C) 2015 "IoT.bzh" - * Author "Fulup Ar Foll" - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * References: https://github.com/expressjs/multer - */ - -var fs = require('fs'); -var multer = require('multer'); - -function NewApi(handle, prefix) { - var scope=this; // make sure not to loose object context in async callback - - // defined upload directory and check it's a valid one - var upload = multer({ dest: handle.config.UPLOAD_DIR}); - // WARNING: single('avatar') should match with - handle.app.post(prefix +'/upload-image', upload.single('avatar'), function (req, res) { - - handle.trace (scope, 1, "%s/upload file=%s dest=%s/%s", prefix, req.file.originalname, req.file.destination, req.file.filename); - res.send({"jtype": "TEST_message", "status": "success", "info": "done"}); - }); - - // WARNING: single('music') should match with - handle.app.post(prefix +'/upload-music', upload.single('music'), function (req, res) { - - handle.trace (scope, 1, "%s/upload file=%s dest=%s/%s", prefix, req.file.originalname, req.file.destination, req.file.filename); - res.send({"jtype": "TEST_message", "status": "success", "info": "done"}); - }); - - // WARNING: single('appli') should match with - handle.app.post(prefix +'/upload-appli', upload.single('appli'), function (req, res) { - - handle.trace (scope, 1, "%s/upload file=%s dest=%s/%s", prefix, req.file.originalname, req.file.destination, req.file.filename); - res.send({"jtype": "TEST_message", "status": "success", "info": "done"}); - }); - -} - -// Export Class -module.exports = NewApi; \ No newline at end of file diff --git a/afb-client/app/Backend/RestApis/TokenMockApi.js b/afb-client/app/Backend/RestApis/TokenMockApi.js deleted file mode 100644 index 9e6406e..0000000 --- a/afb-client/app/Backend/RestApis/TokenMockApi.js +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (C) 2015 "IoT.bzh" - * Author "Fulup Ar Foll" - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/* ---------------------------------------------------------------------- - * This module simulate Application Framework Binder - * - * /api/afbs/create - * /api/afbs/check?token=123456789 - * /api/afbs/refresh?token=123456789-xxxxx - * /api/afbs/reset?123456789-xxxxx - * - * Note: this MOCK api does not handle any session login. It only returns - * a fake valid or false message depending on call order. - * Its goal is to get a quick way to check you HTML5 client rendering & behaviour. - * - * When you're happy with you HTML5 client OnePageApp check it with afb-daemon - * ----------------------------------------------------------------------*/ - - -function NewApi(handle, prefix) { - var scope=this; // I hate JavaScript - scope.connected=false; - - // Simulate Client Context Session Creation - handle.app.get(prefix +'/create', function (req, res) { - handle.trace (scope, 1, "%s/create body=%s", prefix, req.body.action); - var okResponse= '{ "jtype": "AJB_reply"' + - ', "request": { "prefix": "afbs", "api": "create", "uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx", "status": "processed" }'+ - ', "response": { "token": "Token was refreshed" }'+ - '}'; - - var fxResponse= '{ "jtype": "AJB_reply" ' + - ', "request": { "prefix": "afbs", "api": "create", "status": "fail", "info": "AFB_SESSION_REFRESH Not Initial Token Chain" }'+ - '}'; - - if (scope.connected) res.status(401).send(fxResponse); - else { - res.send(okResponse); - scope.connected=true; - } - }); - - - // Simulate Client Context Check - handle.app.get(prefix +'/check', function (req, res) { - handle.trace (scope, 1, "%s/check query=%s", prefix, req.query.token); - var okResponse= '{"jtype":"AJB_reply"'+ - ',"request":{"prefix":"afbs","api":"check", "status":"processed"}'+ - ',"response":{"isvalid":true}'+ - '}'; - - var fxResponse= '{"jtype":"AJB_reply",'+ - '"request":{"prefix":"afbs","api":"check","status":"empty","info":"AFB_SESSION_CHECK Not a Valid Active Token"}'+ - '}'; - - if (!scope.connected) res.status(401).send(fxResponse); - else res.send(okResponse); - }); - - // Simulate Client Context Check - handle.app.get(prefix +'/refresh', function (req, res) { - handle.trace (scope, 1, "%s/refresh query=%s", prefix, req.query.token); - var okResponse= '{"jtype":"AJB_reply"'+ - ',"request":{"prefix":"afbs","api":"refresh","uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx","status":"processed"}'+ - ',"response":{"isvalid":true}'+ - '}'; - - var fxResponse= '{"jtype":"AJB_reply",'+ - '"request":{"prefix":"afbs","api":"refresh","status":"empty","info":"AFB_SESSION_REFRESH Not a Valid Active Token"}'+ - '}'; - - if (!scope.connected) res.status(401).send(fxResponse); - else res.send(okResponse); - }); - - // Simulate Client Context Session Closing - handle.app.get(prefix +'/reset', function (req, res) { - handle.trace (scope, 1, "%s/reset query=%s", prefix, req.query.token); - var okResponse= '{"jtype":"AJB_reply"'+ - ',"request":{"prefix":"afbs","api":"reset","uuid": "e4ef5e66-xxxx","status":"processed"}'+ - ',"response":{"uuid":"b028b883-8b47-4c6d-9c6e-e79b9e2b81b9"}'+ - '}'; - - var fxResponse= '{"jtype":"AJB_reply",'+ - '"request":{"prefix":"afbs","api":"reset","status":"empty","info":"AFB_SESSION_CLOSE Not a Valid Access Token"}'+ - '}'; - - if (!scope.connected) res.status(401).send(fxResponse); - else { - res.send(okResponse); - scope.connected=false; - } - }); - - -} - -// Export Class -module.exports = NewApi; \ No newline at end of file diff --git a/afb-client/app/Backend/RestApis/_all.js b/afb-client/app/Backend/RestApis/_all.js deleted file mode 100644 index aacf19e..0000000 --- a/afb-client/app/Backend/RestApis/_all.js +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (C) 2015 "IoT.bzh" - * Author "Fulup Ar Foll" - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -PostMockApi = require ('./PostMockApi'); -TokenMockApi = require ('./TokenMockApi'); - -// Include here every application APIs routes modules. -function Initialise (handle) { - - this.sample= new TokenMockApi (handle, config.APIBASE + 'token'); - this.sample= new PostMockApi (handle, config.APIBASE + 'post'); -} - -module.exports = Initialise; - diff --git a/afb-client/app/Backend/server.js b/afb-client/app/Backend/server.js deleted file mode 100644 index 11c5486..0000000 --- a/afb-client/app/Backend/server.js +++ /dev/null @@ -1,58 +0,0 @@ -var config = require('../etc/_Config'); -var trace = require('../etc/_Trace'); -var RestAPI = require('./RestApis/_all'); -var fs = require('fs'); - -var express = require('express'); -var session = require('express-session'); -var bodyParser = require('body-parser'); -var methodOverride = require('method-override'); - -// instanciate express HTTP server -var app = express(); - -// chose dev or prod rootdir -var staticdir = 'dist.dev'; -if (process.env.MODE) staticdir = process.env.MODE === 'prod' ? 'dist.prod' : 'dist.dev'; -else staticdir = config.MODE === 'prod' ? 'dist.prod' : 'dist.dev'; - -var rootdir = __dirname + '/../../' + staticdir; -if (!fs.existsSync(rootdir)) { - console.log("### HOOPS Rootdir not found rootdir=%s\n", rootdir); - process.exit(); -} - -// get all data/stuff of the body (POST) parameters -app.use(bodyParser.json()); // parse application/json -app.use(methodOverride('X-HTTP-Method-Override')); // override with the X-HTTP-Method-Override header in the request. simulate DELETE/PUT - -// This handle should contain enough for application logic -var serverHandle = { - app : app, // Express server - config: config, - trace: config.DBG_LVL > 0 ? trace : function(){/*empty function */} -}; - -// set the static files location /public/img will be /img for users -app.use(express.static(rootdir)); - -// Load Mock APIs -var apirest = new RestAPI(serverHandle); - -app.get(config.URLBASE, function (req, res) { - console.log ("Angular OPA %s", req.originalUrl); - res.sendfile(config.URLBASE +"index.html", {root: rootdir}); -}); - -// rewrite requested URL to include Angular hashPrompt and set session flag for RestAPI -app.get(config.URLBASE + '*', function(req, res) { - // Warning redirect should be under exact "/opa/#!page" or a redirect to home will be done - var redirect=config.URLBASE + '#!' + req.originalUrl.substring(config.URLBASE.length); - res.redirect(redirect); - console.log ("Redirect to: ", redirect); -}); - - -// start app =============================================== -app.listen(config.EXPRESS_PORT, config.EXPRESS_HOST); -console.log('Server Listening http://%s:%d (rootdir=%s)', config.EXPRESS_HOST, config.EXPRESS_PORT, rootdir); \ No newline at end of file diff --git a/afb-client/app/Frontend/app.js b/afb-client/app/Frontend/app.js index 91a8a72..e11c266 100644 --- a/afb-client/app/Frontend/app.js +++ b/afb-client/app/Frontend/app.js @@ -26,8 +26,7 @@ // Application Components 'AppConfig', 'JQueryEmu', - 'HomeModule', - 'SampleModule', + 'SampleHomeModule', 'UploadFiles', 'LinkButton', 'TokenRefresh', @@ -42,7 +41,7 @@ config.$inject = ['$urlRouterProvider', '$locationProvider']; function config($urlProvider, $locationProvider, AppConfig) { - $urlProvider.otherwise('/home'); + $urlProvider.otherwise('/sample-home'); // https://docs.angularjs.org/error/$location/nobase $locationProvider.html5Mode(true).hashPrefix('!'); diff --git a/afb-client/app/Frontend/etc/AppConfig.js b/afb-client/app/Frontend/etc/AppConfig.js index c8f1abe..382c0a3 100644 --- a/afb-client/app/Frontend/etc/AppConfig.js +++ b/afb-client/app/Frontend/etc/AppConfig.js @@ -10,9 +10,7 @@ var myConfig = { paths: { // Warning paths should end with / image : 'images/', - avatar: 'images/avatars/', - audio : 'images/audio/', - appli : 'images/appli/' + avatar: 'images/avatars/' }, session: { // Those data are updated by session service diff --git a/afb-client/app/Frontend/etc/routes.js b/afb-client/app/Frontend/etc/routes.js index c3c5ba4..f147789 100644 --- a/afb-client/app/Frontend/etc/routes.js +++ b/afb-client/app/Frontend/etc/routes.js @@ -1 +1 @@ -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"}]; +var foundationRoutes = [{"name":"PostSample","url":"/sample-post","controller":"SamplePostController as ctrl","animationIn":"slideInRight","path":"pages/SamplePost/SamplePost.html"},{"name":"SampleHome","url":"/sample-home","controller":"SampleHomeController as ctrl","animationIn":"slideInRight","path":"pages/SampleHome/SampleHome.html"}]; diff --git a/afb-client/app/Frontend/images/appli/isnotvalid.png b/afb-client/app/Frontend/images/appli/isnotvalid.png deleted file mode 100644 index 057c21502bbf57c5b99ee645d597031e411afb61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11124 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 diff --git a/afb-client/app/Frontend/images/appli/istoobig.png b/afb-client/app/Frontend/images/appli/istoobig.png deleted file mode 100644 index 5614073fba471f30120f612df9b38b25b1648696..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35678 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 z 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

3b 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 z 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 diff --git a/afb-client/app/Frontend/images/login/gg-logo.png b/afb-client/app/Frontend/images/login/gg-logo.png deleted file mode 100644 index 0c372eb3a5c7f625d00c10e57d6a9f921dda4890..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3554 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 diff --git a/afb-client/app/Frontend/images/login/gh-logo.png b/afb-client/app/Frontend/images/login/gh-logo.png deleted file mode 100644 index ff856fce5a29fdb9b0e9e09d6b7e0fc4aa4acad8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4946 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 O0000N?;6 diff --git a/afb-client/app/Frontend/images/login/og-logo.png b/afb-client/app/Frontend/images/login/og-logo.png deleted file mode 100644 index a6f6e9a5359f33da1ebbfa090060fcbed8cd096a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2706 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 M07*qoM6N<$f+^hy_W%F@ diff --git a/afb-client/app/Frontend/images/login/pp-logo.png b/afb-client/app/Frontend/images/login/pp-logo.png deleted file mode 100644 index dbb886674e08516d78944d3466f8adae7c074e20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3222 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 IM6N<$f;bc)(*OVf diff --git a/afb-client/app/Frontend/images/login/yh-logo.png b/afb-client/app/Frontend/images/login/yh-logo.png deleted file mode 100644 index 6ab90cf3b3db5dbcca5cc380efd4beb3ee0beb5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5491 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 diff --git a/afb-client/app/Frontend/pages/Home/Home.html b/afb-client/app/Frontend/pages/SampleHome/SampleHome.html similarity index 79% rename from afb-client/app/Frontend/pages/Home/Home.html rename to afb-client/app/Frontend/pages/SampleHome/SampleHome.html index 509bd6f..58474b2 100644 --- a/afb-client/app/Frontend/pages/Home/Home.html +++ b/afb-client/app/Frontend/pages/SampleHome/SampleHome.html @@ -1,8 +1,8 @@ --- -name: myhome -url: /home -controller: HomeController as ctrl +name: SampleHome +url: /sample-home +controller: SampleHomeController as ctrl animationIn: slideInRight --- @@ -16,7 +16,7 @@ animationIn: slideInRight

- + @@ -31,5 +31,5 @@ animationIn: slideInRight
- + diff --git a/afb-client/app/Frontend/pages/Home/HomeModule.js b/afb-client/app/Frontend/pages/SampleHome/SampleHome.js similarity index 56% rename from afb-client/app/Frontend/pages/Home/HomeModule.js rename to afb-client/app/Frontend/pages/SampleHome/SampleHome.js index 1743654..bce1b47 100644 --- a/afb-client/app/Frontend/pages/Home/HomeModule.js +++ b/afb-client/app/Frontend/pages/SampleHome/SampleHome.js @@ -4,9 +4,9 @@ // WARNING: make sure than app/frontend/services/AppConfig.js match your server // list all rependencies within the page + controler if needed -angular.module('HomeModule', ['SubmitButton', 'TokenRefresh','ModalNotification']) +angular.module('SampleHomeModule', ['SamplePostModule', 'SubmitButton', 'TokenRefresh','ModalNotification']) - .controller('HomeController', function (AppCall, Notification) { + .controller('SampleHomeController', function (AppCall, Notification) { var scope = this; // I hate JavaScript scope.uuid ="none"; scope.token ="none"; @@ -23,20 +23,35 @@ angular.module('HomeModule', ['SubmitButton', 'TokenRefresh','ModalNotification' scope.request = jresp.request; scope.response = jresp.response; - if (jresp.request.status !== "success") { - Notification.error ({message: "Invalid API call:" + jresp.request.info , delay: 5000}); - scope.class [jresp.request.reqid]="fail"; - return; - } - - switch (jresp.request.reqid) { - case 'login': - case 'logout': - scope.class={}; + var action=jresp.request.reqid.toUpperCase(); + + switch (action) { + case 'CONNECT': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Logout before reconnecting", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + scope.class={}; // reset CSS buttons classes break; - case 'refresh': - case 'check': + case 'LOGOUT': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Do connect first", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + scope.class={}; // reset CSS buttons classes + break; + + case 'REFRESH': + case 'CHECK': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Need to be Connected to check/refresh session", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + break; default: @@ -58,9 +73,9 @@ angular.module('HomeModule', ['SubmitButton', 'TokenRefresh','ModalNotification' console.log ("FX: "+ JSON.stringify(response)); }; - scope.LoginClient = function() { - console.log ("LoginClient"); - AppCall.get ("auth", "login", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); + scope.ConnectClient = function() { + console.log ("ConnectClient"); + AppCall.get ("auth", "connect", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); }; scope.CheckSession = function() { @@ -80,8 +95,8 @@ angular.module('HomeModule', ['SubmitButton', 'TokenRefresh','ModalNotification' }; scope.Initialised = function () { - scope.class = {login: "success"}; - } + scope.class = {connect: "success"}; + }; }); diff --git a/afb-client/app/Frontend/pages/Home/HomeModule.scss b/afb-client/app/Frontend/pages/SampleHome/SampleHome.scss similarity index 100% rename from afb-client/app/Frontend/pages/Home/HomeModule.scss rename to afb-client/app/Frontend/pages/SampleHome/SampleHome.scss diff --git a/afb-client/app/Frontend/pages/Sample/Sample.html b/afb-client/app/Frontend/pages/SamplePost/SamplePost.html similarity index 62% rename from afb-client/app/Frontend/pages/Sample/Sample.html rename to afb-client/app/Frontend/pages/SamplePost/SamplePost.html index 03a4558..fa721c7 100644 --- a/afb-client/app/Frontend/pages/Sample/Sample.html +++ b/afb-client/app/Frontend/pages/SamplePost/SamplePost.html @@ -1,8 +1,8 @@ --- -name: mysample -url: /sample -controller: SampleController as ctrl +name: PostSample +url: /sample-post +controller: SamplePostController as ctrl animationIn: slideInRight --- @@ -20,15 +20,9 @@ animationIn: slideInRight maxsize = [xxx] maximum size in KB [default max depend on upload-type] accept = [image] acceptable accept for upload --> - - - - - - - diff --git a/afb-client/app/Frontend/pages/Sample/SampleModule.js b/afb-client/app/Frontend/pages/SamplePost/SamplePost.js similarity index 65% rename from afb-client/app/Frontend/pages/Sample/SampleModule.js rename to afb-client/app/Frontend/pages/SamplePost/SamplePost.js index 8ae82ea..e0c06de 100644 --- a/afb-client/app/Frontend/pages/Sample/SampleModule.js +++ b/afb-client/app/Frontend/pages/SamplePost/SamplePost.js @@ -2,9 +2,9 @@ 'use strict'; // list all rependencies within the page + controler if needed -angular.module('SampleModule', ['SubmitButton','UploadFiles']) +angular.module('SamplePostModule', ['SubmitButton','UploadFiles']) - .controller('SampleController', function ($http) { + .controller('SamplePostController', function ($http) { var scope = this; // I hate JavaScript console.log ("sample Init"); @@ -14,5 +14,5 @@ angular.module('SampleModule', ['SubmitButton','UploadFiles']) }; }); -console.log ("SampleControler Loaded"); +console.log ("PostSampleController Loaded"); })(); \ No newline at end of file diff --git a/afb-client/app/Frontend/pages/Sample/SampleModule.scss b/afb-client/app/Frontend/pages/SamplePost/SamplePost.scss similarity index 100% rename from afb-client/app/Frontend/pages/Sample/SampleModule.scss rename to afb-client/app/Frontend/pages/SamplePost/SamplePost.scss diff --git a/afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.scss b/afb-client/app/Frontend/widgets/ActionButtons/ActionButtons.scss similarity index 69% rename from afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.scss rename to afb-client/app/Frontend/widgets/ActionButtons/ActionButtons.scss index 2150e4d..6cb8338 100644 --- a/afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.scss +++ b/afb-client/app/Frontend/widgets/ActionButtons/ActionButtons.scss @@ -19,4 +19,22 @@ @import "app/ibz-mixins"; // place here your submit buttons customization +appli-button { + @include ibz-button(grey,1rem) + img { + height: 3rem; + } + + + .disable>i { + text-decoration:none; // really not needed for the Top Bar, just for general technique + cursor: auto; + color: grey !important; + } +} +.appli-menu-start { + .start-start, .stop-stop { + i {color: grey;} + } +} diff --git a/afb-client/app/Frontend/widgets/ActionButtons/AppliButton.js b/afb-client/app/Frontend/widgets/ActionButtons/AppliButton.js new file mode 100644 index 0000000..269ee81 --- /dev/null +++ b/afb-client/app/Frontend/widgets/ActionButtons/AppliButton.js @@ -0,0 +1,205 @@ +/* + * Copyright (C) 2015 "IoT.bzh" + * Author "Fulup Ar Foll" + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * Bugs: Input with Callback SHOULD BE get 'required' class + */ + +(function () { + 'use strict'; + + var tmplAppli = '
' + + '' + + '{{label}}' + + '
'; + + var tmplModal = + '×' + + '' + + 'Application {{label}}' + + '' + + ''; + + var tmplDetail = + '×' + + '' + + 'Application {{label}}' + + '
    ' + + '
  • Name : {{detail.name}}
  • ' + + '
  • Description {{detail.description}}
  • ' + + '
  • Author : {{detail.author}}
  • ' + + '
' + + ''; + + angular.module('AppliButton', []) + .directive('appliButton', function (AppConfig, AppCall, ModalFactory, Notification, $timeout, $window, $location, urlquery) { + + function mymethods(scope, elem, attrs) { + scope.runstatus = "stop"; + scope.runmode = urlquery.runmode || "auto"; + scope.clicked = function () { + + var notifyError = function(action, response) { + Notification.error ({message: "Fail /api/afm-main" + action + "=" + scope.label + " RunID="+ scope.appID, delay: 5000}); + elem.addClass ("fail"); + elem.removeClass ("success"); + scope.callback (scope.appID, action, response); + }; + + var notifySuccess = function (action, response) { + elem.removeClass ("fail"); + scope.runID = response.data.response.runid; + scope.callback (scope.appID, action, response); + }; + + var closeModApp = function() { + scope.modApp.deactivate(); + $timeout (function() {scope.modApp.destroy();}, 1000); + }; + + var closeModInfo = function() { + scope.modInfo.deactivate(); + $timeout (function() {scope.modInfo.destroy();}, 1000); + }; + + var actionModal = function(action) { + console.log ("Modal Action=%s", action); + switch (action) { + + case "start": + if (scope.runstatus !== "stop") return; + AppCall.get ("afm-main", "start", {id: scope.appID, mode: scope.runmode}, function(response) { + if (response.status !== 200 || response.data.jtype !== "afb-reply") { + notifyError ("start", response); + return; + } + scope.runstatus="start"; + notifySuccess (action, response); + if(response.data.response.uri) + scope.winapp= $window.open(response.data.response.uri.replace("%h", $location.host())); + }); + break; + + case "stop": + if (scope.runstatus !== "start") return; + + AppCall.get ("afm-main", "terminate", {runid: scope.runID}, function(response) { + if (response.status !== 200 || response.data.jtype !== "afb-reply") { + notifyError ("stop", response); + return; + } + scope.runstatus="stop"; + + // if a remote window app was open let's close it + if (scope.winapp) { + console.log ("Closing Application Window label=%s id=%s", scope.label, scope.appID); + scope.winapp.close(); + scope.winapp=false; + } + notifySuccess (action, response); + }); + break; + + case "info": + AppCall.get ("afm-main", "detail", {id: scope.appID}, function(response) { + if (response.status !== 200 || response.data.jtype !== "afb-reply") { + notifyError ("detail", response); + return; + } + + // reference http://foundation.zurb.com/apps/docs/#!/angular-modules + var config = { + animationIn: 'slideInFromTop', + contentScope: { + close : closeModInfo, + icon : scope.icon, + label : scope.appID, + detail : response.data.response + }, template : tmplDetail + }; + // Popup Modal to render application data + scope.modInfo = new ModalFactory(config); + scope.modInfo.activate (); + + }); + break; + + case "uninstall": + if (scope.runstatus !== "stop") return; + AppCall.get ("afm-main", "uninstall", {id: scope.appID}, function(response) { + if (response.status !== 200 || response.data.jtype !== "afb-reply") { + notifyError ("uninstall", response); + return; + } + + notifySuccess (action, response); + }); + break; + + default: + console.log ("ActionModal unknown action=[%s]", action); + break; + } + + closeModApp(); + }; + + // reference http://foundation.zurb.com/apps/docs/#!/angular-modules + var config = { + animationIn: 'slideInFromTop', + contentScope: { + action : actionModal, + runstatus: scope.runstatus, + close : closeModApp, + icon : scope.icon, + label : scope.label + }, template : tmplModal + }; + // Popup Modal to render application data + scope.modApp = new ModalFactory(config); + scope.modApp.activate (); + }; + + // extract application information from AppID+Store + if (attrs.handle && scope.store [attrs.handle].name) { + scope.icon = AppConfig.paths.icons + attrs.handle; //scope.store [attrs.handle].name.toLowerCase() + '-ico.png'; + scope.label = scope.store [attrs.handle].name; + scope.appID= attrs.handle; + } else { + scope.icon = AppConfig.paths.icons + 'w3c-ico.png'; + scope.label = attrs.handle; + } + + // add label as class + elem.addClass (scope.label.toLowerCase()); + + // note: clicked in imported and when template is clicked + // it will call clicked method passed in param. + } + + return { + restrict: 'E', + template: tmplAppli, + link: mymethods, + scope: {callback: '=', store: '='} + }; + }); +})(); diff --git a/afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.js b/afb-client/app/Frontend/widgets/ActionButtons/SubmitButton.js similarity index 97% rename from afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.js rename to afb-client/app/Frontend/widgets/ActionButtons/SubmitButton.js index cba2aeb..323cd46 100644 --- a/afb-client/app/Frontend/widgets/Buttons/SubmitButtons/SubmitButtons.js +++ b/afb-client/app/Frontend/widgets/ActionButtons/SubmitButton.js @@ -21,7 +21,7 @@ (function () { 'use strict'; - var tmpl = '
' + + var tmpl = '
' + '' + '{{label}}' + '
'; diff --git a/afb-client/app/Frontend/widgets/FormInput/InputPassword.js b/afb-client/app/Frontend/widgets/FormInput/InputPassword.js deleted file mode 100644 index 157009c..0000000 --- a/afb-client/app/Frontend/widgets/FormInput/InputPassword.js +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (C) 2015 "IoT.bzh" - * Author "Fulup Ar Foll" - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - */ - -(function() { -'use strict'; - -var tmpl = '' + - '' + - ' '+ - ''; - -angular.module('InputPassword',[]) - -.directive('inputPassword', function() { - function mymethods(scope, elem, attrs) { - - scope.valid1 = function (name, value) { - console.log ("Clicked InputPassword1 name=%s value=%s", name, value); - scope.firstpwd = value; - }; - - scope.valid2 = function (name, value, done) { - console.log ("Clicked InputPassword2 name=%s value=%s", name, value); - - // if both passwd equal then call form CB - if (scope.firstpwd !== value) { - done({valid: false, status: 'invalid', errmsg: "both password should match"}); - } else { - scope.callback (attrs.name, value); - } - - }; - - // this method can be called from controller to update widget status - scope.done=function (data) { - console.log ("Text-Input Callback ID="+ attrs.name + " data=", data); - for (var i in data) scope[i] = data[i]; - }; - - // Export some attributes within directive scope for template - scope.name = attrs.name; - scope.label1 = attrs.label || 'Password'; - scope.label2 = attrs.label || 'Password Verification'; - scope.place1 = attrs.placeholder1 || 'User Password'; - scope.tip1 = attrs.tip || 'Choose a Password'; - scope.place2 = attrs.placeholder1 || 'Password Verification'; - scope.tip2 = attrs.tip || 'Confirme your Password'; - scope.minlen = attrs.minlen || 10; - - if ("required" in attrs) scope.required = 'required'; - - } - - return { - restrict: 'E', - template: tmpl, - link: mymethods, - scope: { - callback : '=', - } - }; -}); - -console.log ("InputPassword Loaded"); -})(); diff --git a/afb-client/app/Frontend/widgets/FormInput/InputText.js b/afb-client/app/Frontend/widgets/FormInput/InputText.js deleted file mode 100644 index 2653175..0000000 --- a/afb-client/app/Frontend/widgets/FormInput/InputText.js +++ /dev/null @@ -1,179 +0,0 @@ - -/* - * Copyright (C) 2015 "IoT.bzh" - * Author "Fulup Ar Foll" - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details.. - */ - - - -(function() { -'use strict'; - -var tmpl = '' + - ''+ - '{{errmsg}}'; - -var emailpatern = /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i; - -angular.module('InputText',['JQueryEmu']) - -.directive('inputText', function(JQemu) { - function mymethods(scope, elem, attrs) { - - // default value at 1st rendering - scope.error = false; - scope.valid = false; - scope.status = 'untouch'; - - scope.input = elem.find ("input"); - scope.required = 0; - - // requirer is use to increment requested counter - if ("required" in attrs) { - scope.required = 1; - elem.addClass ("required"); - } - - // user enter input reset error status - scope.selected = function () { - scope.error=false; - scope.errmsg=false; - scope.status = 'touch'; - }; - - scope.validate = function () { - - // get value from input field bypassing Angular ng-model - console.log ("Clicked InputText name=%s value=%s valid=%s", scope.name, scope.value, scope.valid); - - // form is not untouched anymore - scope.parent.removeClass ("ng-pristine"); - - // if value not null clean up string - if (scope.value) { - scope.error=false; - // remove leading and trailling space - scope.value = scope.value.trim(); - - // remove any space is not allowed - if ('nospace' in attrs) { - scope.value=scope.value.replace(/\s/g, ''); - } - - if ('lowercase' in attrs) { - scope.value = scope.value.toLowerCase(); - } - - // check minimum lenght - if ("minlen" in attrs) { - if (scope.value.length < attrs.minlen) { - scope.status='invalid'; - scope.errmsg=scope.name + ': Mininum Lengh= ' + attrs.minlen + ' Characters'; - scope.error=true; - } - } - - if ('email' in attrs) { - if (!emailpatern.test (scope.value)) { - scope.status='invalid'; - scope.errmsg='invalid email address'; - scope.error=true; - } - } - - } else { - if (scope.required) { - scope.status='invalid'; - scope.errmsg=scope.name + ': Required Attribute'; - scope.error=true; - } - } - - // If local control fail let's refuse input - if (scope.error) { - if (scope.required && scope.valid) { - scope.valid = false; - if (scope.l4acounter.validated > 0) scope.l4acounter.validated --; - } - // use call to update form scope on form completeness - scope.callback (attrs.name, null, scope.done); - } else { - // localcheck is OK backup may nevertheless change status to false - if (scope.required && !scope.valid) scope.l4acounter.validated ++; - scope.status='valid'; - scope.valid=true; - scope.callback (attrs.name, scope.value, scope.done); - } - - }; - - // this method can be called from controller to update widget status - scope.done=function (data) { - console.log ("Text-Input Callback ID="+ attrs.name + " data=", data); - for (var i in data) scope[i] = data[i]; - }; - - // Export some attributes within directive scope for template - scope.label = attrs.label; - scope.name = attrs.name; - scope.placeholder = attrs.placeholder; - scope.type = attrs.type || "text"; - scope.tip = attrs.tip; - - // search for form within parent elemnts - scope.parent = JQemu.parent (elem, "FORM"); - - // email enforce lowercase and nospace - if ("email" in attrs) { - attrs.lowercase=true; - attrs.nospace=true; - attrs.minlen=6; - } - - if (scope.required) { - scope.l4acounter = scope.parent.data ("l4acounter"); - if (!scope.l4acounter) { - scope.l4acounter = {required:1, validated:0}; - console.log("Field "+scope.name+" is required (1st)"); - scope.parent.data ("l4acounter", scope.l4acounter); - } else { - console.log("Field "+scope.name+" is required"); - scope.l4acounter.required ++; - } - } - - // refresh validation each time controler update value - scope.$watch ('value', function(){ - if(scope.value) scope.validate(); } - ); - - } - - return { - restrict: 'E', - template: tmpl, - link: mymethods, - scope: { - callback : '=', - value: '=' - } - }; -}); - -console.log ("InputText Loaded"); -})(); diff --git a/afb-client/app/Frontend/widgets/FormInput/UploadFiles.js b/afb-client/app/Frontend/widgets/FormInput/UploadFiles.js index a23809f..90110c9 100644 --- a/afb-client/app/Frontend/widgets/FormInput/UploadFiles.js +++ b/afb-client/app/Frontend/widgets/FormInput/UploadFiles.js @@ -157,7 +157,7 @@ angular.module('UploadFiles',['AppConfig', 'ModalNotification', 'RangeSlider']) }; // Initiallize default values from attributes values - scope.name= attrs.name || 'avatar'; + scope.name= attrs.name || 'file'; scope.category= attrs.category || 'image'; scope.mimetype= (attrs.accept || 'image') + '/*'; scope.maxsize= attrs.maxsize || 100; // default max size 100KB diff --git a/afb-client/app/Frontend/widgets/Notifications/TokenRefreshSvc.js b/afb-client/app/Frontend/widgets/Notifications/TokenRefreshSvc.js index 3e5e8d6..4dee196 100644 --- a/afb-client/app/Frontend/widgets/Notifications/TokenRefreshSvc.js +++ b/afb-client/app/Frontend/widgets/Notifications/TokenRefreshSvc.js @@ -68,7 +68,7 @@ angular.module('TokenRefresh', ['AppConfig', 'ModalNotification']) scope.onsuccess = function(jresp, errcode) { if (errcode !== 200 || jresp.request.status !== "success") { - Notification.warning ({message: jresp.request.info, delay: 5000}); + Notification.warning ({message: "auto-connect :" + jresp.request.info, delay: 10000}); scope.offline(); return false; } @@ -111,7 +111,7 @@ angular.module('TokenRefresh', ['AppConfig', 'ModalNotification']) // Initial connection scope.loggin = function() { - AppCall.get (scope.plugin, "login", {token: AppConfig.session.initial}, function(jresp, errcode) { + AppCall.get (scope.plugin, "connect", {token: AppConfig.session.initial}, function(jresp, errcode) { if (!scope.onsuccess (jresp, errcode)) return; diff --git a/afb-client/app/etc/AppDefaults.js b/afb-client/app/etc/AppDefaults.js index b0eb1a8..8ed0a11 100644 --- a/afb-client/app/etc/AppDefaults.js +++ b/afb-client/app/etc/AppDefaults.js @@ -25,18 +25,7 @@ config = { FRONTEND: "Frontend", // HTML5 frontend [no leading ./] BACKEND : "Backend", // NodeJS Rest API [no leading ./] URLBASE : '/opa/', // HTML basedir when running in production [should end with a /] - APIBASE : '/api/', // Api url base dir [should end with a /] - DEBUG : 4001, // Node Debug Port - DBG_LVL : 5, // Debug Trace Level 0=no trace. - - UPLOAD_DIR: '/tmp/uploads', // directory destination for uploaded files [/api/post/upload] - - // EXPRESS WEB server config [note: URLBASE generate rewriting rules] - EXPRESS_HOST : 'localhost', // HTTP will only listen on related Internet interface - EXPRESS_PORT : 4000, // HTTP port - EXPRESS_LOGDIR : __dirname + '/../../log', // httpd log file - EXPRESS_SECRET : Math.random().toString(36).slice(2), // [default cookie session] - EXPRESS_SESSION : SESSION_TIMEOUT + APIBASE : '/api/' // Api url base dir [should end with a /] }; module.exports = config; diff --git a/afb-client/dist.prod/bower_components/vendor.min.js b/afb-client/dist.prod/bower_components/vendor.min.js deleted file mode 100644 index e7391a7..0000000 --- a/afb-client/dist.prod/bower_components/vendor.min.js +++ /dev/null @@ -1,12 +0,0 @@ -!function(t,e,n){"use strict";function r(t,e){return e=e||Error,function(){var n,r,i=arguments[0],o="["+(t?t+":":"")+i+"] ",a=arguments[1],s=arguments;for(n=o+a.replace(/\{\d+\}/g,function(t){var e=+t.slice(1,-1);return e+20&&e-1 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 R(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)?R(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(!R(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(!R(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:R,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:Pi,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:Ri,ngHide:Mo,ngIf:co,ngInclude:lo,ngInit:ho,ngNonBindable:Ao,ngPluralize:So,ngRepeat:To,ngShow:zo,ngStyle:Do,ngSwitch:jo,ngSwitchWhen:No,ngSwitchDefault:Po,ngOptions:Lo,ngTransclude:Ro,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=(Pr.exec(t)||["",""])[1].toLowerCase(),i=Fr[r]||Fr._default,n.innerHTML=i[1]+t.replace(Rr,"<$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 Pt(t,e){var n=t.nodeName;return("INPUT"===n||"TEXTAREA"===n)&&Vr[e]}function Rt(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=P(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,R(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={},P="",F=m.baseHref();m.cookies=function(t,e){var i,o,a,s,u;if(!t){if(v.cookie!==P)for(P=v.cookie,o=P.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?R: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=P(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=P(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=Pt(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:P(ei),put:P(ei),patch:P(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,P(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],P(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 Pe(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 Re(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||Re(t)?u:m,l=s||Re(e)?u:m,f=s||Re(r)?u:m,h=s||Re(i)?u:m,d=s||Re(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||Re(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 Pe(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?R(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=P(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 Rn(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(Rn(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 R(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(!R(t,p)){var r=i(p);h(r,n)}}else c(n)}p=P(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+;/,Pr=/<([\w:]+)/,Rr=/<(?!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=Rt(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=P(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&&(Pe(t,null,a.$name,a,a.$name),i.$observe(o,function(e){a.$name!==e&&(Pe(t,null,a.$name,n,a.$name),u.$$renameControl(a,e),Pe(t,null,a.$name,a,a.$name))})),r.on("$destroy",function(){u.$removeControl(a),o&&Pe(t,null,i[o],n,a.$name),f(a,Di)})}}}};return r}]},Pi=Ni(),Ri=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:Pn("date",Vi,Nn(Vi,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":Pn("datetimelocal",qi,Nn(qi,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:Pn("time",Xi,Nn(Xi,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:Pn("week",Hi,jn,"yyyy-Www"),month:Pn("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 P in v){if(I=v[P],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})}}),Po=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})}}),Ro=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(){R(r,n.$viewValue)||(r=P(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 R[A]=r,O&&(R[O]=n),t(e,R)}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,R):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],P.length<=E?(i={element:x.clone().attr("label",t),label:n.label},l=[i],P.push(l),s.append(i.element)):(l=P[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(;P.length>E;){for(n=P.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={},P=[[{element:s,label:""}]],R={};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=R++;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 P=x.$watch(function(){return E.totalPendingRequests},function(t,e){0===t&&(P(),x.$$postDigest(function(){x.$$postDigest(function(){b.running=!1})}))}),R=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+R];o=Math.max(y(u),o);e[z+R];s=Math.max(y(e[z+R]),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(R,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-P,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,P=Date.now(),R=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(R,u),h.closeAnimationFns.push(function(){s(),r()}),h.running++,m(e,B),s}function x(t,e){t.style[O+P]=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",P="Property",R="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 V(new(V(function(){},{prototype:t})),e)}function i(t){return U(arguments,function(e){e!==t&&U(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 U(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]&&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 V({},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,F(t))v.push(n,[function(){return e.get(t)}],c);else{var i=e.annotate(t);U(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 B(t)&&t.then&&t.$$promises}if(!B(u))throw new Error("'invocables' must be an object");var m=a(u||{}),v=[],g=[],$={};return U(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(!P(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;U(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(!B(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=V({},r),b=1+v.length/3,w=!1;if(P(o.$$failure))return u(o.$$failure),g;o.$$inheritedValues&&i(y,h(o.$$inheritedValues,m)),V($,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 P(t.template)?this.fromString(t.template,e):P(t.templateUrl)?this.fromUrl(t.templateUrl,e):P(t.templateProvider)?this.fromProvider(t.templateProvider,e,n):null},this.fromString=function(t,e){return R(t)?t(e):t},this.fromUrl=function(n,r){return R(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 W.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:o=o.replace(/\/$/,""),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),s&&(c=W.type(s)||r(W.type("string"),{pattern:new RegExp(s,e.caseInsensitive?"i":n)})),{id:a,regexp:s,segment:u,type:c,cfg:l}}e=V({params:{}},B(e)?e:{});var u,c=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,l=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,f="^",h=0,d=this.segments=[],p=i?i.params:{},m=this.params=i?i.params.$$new():new W.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){V(this,t)}function y(){function t(t){return null!=t?t.toString().replace(/~/g,"~~").replace(/\//g,"~2F"):t}function i(t){return null!=t?t.toString().replace(/~2F/g,"/").replace(/~~/g,"~"):t}function o(){return{strict:m,caseInsensitive:h}}function u(t){return R(t)||L(t)&&R(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){V(this,t||{})}W=this;var f,h=!1,m=!0,v=!1,b={},w=!0,_=[],x={string:{encode:t,decode:i,is:function(t){return null==t||!P(t)||"string"==typeof t},pattern:/[^\/]*/},"int":{encode:t,decode:function(t){return parseInt(t,10)},is:function(t){return P(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 P(t)&&(h=t),h},this.strictMode=function(t){return P(t)&&(m=t),m},this.defaultSquashPolicy=function(t){if(!P(t))return v;if(t!==!0&&t!==!1&&!F(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,V(o(),e))},this.isMatcher=function(t){if(!B(t))return!1;var e=!0;return U(g.prototype,function(n,r){R(n)&&(e=e&&P(t[r])&&R(t[r]))}),e},this.type=function(t,e,n){if(!P(e))return b[t];if(b.hasOwnProperty(t))throw new Error("A type named '"+t+"' has already been defined.");return b[t]=new $(V({name:t},e)),n&&(_.push({name:t,def:n}),w||c()),this},U(x,function(t,e){b[e]=new $(V({name:e},t))}),b=r(b,{}),this.$get=["$injector",function(t){return f=t,w=!1,c(),U(x,function(t,e){b[e]||(b[e]=new $(t))}),this}],this.Param=function(t,r,i,o){function c(t){var e=B(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 l(n,r,i){if(n.type&&r)throw new Error("Param '"+t+"' has two type configurations.");return r?r:n.type?e.isString(n.type)?b[n.type]:n.type instanceof $?n.type:new $(n.type):"config"===i?b.any:b.string}function h(){var e={array:"search"===o?"auto":!1},n=t.match(/\[\]$/)?{array:!0}:{};return V(e,n,i).array}function m(t,e){var n=t.squash;if(!e||n===!1)return!1;if(!P(n)||null==n)return v;if(n===!0||F(n))return n;throw new Error("Invalid squash policy: '"+n+"'. Valid policies: false, true, or arbitrary string")}function g(t,e,r,i){var o,a,u=[{from:"",to:r||e?n:""},{from:null,to:r||e?n:""}];return o=L(t.replace)?t.replace:[],F(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 y(){if(!f)throw new Error("Injectable functions cannot be called at configuration time");var t=f.invoke(i.$$fn);if(null!==t&&t!==n&&!x.type.is(t))throw new Error("Default value ("+t+") for parameter '"+x.id+"' is not an instance of Type ("+x.type.name+")");return t}function w(t){function e(t){return function(e){return e.from===t}}function n(t){var n=p(d(x.replace,e(t)),function(t){return t.to});return n.length?n[0]:t}return t=n(t),P(t)?x.type.$normalize(t):y()}function _(){return"{Param:"+t+" "+r+" squash: '"+k+"' optional: "+E+"}"}var x=this;i=c(i),r=l(i,r,o);var C=h();r=C?r.$asArray(C,"search"===o):r, -"string"!==r.name||C||"path"!==o||i.value!==n||(i.value="");var E=i.value!==n,k=m(i,E),A=g(i,C,E,k);V(this,{id:t,type:r,location:o,array:C,squash:k,replace:A,isOptional:E,value:w,dynamic:n,config:i,toString:_})},l.prototype={$$new:function(){return r(this,V(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(),U(e,function(e){U(a(e),function(e){-1===s(t,e)&&-1===s(r,e)&&t.push(e)})}),t},$$values:function(t){var e={},n=this;return U(n.$$keys(),function(r){e[r]=n[r].value(t&&t[r])}),e},$$equals:function(t,e){var n=!0,r=this;return U(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 p(){return u=u||i.$on("$locationChangeSuccess",d)}var m,v=a.baseHref(),g=r.url();return f||p(),{sync:function(){d()},listen:function(){return p()},update:function(t){return t?void(g=r.url()):void(r.url()!==g&&(r.url(g),r.replace()))},push:function(t,e,i){var o=t.format(e||{});null!==o&&e&&e["#"]&&(o+="#"+e["#"]),r.url(o),m=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),a=a&&s.history;var u=n.format(i);if(o=o||{},a||null===u||(u="#"+t.hashPrefix()+u),null!==u&&i&&i["#"]&&(u+="#"+i["#"]),u=h(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(!R(t))throw new Error("'rule' must be a function");return c.push(t),this},this.otherwise=function(t){if(F(t)){var e=t;t=function(){return e}}else if(!R(t))throw new Error("'rule' must be a function");return l=t,this},this.when=function(t,e){var n,s=F(e);if(F(t)&&(t=r.compile(t)),!s&&!R(e)&&!L(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)}]),V(function(n,r){return a(n,e,t.exec(r.path(),r.search()))},{prefix:F(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)}]),V(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","$sniffer"]}function w(t,i){function o(t){return 0===t.indexOf(".")||0===t.indexOf("^")}function h(t,e){if(!t)return n;var r=F(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(!F(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(".")):F(e.parent)?e.parent:B(e.parent)&&F(e.parent.name)?e.parent.name:"";if(i&&!E[i])return d(i,e.self);for(var o in S)R(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 F(t)&&!P(e)?S[t]:R(e)&&F(t)?(S[t]&&!S.$delegates[t]&&(S.$delegates[t]=S[t]),S[t]=e,this):this}function b(t,e){return B(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 U(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(R(r.controllerProvider)||L(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,V({inherit:!0,relative:C.$current},n))},C.transitionTo=function(e,n,o){n=n||{},o=V({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(!P(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),!P(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,M=[];if(o.reload){if(F(o.reload)||B(o.reload)){if(B(o.reload)&&!o.reload.name)throw new Error("Invalid reload state object");var D=o.reload===!0?p[0]:h(o.reload);if(o.reload&&!D)throw new Error("No such reload state '"+(F(o.reload)?o.reload:o.reload.name)+"'");for(;I&&I===p[T]&&I!==D;)z=M[T]=I.locals,T++,I=E[T]}}else for(;I&&I===p[T]&&I.ownParams.$$equals(n,f);)z=M[T]=I.locals,T++,I=E[T];if(_(e,n,c,f,z,o))return g&&(n["#"]=g),C.params=n,q(C.params,d),q(l(e.params.$$keys(),d),e.locals.globals.$stateParams),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||{}),g&&(n["#"]=g),o.notify&&t.$broadcast("$stateChangeStart",e.self,n,c.self,f,o).defaultPrevented)return t.$broadcast("$stateChangeCancel",e.self,n,c.self,f),null==C.transition&&m.update(),S;for(var j=i.when(z),N=T;N=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=4?!!c.enabled(t):1===X&&Y>=2?!!c.enabled():!!u}var i={enter:function(t,e,n){e.after(t),n()},leave:function(t,e){t.remove(),e()}};if(t.noanimation)return i;if(c)return{enter:function(t,n,o){r(t)?e.version.minor>2?c.enter(t,null,n).then(o):c.enter(t,null,n,o):i.enter(t,n,o)},leave:function(t,n){r(t)?e.version.minor>2?c.leave(t).then(n):c.leave(t,n):i.leave(t,n)}};if(u){var o=u&&u(n,t);return{enter:function(t,e,n){o.enter(t,null,e),n()},leave:function(t,e){o.leave(t),e()}}}return i}var s=o(),u=s("$animator"),c=s("$animate"),l={restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(n,o,s){return function(n,o,u){function c(){function t(){e&&e.remove(),n&&n.$destroy()}var e=f,n=d;n&&(n._willBeDestroyed=!0),h?(g.leave(h,function(){t(),f=null}),f=h):(t(),f=null),h=null,d=null}function l(a){var l,f=k(n,u,o,i),$=f&&t.$current&&t.$current.locals[f];if((a||$!==p)&&!n._willBeDestroyed){l=n.$new(),p=t.$current.locals[f],l.$emit("$viewContentLoading",f);var y=s(l,function(t){g.enter(t,o,function(){d&&d.$emit("$viewContentAnimationEnded"),(e.isDefined(v)&&!v||n.$eval(v))&&r(t)}),c()});h=y,d=l,d.$emit("$viewContentLoaded",f),d.$eval(m)}}var f,h,d,p,m=u.onload||"",v=u.autoscroll,g=a(u,n);n.$on("$stateChangeSuccess",function(){l(!1)}),l(!0)}}};return l}function E(t,e,n,r){return{restrict:"ECA",priority:-400,compile:function(i){var o=i.html();return function(i,a,s){var u=n.$current,c=k(i,s,a,r),l=u&&u.locals[c];if(l){a.data("$uiView",{name:c,state:l.$$state}),a.html(l.$template?l.$template:o);var f=t(a.contents());if(l.$$controller){l.$scope=i,l.$element=a;var h=e(l.$$controller,l);l.$$controllerAs&&(i[l.$$controllerAs]=h),a.data("$ngControllerController",h),a.children().data("$ngControllerController",h)}f(i)}}}}}function k(t,e,n,r){var i=r(e.uiView||e.name||"")(t),o=n.inheritedData("$uiView");return i.indexOf("@")>=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){var e="[object SVGAnimatedString]"===Object.prototype.toString.call(t.prop("href")),n="FORM"===t[0].nodeName;return{attr:n?"action":e?"xlink:href":"href",isAnchor:"A"===t.prop("tagName").toUpperCase(),clickable:!n}}function O(t,e,n,r,i){return function(o){var a=o.which||o.button,s=i();if(!(a>1||o.ctrlKey||o.metaKey||o.shiftKey||t.attr("target"))){var u=n(function(){e.go(s.state,s.params,s.options)});o.preventDefault();var c=r.isAnchor&&!s.href?1:0;o.preventDefault=function(){c--<=0&&n.cancel(u)}}}}function I(t,e){return{relative:S(t)||e.$current,inherit:!0}}function z(t,n){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(r,i,o,a){var s=A(o.uiSref,t.current.name),u={state:s.state,href:null,params:null},c=T(i),l=a[1]||a[0];u.options=V(I(i,t),o.uiSrefOpts?r.$eval(o.uiSrefOpts):{});var f=function(n){n&&(u.params=e.copy(n)),u.href=t.href(s.state,u.params,u.options),l&&l.$$addStateInfo(s.state,u.params),null!==u.href&&o.$set(c.attr,u.href)};s.paramExpr&&(r.$watch(s.paramExpr,function(t){t!==u.params&&f(t)},!0),u.params=e.copy(r.$eval(s.paramExpr))),f(),c.clickable&&i.bind("click",O(i,t,n,c,function(){return u}))}}}function M(t,e){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(n,r,i,o){function a(e){f.state=e[0],f.params=e[1],f.options=e[2],f.href=t.href(f.state,f.params,f.options),u&&u.$$addStateInfo(f.state,f.params),f.href&&i.$set(s.attr,f.href)}var s=T(r),u=o[1]||o[0],c=[i.uiState,i.uiStateParams||null,i.uiStateOpts||null],l="["+c.map(function(t){return t||"null"}).join(", ")+"]",f={state:null,params:null,options:null,href:null};n.$watch(l,a,!0),a(n.$eval(l)),s.clickable&&r.bind("click",O(r,t,e,s,function(){return f}))}}}function D(t,e,n){return{restrict:"A",controller:["$scope","$element","$attrs","$timeout",function(e,r,i,o){function a(e,n,i){var o=t.get(e,S(r)),a=s(e,n);m.push({state:o||{name:e},params:n,hash:a}),v[a]=i}function s(t,n){if(!F(t))throw new Error("state should be a string");return B(n)?t+H(n):(n=e.$eval(n),B(n)?t+H(n):t)}function u(){for(var t=0;t0||(a(t,e,p),u())},e.$on("$stateChangeSuccess",u),u()}]}}function j(t){var e=function(e,n){return t.is(e,n)};return e.$stateful=!0,e}function N(t){var e=function(e,n,r){return t.includes(e,n,r)};return e.$stateful=!0,e}var P=e.isDefined,R=e.isFunction,F=e.isString,B=e.isObject,L=e.isArray,U=e.forEach,V=e.extend,q=e.copy,H=e.toJson;e.module("ui.router.util",["ng"]),e.module("ui.router.router",["ui.router.util"]),e.module("ui.router.state",["ui.router.router","ui.router.util"]),e.module("ui.router",["ui.router.state"]),e.module("ui.router.compat",["ui.router"]),m.$inject=["$q","$injector"],e.module("ui.router.util").service("$resolve",m),v.$inject=["$http","$templateCache","$injector"],e.module("ui.router.util").service("$templateFactory",v);var W;g.prototype.concat=function(t,e){var n={caseInsensitive:W.caseInsensitive(),strict:W.strictMode(),squash:W.defaultSquashPolicy()};return new g(this.sourcePath+t+this.sourceSearch,V(n,e),this)},g.prototype.toString=function(){return this.source},g.prototype.exec=function(t,e){function n(t){function e(t){return t.split("").reverse().join("")}function n(t){return t.replace(/\\-/g,"-")}var r=e(t).split(/-(?!\\)/),i=p(r,e);return p(i,n).reverse()}var r=this.regexp.exec(t);if(!r)return null;e=e||{};var i,o,a,s=this.parameters(),u=s.length,c=this.segments.length-1,l={};if(c!==r.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");var f,h;for(i=0;c>i;i++){for(a=s[i],f=this.params[a],h=r[i+1],o=0;oi;i++){for(a=s[i],l[a]=this.params[a].value(e[a]),f=this.params[a],h=e[a],o=0;oo;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],y=o+1===s;if(v===!1)null!=g&&(c+=L(g)?p(g,e).join("-"):encodeURIComponent(g)),c+=$;else if(v===!0){var b=c.match(/\/$/)?/\/?(.*)/:/(.*)/;c+=$.match(b)[1]}else F(v)&&(c+=v+$);y&&h.squash===!0&&"/"===c.slice(-1)&&(c=c.slice(0,-1))}else{if(null==g||m&&v!==!1)continue;if(L(g)||(g=[g]),0===g.length)continue;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 L(t)?t:P(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){if(L(n)&&0===n.length)return 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=Rt);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=Rt);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 P(){this.evEl=Lt,this.evWin=Ut,this.allow=!0,this.pressed=!1,x.apply(this,arguments)}function R(){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),R):r(t,B)}function w(t){var e=b(t);return e===R&&$(t.state),e}function _(t,e){return t&&t.state?2!==t.state.wrap?B:(t.state.gzhead=e,R):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>P||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,R}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),R;if(p===yt&&(e===D?T._tr_align(s):e!==P&&(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,R}return e!==N?R: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?R: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):R)):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,P=5,R=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=P;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 P: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=R;case R: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),R=0,O=0,T=I,x=v,D=M,j=0,w=-1,P=1<o||t===c&&P>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?(R&=y-1,R+=y):R=0,O++,0===--L[T]){if(T===z)break;T=e[n+g[O]]}if(T>M&&(R&_)!==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(P+=1<o||t===c&&P>a)return 1;w=R&_,m[w]=M<<24|D<<16|x-v|0}}return 0!==R&&(m[x+R]=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,(P<<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,P=2,R=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-R+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,P,R,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,P=B.length;P>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,R=q.length;R>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,P,R,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"],P=0,L=G.length;L>P;P++)k=G[P],s.push(""+p+"-"+k);for(a=[],A=r({},S),v=r({},this.attachment),K=this.options.constraints,R=0,U=K.length;U>R;R++){if(m=K[R],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/global_styles/foundation-conf.min.css b/afb-client/dist.prod/global_styles/foundation-conf.min.css deleted file mode 100644 index 076aa73..0000000 --- a/afb-client/dist.prod/global_styles/foundation-conf.min.css +++ /dev/null @@ -1,2 +0,0 @@ -.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 deleted file mode 100644 index 74b2072..0000000 --- a/afb-client/dist.prod/global_styles/ibz-global.min.css +++ /dev/null @@ -1,2 +0,0 @@ -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 deleted file mode 100644 index c3fcafe..0000000 --- a/afb-client/dist.prod/opa/AFBclient.min.css +++ /dev/null @@ -1,9 +0,0 @@ -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy9hcHAvaWJ6LWdsb2JhbC5zY3NzIiwic3R5bGVzL2FwcC9faWJ6LW1peGlucy5zY3NzIiwicGFnZXMvSG9tZS9Ib21lTW9kdWxlLnNjc3MiLCJwYWdlcy9TYW1wbGUvU2FtcGxlTW9kdWxlLnNjc3MiLCJ3aWRnZXRzL0Zvcm1JbnB1dC9Gb3JtSW5wdXQuc2NzcyIsIndpZGdldHMvTmF2aWdhdGlvbi9OYXZpZ2F0aW9uLnNjc3MiLCJ3aWRnZXRzL05vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9ucy5zY3NzIiwid2lkZ2V0cy9SYW5nZVNsaWRlcnMvUmFuZ2VzbGlkZXIuc2NzcyIsIndpZGdldHMvQnV0dG9ucy9TdWJtaXRCdXR0b25zL1N1Ym1pdEJ1dHRvbnMuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9CYSxjQUNULE1BQU8sTUNEUCxRQUFTLGFBQ1QsT0FBVyxJQUFNLE1BQUMsUUFDbEIsV0FBZSxJQUFJLElBQUksSUFBQyxLQUN4QixNRERvQixLQ0VwQixjQUFlLElBQ2YsV0FBWSxPQUNaLFFBQVMsRUFBQSxNQUNULE9BQU8sTUFDUCxXQUFZLFFBQ1gsZ0JBQ0csY0FBZSxNQUNmLFVBWnlCLEtBY3pCLG1CQUFFLFVBQVcsS0FFVixvQkFDTCxXQUFZLFFBQ1osT0FBVyxJQUFNLE1BQUMsUURaaEIsU0FDTixpQkFBa0IscUJBR1IsYUNwQlIsT0FBUSxJQUFBLE1BQUEsa0JBQ1IsY0FBZSxJQUlmLFVBQVcsY0FDWCxPQUFRLE1BQ1IsV0FBWSxxQkRnQkYsd0JBQ04sUUFBUyxNQUNULFVBQVcsT0FLSCxpQkFDWixNQUFPLEtBQ1AsY0FBZTtBRWxCTixjQUNULFFBQVMsTUFDVCxNQUFPLE1BQ1AsT0FBUSxNQUFBLEtBQUEsRUFBQSxFQUdELFlBQ1AsT0FBVSxPQUVLLDRCQUNiLE1BQU8sS0FDUCxNQUFPLEtBR08sMkJBQ1osUUFBUyxNQUNULE9BQVEsTUFBQSxNQUdQLGtCQUNELE1BdEJLLElBdUJMLE9BQVcsSUFBTSxNQUFDLEtBRWQs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UyxPQUlKLGNMNUJULFFBQVMsYUFDVCxPQUFXLElBQU0sTUFBQyxRQUNsQixXQUFlLElBQUksSUFBSSxJQUFDLEtBQ3hCLE1LMEJvQixLTHpCcEIsY0FBZSxJQUNmLFdBQVksT0FDWixRQUFTLEVBQUEsTUFDVCxPQUFPLE1Ld0JPLEtMeEJQLE1BQUEsTUFDUCxXQUFZLFFBQ1gsZ0JBQ0csY0FBZSxNQUNmLFVLa0JxQixLQUN0QixZQUFhLE1MZlQsb0JBQ0wsV0FBWSxRQUNaLE9BQVcsSUFBTSxNQUFDLFFLaUJKLHFCQUNoQixNQUFPLEtBQ04sdUJBQUUsTUFBTyxLQUdPLHNCQUNqQixNQUFPLEtBQ04sd0JBQUUsTUFBTztBQ2xETSxxQkFDbEIsUUFBUyxhQUNULFNBQVUsU0FDVixRQUFTLEVBQ1QsSUFBSyxPQUNMLE1BQU8sS0FDUCxPQUFRLFNBQ1IsT0FBUSxJQUFBLE1BQ1IsT0FBUSxRQUNSLFdBQVksUUFHNEIscUJBQTdCLHFCQUNYLFdBQVksUUFDWixzQkFBdUIsSUFDdkIsY0FBZSxJQUdXLDZCQUMxQixRQUFTLGFBQ1QsSUFBSyxPQUNMLFNBQVUsU0FDVixPQUFRLE1BQ1IsV0FBWSxRQUdHLGtCQUNkLGlCQUFzQiw4QkFDdEIsT0FBUSxLQUNSLFNBQVUsU0FFaUIsK0NBQzFCLGlCQUFrQixvQkFOTCwwQkFVYixpQkFBc0IsOEJBQ3RCLE1BQVEsZUFDUixRQUFTLE9BQ1QsV0FBVyxPQWJiLHdCQUFlLHVCQWlCZCxRQUFTLGFBQ1QsU0FBVSxTQUNWLFlBQWEsSUFDYixPQUFRLElBQ1IsV0FBWTtBQzFEZiIsImZpbGUiOiJBRkJjbGllbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG5cblRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG5pdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxudGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG5cblRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2Zcbk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG5cbllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG5hbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiovXG5cbkBpbXBvcnQgXCJhcHAvaWJ6LW1peGluc1wiO1xuXG5zdWJtaXQtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgQGluY2x1ZGUgaWJ6LWJ1dHRvbihncmV5KTtcbn1cblxuemYtbW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MCwxODAsMTgwLC41KTtcbn1cblxuLmJveC1jb250ZW50IHtcbiAgICAgQGluY2x1ZGUgaWJ6LWJveC1jb250ZW50O1xuXG4gICAgLmJveC10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG59XG5cbi8vIENoYW5nZSBOb3RpZmljYXRpb25zIGRlZmF1bHQgc2l6ZVxuLnVpLW5vdGlmaWNhdGlvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufSIsIi8qXG4gICAgRXZlcnkgU0NTUyBmaWxlcyB3aWxsIGJlIGluamVjdGVkIGludG8gbWFpbiBIVE1MIHBhZ2VcbiovXG4lc2hhZG93LXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGxpbmVhciAwcywgYm94LXNoYWRvdyAwLjJzIGxpbmVhciAwcztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbkBtaXhpbiBpYnotYm94LWNvbnRlbnQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGdhaW5zYm9ybyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiA5OCUgIWltcG9ydGFudDsgXG4gICAgbWFyZ2luOiAuNXJlbSAuNXJlbSAuNXJlbSAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwMCwyMDUsMjAwLC4zKTtcbn1cblxuQG1peGluIGliei1idXR0b24gKCRjb2xvciwgJHNpemU6MnJlbSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLDEwJSk7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAxcHggYWRqdXN0LWh1ZSgkY29sb3IsMjBkZWcpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiAwcmVtIC41cmVtIDByZW0gLjVyZW07XG4gICAgbWFyZ2luOi41cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oIzk0OTRiNywgMjAlKTtcbiAgICBpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4zcmVtO1xuICAgICAgICBmb250LXNpemU6ICRzaXplO1xuICAgIH1cbiAgICBzcGFuIHtmb250LXNpemU6IDFyZW19XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvciwgNDUlKTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGRhcmtlbigkY29sb3IsMjAlKTtcbiAgICAgIFxuICAgIH1cbn1cblxuQG1peGluIGliei1pbnB1dC1hbGVydCAoJGNvbG9yLCAkYmFja2dyb3VuZCkge1xuICAgIHBvc2l0aW9uICA6Zml4ZWQ7XG4gICAgbWFyZ2luOiAtMi4ycmVtIDAgMCAxNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLDEwJSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMnJlbSAhaW1wb3J0YW50O1xufVxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbiRDT0xPUl9TVUNDRVNTOiBncmVlbjtcbiRDT0xPUl9GQUlMOiByZWQ7XG5cbnRva2VuLXJlZnJlc2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IC41cmVtIDFyZW0gMCAwO1xufVxuXG4uYnV0dG9uLWJveCB7XG4gICAgaGVpZ2h0ICA6IDQuNXJlbTtcbiAgICBcbiAgICAuc2Vzc2lvbi1idXR0b24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNXJlbTtcbiAgICB9O1xuICAgIFxuICAgIC5yZXNwb25zZSA+IHNwYW57XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IC4zcmVtIC41cmVtIC4zcmVtIC41cmVtOyAgICAgICAgXG4gICAgfSAgXG4gICAgXG4gICAgLmZhaWwgeyBcbiAgICAgICAgY29sb3I6JENPTE9SX0ZBSUw7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkQ09MT1JfRkFJTCwxMCUpO1xuICAgIH1cbiAgICAuc3VjY2VzcyB7IFxuICAgICAgICBjb2xvcjokQ09MT1JfU1VDQ0VTUzsgXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkQ09MT1JfU1VDQ0VTUywxMCUpO1xuICAgIH1cblxufTtcblxuLm1lc3NhZ2UtYm94IHtcbiAgICBoZWlnaHQgIDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgXG4gICAgLnJlc3BvbnNlIHtcbiAgICAgICAgLmVyci1ubyB7IGNvbG9yOmdyZXk7IH1cbiAgICAgICAgLnJlcy5lcnItb2sgeyBjb2xvcjogYmx1ZTsgfVxuICAgICAgICAucmVxLmVyci1vayB7IGNvbG9yOmJsdWV2aW9sZXQ7IH1cbiAgICAgICAgLnN0YXR1cy5lcnItb2sgeyBjb2xvcjpncmVlbjsgfVxuICAgICAgICAuc3RhdHVzLmVyci1meCB7IGNvbG9yOnJlZDsgfSAgICAgICBcbiAgICB9IFxuICAgIFxuXG59O1xuXG5cblxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cblxuLnNhbXBsZS1ib3gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodCAgOiA0LjVyZW07XG4gICAgXG4gICAgLnNhbXBsZS1idXR0b24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDVyZW07XG4gICAgfTtcbiAgICBcbiAgICAubXV0ZWQtb24tb24sLm11dGVkLW9mZi1vZmZ7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsdWV2aW9sZXQ7XG4gICAgfTtcbiAgICAgICAgXG4gICAgLm11dGVkLWVycm9ye1xuICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgfTtcbn07XG5cblxuXG4iLCIvKlxuICAgIFNhbXBsZSBvZiBzdHlsZSBvdmVybG9hZCBmb3IgYSBzcGVjaWZpYyB3aWRnZXRcblxuICAgIE5vdGU6IHRoaXMgU0NTUyBpcyBpbmplY3RlZCB3aXRoIG1haW4gSFRNTCBwYWdlLCBpdCBzY29wZSBzaG91bGQgYmUgcmVkdWNlXG4gICAgdG8gYSBzcGVjaWZpYyB3aWRnZXQgb3IgaXQgdmFsdWUgd2lsbCBiZSBwcm9wYWdhdGVkIGF0IGEgZ2xvYmFsIGxldmVsLlxuKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbi51cGxvYWQtZmlsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQgOiA1cmVtO1xuICAgIHdpZHRoICA6IDVyZW07XG4gICAgbWFyZ2luOiAwLjVyZW07XG5cbiAgICBpbWcgeyBoZWlnaHQ6IGluaGVyaXQ7fVxuICAgIFxuICAgIC5pYnotcmFuZ2Utc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZXkgIWltcG9ydGFudDtcbiAgICBcbiAgICAgICAgLnJhbmdlLXNsaWRlci1oYW5kbGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuMnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHB1cnBsZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5pbnB1dC10ZXh0IHtcbiAgXG4gICAgYWxlcnQge0BpbmNsdWRlIGliei1pbnB1dC1hbGVydChkYXJrYmx1ZSwgcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjYpKX07XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5yZXF1aXJlZCB7XG4gICAgICAgIGNvbG9yOiBibHVlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGNvbG9yOiBsaWdodHNreWJsdWU7XG4gICAgfVxuICAgIC5yZXF1aXJlZC52YWxpZCB7XG4gICAgICAgIGNvbG9yOiBncmVlbjtcbiAgICB9XG4gICAgXG4gICAgLnJlcXVpcmVkLmludmFsaWQge1xuICAgICAgICBjb2xvcjogcGx1bTtcbiAgICB9ICBcblxuICAgIC5zdGF0dXMtdW50b3VjaCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjYpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSBpbnNldCwgMCAwIDhweCByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNikgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM2OTY5NjkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg4MiwxNjgsMjM2LDAuOCkgO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSkgaW5zZXQsIDAgMCA4cHggcmdiYSg4MiwxNjgsMjM2LDAuOCkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuMnMgbGluZWFyIDBzLCBib3gtc2hhZG93IDAuMnMgbGluZWFyIDBzO1xuICAgICAgICBjb2xvcjogZGFya3NsYXRlYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBAZXh0ZW5kIHNoYWRvdy10cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIC5zdGF0dXMtdmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTU0LCAyMDUsIDUwLCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpIGluc2V0LCAwIDAgOHB4IHJnYmEoMTU0LCAyMDUsIDUwLCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgQGV4dGVuZCBzaGFkb3ctdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICAuc3RhdHVzLWludmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTU0LCAxNywgNjksIDAuNik7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSBpbnNldCwgMCAwIDhweCByZ2JhKDE1NCwgMTcsIDY5LCAwLjYpIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHJnYigxNTQsIDE3LCA2OSk7XG4gICAgICAgIEBleHRlbmQgc2hhZG93LXRyYW5zaXRpb247XG4gICAgfVxuXG59XG4iLCIvKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5AaW1wb3J0IFwiYXBwL2liei1taXhpbnNcIjtcblxuXG5saW5rLWJ1dHRvbiB7QGluY2x1ZGUgaWJ6LWJ1dHRvbigjMzM2NmZmLDFyZW0pfTtcblxuLy9wYWxlIGJsdWUgZm9yIHNlY29uZGF0eSBsaW5rXG5saW5rLWJ1dHRvbi5zZWNvbmRhcnkge0BpbmNsdWRlIGliei1idXR0b24oIzk5YjNmZiwxcmVtKX07XG5cbiIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICogXG4gKiBSZWZlcmVuY2U6IGh0dHA6Ly93d3cuZ3JleXd5dmVybi5jb20vP3Bvc3Q9MzM3XG4gKi9cblxuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cblxubGluay1idXR0b24ge0BpbmNsdWRlIGliei1idXR0b24oIzMzNjZmZiwxcmVtKX07XG5cbi8vIE1vZGFsIHNob3VsZCBiZSByZWxhdGl2ZSBhbmQgdGlwLW1vZGFsLXBvcHVwIGFic29sdXRlXG50aXAtbW9kYWwge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG4udGlwLW1vZGFsLXBvcHVwIHtcbiAgICAvL3Zpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMjByZW07XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjFlbTtcbiAgICBwYWRkaW5nOiAwLjJlbSAwLjZlbTtcbiAgICBib3JkZXI6MXB4IHNvbGlkICM5OTY2MzM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjojZTVmZmZmO1xuICAgIGNvbG9yOiMwMDA7XG4gICAgb3BhY2l0eTowO1xuICAgIHRyYW5zaXRpb246dmlzaWJpbGl0eSAuNXMgbGluZWFyIDFzLG9wYWNpdHkgMXMgbGluZWFyO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBpIHtcbiAgICAgICAgbWFyZ2luOiAwIC4zcmVtIDAgMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbn1cblxudG9rZW4tcmVmcmVzaCB7XG4gICAgQGluY2x1ZGUgaWJ6LWJ1dHRvbihncmV5LDFyZW0pXG4gICAgaSB7bWFyZ2luLWxlZnQ6IC41cmVtO31cbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbnRva2VuLXJlZnJlc2gub25saW5lIHtcbiAgICBjb2xvcjogIzAwNjZjYztcbiAgICBpIHtjb2xvcjogbGltZTt9ICAgIFxufVxuXG50b2tlbi1yZWZyZXNoLm9mZmxpbmUge1xuICAgIGNvbG9yOiAjZmYwMGZmO1xuICAgIGkge2NvbG9yOiByZWQ7fSAgICBcbn1cbiIsIi8qXG4gKiBpYnotRGF0ZXBpY2tlciBmb3IgRm91bmRhdGlvblxuICpcbiAqIEF1dGhvcjogRnVsdXAgQXIgRm9sbFxuICogRGF0ZSAgOiBNYXJjaC0yMDE1XG4gKiBPYmplY3Q6IFNBU1Mgc3R5bGVzaGVldCwgY3VzdG9taXplZCB0byBGb3VuZGF0aW9uXG4gKiBSZWZlcmVuY2VzOiBodHRwczovL2Nzcy10cmlja3MuY29tL3N0cmlwZXMtY3NzL1xuICpcbiAqL1xuQGltcG9ydCBcImFwcC9pYnotbWl4aW5zXCI7XG5cbi5yYW5nZS1zbGlkZXItaGFuZGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogLTAuMnJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMS4zNzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogIzAwOGNiYTtcbn1cblxuLnJhbmdlLXNsaWRlci5yYWRpdXMsIC5yYW5nZS1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZDogIzAwOGNiYTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdG9wOiAwLjA3cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMC44MHJlbTtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbn1cblxuLmliei1yYW5nZS1zbGlkZXIge1xuICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTQsIDIwNSwgNTAsIDAuNikgIWltcG9ydGFudDtcbiAgIGhlaWdodDogMXJlbTtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgIFxuICAucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgyLCAxNjgsIDIwMCwgMC42KTtcbiAgfVxuICBcbiAgJi1kaXNwbGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgyLCAxNjgsIDIwMCwgMC42KSAhaW1wb3J0YW50O1xuICAgIHdpZHRoIDogNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IC4yNXJlbTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlclxuICAgfVxuXG4gICAmLXN0YXJ0LCYtc3RvcCB7XG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBwYWRkaW5nLXRvcDogMnB4O1xuICAgaGVpZ2h0OiA5NSU7XG4gICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgIDQ1ZGVnLFxuICAgICM2MDZkYmMsXG4gICAgIzYwNmRiYyAxMHB4LFxuICAgICM0NjUyOTggMTBweCxcbiAgICAjNDY1Mjk4IDIwcHhcbiAgKTt9XG5cbn1cbiIsbnVsbF0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */ diff --git a/afb-client/dist.prod/opa/AFBclient.min.js b/afb-client/dist.prod/opa/AFBclient.min.js deleted file mode 100644 index f6d5d1c..0000000 --- a/afb-client/dist.prod/opa/AFBclient.min.js +++ /dev/null @@ -1,2 +0,0 @@ -!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",["AppConfig","ModalNotification"]).directive("tokenRefresh",["$window","$timeout","$location","Notification","AppConfig","AppCall",function(t,n,a,i,s,o){function l(e,l,r){e.logged=void 0,t.onbeforeunload=function(){o.get("token","reset",{},function(){})},e.online=function(){l.addClass("online"),l.removeClass("offline"),e.logged=!0},e.offline=function(){l.addClass("offline"),l.removeClass("online"),e.logged=!1},e.onerror=function(){e.logged!==!1&&(i.warning({message:"AppFramework Binder Lost",delay:5e3}),e.offline()),e.status=0},e.onsuccess=function(t){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),e.logged!==!0&&(i.success({message:"AppFramework Binder Back to Live",delay:3e3}),e.online(),e.callback&&e.callback(t)),e.status=1},e.getping=function(){o.get("token","ping",{},function(t){200===t.status?e.onsuccess(t.data):e.onerror(),n(e.getping,1e3*s.session.pingrate)})},e.refresh=function(){o.get("token","refresh",{},function(t){200===t.status?e.onsuccess(t.data):e.onerror(),n(e.refresh,250*s.session.timeout)})},e.tkcreate=function(){o.get("token","create",{token:s.session.initial},function(t){200===t.status?e.onsuccess(t.data):e.onerror()})},e.icon=r.icon||"fi-lightbulb",e.hostname=a.host(),e.httpdport=a.port(),e.autolog=JSON.parse(r.autolog||!1),e.autolog&&e.tkcreate(),n(e.getping,1e3*s.session.pingrate),n(e.refresh,250*s.session.timeout)}return{template:e,scope:{callback:"="},restrict:"E",link:l}}])}(),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",["AppConfig","ModalNotification","RangeSlider"]).directive("uploadImage",["AppConfig","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",["AppConfig","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",["AppConfig","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","AppConfig",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("AppConfig",[]).factory("AppConfig",["urlquery",function(e){var t={paths:{image:"images/",avatar:"images/avatars/",audio:"images/audio/",appli:"images/appli/"},session:{create:"/api/token/create",refresh:"/api/token/refresh",check:"/api/token/check",reset:"/api/token/reset",ping:"/api/token/check",initial:e.token||"123456789",timeout:3600,pingrate:60,uuid:"",token:""}};return t}]).factory("AppCall",["$http","AppConfig",function(e,t){var n={get:function(n,a,i,s){i.token||(i.token=t.session.token),e.get("/api/"+n+"/"+a,{params:i}).then(s,s)}};return n}])}(),function(){"use strict";function e(){var e={};return location.search.substr(1).split("&").forEach(function(t){var n=t.split("=")[0],a=decodeURIComponent(t.split("=")[1]);n in e?e[n].push(a):e[n]=[a]}),e}function t(e,t,n){e.otherwise("/home"),t.html5Mode(!0).hashPrefix("!")}function n(){FastClick.attach(document.body)}angular.module("AFBclient",["ui.router","ngAnimate","foundation","foundation.dynamicRouting","foundation.dynamicRouting.animations","ui-notification","AppConfig","JQueryEmu","HomeModule","SampleModule","UploadFiles","LinkButton","TokenRefresh","RangeSlider","ModalNotification"]).value("urlquery",e()).config(t).run(n),t.$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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndpZGdldHMvQnV0dG9ucy9TdWJtaXRCdXR0b25zL1N1Ym1pdEJ1dHRvbnMuanMiLCJ3aWRnZXRzL1JhbmdlU2xpZGVycy9SYW5nZVNsaWRlck1vZC5qcyIsIndpZGdldHMvTm90aWZpY2F0aW9ucy9Ub2tlblJlZnJlc2hTdmMuanMiLCJ3aWRnZXRzL05vdGlmaWNhdGlvbnMvTW9kYWxOb3RpZmljYXRpb24uanMiLCJ3aWRnZXRzL05hdmlnYXRpb24vTGlua0J1dHRvbi5qcyIsIndpZGdldHMvRm9ybUlucHV0L1VwbG9hZEZpbGVzLmpzIiwid2lkZ2V0cy9Gb3JtSW5wdXQvSW5wdXRUZXh0LmpzIiwid2lkZ2V0cy9Gb3JtSW5wdXQvSW5wdXRQYXNzd29yZC5qcyIsInBhZ2VzL1NhbXBsZS9TYW1wbGVNb2R1bGUuanMiLCJwYWdlcy9Ib21lL0hvbWVNb2R1bGUuanMiLCJzZXJ2aWNlcy9KUXVlcnlFbXUuanMiLCJldGMvcm91dGVzLmpzIiwiZXRjL0FwcENvbmZpZy5qcyIsImFwcC5qcyIsInBhZ2VzL1NhbXBsZS9TYW1wbGUuanMiLCJwYWdlcy9Ib21lL0hvbWUuanMiXSwibmFtZXMiOlsidG1wbCIsImFuZ3VsYXIiLCJtb2R1bGUiLCJkaXJlY3RpdmUiLCJteW1ldGhvZHMiLCJzY29wZSIsImVsZW0iLCJhdHRycyIsImljb24iLCJsYWJlbCIsImFkZENsYXNzIiwidG9Mb3dlckNhc2UiLCJyZXN0cmljdCIsInRlbXBsYXRlIiwibGluayIsImNsaWNrZWQiLCJSYW5nZVNsaWRlckhhbmRsZSIsImludGVybmFscyIsImV4dGVybmFscyIsInRoaXMiLCJnZXRJZCIsInNsaWRlcmlkIiwiZ2V0Q2JIYW5kbGUiLCJjYmhhbmRsZSIsImdldFZpZXciLCJoYW5kbGUiLCJ2YWx1ZSIsImZvcm1hdHRlciIsImN0cmxoYW5kbGUiLCJ1cGRhdGVDbGFzcyIsImNsYXNzZSIsInN0YXR1cyIsImZvcmNlUmVmcmVzaCIsInRpbWVyIiwiZ2V0VmFsdWUiLCJnZXRSZWxhdGl2ZSIsInJlbGF0aXZlIiwic2V0VmFsdWUiLCJzZXREaXNhYmxlIiwiZmxhZyIsIlJhbmdlU2xpZGVyIiwiJGxvZyIsIiRkb2N1bWVudCIsIiR0aW1lb3V0IiwiZWxlbWVudCIsIm1vZGVsIiwiaW5pdFdpZGdldCIsImluaXR2YWx1ZXMiLCJieVN0ZXAiLCJwYXJzZUludCIsIm5vdE1vcmUiLCJub3RMZXNzIiwiaWQiLCJ1bmRlZmluZWQiLCJkdWFsIiwicmVtb3ZlQ2xhc3MiLCJkaXNhYmxlZCIsImhhbmRsZXMiLCJjc3MiLCJub3JtYWxpemUiLCJyZXN1bHQiLCJyYW5nZSIsInBvaW50IiwibW9kIiwicmVtIiwicm91bmQiLCJwb3dlciIsIk1hdGgiLCJwb3ciLCJvZmZzZXQiLCJ2ZXJ0aWNhbCIsImJvdW5kcyIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImhlaWdodCIsImJhciIsIndpZHRoIiwibmV3dmFsdWUiLCJzdGFydFZhbHVlIiwic3RvcFZhbHVlIiwidmlld1ZhbHVlIiwiZGlzcGxheXMiLCJodG1sIiwiJHNldFZpZXdWYWx1ZSIsIiRhcHBseSIsInRyYW5zbGF0ZSIsInNldFN0YXJ0Iiwic3RhcnQiLCJzZXRTdG9wIiwic3RvcCIsInJpZ2h0Iiwidm9mZnNldCIsIi13ZWJraXQtdHJhbnNmb3JtIiwiLW1vei10cmFuc2Zvcm0iLCItbXMtdHJhbnNmb3JtIiwiLW8tdHJhbnNmb3JtIiwidHJhbnNmb3JtIiwic2xpZGVyIiwiYm90dG9tIiwibGVmdCIsImtleWRvd24iLCJlIiwia2V5Q29kZSIsImFjdGlmIiwiY2FsbGJhY2siLCJibHVyIiwibW92ZUhhbmRsZSIsImNsaWVudFgiLCJjbGllbnRZIiwiZm9jdXNDQiIsImluc2lkZSIsIm9uIiwidW5iaW5kIiwidG91Y2hCYXJDQiIsImV2ZW50IiwidG91Y2hlcyIsImNoYW5nZWRUb3VjaGVzIiwib2xkdmFsdWUiLCJwcmV2ZW50RGVmYXVsdCIsInBhZ2VZIiwicGFnZVgiLCJkaXN0YW5jZTAiLCJhYnMiLCJkaXN0YW5jZTEiLCJ0b3VjaEhhbmRsZUNCIiwidG91Y2hldnQiLCJ0b3VjaG1vdmUiLCJpZHgiLCJsZW5ndGgiLCJ0b3VjaGVuZCIsImhhbmRsZUNCIiwiY2xpY2tldmVudCIsIm1vdXNlbW92ZSIsIm1vdXNldXAiLCJhdXRvbWF0aWMiLCJmb2N1cyIsImZpbmQiLCJzZWxlY3QiLCJkb21lbGVtIiwicXVlcnlTZWxlY3RvciIsImFuZ2VsZW0iLCJpbml0aWFsU2V0dGluZ3MiLCJpbml0aWFsIiwiZGVjaW1hbF9wbGFjZXNfbWF0Y2hfcmVzdWx0IiwicHJlY2lzaW9uIiwibWF0Y2giLCJldnQiLCJpbml0IiwicmFuZG9tIiwiSW5maW5pdHkiLCJkdWFsSGFuZGxlcyIsInRyaWdnZXJfaW5wdXRfY2hhbmdlIiwiZGlzYWJsZSIsImRpc3BsYXlUYXJnZXQiLCJnZXRFbGVtZW50QnlJZCIsInNwbGl0IiwibmdNb2RlbCIsIiR3YXRjaCIsInN0YXJ0QXQiLCJzdG9wQXQiLCJpbml0aG9vayIsIm5ld1ZhbHVlIiwicmVxdWlyZSIsInJlcGxhY2UiLCIkd2luZG93IiwiJGxvY2F0aW9uIiwiTm90aWZpY2F0aW9uIiwiQXBwQ29uZmlnIiwiQXBwQ2FsbCIsImxvZ2dlZCIsIm9uYmVmb3JldW5sb2FkIiwiZ2V0Iiwib25saW5lIiwib2ZmbGluZSIsIm9uZXJyb3IiLCJ3YXJuaW5nIiwibWVzc2FnZSIsImRlbGF5Iiwib25zdWNjZXNzIiwianJlc3AiLCJyZXF1ZXN0IiwidG9rZW4iLCJzZXNzaW9uIiwidXVpZCIsInRpbWVvdXQiLCJzdWNjZXNzIiwiZ2V0cGluZyIsImRhdGEiLCJwaW5ncmF0ZSIsInJlZnJlc2giLCJ0a2NyZWF0ZSIsImhvc3RuYW1lIiwiaG9zdCIsImh0dHBkcG9ydCIsInBvcnQiLCJhdXRvbG9nIiwiSlNPTiIsInBhcnNlIiwiZGlzcGxheSIsImFjdGlvbiIsInNob3ciLCJtb2RhbCIsIm9wYWNpdHkiLCJ2aXNpYmlsaXR5IiwiY2xvc2UiLCJwYXJlbnQiLCJiaW5kIiwidGlwIiwicXVlcnkiLCJwYXRoIiwiaHJlZiIsInNlYXJjaCIsIkxvYWRGaWxlU3ZjIiwicG9zdHVybCIsImZpbGVzIiwidGh1bWJuYWlsQ0IiLCJ4bWxSZXEiLCJYTUxIdHRwUmVxdWVzdCIsInhmb3JtIiwiRm9ybURhdGEiLCJPbkxvYWRDQiIsInRhcmdldCIsInVwbG9hZCIsIm9ucHJvZ3Jlc3MiLCJwcm9ncmVzcyIsImxlbmd0aENvbXB1dGFibGUiLCJsb2FkZWQiLCJ0b3RhbCIsIm9ubG9hZCIsInJlc3BvbnNlIiwiaGVhZGVycyIsImdldEFsbFJlc3BvbnNlSGVhZGVycyIsIm9uYWJvcnQiLCJpIiwiZmlsZSIsInR5cGUiLCJtaW1ldHlwZSIsInNpemUiLCJtYXhzaXplIiwidGh1bWJuYWlsIiwiaXN0b29iaWciLCJpc05hTiIsImlzbm90dmFsaWQiLCJCYXNlbmFtZSIsIm5hbWUiLCJyZXZlcnNlIiwiaW1nRWxlbSIsInJlYWRlciIsIkZpbGVSZWFkZXIiLCJyZWFkQXNBcnJheUJ1ZmZlciIsImFwcGVuZCIsIm9wZW4iLCJzZW5kIiwiSlFlbXUiLCJpbnB1dEVsZW0iLCJpbWdDbGlja2VkIiwiY2xpY2siLCJTbGlkZXJJbml0Q0IiLCJVcExvYWRGaWxlIiwicmVhZGVyQ0IiLCJzcmMiLCJ3aW5kb3ciLCJVUkwiLCJjcmVhdGVPYmplY3RVUkwiLCJCbG9iIiwiY2F0ZWdvcnkiLCJhY2NlcHQiLCJyZWdleHAiLCJSZWdFeHAiLCJwYXRocyIsIm5vc2xpZGVyIiwiVHlwZUVycm9yIiwiemlwYXBwIiwiSlNaaXAiLCJhc0FycmF5QnVmZmVyIiwiZW1haWxwYXRlcm4iLCJlcnJvciIsInZhbGlkIiwiaW5wdXQiLCJyZXF1aXJlZCIsInNlbGVjdGVkIiwiZXJybXNnIiwidmFsaWRhdGUiLCJ0cmltIiwibWlubGVuIiwidGVzdCIsImw0YWNvdW50ZXIiLCJ2YWxpZGF0ZWQiLCJkb25lIiwicGxhY2Vob2xkZXIiLCJsb3dlcmNhc2UiLCJub3NwYWNlIiwidmFsaWQxIiwiZmlyc3Rwd2QiLCJ2YWxpZDIiLCJsYWJlbDEiLCJsYWJlbDIiLCJwbGFjZTEiLCJwbGFjZWhvbGRlcjEiLCJ0aXAxIiwicGxhY2UyIiwidGlwMiIsImNvbnRyb2xsZXIiLCIkaHR0cCIsIkZpbGVVcGxvYWRlZCIsIlByb2Nlc3NSZXNwb25zZSIsImVycmNvZGUiLCJjb25maWciLCJhcGluYW1lIiwiYXBpIiwiQVBJcmVzZXQiLCJBUEljcmVhdGUiLCJBUElyZWZyZXNoIiwiQVBJY2hlY2siLCJQcm9jZXNzRXJyb3IiLCJPcGVuU2Vzc2lvbiIsInBvc3RkYXRhIiwiaGFuZGxlciIsInBvc3QiLCJjcmVhdGUiLCJDaGVja1Nlc3Npb24iLCJjaGVjayIsIlJlZnJlc2hTZXNzaW9uIiwiUmVzZXRTZXNzaW9uIiwicmVzZXQiLCJmYWN0b3J5IiwiRmluZEluUGFyZW50Iiwic2VsZWN0b3IiLCJ0b1VwcGVyQ2FzZSIsInRhZ05hbWUiLCJGaW5kQnlUYWciLCJ0YWciLCJjaGlsZHJlbiIsIm5leHQiLCJGaW5kQnlDbGFzcyIsImhhc0NsYXNzIiwibXlNZXRob2RzIiwiZm91bmRhdGlvblJvdXRlcyIsInVybCIsImFuaW1hdGlvbkluIiwidXJscXVlcnkiLCJteUNvbmZpZyIsImltYWdlIiwiYXZhdGFyIiwiYXVkaW8iLCJhcHBsaSIsInBpbmciLCJteUNhbGxzIiwicGx1Z2luIiwicGFyYW1zIiwidGhlbiIsIlBhcnNlUXVlcnlTdHJpbmciLCJxZCIsImxvY2F0aW9uIiwic3Vic3RyIiwiZm9yRWFjaCIsIml0ZW0iLCJrIiwidiIsImRlY29kZVVSSUNvbXBvbmVudCIsInB1c2giLCIkdXJsUHJvdmlkZXIiLCIkbG9jYXRpb25Qcm92aWRlciIsIm90aGVyd2lzZSIsImh0bWw1TW9kZSIsImhhc2hQcmVmaXgiLCJydW4iLCJGYXN0Q2xpY2siLCJhdHRhY2giLCJkb2N1bWVudCIsImJvZHkiLCIkaW5qZWN0IiwiJHRlbXBsYXRlQ2FjaGUiLCJwdXQiXSwibWFwcGluZ3MiOiJDQW9CQSxXQUNBLFlBRUEsSUFBQUEsR0FBQSx3RkFLQUMsU0FBQUMsT0FBQSxtQkFDQUMsVUFBQSxlQUFBLFdBRUEsUUFB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YUFDQSxlQUNBLGNBQ0Esc0JBRUF3QixNQUFBLFdBQUFvVSxLQUNBNUMsT0FBQUEsR0FDQTJELElBQUFBLEdBR0EzRCxFQUFBZ0UsU0FBQSxxQkFBQSx3QkN6Q0EsV0FBQWpYLFFBQUFDLE9BQUEsYUFBQTJXLEtBQUEsaUJBQUEsU0FBQU0sR0FBQUEsRUFBQUMsSUFBQSwyQkFDQSxxc0JDREEsV0FBQW5YLFFBQUFDLE9BQUEsYUFBQTJXLEtBQUEsaUJBQUEsU0FBQU0sR0FBQUEsRUFBQUMsSUFBQSx1QkFDQSIsImZpbGUiOiJBRkJjbGllbnQubWluLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKiBcbiAqIEJ1Z3M6IElucHV0IHdpdGggQ2FsbGJhY2sgU0hPVUxEIEJFIGdldCAncmVxdWlyZWQnIGNsYXNzXG4gKi9cblxuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgdG1wbCA9ICc8ZGl2ICBuZy1jbGljaz1cImNsaWNrZWQoKVwiPiA8c3Bhbj4nICtcbiAgICAgICAgICAgICc8aSBjbGFzcz1cInt7aWNvbn19XCI+PC9pPicgK1xuICAgICAgICAgICAgJzxzcGFuPnt7bGFiZWx9fTwvc3Bhbj4nICtcbiAgICAgICAgICAgICc8L2Rpdj4nO1xuXG4gICAgYW5ndWxhci5tb2R1bGUoJ1N1Ym1pdEJ1dHRvbicsIFtdKVxuICAgICAgICAgICAgLmRpcmVjdGl2ZSgnc3VibWl0QnV0dG9uJywgZnVuY3Rpb24gKCkge1xuXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gbXltZXRob2RzKHNjb3BlLCBlbGVtLCBhdHRycykge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIGFqdXN0IGljb24gb3IgdXNlIGRlZmF1bHRcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaWNvbiA9IGF0dHJzLmljb24gfHwgJ2ZpLWZvb3QnO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5sYWJlbCA9IGF0dHJzLmxhYmVsIHx8ICdOZXh0JztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vIGFkZCBsYWJlbCBhcyBjbGFzc1xuICAgICAgICAgICAgICAgICAgICBlbGVtLmFkZENsYXNzIChzY29wZS5sYWJlbC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vIG5vdGU6IGNsaWNrZWQgaW4gaW1wb3J0ZWQgYW5kIHdoZW4gdGVtcGxhdGUgaXMgY2xpY2tlZFxuICAgICAgICAgICAgICAgICAgICAvLyBpdCB3aWxsIGNhbGwgY2xpY2tlZCBtZXRob2QgcGFzc2VkIGluIHBhcmFtLlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgICAgICAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICAgICAgICAgICAgICBzY29wZToge2NsaWNrZWQgOiAnPSd9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xufSkoKTtcbiIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICogXG4gKiBCdWdzOiBJbnB1dCB3aXRoIENhbGxiYWNrIFNIT1VMRCBCRSBnZXQgJ3JlcXVpcmVkJyBjbGFzc1xuICogXG4gKiByZWY6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9tb3VzZW92ZXJcbiAqIFxuICogdXNhZ2U6IFxuVXNhZ2UgIDxyYW5nZS1zbGlkZXI+XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIDxyYW5nZS1zbGlkZXJcbiAgICAgIGlkPVwibXktc2xpZGVyLW5hbWVcIiAgICAgICAgICAgICAgICAgICAgIC8vIG9ubHkgdXNlIGFzIGFuIGFyZ3VtZW50IHRvIGNhbGxiYWNrXG4gICAgICBjbGFzcz1cIm15LWN1c3RvbS1jbGFzc1wiICAgICAgICAgICAgICAgICAvLyBkZWZhdWx0IGNsYXNzIGlzIGliei1yYW5nZS1zbGlkZXJcbiAgICAgIHBsYWNlaG9sZGVyPVwiVHJhY2sgRGF0ZSBTZWxlY3Rpb25cIiAgICAgIC8vIHBsYWNlIGhvbGRlciBmb3IgZGF0ZSByZWFkb25seSBpbnB1dCB6b25lXG5cbiAgICAgIDwhLS0gRm91bmRhdGlvbiBjbGFzc2VzIC0tPlxuICAgICAgY2xhc3M9XCJyYWRpdXNcIiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2hlY2sgWnVyYiBmb3VuZGF0aW9uIGRvYyBmb3IgZnVydGhlciBpbmZvLlxuICAgICAgY2xhc3M9XCJpYnotaGFuZGxlLWRpc3BsYXlcIiAgICAgICAgICAgICAgLy8gaW5jcmVhc2UgaGFuZGxlIHdpZHRoIHRvIGhvbGQgc2xpZGVyIGN1cnJlbnQgdmFsdWVcblxuICAgICAgPCEtLSBBbmd1bGFyIFNjb3BlIFZhcmlhYmxlcyAtLT5cbiAgICAgIGNhbGxiYWNrPVwibXlDYWxsQmFja1wiICAgICAgICAgICAgICAgICAgICAvLyAkc2NvcGUubXlDYWxsQmFjayhzbGlkZXJoYW5kbGUpIGlzIGNhbGxlZCB3aGVuIGV2ZXIgc2xpZGVyIGhhbmRsZSBibHVyXG4gICAgICBmb3JtYXR0ZXI9XCJTbGlkZXJGb3JtYXRDQlwiICAgICAgICAgICAgICAgLy8gJHNjb3BlLm15Rm9ybWF0dGVyKHZhbHVlLCBzbGlkZXJpZCkgd2hlbiBleGlzdCBpcyBjYWxsIHdoZW4gZXZlciBzbGlkZXIgaGFuZGxlIG1vdmVzLiBTaG91bGQgcmV0dXJuIGV4dGVybmFsIGZvcm0gb2Ygc2xpZGVyIHZhbHVlLlxuICAgICAgbmctbW9kZWw9XCJ4eHh4eHhcIiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHh4eCBNdXN0IGJlIGRlZmluZWQsIHNjcmlwdCB3aWxsIHN0b3JlIGEgbmV3IFJhbmdlck9iamVjdCB3aXRoaW4gcHJvdmlkZWQgbmctbW9kZWwgdmFyaWFibGUuXG4gICAgICBzdGFydC1hdD1cIlNjb3BlVmFyXCIgICAgICAgICAgICAgICAgICAgICAgLy8gRHluYW1pYyBsaW1pdGF0aW9uIHdoZW4gc2xpZGVyIGlzIGNvbnN0cmFpbnMgYnkgYW4gZXh0ZXJuYWwgY29tcG9uYW50IFtleDogY2hlY2sgaW4vb3V0XVxuICAgICAgc3RvcC1hdD1cIlNjb3BlVmFyXCIgICAgICAgICAgICAgICAgICAgICAgIC8vIElkZW0gYnV0IGZvciBlbmQuXG5cbiAgICAgIDwhLS0gQW5ndWxhciBEaXJlY3RpdmUgQXR0cmlidXRlcyAtLT5cbiAgICAgIG5vdC1sZXNzPVwiaW50ZWdlclwiICAgICAgICAgICAgICAgICAgICAgICAvLyBGaXhlZCBzdGFydGluZyB2YWx1ZSBmb3Igc2xpZGVyIFtkZWZhdWx0IDBdXG4gICAgICBub3QtbW9yZT1cImludGVnZXJcIiAgICAgICAgICAgICAgICAgICAgICAgLy8gRml4ZWQgZW5kIHZhbHVlIGZvciBzbGlkZXJzIFtkZWZhdWx0IDEwMF1cbiAgICAgIGJ5LXN0ZXA9XCIrLWludGVnZXJcIiAgICAgICAgICAgICAgICAgICAgICAvLyBJZiBieS1zdGVwIGlzID4wIHRoZW4gc2xpZGVyIHVzZSBpdCBhcyBzdGVwLXZhbHVlLCB3aGVuIG5lZ2F0aXZlIHVzZSBpdCBmb3IgZGVjaW1hbCBwcmVjaXNpb25cbiAgICAgIGRpc3BsYXktdGFyZ2V0PVwiaGFuZGxlXCIgICAgICAgICAgICAgICAgICAvLyBkaXNwbGF5IHNsaWRlciBleHRlcm5hbCBmb3JtYXRlZCB2YWx1ZSBpbiB0aGUgaGFuZGxlIFtyZXF1aXJlciBjYWxzcz1cImliei1oYW5kbGUtZGlzcGxheVwiXVxuICAgICAgZHVhbC1oYW5kbGVzPSd0cnVlJyAgICAgICAgICAgICAgICAgICAgICAvLyBhZGQgYSBzZWNvbmQgaGFuZGxlIHRvIHNsaWRlciBmb3IgbWluL21heCByYW5nZVxuICAgICAgaW5pdGlhbD0ndmFsdWV8W3N0YXJ0L3N0b3BdJyAgICAgICAgICAgICAvLyBzbGlkZXIgaW5pdGlhbCB2YWx1ZSBbZHVhbC1oYW5kbGVzXSBtYXkgaGF2ZSBpbml0aWFsIHZhbHVlc1xuICAgLz48L3JhbmdlLXNsaWRlcj5cbiAqL1xuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxudmFyIFJhbmdlU2xpZGVyID0gYW5ndWxhci5tb2R1bGUoJ1JhbmdlU2xpZGVyJyxbXSk7XG5cbmZ1bmN0aW9uIFJhbmdlU2xpZGVySGFuZGxlIChzY29wZSkge1xuICAgIHZhciBpbnRlcm5hbHMgPSBbXTtcbiAgICB2YXIgZXh0ZXJuYWxzID0gW107XG5cbiAgICB0aGlzLmdldElkID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBzY29wZS5zbGlkZXJpZDtcbiAgICB9O1xuXG4gICAgdGhpcy5nZXRDYkhhbmRsZSA9IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gc2NvcGUuY2JoYW5kbGU7XG4gICAgfTtcblxuICAgIHRoaXMuZ2V0Vmlldz0gZnVuY3Rpb24gKGhhbmRsZSkge1xuICAgICAgICBpZiAoIWhhbmRsZSkgaGFuZGxlID0gMDtcblxuICAgICAgICAvLyBpZiB2YWx1ZSBkaWQgbm90IGNoYW5nZSByZXR1cm4gY3VycmVudCBleHRlcm5hbCByZXByZXNlbnRhdGlvblxuICAgICAgICBpZiAoc2NvcGUudmFsdWVbaGFuZGxlXSA9PT0gaW50ZXJuYWxzW2hhbmRsZV0pIHJldHVybiBleHRlcm5hbHNbaGFuZGxlXTtcblxuICAgICAgICAvLyBidWlsZCBleHRlcm5hbCByZXByZXNlbnRhdGlvbiBhbmQgc2F2ZSBpdCBmb3IgZnVydGhlciByZXF1ZXN0c1xuICAgICAgICBpbnRlcm5hbHNbaGFuZGxlXSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG4gICAgICAgIGlmIChzY29wZS5mb3JtYXR0ZXIpIGV4dGVybmFsc1toYW5kbGVdID0gc2NvcGUuZm9ybWF0dGVyKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICBlbHNlICBleHRlcm5hbHNbaGFuZGxlXSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG5cbiAgICAgICAgcmV0dXJuIGV4dGVybmFsc1toYW5kbGVdO1xuICAgIH07XG5cbiAgICB0aGlzLnVwZGF0ZUNsYXNzID0gZnVuY3Rpb24gKGNsYXNzZSwgc3RhdHVzKSB7XG4gICAgICAgc2NvcGUudXBkYXRlQ2xhc3MgKGNsYXNzZSwgc3RhdHVzKTtcbiAgICB9O1xuXG4gICAgdGhpcy5mb3JjZVJlZnJlc2ggPSBmdW5jdGlvbiAodGltZXIpIHtcbiAgICAgICBzY29wZS5mb3JjZVJlZnJlc2godGltZXIpO1xuICAgIH07XG5cbiAgICB0aGlzLmdldFZhbHVlPSBmdW5jdGlvbiAoaGFuZGxlKSB7XG4gICAgICAgIGlmICghaGFuZGxlKSBoYW5kbGUgPSAwO1xuICAgICAgICByZXR1cm4gc2NvcGUudmFsdWVbaGFuZGxlXTtcbiAgICB9O1xuXG4gICAgdGhpcy5nZXRSZWxhdGl2ZT0gZnVuY3Rpb24gKGhhbmRsZSkge1xuICAgICAgICBpZiAoIWhhbmRsZSkgaGFuZGxlID0gMDtcbiAgICAgICAgcmV0dXJuIHNjb3BlLnJlbGF0aXZlW2hhbmRsZV07XG4gICAgfTtcblxuICAgIHRoaXMuc2V0VmFsdWU9IGZ1bmN0aW9uICh2YWx1ZSwgaGFuZGxlKSB7XG4gICAgICAgIGlmICghaGFuZGxlKSBoYW5kbGUgPSAwO1xuICAgICAgICBzY29wZS5zZXRWYWx1ZSAodmFsdWUsIGhhbmRsZSk7XG4gICAgfTtcblxuICAgIHRoaXMuc2V0RGlzYWJsZT0gZnVuY3Rpb24gKGZsYWcpIHtcbiAgICAgICAgc2NvcGUuc2V0RGlzYWJsZShmbGFnKTtcbiAgICB9O1xufVxuXG5SYW5nZVNsaWRlci5kaXJlY3RpdmUoJ3JhbmdlU2xpZGVyJywgW1wiJGxvZ1wiLCBcIiRkb2N1bWVudFwiLCBcIiR0aW1lb3V0XCIsIGZ1bmN0aW9uICgkbG9nLCAkZG9jdW1lbnQsICR0aW1lb3V0KSB7XG5cbiAgICB2YXIgdGVtcGxhdGU9ICc8ZGl2IGNsYXNzPVwiaWJ6LXJhbmdlLXNsaWRlciByYW5nZS1zbGlkZXJcIiB0aXRsZT1cInt7dGl0bGV9fVwiZGF0YS1zbGlkZXI+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cInJhbmdlLXNsaWRlci1oYW5kbGUgaGFuZGxlLW1pblwiIG5nLW1vdXNlZG93bj1cImhhbmRsZUNCKCRldmVudCwwKVwiIG5nLWZvY3VzPVwiZm9jdXNDQih0cnVlKVwiIG5nLWJsdXI9XCJmb2N1c0NCKGZhbHNlKVwiIHJvbGU9XCJzbGlkZXJcIiB0YWJpbmRleD1cIjBcIj48L3NwYW4+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cImhhbmRsZS1tYXhcIiBuZy1tb3VzZWRvd249XCJoYW5kbGVDQigkZXZlbnQsMSlcIiBuZy1mb2N1cz1cImZvY3VzQ0IodHJ1ZSlcIiBuZy1ibHVyPVwiZm9jdXNDQihmYWxzZSlcIiByb2xlPVwic2xpZGVyXCIgdGFiaW5kZXg9XCIwXCI+PC9zcGFuPicrXG4gICAgICAgICAgICAgICAgICAnPHNwYW4gY2xhc3M9XCJyYW5nZS1zbGlkZXItYWN0aXZlLXNlZ21lbnRcIj48L3NwYW4+JytcbiAgICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz1cImliei1yYW5nZS1zbGlkZXItc3RhcnRcIiA+PC9zcGFuPiAnK1xuICAgICAgICAgICAgICAgICAgJzxzcGFuIGNsYXNzPVwiaWJ6LXJhbmdlLXNsaWRlci1zdG9wXCI+PC9zcGFuPiAnK1xuICAgICAgICAgICAgICAgICAgJzxpbnB1dCBpZD17e3NsaWRlcmlkfX0gdHlwZT1cImhpZGRlblwiPicrXG4gICAgICAgICAgICAgICAgICAnPC9kaXY+JztcblxuXG4gICAgZnVuY3Rpb24gbGluayAoc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBtb2RlbCkge1xuICAgICAgICAvLyBmdWxsIGluaXRpYWxpc2F0aW9uIG9mIHNsaWRlciBmcm9tIGEgc2luZ2xlIG9iamVjdFxuICAgICAgICBzY29wZS5pbml0V2lkZ2V0ID0gZnVuY3Rpb24gKGluaXR2YWx1ZXMpIHtcblxuICAgICAgICAgICAgaWYgKGluaXR2YWx1ZXMuYnlTdGVwKSAgc2NvcGUuYnlTdGVwICA9IHBhcnNlSW50KGluaXR2YWx1ZXMuYnlTdGVwKTtcbiAgICAgICAgICAgIGlmIChpbml0dmFsdWVzLm5vdE1vcmUpIHNjb3BlLm5vdE1vcmUgPSBwYXJzZUludChpbml0dmFsdWVzLm5vdE1vcmUpO1xuICAgICAgICAgICAgaWYgKGluaXR2YWx1ZXMubm90TGVzcykgc2NvcGUubm90TGVzcyA9IHBhcnNlSW50KGluaXR2YWx1ZXMubm90TGVzcyk7XG4gICAgICAgICAgICBpZiAoaW5pdHZhbHVlcy5pZCkgICAgICBzY29wZS5zbGlkZXJpZD0gaW5pdHZhbHVlcy5pZDtcblxuICAgICAgICAgICAgLy8gaHVnZWx5IGJ1dCBpbiBzb21lIGNhc2UgRE9NIGlzIG5vdCBmaW5pc2ggd2hlbiB3ZSB0cnkgdG8gc2V0IHZhbHVlcyAhISFcbiAgICAgICAgICAgIGlmIChpbml0dmFsdWVzLnZhbHVlICE9PSB1bmRlZmluZWQpICAge1xuICAgICAgICAgICAgICAgIHNjb3BlLnZhbHVlID0gaW5pdHZhbHVlcy52YWx1ZTtcbiAgICAgICAgICAgICAgICBzY29wZS5mb3JjZVJlZnJlc2ggKDUwKTsgLy8gd2FpdCA1MG1zIGZvciBET00gdG8gYmUgcmVhZHlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICAvLyB0aGlzIGZ1bmN0aW9uIHJlY29tcHV0ZSBzbGlkZSBwb3NpdGlvbmluZ1xuICAgICAgICBzY29wZS5mb3JjZVJlZnJlc2ggPSBmdW5jdGlvbiAodGltZXIpIHtcbiAgICAgICAgICAgdmFyIHZhbHVlID0gc2NvcGUudmFsdWU7XG4gICAgICAgICAgIHNjb3BlLnZhbHVlID0gW3VuZGVmaW5lZCx1bmRlZmluZWRdO1xuICAgICAgICAgICAkdGltZW91dCAoZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICBzY29wZS5zZXRWYWx1ZSh2YWx1ZVswXSwwKTtcbiAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSAgc2NvcGUuc2V0VmFsdWUodmFsdWVbMV0sMSk7XG4gICAgICAgICAgIH0sIHRpbWVyKTtcbiAgICAgICAgfTtcblxuICAgICAgICAvLyBoYW5kbGVyIHRvIGNoYW5nZSBjbGFzcyBmcm9tIHNsaWRlciBoYW5kbGVcbiAgICAgICAgc2NvcGUudXBkYXRlQ2xhc3MgPSBmdW5jdGlvbiAoY2xhc3NlLCBzdGF0dXMpIHtcblxuICAgICAgICAgICAgaWYgKHN0YXR1cykgZWxlbWVudC5hZGRDbGFzcyAoY2xhc3NlKTtcbiAgICAgICAgICAgIGVsc2UgIGVsZW1lbnQucmVtb3ZlQ2xhc3MgKGNsYXNzZSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUuc2V0RGlzYWJsZSA9IGZ1bmN0aW9uIChkaXNhYmxlZCkge1xuXG4gICAgICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LmFkZENsYXNzIChcImRpc2FibGVcIik7XG4gICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1swXS5jc3MgKCd2aXNpYmlsaXR5JywnaGlkZGVuJyk7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmR1YWwpIHtcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1sxXS5jc3MgKCd2aXNpYmlsaXR5JywnaGlkZGVuJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnJlbW92ZUNsYXNzIChcImRpc2FibGVcIik7XG4gICAgICAgICAgICAgICAgc2NvcGUuaGFuZGxlc1swXS5jc3MgKCd2aXNpYmlsaXR5JywndmlzaWJsZScpO1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSBzY29wZS5oYW5kbGVzWzFdLmNzcyAoJ3Zpc2liaWxpdHknLCd2aXNpYmxlJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5ub3JtYWxpemUgPSBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgICAgIHZhciByZXN1bHQ7XG4gICAgICAgICAgICB2YXIgcmFuZ2UgPSBzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcztcbiAgICAgICAgICAgIHZhciBwb2ludCA9IHZhbHVlICogcmFuZ2U7XG5cbiAgICAgICAgICAgIC8vIGlmIHN0ZXAgaXMgcG9zaXRpdmUgbGV0J3Mgcm91bmQgc3RlcCBieSBzdGVwXG4gICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gIDApIHtcbiAgICAgICAgICAgICAgICB2YXIgbW9kID0gKHBvaW50IC0gKHBvaW50ICUgc2NvcGUuYnlTdGVwKSkgLyBzY29wZS5ieVN0ZXA7XG4gICAgICAgICAgICAgICAgdmFyIHJlbSA9IHBvaW50ICUgc2NvcGUuYnlTdGVwO1xuXG4gICAgICAgICAgICAgICAgdmFyIHJvdW5kID0gKHJlbSA+PSBzY29wZS5ieVN0ZXAgKiAwLjUgPyBzY29wZS5ieVN0ZXAgOiAwKTtcbiAgICAgICAgICAgICAgICByZXN1bHQ9IChtb2QgKiBzY29wZS5ieVN0ZXAgKyByb3VuZCkgKyBzY29wZS5ub3RMZXNzO1xuICAgICAgICAgICAgICAgIC8vY29uc29sZS5sb2cgKFwicmFuZ2U9JWQgdmFsdWU9JWQgcG9pbnQ9JWQgbW9kPSVkIHJlbT0lZCByb3VuZD0lZCByZXN1bHQ9JWRcIiwgcmFuZ2UsIHZhbHVlLCBwb2ludCwgbW9kLCByZW0sIHJvdW5kLCByZXN1bHQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gaWYgc3RlcCBpcyBuZWdhdGl2ZSByZXR1cm4gcm91bmQgdG8gYXNrZWQgZGVjaW1hbFxuICAgICAgICAgICAgaWYgKHNjb3BlLmJ5U3RlcCA8ICAwKSB7XG4gICAgICAgICAgICAgICAgdmFyIHBvd2VyICA9ICBNYXRoLnBvdyAoMTAsKHNjb3BlLmJ5U3RlcCAqIC0xKSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gc2NvcGUubm90TGVzcyArIHBhcnNlSW50IChwb2ludCAqIHBvd2VyKSAvIHBvd2VyO1xuICAgICAgICAgICAgICAgIHJldHVybiAocmVzdWx0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gaWYgc3RlcCBpcyBudWxsIHJldHVybiBmdWxsIHZhbHVlXG4gICAgICAgICAgICByZXR1cm4gcG9pbnQ7XG4gICAgICAgfTtcblxuICAgICAgICAvLyByZXR1cm4gY3VycmVudCB2YWx1ZVxuICAgICAgICBzY29wZS5nZXRWYWx1ZSA9IGZ1bmN0aW9uIChvZmZzZXQsIGhhbmRsZSkge1xuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUucmVsYXRpdmVbaGFuZGxlXSA9IChvZmZzZXQgLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCkgLyAoc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNjb3BlLnJlbGF0aXZlW2hhbmRsZV0gPSBvZmZzZXQgLyAgKHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggLSBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdmFyIG5ld3ZhbHVlID0gc2NvcGUubm9ybWFsaXplIChzY29wZS5yZWxhdGl2ZVtoYW5kbGVdKTtcblxuXG4gICAgICAgICAgICAvLyBpZiBpbnRlcm5hbCB2YWx1ZSBjaGFuZ2UgdXBkYXRlIG9yIG1vZGVsXG4gICAgICAgICAgICBpZiAobmV3dmFsdWUgIT09IHNjb3BlLnZhbHVlW2hhbmRsZV0pIHtcbiAgICAgICAgICAgICAgICBpZiAobmV3dmFsdWUgPCBzY29wZS5zdGFydFZhbHVlKSBuZXd2YWx1ZT1zY29wZS5zdGFydFZhbHVlO1xuICAgICAgICAgICAgICAgIGlmIChuZXd2YWx1ZSA+IHNjb3BlLnN0b3BWYWx1ZSkgIG5ld3ZhbHVlPXNjb3BlLnN0b3BWYWx1ZTtcblxuXG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmZvcm1hdHRlcikge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS52aWV3VmFsdWUgPSBzY29wZS5mb3JtYXR0ZXIgKG5ld3ZhbHVlLCBzY29wZS5jdHJsaGFuZGxlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS52aWV3VmFsdWUgPSBuZXd2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLmRpc3BsYXlzW2hhbmRsZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXNbaGFuZGxlXS5odG1sIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBleHRlcm5hbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWxcbiAgICAgICAgICAgICAgICBzY29wZS52YWx1ZVtoYW5kbGVdID0gbmV3dmFsdWU7XG4gICAgICAgICAgICAgICAgaWYgKG1vZGVsKSBtb2RlbC4kc2V0Vmlld1ZhbHVlIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgICAgIHNjb3BlLiRhcHBseSgpO1xuICAgICAgICAgICAgICAgIGlmIChuZXd2YWx1ZSA+IHNjb3BlLnN0YXJ0VmFsdWUgJiYgbmV3dmFsdWUgPCBzY29wZS5zdG9wVmFsdWUpIHNjb3BlLnRyYW5zbGF0ZShvZmZzZXQsIGhhbmRsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cblxuICAgICAgICBzY29wZS5zZXRTdGFydCA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKHZhbHVlID4gc2NvcGUudmFsdWVbMF0pIHtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmR1YWwpIHNjb3BlLnNldFZhbHVlICh2YWx1ZSwwKTtcbiAgICAgICAgICAgICAgICBlbHNlIHNjb3BlLnNldFZhbHVlICh2YWx1ZSwxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSB7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgKiAodmFsdWUgLSBzY29wZS5ub3RMZXNzKSAvIChzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcyk7XG4gICAgICAgICAgICAgICAgc2NvcGUuc3RhcnQuY3NzKCdoZWlnaHQnLG9mZnNldCArICdweCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICogKHZhbHVlIC0gc2NvcGUubm90TGVzcykgLyAoc2NvcGUubm90TW9yZSAtIHNjb3BlLm5vdExlc3MpO1xuICAgICAgICAgICAgICAgIHNjb3BlLnN0YXJ0LmNzcygnd2lkdGgnLG9mZnNldCArICdweCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzY29wZS5zdGFydFZhbHVlPSB2YWx1ZTtcbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5zZXRTdG9wID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgICAgICAgICB2YXIgb2Zmc2V0O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiAodmFsdWUgPCBzY29wZS52YWx1ZVswXSkge1xuICAgICAgICAgICAgICAgIGlmICghc2NvcGUuZHVhbCkgc2NvcGUuc2V0VmFsdWUgKHZhbHVlLDApO1xuICAgICAgICAgICAgICAgIGVsc2Ugc2NvcGUuc2V0VmFsdWUgKHZhbHVlLDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoc2NvcGUudmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCAqICh2YWx1ZSAtIHNjb3BlLm5vdExlc3MpIC8gKHNjb3BlLm5vdE1vcmUgLSBzY29wZS5ub3RMZXNzKTtcbiAgICAgICAgICAgICAgICBzY29wZS5zdGFydC5jc3MoJ2hlaWdodCcsb2Zmc2V0ICsgJ3B4Jyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggKiAodmFsdWUgLSBzY29wZS5ub3RMZXNzKSAvIChzY29wZS5ub3RNb3JlIC0gc2NvcGUubm90TGVzcyk7XG4gICAgICAgICAgICAgICAgc2NvcGUuc3RvcC5jc3MoeydyaWdodCc6IDAsICd3aWR0aCc6IChzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICAtIG9mZnNldCkgKyAncHgnfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNjb3BlLnN0b3BWYWx1ZT0gdmFsdWU7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUudHJhbnNsYXRlID0gZnVuY3Rpb24gKG9mZnNldCwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgc3RhcnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkge1xuICAgICAgICAgICAgICAgIC8vIHRha2UgaGFuZGxlIHNpemUgaW4gYWNjb3VudCB0byBjb21wdXRlIG1pZGRsZVxuICAgICAgICAgICAgICAgIHZhciB2b2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLSBvZmZzZXQ7XG5cbiAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzW2hhbmRsZV0uY3NzKHtcbiAgICAgICAgICAgICAgICAgICAgJy13ZWJraXQtdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tb3otdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tcy10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWSgnICsgdm9mZnNldCArICdweCknLFxuICAgICAgICAgICAgICAgICAgICAnLW8tdHJhbnNmb3JtJzogJ3RyYW5zbGF0ZVkoJyArIHZvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zZm9ybSc6ICd0cmFuc2xhdGVZKCcgKyB2b2Zmc2V0ICsgJ3B4KSdcbiAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgaWYgKCFzY29wZS5kdWFsKSBzY29wZS5zbGlkZXIuY3NzKCdoZWlnaHQnLCBvZmZzZXQgKyAncHgnKTtcbiAgICAgICAgICAgICAgIGVsc2UgaWYgKHNjb3BlLnJlbGF0aXZlWzFdICYmIHNjb3BlLnJlbGF0aXZlWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgdmFyIGhlaWdodCA9IChzY29wZS5yZWxhdGl2ZVsxXSAtIHNjb3BlLnJlbGF0aXZlWzBdKSAqICBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgICAgICAgICAgICAgICAgICBzdGFydCAgPSAoc2NvcGUucmVsYXRpdmVbMF0gKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgIHNjb3BlLnNsaWRlci5jc3MgKHsnYm90dG9tJzogc3RhcnQrJ3B4JywnaGVpZ2h0JzogaGVpZ2h0ICsgJ3B4J30pO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbaGFuZGxlXS5jc3Moe1xuICAgICAgICAgICAgICAgICAgICAnLXdlYmtpdC10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICctbW96LXRyYW5zZm9ybSc6ICd0cmFuc2xhdGVYKCcgKyBvZmZzZXQgKyAncHgpJyxcbiAgICAgICAgICAgICAgICAgICAgJy1tcy10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICctby10cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KScsXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2Zvcm0nOiAndHJhbnNsYXRlWCgnICsgb2Zmc2V0ICsgJ3B4KSdcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmR1YWwpIHNjb3BlLnNsaWRlci5jc3MoJ3dpZHRoJyxvZmZzZXQgKyAncHgnKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChzY29wZS5yZWxhdGl2ZVsxXSAmJiBzY29wZS5yZWxhdGl2ZVswXSkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgd2lkdGggPSAoc2NvcGUucmVsYXRpdmVbMV0gLSBzY29wZS5yZWxhdGl2ZVswXSkgKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQgPSAoc2NvcGUucmVsYXRpdmVbMF0gKiAgc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnNsaWRlci5jc3MgKHsnbGVmdCc6IHN0YXJ0KydweCcsJ3dpZHRoJzogd2lkdGggKyAncHgnfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vIHBvc2l0aW9uIGhhbmRsZSBvbiB0aGUgYmFyIGRlcGVuZGluZyBhIGdpdmVuIHZhbHVlXG4gICAgICAgIHNjb3BlLnNldFZhbHVlID0gZnVuY3Rpb24gKHZhbHVlICwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgb2Zmc2V0O1xuXG4gICAgICAgICAgICAvLyBpZiB2YWx1ZSBkaWQgbm90IGNoYW5nZSBpZ25vcmVcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpICAgdmFsdWU9MDtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA+IHNjb3BlLm5vdE1vcmUpIHZhbHVlPXNjb3BlLm5vdE1vcmU7XG4gICAgICAgICAgICBpZiAodmFsdWUgPCBzY29wZS5ub3RMZXNzKSB2YWx1ZT1zY29wZS5ub3RMZXNzO1xuXG4gICAgICAgICAgICBpZiAoc2NvcGUudmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdID0gKHZhbHVlIC0gc2NvcGUubm90TGVzcykgLyAoc2NvcGUubm90TW9yZSAtIHNjb3BlLm5vdExlc3MpO1xuICAgICAgICAgICAgICAgIGlmIChoYW5kbGUgPT09IDApIG9mZnNldCA9IChzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpICsgc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQvMjtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlID09PSAxKSBvZmZzZXQgPSBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc2NvcGUucmVsYXRpdmVbaGFuZGxlXSA9ICh2YWx1ZSAtIHNjb3BlLm5vdExlc3MpIC8gKHNjb3BlLm5vdE1vcmUgLSBzY29wZS5ub3RMZXNzKTtcbiAgICAgICAgICAgICAgICBvZmZzZXQgPSBzY29wZS5yZWxhdGl2ZVtoYW5kbGVdICogIChzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoIC0gc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNjb3BlLnRyYW5zbGF0ZSAob2Zmc2V0LGhhbmRsZSk7XG4gICAgICAgICAgICBzY29wZS52YWx1ZVtoYW5kbGVdID0gdmFsdWU7XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5mb3JtYXR0ZXIpIHtcbiAgICAgICAgICAgICAgICAvLyB3aGVuIGNhbGwgdGhyb3VnaCBzZXRWYWx1ZSB3ZSBkbyBub3QgcGFzcyBjYkhhbmRsZVxuICAgICAgICAgICAgICAgIHNjb3BlLnZpZXdWYWx1ZSA9IHNjb3BlLmZvcm1hdHRlciAodmFsdWUsIHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNjb3BlLnZpZXdWYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobW9kZWwpIG1vZGVsLiRzZXRWaWV3VmFsdWUoIHNjb3BlLnZpZXdWYWx1ZSk7XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5kaXNwbGF5c1toYW5kbGVdKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXNbaGFuZGxlXS5odG1sIChzY29wZS52aWV3VmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG5cbiAgICAgICAgLy8gTWluaW1hbCBrZXlzdHJva2UgaGFuZGxpbmcgdG8gY2xvc2UgcGlja2VyIHdpdGggRVNDIFtzY29wZS5hY3RpZiBpcyBjdXJyZW50IGhhbmRsZSBpbmRleF1cbiAgICAgICAgc2NvcGUua2V5ZG93bj0gIGZ1bmN0aW9uKGUpe1xuXG4gICAgICAgICAgICBzd2l0Y2goZS5rZXlDb2RlKXtcbiAgICAgICAgICAgICAgICBjYXNlIDM5OiAvLyBSaWdodFxuICAgICAgICAgICAgICAgIGNhc2UgMzg6IC8vIHVwXG4gICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdK3Njb3BlLmJ5U3RlcCksIHNjb3BlLmFjdGlmKSk7XG4gICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwIDwgMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdKygxIC8gTWF0aC5wb3coMTAsIHNjb3BlLmJ5U3RlcCotMSkpKSxzY29wZS5hY3RpZikpO1xuICAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLmNhbGxiYWNrKSAgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW3Njb3BlLmFjdGlmXSwgc2NvcGUuY3RybGhhbmRsZSk7XG4gICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDM3OiAvLyBsZWZ0XG4gICAgICAgICAgICAgICAgY2FzZSA0MDogLy8gZG93blxuICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuYnlTdGVwID4gMCkgc2NvcGUuJGFwcGx5KHNjb3BlLnNldFZhbHVlICgoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdIC0gc2NvcGUuYnlTdGVwKSwgc2NvcGUuYWN0aWYpKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLmJ5U3RlcCA8IDApIHNjb3BlLiRhcHBseShzY29wZS5zZXRWYWx1ZSAoKHNjb3BlLnZhbHVlW3Njb3BlLmFjdGlmXSAtICgxIC8gTWF0aC5wb3coMTAsIHNjb3BlLmJ5U3RlcCotMSkpKSxzY29wZS5hY3RpZikpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2NvcGUuY2FsbGJhY2spICBzY29wZS5jYWxsYmFjayAoc2NvcGUudmFsdWVbc2NvcGUuYWN0aWZdLCBzY29wZS5jdHJsaGFuZGxlKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAyNzogLy8gZXNjXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbc2NvcGUuYWN0aWZdWzBdLmJsdXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5tb3ZlSGFuZGxlID0gZnVuY3Rpb24gKGhhbmRsZSwgY2xpZW50WCwgY2xpZW50WSkge1xuICAgICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tIC0gY2xpZW50WTtcbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0ID4gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpIG9mZnNldCA9IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGlmIChvZmZzZXQgPCBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCkgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmhhbmRsZXNbaGFuZGxlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9mZnNldCA9IGNsaWVudFggLSBzY29wZS5ib3VuZHMuYmFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XG5cbiAgICAgICAgICAgICAgICBpZiAob2Zmc2V0IDwgMCkgb2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICBpZiAoKGNsaWVudFggKyBzY29wZS5ib3VuZHMuaGFuZGxlc1toYW5kbGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKSA+IHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkucmlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCAtIHNjb3BlLmJvdW5kcy5oYW5kbGVzW2hhbmRsZV0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzY29wZS5nZXRWYWx1ZSAgKG9mZnNldCwgaGFuZGxlKTtcblxuICAgICAgICAgICAgLy8gcHJldmVudCBkdWFsIGhhbmRsZSB0byBjcm9zc1xuICAgICAgICAgICAgaWYgKHNjb3BlLmR1YWwgJiYgc2NvcGUudmFsdWUgWzBdID4gc2NvcGUudmFsdWVbMV0pIHtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlID09PSAwKSBzY29wZS5zZXRWYWx1ZSAoc2NvcGUudmFsdWVbMF0gLCAxKTtcbiAgICAgICAgICAgICAgICBlbHNlIHNjb3BlLnNldFZhbHVlKHNjb3BlLnZhbHVlWzFdLDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG5cbiAgICAgICAgc2NvcGUuZm9jdXNDQiA9IGZ1bmN0aW9uIChpbnNpZGUpIHtcbiAgICAgICAgICAgIGlmIChpbnNpZGUpIHtcbiAgICAgICAgICAgICAgICAkZG9jdW1lbnQub24oJ2tleWRvd24nLHNjb3BlLmtleWRvd24pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAkZG9jdW1lbnQudW5iaW5kKCdrZXlkb3duJyxzY29wZS5rZXlkb3duKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICAvLyBiYXIgd2FzIHRvdWNoIGxldCBtb3ZlIGhhbmRsZSB0byB0aGlzIHBvaW50XG4gICAgICAgIHNjb3BlLnRvdWNoQmFyQ0IgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgIHZhciBoYW5kbGU9MDtcbiAgICAgICAgICAgIHZhciByZWxhdGl2ZTtcbiAgICAgICAgICAgIHZhciB0b3VjaGVzID0gZXZlbnQuY2hhbmdlZFRvdWNoZXM7XG4gICAgICAgICAgICB2YXIgb2xkdmFsdWUgPSBzY29wZS52YWx1ZVtoYW5kbGVdO1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgICAgICAvLyBpZiB3ZSBoYXZlIHR3byBoYW5kbGVzIHNlbGVjdCBjbG9zZXN0IG9uZSBmcm9tIHRvdWNoIHBvaW50XG4gICAgICAgICAgICBpZiAoc2NvcGUuZHVhbCkge1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS52ZXJ0aWNhbCkgcmVsYXRpdmUgPSAodG91Y2hlc1swXS5wYWdlWSAtIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tKSAvIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIGVsc2UgcmVsYXRpdmU9ICh0b3VjaGVzWzBdLnBhZ2VYIC0gc2NvcGUuYm91bmRzLmJhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0KSAvIHNjb3BlLmJvdW5kcy5iYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG5cbiAgICAgICAgICAgICAgICB2YXIgZGlzdGFuY2UwID0gTWF0aC5hYnMocmVsYXRpdmUgLSBzY29wZS5yZWxhdGl2ZVswXSk7XG4gICAgICAgICAgICAgICAgdmFyIGRpc3RhbmNlMSA9IE1hdGguYWJzKHJlbGF0aXZlIC0gc2NvcGUucmVsYXRpdmVbMV0pO1xuICAgICAgICAgICAgICAgIGlmIChkaXN0YW5jZTEgPCBkaXN0YW5jZTApIGhhbmRsZT0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBtb3ZlIGhhbmRsZSB0byBuZXcgcGxhY2VcbiAgICAgICAgICAgIHNjb3BlLm1vdmVIYW5kbGUgKGhhbmRsZSx0b3VjaGVzWzBdLnBhZ2VYLCB0b3VjaGVzWzBdLnBhZ2VZKTtcbiAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIGhhbmRsZSB3YXMgdG91Y2ggYW5kIGRyYWdcbiAgICAgICAgc2NvcGUudG91Y2hIYW5kbGVDQiA9IGZ1bmN0aW9uICh0b3VjaGV2dCwgaGFuZGxlKSB7XG4gICAgICAgICAgICB2YXIgb2xkdmFsdWUgPSBzY29wZS52YWx1ZVtoYW5kbGVdO1xuXG4gICAgICAgICAgICB0b3VjaGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgJGRvY3VtZW50Lm9uKCd0b3VjaG1vdmUnLHRvdWNobW92ZSk7XG4gICAgICAgICAgICAkZG9jdW1lbnQub24oJ3RvdWNoZW5kJyAsdG91Y2hlbmQpO1xuICAgICAgICAgICAgZWxlbWVudC51bmJpbmQoJ3RvdWNoc3RhcnQnLCBzY29wZS50b3VjaEJhckNCKTtcblxuICAgICAgICAgICAgZnVuY3Rpb24gdG91Y2htb3ZlKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB2YXIgdG91Y2hlcyA9IGV2ZW50LmNoYW5nZWRUb3VjaGVzO1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGlkeCA9IDA7IGlkeCA8IHRvdWNoZXMubGVuZ3RoOyBpZHgrKykge1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5tb3ZlSGFuZGxlIChoYW5kbGUsdG91Y2hlc1tpZHhdLnBhZ2VYLCB0b3VjaGVzW2lkeF0ucGFnZVkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZnVuY3Rpb24gdG91Y2hlbmQoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ3RvdWNobW92ZScsdG91Y2htb3ZlKTtcbiAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ3RvdWNoZW5kJyAsdG91Y2hlbmQpO1xuICAgICAgICAgICAgICAgZWxlbWVudC5vbigndG91Y2hzdGFydCcsIHNjb3BlLnRvdWNoQmFyQ0IpO1xuXG4gICAgICAgICAgICAgICAgLy8gaWYgdmFsdWUgY2hhbmdlIG5vdGlmeSBhcHBsaWNhdGlvbiBjYWxsYmFja1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHNjb3BlLmhhbmRsZUNCID0gZnVuY3Rpb24gKGNsaWNrZXZlbnQsIGhhbmRsZSkge1xuXG4gICAgICAgICAgICBpZiAoYXR0cnMuYXV0b21hdGljKSByZXR1cm47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHZhciBvbGR2YWx1ZSA9IHNjb3BlLnZhbHVlW2hhbmRsZV07XG4gICAgICAgICAgICAvLyByZWdpc3RlciBtb3VzZSBldmVudCB0byB0cmFjayBoYW5kbGVcbiAgICAgICAgICAgIGNsaWNrZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgICAgJGRvY3VtZW50Lm9uKCdtb3VzZW1vdmUnLG1vdXNlbW92ZSk7XG4gICAgICAgICAgICAkZG9jdW1lbnQub24oJ21vdXNldXAnLCBtb3VzZXVwKTtcbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbaGFuZGxlXVswXS5mb2N1cygpO1xuICAgICAgICAgICAgc2NvcGUuYWN0aWY9aGFuZGxlO1xuXG4gICAgICAgICAgICAvLyBzbGlkZXIgaGFuZGxlIGlzIG1vdmluZ1xuICAgICAgICAgICAgZnVuY3Rpb24gbW91c2Vtb3ZlKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgc2NvcGUubW92ZUhhbmRsZSAoaGFuZGxlLCBldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gbW91c2UgaXMgdXAgZGFucyBsZWF2ZSBzbGlkZXIgc2VuZCByZXNpemUgZXZlbnRzXG4gICAgICAgICAgICBmdW5jdGlvbiBtb3VzZXVwKCkge1xuICAgICAgICAgICAgICAgICRkb2N1bWVudC51bmJpbmQoJ21vdXNlbW92ZScsIG1vdXNlbW92ZSk7XG4gICAgICAgICAgICAgICAgJGRvY3VtZW50LnVuYmluZCgnbW91c2V1cCcsIG1vdXNldXApO1xuXG4gICAgICAgICAgICAgICAgLy8gaWYgdmFsdWUgY2hhbmdlIG5vdGlmeSBhcHBsaWNhdGlvbiBjYWxsYmFja1xuICAgICAgICAgICAgICAgIGlmIChzY29wZS5jYWxsYmFjayAmJiBvbGR2YWx1ZSAhPT0gc2NvcGUudmFsdWVbaGFuZGxlXSkgc2NvcGUuY2FsbGJhY2sgKHNjb3BlLnZhbHVlW2hhbmRsZV0sIHNjb3BlLmN0cmxoYW5kbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vIHNpbXVsYXRlIGpxdWVyeSBmaW5kIGJ5IGNsYXNzZXMgY2FwYWJpbGl0aWVzIFt3YXJuaW5nIG9ubHkgcmV0dXJuIDFzdCBlbGVtZW50c11cbiAgICAgICAgc2NvcGUuZmluZCA9IGZ1bmN0aW9uIChzZWxlY3QsIGVsZW0pIHtcbiAgICAgICAgICAgIHZhciBkb21lbGVtO1xuXG4gICAgICAgICAgICBpZiAoZWxlbSkgZG9tZWxlbSA9IGVsZW1bMF0ucXVlcnlTZWxlY3RvcihzZWxlY3QpO1xuICAgICAgICAgICAgZWxzZSBkb21lbGVtID0gZWxlbWVudFswXS5xdWVyeVNlbGVjdG9yKHNlbGVjdCk7XG5cbiAgICAgICAgICAgIHZhciBhbmdlbGVtID0gYW5ndWxhci5lbGVtZW50KGRvbWVsZW0pO1xuICAgICAgICAgICAgcmV0dXJuIChhbmdlbGVtKTtcbiAgICAgICAgfTtcblxuXG5cbiAgICAgICAgc2NvcGUuaW5pdGlhbFNldHRpbmdzID0gZnVuY3Rpb24gKGluaXRpYWwpIHtcbiAgICAgICAgICAgIHZhciBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHQ7XG4gICAgICAgICAgICBzY29wZS52YWx1ZT1bXTsgIC8vIHN0b3JlIGxvdy9oZWlnaHQgdmFsdWUgd2hlbiB0d28gaGFuZGxlc1xuICAgICAgICAgICAgc2NvcGUucmVsYXRpdmU9W107XG5cbiAgICAgICAgICAgIGlmIChzY29wZS5wcmVjaXNpb24gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHQgPSAoJycgKyBzY29wZS5ieVN0ZXApLm1hdGNoKC9cXC4oW1xcZF0qKS8pO1xuICAgICAgICAgICAgICAgIHNjb3BlLnByZWNpc2lvbiA9IGRlY2ltYWxfcGxhY2VzX21hdGNoX3Jlc3VsdCAmJiBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHRbMV0gPyBkZWNpbWFsX3BsYWNlc19tYXRjaF9yZXN1bHRbMV0ubGVuZ3RoIDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gcG9zaXRpb24gaGFuZGxlIHRvIGluaXRpYWwgdmFsdWUocylcbiAgICAgICAgICAgIGVsZW1lbnQub24oJ3RvdWNoc3RhcnQnLCBzY29wZS50b3VjaEJhckNCKTtcbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbMF0ub24oJ3RvdWNoc3RhcnQnLCBmdW5jdGlvbihldnQpe3Njb3BlLnRvdWNoSGFuZGxlQ0IoZXZ0LDApO30pO1xuXG4gICAgICAgICAgICAvLyB0aGlzIHNsaWRlciBoYXMgdHdvIGhhbmRsZXMgbG93L2hpZ2h0XG4gICAgICAgICAgICBpZiAoc2NvcGUuZHVhbCkge1xuICAgICAgICAgICAgICAgIHNjb3BlLmhhbmRsZXNbMV0uYWRkQ2xhc3MoJ3JhbmdlLXNsaWRlci1oYW5kbGUnKTtcbiAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzWzFdLm9uKCd0b3VjaHN0YXJ0JywgZnVuY3Rpb24oZXZ0KXtzY29wZS50b3VjaEhhbmRsZUNCKGV2dCwxKTt9KTtcbiAgICAgICAgICAgICAgICBpZiAoIXNjb3BlLmluaXR2YWx1ZXMpIHNjb3BlLnNldFZhbHVlIChpbml0aWFsWzFdLDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBpZiB3ZSBoYXZlIGFuIGluaXRzdGF0ZSBvYmplY3QgYXBwbHkgaXRcbiAgICAgICAgICAgIGlmIChzY29wZS5pbml0dmFsdWVzKSBzY29wZS5pbml0V2lkZ2V0IChzY29wZS5pbml0dmFsdWVzKTtcbiAgICAgICAgICAgIGVsc2UgICBzY29wZS5zZXRWYWx1ZSAoaW5pdGlhbFswXSwwKTtcbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5pbml0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgc2NvcGUuc2xpZGVyaWQgICA9IGF0dHJzLmlkIHx8IFwic2xpZGVyLVwiICsgcGFyc2VJbnQgKE1hdGgucmFuZG9tKCkgKiAxMDAwKTtcbiAgICAgICAgICAgIHNjb3BlLnN0YXJ0VmFsdWUgPSAtSW5maW5pdHk7XG4gICAgICAgICAgICBzY29wZS5zdG9wVmFsdWUgID0gSW5maW5pdHk7XG4gICAgICAgICAgICBzY29wZS5ieVN0ZXAgICA9IHBhcnNlSW50KGF0dHJzLmJ5U3RlcCkgfHwgMTtcbiAgICAgICAgICAgIHNjb3BlLnZlcnRpY2FsID0gYXR0cnMudmVydGljYWwgICB8fCBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLmR1YWwgICAgID0gYXR0cnMuZHVhbEhhbmRsZXN8fCBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLnRyaWdnZXJfaW5wdXRfY2hhbmdlPSBmYWxzZTtcbiAgICAgICAgICAgIHNjb3BlLm5vdE1vcmUgID0gcGFyc2VJbnQoYXR0cnMubm90TW9yZSkgICB8fCAxMDA7XG4gICAgICAgICAgICBzY29wZS5ub3RMZXNzICA9IHBhcnNlSW50KGF0dHJzLm5vdExlc3MpICAgfHwgMDtcblxuICAgICAgICAgICAgaWYgKHNjb3BlLnZlcnRpY2FsKSBlbGVtZW50LmFkZENsYXNzKFwidmVydGljYWwtcmFuZ2VcIik7XG5cbiAgICAgICAgICAgIHNjb3BlLmhhbmRsZXM9IFtzY29wZS5maW5kKCcuaGFuZGxlLW1pbicpLCBzY29wZS5maW5kKCcuaGFuZGxlLW1heCcpXTtcbiAgICAgICAgICAgIHNjb3BlLmJhciAgICA9IGVsZW1lbnQ7XG4gICAgICAgICAgICBzY29wZS5zbGlkZXIgPSBzY29wZS5maW5kKCcucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50Jyk7XG4gICAgICAgICAgICBzY29wZS5zdGFydCAgPSBzY29wZS5maW5kKCcuaWJ6LXJhbmdlLXNsaWRlci1zdGFydCcpO1xuICAgICAgICAgICAgc2NvcGUuc3RvcCAgID0gc2NvcGUuZmluZCgnLmliei1yYW5nZS1zbGlkZXItc3RvcCcpO1xuICAgICAgICAgICAgc2NvcGUuZGlzYWJsZT0gYXR0cnMuZGlzYWJsZSB8fCBmYWxzZTtcblxuICAgICAgICAgICAgc2NvcGUuY3RybGhhbmRsZSA9IG5ldyBSYW5nZVNsaWRlckhhbmRsZSAoc2NvcGUpO1xuXG4gICAgICAgICAgICAvLyBwcmVwYXJlIERPTSBvYmplY3QgcG9pbnRlciB0byBjb21wdXRlIHNpemUgZHluYW1pY2FsbHlcbiAgICAgICAgICAgIHNjb3BlLmJvdW5kcyA9IHtcbiAgICAgICAgICAgICAgICBiYXIgICAgOiBlbGVtZW50WzBdLFxuICAgICAgICAgICAgICAgIGhhbmRsZXM6IFtzY29wZS5oYW5kbGVzWzBdWzBdLCBzY29wZS5oYW5kbGVzWzFdWzBdXVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgaWYgKGF0dHJzLmRpc2FibGUgPT09ICd0cnVlJykgc2NvcGUuc2V0RGlzYWJsZSh0cnVlKTtcblxuICAgICAgICAgICAgaWYgKGF0dHJzLmRpc3BsYXlUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGF0dHJzLmRpc3BsYXlUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSB0cnVlIDpcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnaGFuZGxlJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS5kaXNwbGF5cyA9IHNjb3BlLmhhbmRsZXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS5oYW5kbGVzWzBdLmFkZENsYXNzKCdpYnotcmFuZ2Utc2xpZGVyLWRpc3BsYXknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzY29wZS5kdWFsKSBzY29wZS5oYW5kbGVzWzFdLmFkZENsYXNzKCdpYnotcmFuZ2Utc2xpZGVyLWRpc3BsYXknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGUuZGlzcGxheXMgPSAgWyRkb2N1bWVudC5nZXRFbGVtZW50QnlJZCAoYXR0cnMuZGlzcGxheVRhcmdldCldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSBzY29wZS5kaXNwbGF5cz1bXTtcblxuICAgICAgICAgICAgLy8gZXh0cmFjdCBpbml0aWFsIHZhbHVlcyBmcm9tIGF0dHJzIGFuZCBwYXJzZSBpbnRvIGludFxuICAgICAgICAgICAgaWYgKCFhdHRycy5pbml0aWFsKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuaW5pdGlhbCAgPSBbc2NvcGUubmdNb2RlbCwgc2NvcGUubmdNb2RlbF07IC8vIGluaXRpYWxpemUgdG8gbW9kZWwgdmFsdWVzXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHZhciBpbml0aWFsICA9IGF0dHJzLmluaXRpYWwuc3BsaXQoJywnKTtcbiAgICAgICAgICAgICAgICBzY29wZS5pbml0aWFsID0gW1xuICAgICAgICAgICAgICAgICAgICBpbml0aWFsWzBdICE9PSB1bmRlZmluZWQgPyBwYXJzZUludCAoaW5pdGlhbFswXSkgOiBzY29wZS5ub3RMZXNzLFxuICAgICAgICAgICAgICAgICAgICBpbml0aWFsWzFdICE9PSB1bmRlZmluZWQgPyBwYXJzZUludCAoaW5pdGlhbFsxXSkgOiBzY29wZS5ub3RNb3JlXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTW9uaXRvciBhbnkgY2hhbmdlcyBvbiBzdGFydC9zdG9wIGRhdGVzLlxuICAgICAgICAgICAgc2NvcGUuJHdhdGNoKCdzdGFydEF0JywgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlIDwgc2NvcGUuc3RhcnRBdCApIHtcbiAgICAgICAgICAgICAgICAgICAgLy9zY29wZS5zZXRWYWx1ZSAoc2NvcGUuc3RhcnRBdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzY29wZS5zdGFydEF0KSBzY29wZS5zZXRTdGFydCAoc2NvcGUuc3RhcnRBdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgc2NvcGUuJHdhdGNoKCdzdG9wQXQnICwgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlID4gc2NvcGUuc3RvcEF0KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vc2NvcGUuc2V0VmFsdWUgKHNjb3BlLnN0b3BBdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChzY29wZS5zdG9wQXQpIHNjb3BlLnNldFN0b3AgKHNjb3BlLnN0b3BBdCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gZmluaXNoIHdpZGdldCBpbml0aWFsaXNhdGlvblxuICAgICAgICAgICAgc2NvcGUuaW5pdGlhbFNldHRpbmdzIChzY29wZS5pbml0aWFsKTtcblxuICAgICAgICB9O1xuXG4gICAgICAgIHNjb3BlLmluaXQoKTtcbiAgICAgICAgXG4gICAgICAgICAvLyBzbGlkZXIgaXMgcmVhZHkgcHJvdmlkZSBjb250cm9sIGhhbmRsZSB0byBhcHBsaWNhdGlvbiBjb250cm9sbGVyXG4gICAgICAgIHNjb3BlLiR3YXRjaCAoJ2luaXRob29rJywgZnVuY3Rpb24gKCkgeyAgICAgICAgIC8vIGluaXQgVmFsdWVzIG1heSBhcnJpdmUgbGF0ZVxuICAgICAgICAgICAgaWYgKHNjb3BlLmluaXRob29rKSBzY29wZS5pbml0aG9vayAoc2NvcGUuY3RybGhhbmRsZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHNjb3BlLiR3YXRjaCAoJ2luaXR2YWx1ZXMnLCBmdW5jdGlvbiAoKSB7IFx0Ly8gaW5pdCBWYWx1ZXMgbWF5IGFycml2ZSBsYXRlXG4gICAgICAgICAgICBpZiAoc2NvcGUuaW5pdHZhbHVlcykgc2NvcGUuaW5pdFdpZGdldChzY29wZS5pbml0dmFsdWVzKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gdHdvLXdheSBiaW5kaW5nIGlmIG1vZGVsIHZhbHVlIGNoYW5nZXNcbiAgICAgICAgc2NvcGUuJHdhdGNoICgnbmdNb2RlbCcsIGZ1bmN0aW9uIChuZXdWYWx1ZSkge1xuICAgICAgICAgIHNjb3BlLnNldFZhbHVlKG5ld1ZhbHVlLCAwKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG5yZXR1cm4ge1xuICAgIHJlc3RyaWN0OiBcIkVcIiwgICAgLy8gcmVzdHJpY3QgdG8gPHJhbmdlLXNsaWRlcj4gSFRNTCBlbGVtZW50IG5hbWVcbiAgICBzY29wZToge1xuICAgICAgICBzdGFydEF0ICA6Jz0nLCAgLy8gRmlyc3QgYWNjZXB0YWJsZSBkYXRlXG4gICAgICAgIHN0b3BBdCAgIDonPScsICAvLyBMYXN0IGFjY2VwdGFibGUgZGF0ZVxuICAgICAgICBjYWxsYmFjayA6Jz0nLCAgLy8gQ2FsbGJhY2sgdG8gYWN0aWYgd2hlbiBhIGRhdGUgaXMgc2VsZWN0ZWRcbiAgICAgICAgZm9ybWF0dGVyOic9JywgIC8vIENhbGxiYWNrIGZvciBkcmFnIGV2ZW50IGNhbGwgZWFjaCB0aW1lIGludGVybmFsIHZhbHVlIGNoYW5nZXNcbiAgICAgICAgaW5pdGhvb2sgOic9JywgIC8vIEhvb2sgcG9pbnQgdG8gY29udHJvbCBzbGlkZXIgZnJvbSBBUElcbiAgICAgICAgY2JoYW5kbGUgOic9JywgIC8vIEFyZ3VtZW50IGFkZGVkIHRvIGV2ZXJ5IGNhbGxiYWNrXG4gICAgICAgIGluaXR2YWx1ZXM6Jz0nLCAgIC8vIEluaXRpYWwgdmFsdWVzIGFzIGEgc2luZ2xlIG9iamVjdFxuICAgICAgICBuZ01vZGVsOiAnPScgICAgLy8gdGhlIG1vZGVsIHZhbHVlXG4gICAgfSxcbiAgICByZXF1aXJlOiAnP25nTW9kZWwnLFxuICAgIHRlbXBsYXRlOiB0ZW1wbGF0ZSwgLy8gaHRtbCB0ZW1wbGF0ZSBpcyBidWlsZCBmcm9tIEpTXG4gICAgcmVwbGFjZTogdHJ1ZSwgICAgICAvLyByZXBsYWNlIGN1cnJlbnQgZGlyZWN0aXZlIHdpdGggdGVtcGxhdGUgd2hpbGUgaW5oZXJpdGluZyBvZiBjbGFzc1xuICAgIGxpbms6IGxpbmsgICAgICAgICAgLy8gcGlja2FkYXRlIG9iamVjdCdzIG1ldGhvZHNcbn07XG59XSk7XG5cbmNvbnNvbGUubG9nIChcIlJhbmdlU2xpZGVyIExvYWRlZFwiKTtcblxufSkoKTsiLCIvKlxuIGFsc2EtZ2F0ZXdheSAtLSBwcm92aWRlIGEgUkVTVC9IVFRQIGludGVyZmFjZSB0byBBTFNBLU1peGVyXG5cbiBDb3B5cmlnaHQgKEMpIDIwMTUsIEZ1bHVwIEFyIEZvbGxcblxuIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvclxuIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG5cbiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG4gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiBhbG9uZyB3aXRoIHNjb3BlIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmVcbiBGb3VuZGF0aW9uLCBJbmMuLCA2NzUgTWFzcyBBdmUsIENhbWJyaWRnZSwgTUEgMDIxMzksIFVTQS5cblxuIFJlZmVyZW5jZXM6XG5cbiAqL1xuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciB0ZW1wbGF0ZSA9XG4gICAgICAgICAgJzxkaXYgY2xhc3M9XCJhZmItbW9uaXRvclwiIG5nLWNsaWNrPVwiZ2V0cGluZygpXCI+JyArXG4gICAgICAgICAnPHNwYW4gY2xhc3M9XCJhZmItcmVmcmVzaC10b2tlblwiICA+YWZiOi8ve3tob3N0bmFtZX19Ont7aHR0cGRwb3J0fX08L3NwYW4+JyArXG4gICAgICAgICAnPGkgY2xhc3M9XCJ7e2ljb259fVwiPjwvaT4nICtcbiAgICAgICAgICc8L2Rpdj4nO1xuXG5cbi8vIHNjb3BlIG1vZHVsZSBpcyBsb2FkIHN0YXRpY2FsbHkgYmVmb3JlIGFueSByb3V0ZSBpcyBjYXRpdmF0ZWRcbmFuZ3VsYXIubW9kdWxlKCdUb2tlblJlZnJlc2gnLCBbJ0FwcENvbmZpZycsICdNb2RhbE5vdGlmaWNhdGlvbiddKVxuXG4gICAgLmRpcmVjdGl2ZSAoJ3Rva2VuUmVmcmVzaCcsIFtcIiR3aW5kb3dcIiwgXCIkdGltZW91dFwiLCBcIiRsb2NhdGlvblwiLCBcIk5vdGlmaWNhdGlvblwiLCBcIkFwcENvbmZpZ1wiLCBcIkFwcENhbGxcIiwgZnVuY3Rpb24oJHdpbmRvdywgJHRpbWVvdXQsICRsb2NhdGlvbiwgTm90aWZpY2F0aW9uLCBBcHBDb25maWcsIEFwcENhbGwpIHtcblxuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICAgICAgc2NvcGUubG9nZ2VkPXVuZGVmaW5lZDsgLy8gbmVpdGhlciB0aHUgbmVpdGhlciBmYWxzZVxuICAgICAgICBcbiAgICAgICAgJHdpbmRvdy5vbmJlZm9yZXVubG9hZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIEFwcENhbGwuZ2V0IChcInRva2VuXCIsIFwicmVzZXRcIiwgey8qcXVlcnkqL30sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiT1BBIEV4aXQgUmVxdWVzdGVkXCIpOyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgICAgICAgICAgICAgICBcbiAgICAgICAgc2NvcGUub25saW5lID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgZWxlbS5hZGRDbGFzcyAgICAoXCJvbmxpbmVcIik7XG4gICAgICAgICAgICBlbGVtLnJlbW92ZUNsYXNzIChcIm9mZmxpbmVcIik7XG4gICAgICAgICAgICBzY29wZS5sb2dnZWQ9dHJ1ZTtcbiAgICAgICAgfTtcblxuICAgICAgICBzY29wZS5vZmZsaW5lID0gZnVuY3Rpb24oKXtcbiAgICAgICAgICAgIGVsZW0uYWRkQ2xhc3MgICAgKFwib2ZmbGluZVwiKTtcbiAgICAgICAgICAgIGVsZW0ucmVtb3ZlQ2xhc3MgKFwib25saW5lXCIpO1xuICAgICAgICAgICAgc2NvcGUubG9nZ2VkPWZhbHNlO1xuICAgICAgICB9O1xuICAgICAgICBcbiAgICAgICAgc2NvcGUub25lcnJvciA9IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgaWYgKHNjb3BlLmxvZ2dlZCAhPT0gZmFsc2UpICB7XG4gICAgICAgICAgICAgICAgTm90aWZpY2F0aW9uLndhcm5pbmcgKHttZXNzYWdlOiBcIkFwcEZyYW1ld29yayBCaW5kZXIgTG9zdFwiLCBkZWxheTogNTAwMH0pO1xuICAgICAgICAgICAgICAgIHNjb3BlLm9mZmxpbmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNjb3BlLnN0YXR1cyA9IDA7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICBzY29wZS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbihqcmVzcCkge1xuICAgICAgICAgICAgaWYgKGpyZXNwLnJlcXVlc3QudG9rZW4pIEFwcENvbmZpZy5zZXNzaW9uLnRva2VuID0ganJlc3AucmVxdWVzdC50b2tlbjtcbiAgICAgICAgICAgIGlmIChqcmVzcC5yZXF1ZXN0LnV1aWQpICBBcHBDb25maWcuc2Vzc2lvbi51dWlkICA9IGpyZXNwLnJlcXVlc3QudXVpZDtcbiAgICAgICAgICAgIGlmIChqcmVzcC5yZXF1ZXN0LnRpbWVvdXQpICBBcHBDb25maWcuc2Vzc2lvbi50aW1lb3V0ICA9IGpyZXNwLnJlcXVlc3QudGltZW91dDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKHNjb3BlLmxvZ2dlZCAhPT0gdHJ1ZSkgIHtcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb24uc3VjY2VzcyAoe21lc3NhZ2U6IFwiQXBwRnJhbWV3b3JrIEJpbmRlciBCYWNrIHRvIExpdmVcIiwgZGVsYXk6IDMwMDB9KTtcbiAgICAgICAgICAgICAgICBzY29wZS5vbmxpbmUoKTtcbiAgICAgICAgICAgICAgICBpZiAoc2NvcGUuY2FsbGJhY2spIHNjb3BlLmNhbGxiYWNrKGpyZXNwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNjb3BlLnN0YXR1cyA9IDE7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gQ2hlY2sgQmluZGVyIHN0YXR1c1xuICAgICAgICBzY29wZS5nZXRwaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEFwcENhbGwuZ2V0IChcInRva2VuXCIsIFwicGluZ1wiLCB7LypxdWVyeSovfSxmdW5jdGlvbihyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LnN0YXR1cyA9PT0gMjAwKSBzY29wZS5vbnN1Y2Nlc3MgKHJlc3VsdC5kYXRhKTtcbiAgICAgICAgICAgICAgICBlbHNlICBzY29wZS5vbmVycm9yKCk7XG4gICAgICAgICAgICAgICAgLy8gcmVzdGFydCBhIG5ldyB0aW1lciBmb3IgbmV4dCBwaW5nXG4gICAgICAgICAgICAgICAgJHRpbWVvdXQgKHNjb3BlLmdldHBpbmcsIEFwcENvbmZpZy5zZXNzaW9uLnBpbmdyYXRlKjEwMDApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBDaGVjayBCaW5kZXIgc3RhdHVzXG4gICAgICAgIHNjb3BlLnJlZnJlc2ggPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQXBwQ2FsbC5nZXQgKFwidG9rZW5cIiwgXCJyZWZyZXNoXCIsIHsvKnF1ZXJ5Ki99LGZ1bmN0aW9uKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09PSAyMDApIHNjb3BlLm9uc3VjY2VzcyAocmVzdWx0LmRhdGEpO1xuICAgICAgICAgICAgICAgIGVsc2UgIHNjb3BlLm9uZXJyb3IoKTtcbiAgICAgICAgICAgICAgICAvLyByZXN0YXJ0IGEgbmV3IHRpbWVyIGZvciBuZXh0IHJlZnJlc2hcbiAgICAgICAgICAgICAgICAkdGltZW91dCAoc2NvcGUucmVmcmVzaCwgQXBwQ29uZmlnLnNlc3Npb24udGltZW91dCAqMjUwKTtcbiAgICAgICAgICAgIH0pOyAgICAgICAgICAgIFxuICAgICAgICB9O1xuICAgICAgICBcbiAgICAgICAgLy8gSW5pdGlhbCBjb25uZWN0aW9uXG4gICAgICAgIHNjb3BlLnRrY3JlYXRlID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEFwcENhbGwuZ2V0IChcInRva2VuXCIsIFwiY3JlYXRlXCIsIHt0b2tlbjogQXBwQ29uZmlnLnNlc3Npb24uaW5pdGlhbH0sZnVuY3Rpb24ocmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdC5zdGF0dXMgPT09IDIwMCkgc2NvcGUub25zdWNjZXNzIChyZXN1bHQuZGF0YSk7XG4gICAgICAgICAgICAgICAgZWxzZSAgc2NvcGUub25lcnJvcigpO1xuICAgICAgICAgICAgfSk7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgIH07XG4gXG4gICAgICAgIHNjb3BlLmljb24gICAgICA9IGF0dHJzLmljb24gICB8fCBcImZpLWxpZ2h0YnVsYlwiO1xuICAgICAgICBzY29wZS5ob3N0bmFtZSAgPSAkbG9jYXRpb24uaG9zdCgpO1xuICAgICAgICBzY29wZS5odHRwZHBvcnQgPSAkbG9jYXRpb24ucG9ydCgpO1xuICAgICAgICBzY29wZS5hdXRvbG9nICAgPSBKU09OLnBhcnNlKGF0dHJzLmF1dG9sb2cgfHwgZmFsc2UpO1xuICAgICAgICBcbiAgICAgICAgaWYgKHNjb3BlLmF1dG9sb2cpIHNjb3BlLnRrY3JlYXRlKCk7XG5cbiAgICAgICAgLy8gSW5pdCBwaW5nIGFuZCByZWZyZXNoIHByb2Nlc3NcbiAgICAgICAgJHRpbWVvdXQgKHNjb3BlLmdldHBpbmcsIEFwcENvbmZpZy5zZXNzaW9uLnBpbmdyYXRlKjEwMDApO1xuICAgICAgICAkdGltZW91dCAoc2NvcGUucmVmcmVzaCwgQXBwQ29uZmlnLnNlc3Npb24udGltZW91dCAqMjUwKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0ZW1wbGF0ZTogdGVtcGxhdGUsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6IFwiPVwiXG4gICAgICAgIH0sXG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIGxpbms6IG15bWV0aG9kc1xuICAgIH07XG59XSk7XG5cbn0pKCk7XG5jb25zb2xlLmxvZyAoXCJUb2tlbiBSZWZyZXNoIExvYWRlZFwiKTtcblxuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKiBcbiAqIEJ1Z3M6IElucHV0IHdpdGggQ2FsbGJhY2sgU0hPVUxEIEJFIGdldCAncmVxdWlyZWQnIGNsYXNzXG4gKiBcbiAqIHJlZjogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL21vdXNlb3ZlclxuICogXG4gKiB1c2FnZTogXG4gKiBcbiAqIHRpcE1vZGFsOiBsaXN0ZW4gZXZlbnQgZnJvbSBlbGVtLnBhcmVudCgpIHRvIGRpc3BsYXkgdGlwLW1vZGFsXG4gKiAgICAgIDxkaXYgY2xhc3M9XCJ4eHh4XCI+XG4gKiAgICAgICAgICA8dGlwLW1vZGFsIHRpcD14eHh4PjwvdGlwLW1vZGFsPlxuICogICAgICAgICAgPGlucHV0LXRleHQgLi4uLj48L2lucHV0LXRleHQ+XG4gKiAgICAgIDwvZGl2PlxuICogICAgICBcbiAqIE5vdGU6IHVzZSBDU1MudmlzaWJpbGl0eSB0byBhdm9pZCBkaXNwbGF5IGZsaWNrZXJpbmcgYXQgaW5pdGlhbCBkaXNwbGF5LlxuICovXG5cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIHRtcGwgPSAnPGRpdiBjbGFzcz1cInRpcC1tb2RhbC1wb3B1cFwiPicgK1xuICAgICAgICAgICAgJzxpIGNsYXNzPVwie3tpY29ufX1cIj48L2k+JyArXG4gICAgICAgICAgICAnPHNwYW4+e3t0aXB9fTwvc3Bhbj4nICtcbiAgICAgICAgICAgICc8L3NwYW4+PC9kaXY+JyA7XG5cbiAgICBhbmd1bGFyLm1vZHVsZSgnTW9kYWxOb3RpZmljYXRpb24nLCBbXSlcbiAgICAgICAgICAgIC5kaXJlY3RpdmUoJ3RpcE1vZGFsJywgW1wiJHRpbWVvdXRcIiwgZnVuY3Rpb24gKCR0aW1lb3V0KSB7XG5cbiAgICAgICAgICAgICAgICBmdW5jdGlvbiBteW1ldGhvZHMoc2NvcGUsIGVsZW0sIGF0dHJzKSB7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudCA9IGVsZW0ucGFyZW50KCk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLm1vZGFsICAgID0gZWxlbS5maW5kKFwiZGl2XCIpO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLy8gZGVsYXkgdGlwIGRpc3BsYXkgdG8gYXZvaWQgYmxpbmtpbmcgd2hlbiBtb3ZpbmcgbW91c2UgZmFzdFxuICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBkaXNwbGF5ICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGFjdGlvbigpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNjb3BlLnNob3cpIHNjb3BlLm1vZGFsLmNzcyh7b3BhY2l0eTogMSwgdmlzaWJpbGl0eTondmlzaWJsZSd9KTsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGUuc2hvdyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZS50aW1lb3V0ID0gJHRpbWVvdXQoYWN0aW9uLCBzY29wZS5kZWxheSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGNsb3NlICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICBzY29wZS5zaG93ID0gZmFsc2U7ICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgc2NvcGUubW9kYWwuY3NzKHtvcGFjaXR5OiAwLCB2aXNpYmlsaXR5OidoaWRkZW4nfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgLy8gYWp1c3QgaWNvbiBvciB1c2UgZGVmYXVsdFxuICAgICAgICAgICAgICAgICAgICBzY29wZS5pY29uICA9IGF0dHJzLmljb24gfHwgJ2ZpLWxpZ2h0YnVsYic7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAvLyBVcGRhdGUgUGFyZW50IGVsZW1lbnQgdG8gZ2V0IG1vdXNlIGV2ZW50XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5hZGRDbGFzcyAoJ2FzLW1vZGFsLXRpcCcpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnY2xpY2snLCBjbG9zZSk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5iaW5kKCdmb2N1cycsIGRpc3BsYXkpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnbW91c2VvdmVyJywgZGlzcGxheSk7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLnBhcmVudC5iaW5kKCdtb3VzZWxlYXZlJywgY2xvc2UpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5wYXJlbnQuYmluZCgnYmx1cicsIGNsb3NlKTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmRlbGF5ID0gYXR0cnMuZGVsYXkgfHwgMTAwMDsgLy8gd2FpdCAxcyBiZWZvcmUgZGlzcGxheWluZyB0aXBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgICAgICAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICAgICAgICAgICAgICBzY29wZToge3RpcDogXCI9XCJ9IC8vIHRpcCBtYXkgbm90IGJlIGRlZmluZWQgd2hlbiB3aWRnZXQgaXMgZGlzcGxheVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XSk7XG59KSgpO1xuIiwiLyogXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgXCJJb1QuYnpoXCJcbiAqIEF1dGhvciBcIkZ1bHVwIEFyIEZvbGxcIlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZVxuICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKiBcbiAqIEJ1Z3M6IElucHV0IHdpdGggQ2FsbGJhY2sgU0hPVUxEIEJFIGdldCAncmVxdWlyZWQnIGNsYXNzXG4gKi9cblxuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgdG1wbCA9ICc8c3BhbiB0aXRsZT1cIkdvdG86IHt7aHJlZn19XCIgbmctY2xpY2s9XCJjbGlja2VkKClcIj4nICtcbiAgICAgICAgICAgICc8aSBjbGFzcz1cInt7aWNvbn19XCI+PC9pPicgK1xuICAgICAgICAgICAgJzxzcGFuPnt7bGFiZWx9fTwvc3Bhbj4nICtcbiAgICAgICAgICAgICc8L3NwYW4+JztcblxuXG4gICAgYW5ndWxhci5tb2R1bGUoJ0xpbmtCdXR0b24nLCBbXSlcbiAgICAgICAgICAgIC5kaXJlY3RpdmUoJ2xpbmtCdXR0b24nLCBbXCIkbG9jYXRpb25cIiwgZnVuY3Rpb24gKCRsb2NhdGlvbikge1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcblxuICAgICAgICAgICAgICAgICAgICBzY29wZS5jbGlja2VkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWF0dHJzLnF1ZXJ5KSAkbG9jYXRpb24ucGF0aChhdHRycy5ocmVmKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgJGxvY2F0aW9uLnBhdGgoYXR0cnMuaHJlZikuc2VhcmNoKGF0dHJzLnF1ZXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBhanVzdCBpY29uIG9yIHVzZSBkZWZhdWx0XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLmljb24gPSBhdHRycy5pY29uICAgfHwgJ2ZpLWxpbmsnO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS5sYWJlbCA9IGF0dHJzLmxhYmVsIHx8ICdKdW1wJztcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUuaHJlZiAgPSBhdHRycy5ocmVmICB8fCAnL2hvbWUnO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLy8gYWRkIGxhYmVsIGFzIGNsYXNzXG4gICAgICAgICAgICAgICAgICAgIGVsZW0uYWRkQ2xhc3MgKHNjb3BlLmxhYmVsLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICAgICAgICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgICAgICAgICAgICAgIHNjb3BlOiB7fVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XSk7XG59KSgpO1xuIiwiXG4vKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLi5cbiAqIFxuICogUmVmZXJlbmNlOlxuICogICBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9kb2NzL1dlYi9BUEkvRmlsZVJlYWRlciBcbiAqICAgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9Vc2luZ19maWxlc19mcm9tX3dlYl9hcHBsaWNhdGlvbnMjVXNpbmdfaGlkZGVuX2ZpbGVfaW5wdXRfZWxlbWVudHNfdXNpbmdfdGhlX2NsaWNrJTI4JTI5X21ldGhvZFxuICogICBodHRwczovL3VuY29ya2Vkc3R1ZGlvcy5jb20vYmxvZy9tdWx0aXBhcnRmb3JtZGF0YS1maWxlLXVwbG9hZC13aXRoLWFuZ3VsYXJqc1xuICogICBodHRwczovL3d3dy50ZXJsaWNpLmNvbS8yMDE1LzA1LzE2L3VwbG9hZGluZy1maWxlcy1sb2NhbGx5Lmh0bWxcbiAqICAgaHR0cHM6Ly9naXRodWIuY29tL25lcnZnaC9hbmd1bGFyLWZpbGUtdXBsb2FkL2Jsb2IvbWFzdGVyL3NyYy9zZXJ2aWNlcy9GaWxlVXBsb2FkZXIuanNcbiAqICAgaHR0cHM6Ly9zdHVrLmdpdGh1Yi5pby9qc3ppcC9kb2N1bWVudGF0aW9uL2hvd3RvL3JlYWRfemlwLmh0bWxcbiAqICAgaHR0cDovL29uZWh1bmdyeW1pbmQuY29tL3ppcC1wYXJzaW5nLWpzemlwLWFuZ3VsYXIvXG4gKiAgIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTUzNDE5MTIvaG93LXRvLWdvLWZyb20tYmxvYi10by1hcnJheWJ1ZmZlclxuICogICBcbiAqICAgQnVnczogemlwIGZpbGUgc2VudCBldmVuIHdoZW4gZmxhZyBhcyBpbnZhbGlkIFxuICovXG5cbiBcblxuKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG4vLyBXQVJOSU5HOiBBbmd1bGFyIG5nLWNoYW5nZSBkb2VzIG5vdCB3b3JrIG9uIGlucHV0L2ZpbGUuIExldCdzIGhvb2sgb3VyIGNhbGxiYWNrIHRocm91Z2ggc3RhbmRhcmQgSlMgZnVuY3Rpb25cbnZhciB0bXBsID0gICc8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwie3tuYW1lfX0taW5wdXRcIiBvbmNoYW5nZT1cImFuZ3VsYXIuZWxlbWVudCh0aGlzKS5zY29wZSgpLlVwTG9hZEZpbGUodGhpcy5maWxlcylcIiBhY2NlcHQ9XCJ7e21pbWV0eXBlfX1cIiBzdHlsZT1cImRpc3BsYXk6bm9uZVwiPicrXG4gICAgICAgICAgICAnPGRpdiBjbGFzcz1cInVwbG9hZC1maWxlXCIgbmctY2xpY2s9XCJpbWdDbGlja2VkKClcIj4nICtcbiAgICAgICAgICAgICc8aW1nIGlkPVwie3tuYW1lfX0taW1nXCIgc3JjPVwie3t0aHVtYm5haWx9fVwiPicgK1xuICAgICAgICAgICAgJzxyYW5nZS1zbGlkZXIgbmctc2hvdz1cIiFub3NsaWRlclwiIGlkPVwie3tuYW1lfX0tc2xpZGVyXCIgYXV0b21hdGljPXRydWUgaW5pdGhvb2s9XCJTbGlkZXJJbml0Q0JcIj48L3JhbmdlLXNsaWRlcj4nICtcbiAgICAgICAgICAgICc8L2Rpdj4nO1xuICAgIFxuXG4vLyBTZXJ2aWNlIENyZWF0ZSB4Zm9ybSBpbnNlcnQgZmlsZXMgaW4gYW5kIFBvc3QgaXQgdG8gdXJsXG5mdW5jdGlvbiBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCB0aHVtYm5haWxDQikge1xuICAgIHZhciB4bWxSZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgeGZvcm0gID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgXG4gICAgdmFyIE9uTG9hZENCID0gZnVuY3Rpb24gKHRhcmdldCkge1xuICAgICAgICB2YXIgc3RhdHVzID0gdGh1bWJuYWlsQ0IgKHRhcmdldCk7XG4gICAgICAgIC8vaWYgKHN0YXR1cykgeGZvcm0uYXBwZW5kKHNjb3BlLm5hbWUsIGZpbGUsIGZpbGUubmFtZSk7XG4gICAgfTtcbiAgICAgICAgICAgIC8vIFVwZGF0ZSBzbGlkZXIgZHVyaW5nIFVwbG9hZFxuICAgIHhtbFJlcS51cGxvYWQub25wcm9ncmVzcyA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB2YXIgcHJvZ3Jlc3MgPSBNYXRoLnJvdW5kKGV2ZW50Lmxlbmd0aENvbXB1dGFibGUgPyBldmVudC5sb2FkZWQgKiAxMDAgLyBldmVudC50b3RhbCA6IDApO1xuICAgICAgICBpZiAoc2NvcGUuc2xpZGVyKSBzY29wZS5zbGlkZXIuc2V0VmFsdWUgKHByb2dyZXNzKTtcbiAgICB9O1xuXG4gICAgLy8gVXBsb2FkIGlzIGZpbmlzaCBsZXQncyBub3RpZnkgY29udHJvbGVyIGNhbGxiYWNrXG4gICAgeG1sUmVxLm9ubG9hZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZWxlbS5hZGRDbGFzcyAoXCJzdWNjZXNzXCIpO1xuICAgICAgICBlbGVtLnJlbW92ZUNsYXNzIChcImVycm9yXCIpO1xuICAgICAgICB2YXIgcmVzcG9uc2UgPXtcbiAgICAgICAgICAgIHN0YXR1cyA6IHhtbFJlcS5zdGF0dXMsXG4gICAgICAgICAgICBoZWFkZXJzOiB4bWxSZXEuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkgXG4gICAgICAgIH07XG4gICAgICAgIHNjb3BlLmNhbGxiYWNrIChyZXNwb25zZSk7XG4gICAgfTtcblxuICAgIHhtbFJlcS5vbmVycm9yID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBlbGVtLmFkZENsYXNzIChcImVycm9yXCIpO1xuICAgICAgICBlbGVtLnJlbW92ZUNsYXNzIChcInN1Y2Nlc3NcIik7XG4gICAgICAgIHZhciByZXNwb25zZSA9e1xuICAgICAgICAgICAgc3RhdHVzIDogeG1sUmVxLnN0YXR1cyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHhtbFJlcS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSBcbiAgICAgICAgfTtcbiAgICAgICAgc2NvcGUuY2FsbGJhY2sgKHJlc3BvbnNlKTtcbiAgICB9O1xuXG4gICAgeG1sUmVxLm9uYWJvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGVsZW0uYWRkQ2xhc3MgKFwiZXJyb3JcIik7XG4gICAgICAgIGVsZW0ucmVtb3ZlQ2xhc3MgKFwic3VjY2Vzc1wiKTtcbiAgICAgICAgdmFyIHJlc3BvbnNlID17XG4gICAgICAgICAgICBzdGF0dXMgOiB4bWxSZXEuc3RhdHVzLFxuICAgICAgICAgICAgaGVhZGVyczogeG1sUmVxLmdldEFsbFJlc3BvbnNlSGVhZGVycygpIFxuICAgICAgICB9O1xuICAgICAgICBzY29wZS5jYWxsYmFjayAocmVzcG9uc2UpO1xuICAgIH07XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBmaWxlID0gZmlsZXNbaV07XG4gICAgICAgIGlmICghZmlsZS50eXBlLm1hdGNoKHNjb3BlLm1pbWV0eXBlKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zb2xlLmxvZyAoXCJTZWxlY3RlZCBmaWxlPVwiICsgZmlsZS5uYW1lICsgXCIgc2l6ZT1cIisgZmlsZS5zaXplLzEwMjQgKyBcIiBUeXBlPVwiKyBmaWxlLnR5cGUpO1xuXG4gICAgICAgIC8vIEZpbGUgdG8gdXBsb2FkIGlzIHRvbyBiaWdcbiAgICAgICAgaWYgKGZpbGUuc2l6ZSA+IHNjb3BlLm1heHNpemUqMTAyNCkge1xuICAgICAgICAgICAgc2NvcGUudGh1bWJuYWlsID0gc2NvcGUuaXN0b29iaWc7IC8vIHdhcm5pbmcgaWYgaW1hZ2UgcGF0aCBpcyB3cm9uZyBub3RoaW5nIGhhcHBlblxuICAgICAgICAgICAgc2NvcGUuJGFwcGx5KCd0aHVtYm5haWwnKTsgLy8gd2Ugc2hvcnQtY2lyY3VpdCBBbmd1bGFyIHJlc3luYyBJbWFnZVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBpcyBub3QgYW4gdXBsb2FkYWJsZSBmaWxlXG4gICAgICAgIGlmKGlzTmFOKGZpbGUuc2l6ZSkpIHtcbiAgICAgICAgICAgIHNjb3BlLnRodW1ibmFpbCA9IHNjb3BlLmlzbm90dmFsaWQ7IFxuICAgICAgICAgICAgc2NvcGUuJGFwcGx5KCd0aHVtYm5haWwnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHNjb3BlLkJhc2VuYW1lPSBmaWxlLm5hbWUuc3BsaXQoJy8nKS5yZXZlcnNlKClbMF07XG4gICAgICAgIHNjb3BlLmltZ0VsZW1bMF0uZmlsZSA9IGZpbGU7XG5cbiAgICAgICAgLy8gSWYgRmlsZSBpcyBhbiBpbWFnZSBsZXQgZGlzcGxheSBpdCBub3dcbiAgICAgICAgaWYgKHRodW1ibmFpbENCKSB7XG4gICAgICAgICAgICB2YXIgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcihmaWxlKTtcbiAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSBPbkxvYWRDQjtcbiAgICAgICAgfSBcbiAgICAgICAgLy8gaWYgZXZlcnl0aGluZyBpcyBPSyBsZXQncyBhZGQgZmlsZSB0byB4Zm9ybVxuICAgICAgICB4Zm9ybS5hcHBlbmQoc2NvcGUubmFtZSwgZmlsZSwgZmlsZS5uYW1lKTtcbiAgICB9XG5cblxuICAgIC8vIGV2ZXJ5dGhpbmcgbG9va3MgT0sgbGV0J3MgUG9zdCBpdFxuICAgIHhtbFJlcS5vcGVuKFwiUE9TVFwiLCBwb3N0dXJsICwgdHJ1ZSk7XG4gICAgeG1sUmVxLnNlbmQoeGZvcm0pO1xufVxuXG5hbmd1bGFyLm1vZHVsZSgnVXBsb2FkRmlsZXMnLFsnQXBwQ29uZmlnJywgJ01vZGFsTm90aWZpY2F0aW9uJywgJ1JhbmdlU2xpZGVyJ10pXG5cbi5kaXJlY3RpdmUoJ3VwbG9hZEltYWdlJywgW1wiQXBwQ29uZmlnXCIsIFwiSlFlbXVcIiwgXCJOb3RpZmljYXRpb25cIiwgZnVuY3Rpb24oQXBwQ29uZmlnLCAgSlFlbXUsIE5vdGlmaWNhdGlvbikge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICAgICAgXG4gICAgICAgIC8vIGdldCB3aWRnZXQgaW1hZ2UgaGFuZGxlIGZyb20gdGVtcGxhdGVcbiAgICAgICAgc2NvcGUuaW1nRWxlbSAgICA9IGVsZW0uZmluZCgnaW1nJyk7XG4gICAgICAgIHNjb3BlLmlucHV0RWxlbSAgPSBlbGVtLmZpbmQoJ2lucHV0Jyk7XG4gICAgICAgIFxuICAgICAgICAvLyBJbWFnZSB3YXMgY2tpY2sgbGV0J3Mgc2ltdWxhdGUgYW4gaW5wdXQgKGZpbGUpIGNsaWNrXG4gICAgICAgIHNjb3BlLmltZ0NsaWNrZWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzY29wZS5pbnB1dEVsZW1bMF0uY2xpY2soKTsgLy8gV2FybmluZyBBbmd1bGFyIFRyaWdnZXJFdmVudCBkb2VzIG5vdCB3b3JrISEhXG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBTbGlkZXIgY29udHJvbCBoYW5kbGUgcmVnaXN0cmF0aW9uIGFmdGVyIGNyZWF0aW9uXG4gICAgICAgIHNjb3BlLlNsaWRlckluaXRDQj1mdW5jdGlvbiAoc2xpZGVyKSB7XG4gICAgICAgICAgIHNjb3BlLnNsaWRlcj0gc2xpZGVyOyBcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFVwbG9hZCBpcyBkZWxlZ2F0ZWQgdG8gYSBzaGFyZWQgZnVuY3Rpb25cbiAgICAgICAgc2NvcGUuVXBMb2FkRmlsZT1mdW5jdGlvbiAoZmlsZXMpIHtcbiAgICAgICAgICAgIHZhciByZWFkZXJDQiA9IGZ1bmN0aW9uICh1cGxvYWQpIHtcbiAgICAgICAgICAgICAgICAvLyBzY29wZS50aHVtYm5haWwgPSB1cGxvYWQudGFyZ2V0LnJlc3VsdDtcbiAgICAgICAgICAgICAgICBzY29wZS5pbWdFbGVtWzBdLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt1cGxvYWQudGFyZ2V0LnJlc3VsdF0sIHt0eXBlOiBcImltYWdlXCJ9KSk7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOyAvLyB0cnVlIGFjdGl2YXRlcyBwb3N0XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdmFyIHBvc3R1cmwgPSBhdHRycy5wb3N0dXJsICsgXCI/dG9rZW49XCIgKyBBcHBDb25maWcuc2Vzc2lvbi50b2tlbjtcbiAgICAgICAgICAgIG5ldyBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCByZWFkZXJDQik7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gSW5pdGlhbGxpemUgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhdHRyaWJ1dGVzIHZhbHVlc1xuICAgICAgICBzY29wZS5uYW1lPSBhdHRycy5uYW1lIHx8ICdhdmF0YXInO1xuICAgICAgICBzY29wZS5jYXRlZ29yeT0gYXR0cnMuY2F0ZWdvcnkgIHx8ICdpbWFnZSc7XG4gICAgICAgIHNjb3BlLm1pbWV0eXBlPSAoYXR0cnMuYWNjZXB0IHx8ICdpbWFnZScpICsgJy8qJztcbiAgICAgICAgc2NvcGUubWF4c2l6ZT0gYXR0cnMubWF4c2l6ZSB8fCAxMDA7IC8vIGRlZmF1bHQgbWF4IHNpemUgMTAwS0JcbiAgICAgICAgc2NvcGUucmVnZXhwID0gbmV3IFJlZ0V4cCAoYXR0cnMuYWNjZXB0KyAnLionLCdpJyk7XG5cbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUudGh1bWJuYWlsPSBBcHBDb25maWcucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLnRodW1ibmFpbDtcbiAgICAgICAgZWxzZSAgc2NvcGUudGh1bWJuYWlsPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAndHV4LWJ6aC5wbmcnO1xuICAgICAgICBcbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUuaXNub3R2YWxpZD0gQXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc25vdHZhbGlkO1xuICAgICAgICBlbHNlICBzY29wZS5pc25vdHZhbGlkPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXNub3R2YWxpZC5wbmcnO1xuXG4gICAgICAgIGlmIChhdHRycy5pc3Rvb2JpZykgc2NvcGUuaXN0b29iaWc9IEFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAgYXR0cnMuaXN0b29iaWc7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzdG9vYmlnPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXN0b29iaWcucG5nJztcbiAgICAgICAgc2NvcGUubm9zbGlkZXIgPSBhdHRycy5ub3NsaWRlciB8fCBmYWxzZTtcblxuICAgICAgICBpZiAoIWF0dHJzLnBvc3R1cmwpIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbGUtdXBsb2FkICVzIHBvc3R1cmw9L2FwaS94eHh4L3h4eHggcmVxdWlyZWQnLCBzY29wZS5hdHRycyk7ICAgICAgICAgICAgXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbn1dKVxuICAgIFxuLmRpcmVjdGl2ZSgndXBsb2FkQXVkaW8nLCBbXCJBcHBDb25maWdcIiwgXCJKUWVtdVwiLCBcIk5vdGlmaWNhdGlvblwiLCBmdW5jdGlvbihBcHBDb25maWcsICBKUWVtdSwgTm90aWZpY2F0aW9uKSB7XG4gICAgZnVuY3Rpb24gbXltZXRob2RzKHNjb3BlLCBlbGVtLCBhdHRycykge1xuICAgICAgICBcbiAgICAgICAgLy8gZ2V0IHdpZGdldCBpbWFnZSBoYW5kbGUgZnJvbSB0ZW1wbGF0ZVxuICAgICAgICBzY29wZS5pbWdFbGVtICAgID0gZWxlbS5maW5kKCdpbWcnKTtcbiAgICAgICAgc2NvcGUuaW5wdXRFbGVtICA9IGVsZW0uZmluZCgnaW5wdXQnKTtcbiAgICAgICAgXG4gICAgICAgIC8vIEltYWdlIHdhcyBja2ljayBsZXQncyBzaW11bGF0ZSBhbiBpbnB1dCAoZmlsZSkgY2xpY2tcbiAgICAgICAgc2NvcGUuaW1nQ2xpY2tlZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHNjb3BlLmlucHV0RWxlbVswXS5jbGljaygpOyAvLyBXYXJuaW5nIEFuZ3VsYXIgVHJpZ2dlckV2ZW50IGRvZXMgbm90IHdvcmshISFcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFNsaWRlciBjb250cm9sIGhhbmRsZSByZWdpc3RyYXRpb24gYWZ0ZXIgY3JlYXRpb25cbiAgICAgICAgc2NvcGUuU2xpZGVySW5pdENCPWZ1bmN0aW9uIChzbGlkZXIpIHtcbiAgICAgICAgICAgc2NvcGUuc2xpZGVyPSBzbGlkZXI7IFxuICAgICAgICB9O1xuICAgICAgICBcbiAgICAgICAgLy8gVXBsb2FkIGlzIGRlbGVnYXRlZCB0byBhIHNoYXJlZCBmdW5jdGlvblxuICAgICAgICBzY29wZS5VcExvYWRGaWxlPWZ1bmN0aW9uIChmaWxlcykge1xuICAgICAgICAgICAgdmFyIHBvc3R1cmwgPSBhdHRycy5wb3N0dXJsICsgXCI/dG9rZW49XCIgKyBBcHBDb25maWcuc2Vzc2lvbi50b2tlbjtcbiAgICAgICAgICAgIG5ldyBMb2FkRmlsZVN2YyAoc2NvcGUsIGVsZW0sIHBvc3R1cmwsIGZpbGVzLCBmYWxzZSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gSW5pdGlhbGxpemUgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhdHRyaWJ1dGVzIHZhbHVlc1xuICAgICAgICBzY29wZS5uYW1lPSBhdHRycy5uYW1lIHx8ICdhdWRpbyc7XG4gICAgICAgIHNjb3BlLmNhdGVnb3J5PSBhdHRycy5jYXRlZ29yeSAgfHwgJ2F1ZGlvJztcbiAgICAgICAgc2NvcGUubWltZXR5cGU9IChhdHRycy5hY2NlcHQgfHwgJ2F1ZGlvJykgKyAnLyonO1xuICAgICAgICBzY29wZS5tYXhzaXplPSBhdHRycy5tYXhzaXplIHx8IDEwMDAwOyAvLyBkZWZhdWx0IG1heCBzaXplIDEwTUJcbiAgICAgICAgc2NvcGUucmVnZXhwID0gbmV3IFJlZ0V4cCAoYXR0cnMuYWNjZXB0KyAnLionLCdpJyk7XG5cbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUudGh1bWJuYWlsPSBBcHBDb25maWcucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLnRodW1ibmFpbDtcbiAgICAgICAgZWxzZSAgc2NvcGUudGh1bWJuYWlsPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAndXBsb2FkLW11c2ljLnBuZyc7XG4gICAgICAgIFxuICAgICAgICBpZiAoYXR0cnMudGh1bWJuYWlsKSBzY29wZS5pc25vdHZhbGlkPSBBcHBDb25maWcucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgIGF0dHJzLmlzbm90dmFsaWQ7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzbm90dmFsaWQ9QXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc25vdHZhbGlkLnBuZyc7XG5cbiAgICAgICAgaWYgKGF0dHJzLmlzdG9vYmlnKSBzY29wZS5pc3Rvb2JpZz0gQXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc3Rvb2JpZztcbiAgICAgICAgZWxzZSAgc2NvcGUuaXN0b29iaWc9QXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc3Rvb2JpZy5wbmcnO1xuICAgICAgICBzY29wZS5ub3NsaWRlciA9IGF0dHJzLm5vc2xpZGVyIHx8IGZhbHNlO1xuXG4gICAgICAgIGlmICghYXR0cnMucG9zdHVybCkgdGhyb3cgbmV3IFR5cGVFcnJvcignZmlsZS11cGxvYWQgJXMgcG9zdHVybD0vYXBpL3h4eHgveHh4eCByZXF1aXJlZCcsIHNjb3BlLmF0dHJzKTsgICAgICAgICAgICBcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdHJpY3Q6ICdFJyxcbiAgICAgICAgdGVtcGxhdGU6IHRtcGwsXG4gICAgICAgIGxpbms6IG15bWV0aG9kcyxcbiAgICAgICAgc2NvcGU6IHtcbiAgICAgICAgICAgIGNhbGxiYWNrIDogJz0nXG4gICAgICAgIH1cbiAgICB9O1xuICAgIFxufV0pXG5cbi5kaXJlY3RpdmUoJ3VwbG9hZEFwcGxpJywgW1wiQXBwQ29uZmlnXCIsIFwiSlFlbXVcIiwgXCJOb3RpZmljYXRpb25cIiwgZnVuY3Rpb24oQXBwQ29uZmlnLCAgSlFlbXUsIE5vdGlmaWNhdGlvbikge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICAgICAgXG4gICAgICAgIC8vIGdldCB3aWRnZXQgaW1hZ2UgaGFuZGxlIGZyb20gdGVtcGxhdGVcbiAgICAgICAgc2NvcGUuaW1nRWxlbSAgICA9IGVsZW0uZmluZCgnaW1nJyk7XG4gICAgICAgIHNjb3BlLmlucHV0RWxlbSAgPSBlbGVtLmZpbmQoJ2lucHV0Jyk7XG4gICAgICAgIFxuICAgICAgICAvLyBJbWFnZSB3YXMgY2tpY2sgbGV0J3Mgc2ltdWxhdGUgYW4gaW5wdXQgKGZpbGUpIGNsaWNrXG4gICAgICAgIHNjb3BlLmltZ0NsaWNrZWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzY29wZS5pbnB1dEVsZW1bMF0uY2xpY2soKTsgLy8gV2FybmluZyBBbmd1bGFyIFRyaWdnZXJFdmVudCBkb2VzIG5vdCB3b3JrISEhXG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICAvLyBTbGlkZXIgY29udHJvbCBoYW5kbGUgcmVnaXN0cmF0aW9uIGFmdGVyIGNyZWF0aW9uXG4gICAgICAgIHNjb3BlLlNsaWRlckluaXRDQj1mdW5jdGlvbiAoc2xpZGVyKSB7XG4gICAgICAgICAgIHNjb3BlLnNsaWRlcj0gc2xpZGVyOyBcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIC8vIFVwbG9hZCBpcyBkZWxlZ2F0ZWQgdG8gYSBzaGFyZWQgZnVuY3Rpb25cbiAgICAgICAgc2NvcGUuVXBMb2FkRmlsZT1mdW5jdGlvbiAoZmlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB2YXIgcmVhZGVyQ0IgPSBmdW5jdGlvbiAodXBsb2FkKSB7XG4gICAgICAgICAgICAgICAgdmFyIHppcGFwcCA9IG5ldyBKU1ppcCh1cGxvYWQudGFyZ2V0LnJlc3VsdCk7XG4gICAgICAgICAgICAgICAgdmFyIHRodW1ibmFpbCA9IHppcGFwcC5maWxlKFwiYWZhLXBrZy90aHVtYm5haWwuanBnXCIpO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIENoZWNrIGlzIHdlIGhhdmUgYSB0aHVtYm5haWwgd2l0aGluIGxvYWRlZCBaaXBmaWxlXG4gICAgICAgICAgICAgICAgaWYgKCF0aHVtYm5haWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cgKFwiVGhpcyBpcyBub3QgYSB2YWxpZCBBcHBsaWNhdGlvbiBGcmFtZXdvcmsgQVBQXCIpO1xuICAgICAgICAgICAgICAgICAgICBzY29wZS50aHVtYm5haWw9QXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICdpc25vdHZhbGlkLnBuZyc7XG4gICAgICAgICAgICAgICAgICAgIHNjb3BlLiRhcHBseSgndGh1bWJuYWlsJyk7IC8vIHdlIHNob3J0LWNpcmN1aXQgQW5ndWxhciByZXN5bmMgSW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOyAvLyBkbyBub3QgcG9zdCB6aXAgb24gYmluZGVyXG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICBzY29wZS5pbWdFbGVtWzBdLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt0aHVtYm5haWwuYXNBcnJheUJ1ZmZlcigpXSwge3R5cGU6IFwiaW1hZ2VcIn0pKTsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gdHJ1ZSBhY3RpdmF0ZXMgcG9zdFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHZhciBwb3N0dXJsID0gYXR0cnMucG9zdHVybCArIFwiP3Rva2VuPVwiICsgQXBwQ29uZmlnLnNlc3Npb24udG9rZW47XG4gICAgICAgICAgICBuZXcgTG9hZEZpbGVTdmMgKHNjb3BlLCBlbGVtLCBwb3N0dXJsLCBmaWxlcywgcmVhZGVyQ0IpO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIEluaXRpYWxsaXplIGRlZmF1bHQgdmFsdWVzIGZyb20gYXR0cmlidXRlcyB2YWx1ZXNcbiAgICAgICAgc2NvcGUubmFtZT0gYXR0cnMubmFtZSB8fCAnYXBwbGknO1xuICAgICAgICBzY29wZS5jYXRlZ29yeT0gYXR0cnMuY2F0ZWdvcnkgIHx8ICdhcHBsaSc7XG4gICAgICAgIHNjb3BlLm1pbWV0eXBlPSAoYXR0cnMuYWNjZXB0IHx8ICcuemlwJyk7XG4gICAgICAgIHNjb3BlLm1heHNpemU9IGF0dHJzLm1heHNpemUgfHwgMTAwMDAwOyAvLyBkZWZhdWx0IG1heCBzaXplIDEwME1CXG4gICAgICAgIHNjb3BlLnJlZ2V4cCA9IG5ldyBSZWdFeHAgKGF0dHJzLmFjY2VwdCsgJy4qJywnaScpO1xuXG4gICAgICAgIGlmIChhdHRycy50aHVtYm5haWwpIHNjb3BlLnRodW1ibmFpbD0gQXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy50aHVtYm5haWw7XG4gICAgICAgIGVsc2UgIHNjb3BlLnRodW1ibmFpbD1BcHBDb25maWcucGF0aHNbc2NvcGUuY2F0ZWdvcnldICsgJ3VwbG9hZC1hcHBsaS5wbmcnO1xuICAgICAgICBcbiAgICAgICAgaWYgKGF0dHJzLnRodW1ibmFpbCkgc2NvcGUuaXNub3R2YWxpZD0gQXBwQ29uZmlnLnBhdGhzW3Njb3BlLmNhdGVnb3J5XSArICBhdHRycy5pc25vdHZhbGlkO1xuICAgICAgICBlbHNlICBzY29wZS5pc25vdHZhbGlkPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXNub3R2YWxpZC5wbmcnO1xuXG4gICAgICAgIGlmIChhdHRycy5pc3Rvb2JpZykgc2NvcGUuaXN0b29iaWc9IEFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAgYXR0cnMuaXN0b29iaWc7XG4gICAgICAgIGVsc2UgIHNjb3BlLmlzdG9vYmlnPUFwcENvbmZpZy5wYXRoc1tzY29wZS5jYXRlZ29yeV0gKyAnaXN0b29iaWcucG5nJztcbiAgICAgICAgc2NvcGUubm9zbGlkZXIgPSBhdHRycy5ub3NsaWRlciB8fCBmYWxzZTtcblxuICAgICAgICBpZiAoIWF0dHJzLnBvc3R1cmwpIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbGUtdXBsb2FkICVzIHBvc3R1cmw9L2FwaS94eHh4L3h4eHggcmVxdWlyZWQnLCBzY29wZS5hdHRycyk7ICAgICAgICAgICAgXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIHRlbXBsYXRlOiB0bXBsLFxuICAgICAgICBsaW5rOiBteW1ldGhvZHMsXG4gICAgICAgIHNjb3BlOiB7XG4gICAgICAgICAgICBjYWxsYmFjayA6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbiAgICBcbn1dKTtcblxuY29uc29sZS5sb2cgKFwiVXBsb2FkRmlsZSBMb2FkZWRcIik7XG59KSgpO1xuIiwiXG4vKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLi5cbiAqL1xuXG5cblxuKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG52YXIgdG1wbCA9ICc8dGlwLW1vZGFsIHRpcD1cInRpcFwiPjwvdGlwLW1vZGFsPicgK1xuICAgICAgICAgICAnPGxhYmVsIGZvcj1cInt7bmFtZX19LWludGV4dFwiPnt7bGFiZWx9fSA8aSBuZy1zaG93PVwicmVxdWlyZWRcIiBuZy1jbGljaz1cIlRvQmVEZWZpbmVkXCIgJyArXG4gICAgICAgICAgICdjbGFzcz1cInJlcXVpcmVkIHt7c3RhdHVzfX0gZmktY2hlY2tib3hcIiB0aXRsZT1cIkZyZWUgVmFsdWUgQnV0IE1hbmRhdG9yeSBBcmd1bWVudFwiIGFsdD1cIj9cIj4gJm5ic3A7IDwvaT48L2xhYmVsPicrICAgICAgICAgIFxuICAgICAgICAgICAnPGlucHV0ICcrXG4gICAgICAgICAgICcgdHlwZT1cInt7dHlwZX19XCIgaWQ9XCJ7e25hbWV9fS1pbnRleHRcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiICBjbGFzcz1cInN0YXR1cy17e3N0YXR1c319XCInK1xuICAgICAgICAgICAnIG5nLW1vZGVsPVwidmFsdWVcIiBuZy1ibHVyPVwidmFsaWRhdGUoKVwiIG5nLWZvY3VzPVwic2VsZWN0ZWQoKVwiICcrXG4gICAgICAgICAgICcgbmctbW9kZWwtb3B0aW9ucz1cInsgdXBkYXRlT246IFxcJ2RlZmF1bHQgYmx1clxcJywgZGVib3VuY2U6IHtkZWZhdWx0OiA1MDAsIGJsdXI6IDB9IH1cIicgK1xuICAgICAgICAgICAnPjxhbGVydCBkYXRhLW5nLXNob3c9XCIhdmFsaWQmJmVycm1zZ1wiPnt7ZXJybXNnfX08L2FsZXJ0Pic7XG5cbnZhciBlbWFpbHBhdGVybiA9IC9eKChbXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdKyhcXC5bXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdKykqKXwoXFxcIi4rXFxcIikpQCgoW148PigpW1xcXVxcLiw7Olxcc0BcXFwiXStcXC4pK1tePD4oKVtcXF1cXC4sOzpcXHNAXFxcIl17Mix9KSQvaTtcblxuYW5ndWxhci5tb2R1bGUoJ0lucHV0VGV4dCcsWydKUXVlcnlFbXUnXSlcblxuLmRpcmVjdGl2ZSgnaW5wdXRUZXh0JywgW1wiSlFlbXVcIiwgZnVuY3Rpb24oSlFlbXUpIHtcbiAgICBmdW5jdGlvbiBteW1ldGhvZHMoc2NvcGUsIGVsZW0sIGF0dHJzKSB7XG4gICAgXG4gICAgLy8gZGVmYXVsdCB2YWx1ZSBhdCAxc3QgcmVuZGVyaW5nXG4gICAgc2NvcGUuZXJyb3IgID0gZmFsc2U7XG4gICAgc2NvcGUudmFsaWQgID0gZmFsc2U7XG4gICAgc2NvcGUuc3RhdHVzID0gJ3VudG91Y2gnO1xuICAgXG4gICAgc2NvcGUuaW5wdXQgPSBlbGVtLmZpbmQgKFwiaW5wdXRcIik7XG4gICAgc2NvcGUucmVxdWlyZWQgPSAwO1xuICAgIFxuICAgIC8vIHJlcXVpcmVyIGlzIHVzZSB0byBpbmNyZW1lbnQgcmVxdWVzdGVkIGNvdW50ZXJcbiAgICBpZiAoXCJyZXF1aXJlZFwiIGluIGF0dHJzKSB7XG4gICAgICAgIHNjb3BlLnJlcXVpcmVkID0gMTtcbiAgICAgICAgZWxlbS5hZGRDbGFzcyAoXCJyZXF1aXJlZFwiKTtcbiAgICB9XG4gICAgICAgXG4gICAgIC8vIHVzZXIgZW50ZXIgaW5wdXQgcmVzZXQgZXJyb3Igc3RhdHVzXG4gICAgIHNjb3BlLnNlbGVjdGVkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBzY29wZS5lcnJvcj1mYWxzZTsgXG4gICAgICAgIHNjb3BlLmVycm1zZz1mYWxzZTsgXG4gICAgICAgIHNjb3BlLnN0YXR1cyA9ICd0b3VjaCc7XG4gICAgIH07ICAgXG4gICAgICAgICAgICBcbiAgICAgc2NvcGUudmFsaWRhdGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICBcbiAgICAgICAgIC8vIGdldCB2YWx1ZSBmcm9tIGlucHV0IGZpZWxkIGJ5cGFzc2luZyBBbmd1bGFyIG5nLW1vZGVsXG4gICAgICAgICBjb25zb2xlLmxvZyAoXCJDbGlja2VkIElucHV0VGV4dCBuYW1lPSVzIHZhbHVlPSVzIHZhbGlkPSVzXCIsIHNjb3BlLm5hbWUsIHNjb3BlLnZhbHVlLCBzY29wZS52YWxpZCk7ICAgICAgICBcblxuICAgICAgICAgLy8gZm9ybSBpcyBub3QgdW50b3VjaGVkIGFueW1vcmVcbiAgICAgICAgIHNjb3BlLnBhcmVudC5yZW1vdmVDbGFzcyAoXCJuZy1wcmlzdGluZVwiKTtcblxuICAgICAgICAgLy8gaWYgdmFsdWUgbm90IG51bGwgY2xlYW4gdXAgc3RyaW5nXG4gICAgICAgICBpZiAoc2NvcGUudmFsdWUpIHtcbiAgICAgICAgICAgICBzY29wZS5lcnJvcj1mYWxzZTsgXG4gICAgICAgICAgICAvLyByZW1vdmUgbGVhZGluZyBhbmQgdHJhaWxsaW5nIHNwYWNlXG4gICAgICAgICAgICBzY29wZS52YWx1ZSA9IHNjb3BlLnZhbHVlLnRyaW0oKTtcbiAgICAgICAgIFxuICAgICAgICAgICAgLy8gcmVtb3ZlIGFueSBzcGFjZSBpcyBub3QgYWxsb3dlZFxuICAgICAgICAgICAgaWYgKCdub3NwYWNlJyBpbiBhdHRycykge1xuICAgICAgICAgICAgICAgc2NvcGUudmFsdWU9c2NvcGUudmFsdWUucmVwbGFjZSgvXFxzL2csICcnKTsgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICBcbiAgICAgICAgICAgIGlmICgnbG93ZXJjYXNlJyBpbiBhdHRycykge1xuICAgICAgICAgICAgICAgc2NvcGUudmFsdWUgPSBzY29wZS52YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgXG4gICAgICAgICAgICAvLyBjaGVjayBtaW5pbXVtIGxlbmdodFxuICAgICAgICAgICAgaWYgKFwibWlubGVuXCIgaW4gYXR0cnMpIHtcbiAgICAgICAgICAgICAgaWYgKHNjb3BlLnZhbHVlLmxlbmd0aCA8IGF0dHJzLm1pbmxlbikge1xuICAgICAgICAgICAgICAgICBzY29wZS5zdGF0dXM9J2ludmFsaWQnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJtc2c9c2NvcGUubmFtZSArICc6IE1pbmludW0gTGVuZ2g9ICcgKyBhdHRycy5taW5sZW4gKyAnIENoYXJhY3RlcnMnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJvcj10cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmICgnZW1haWwnIGluIGF0dHJzKSB7XG4gICAgICAgICAgICBpZiAoIWVtYWlscGF0ZXJuLnRlc3QgKHNjb3BlLnZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHNjb3BlLnN0YXR1cz0naW52YWxpZCc7XG4gICAgICAgICAgICAgICAgc2NvcGUuZXJybXNnPSdpbnZhbGlkIGVtYWlsIGFkZHJlc3MnO1xuICAgICAgICAgICAgICAgIHNjb3BlLmVycm9yPXRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgICBcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChzY29wZS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICBzY29wZS5zdGF0dXM9J2ludmFsaWQnO1xuICAgICAgICAgICAgICAgICBzY29wZS5lcnJtc2c9c2NvcGUubmFtZSArICc6IFJlcXVpcmVkIEF0dHJpYnV0ZSc7XG4gICAgICAgICAgICAgICAgIHNjb3BlLmVycm9yPXRydWU7IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgIC8vIElmIGxvY2FsIGNvbnRyb2wgZmFpbCBsZXQncyByZWZ1c2UgaW5wdXRcbiAgICAgICAgIGlmIChzY29wZS5lcnJvcikge1xuICAgICAgICAgICAgIGlmIChzY29wZS5yZXF1aXJlZCAmJiBzY29wZS52YWxpZCkge1xuICAgICAgICAgICAgICAgICBzY29wZS52YWxpZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICBpZiAoc2NvcGUubDRhY291bnRlci52YWxpZGF0ZWQgPiAwKSBzY29wZS5sNGFjb3VudGVyLnZhbGlkYXRlZCAtLTtcbiAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgIC8vIHVzZSBjYWxsIHRvIHVwZGF0ZSBmb3JtIHNjb3BlIG9uIGZvcm0gY29tcGxldGVuZXNzXG4gICAgICAgICAgICAgc2NvcGUuY2FsbGJhY2sgKGF0dHJzLm5hbWUsIG51bGwsIHNjb3BlLmRvbmUpO1xuICAgICAgICAgfSBlbHNlIHsgXG4gICAgICAgICAgICAgLy8gbG9jYWxjaGVjayBpcyBPSyBiYWNrdXAgbWF5IG5ldmVydGhlbGVzcyBjaGFuZ2Ugc3RhdHVzIHRvIGZhbHNlXG4gICAgICAgICAgICBpZiAoc2NvcGUucmVxdWlyZWQgICYmICFzY29wZS52YWxpZCkgc2NvcGUubDRhY291bnRlci52YWxpZGF0ZWQgKys7XG4gICAgICAgICAgICBzY29wZS5zdGF0dXM9J3ZhbGlkJztcbiAgICAgICAgICAgIHNjb3BlLnZhbGlkPXRydWU7XG4gICAgICAgICAgICBzY29wZS5jYWxsYmFjayAoYXR0cnMubmFtZSwgc2NvcGUudmFsdWUsIHNjb3BlLmRvbmUpO1xuICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICB9O1xuICAgICBcbiAgICAgLy8gdGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBmcm9tIGNvbnRyb2xsZXIgdG8gdXBkYXRlIHdpZGdldCBzdGF0dXNcbiAgICAgc2NvcGUuZG9uZT1mdW5jdGlvbiAoZGF0YSkge1xuICAgICAgIGNvbnNvbGUubG9nIChcIlRleHQtSW5wdXQgQ2FsbGJhY2sgSUQ9XCIrIGF0dHJzLm5hbWUgKyBcIiBkYXRhPVwiLCBkYXRhKTtcbiAgICAgICBmb3IgKHZhciBpIGluIGRhdGEpIHNjb3BlW2ldID0gZGF0YVtpXTsgICAgICAgICBcbiAgICAgfTtcbiAgICAgXG4gICAgIC8vIEV4cG9ydCBzb21lIGF0dHJpYnV0ZXMgd2l0aGluIGRpcmVjdGl2ZSBzY29wZSBmb3IgdGVtcGxhdGVcbiAgICAgc2NvcGUubGFiZWwgICAgICAgPSBhdHRycy5sYWJlbDtcbiAgICAgc2NvcGUubmFtZSAgICAgICAgPSBhdHRycy5uYW1lO1xuICAgICBzY29wZS5wbGFjZWhvbGRlciA9IGF0dHJzLnBsYWNlaG9sZGVyO1xuICAgICBzY29wZS50eXBlICAgICAgICA9IGF0dHJzLnR5cGUgfHwgXCJ0ZXh0XCI7XG4gICAgIHNjb3BlLnRpcCAgICAgICAgID0gYXR0cnMudGlwO1xuXG4gICAgIC8vIHNlYXJjaCBmb3IgZm9ybSB3aXRoaW4gcGFyZW50IGVsZW1udHNcbiAgICAgc2NvcGUucGFyZW50ID0gSlFlbXUucGFyZW50IChlbGVtLCBcIkZPUk1cIik7XG5cbiAgICAgLy8gZW1haWwgZW5mb3JjZSBsb3dlcmNhc2UgYW5kIG5vc3BhY2UgICBcbiAgICAgaWYgKFwiZW1haWxcIiBpbiBhdHRycykge1xuICAgICAgICBhdHRycy5sb3dlcmNhc2U9dHJ1ZTsgXG4gICAgICAgIGF0dHJzLm5vc3BhY2U9dHJ1ZTsgXG4gICAgICAgIGF0dHJzLm1pbmxlbj02OyBcbiAgICAgfVxuXG4gICAgIGlmIChzY29wZS5yZXF1aXJlZCkge1xuICAgICAgICAgc2NvcGUubDRhY291bnRlciA9IHNjb3BlLnBhcmVudC5kYXRhIChcImw0YWNvdW50ZXJcIik7XG4gICAgICAgICBpZiAoIXNjb3BlLmw0YWNvdW50ZXIpIHsgXG4gICAgICAgICAgICBzY29wZS5sNGFjb3VudGVyID0gIHtyZXF1aXJlZDoxLCB2YWxpZGF0ZWQ6MH07XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZpZWxkIFwiK3Njb3BlLm5hbWUrXCIgaXMgcmVxdWlyZWQgKDFzdClcIik7XG4gICAgICAgICAgICBzY29wZS5wYXJlbnQuZGF0YSAoXCJsNGFjb3VudGVyXCIsIHNjb3BlLmw0YWNvdW50ZXIpOyBcbiAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgY29uc29sZS5sb2coXCJGaWVsZCBcIitzY29wZS5uYW1lK1wiIGlzIHJlcXVpcmVkXCIpO1xuICAgICAgICAgICAgIHNjb3BlLmw0YWNvdW50ZXIucmVxdWlyZWQgKys7XG4gICAgICAgICB9XG4gICAgIH1cbiAgICAgICAgIFxuICAgICAvLyByZWZyZXNoIHZhbGlkYXRpb24gZWFjaCB0aW1lIGNvbnRyb2xlciB1cGRhdGUgdmFsdWVcbiAgICAgc2NvcGUuJHdhdGNoICgndmFsdWUnLCBmdW5jdGlvbigpe1xuICAgICAgICAgaWYoc2NvcGUudmFsdWUpIHNjb3BlLnZhbGlkYXRlKCk7IH1cbiAgICAgKTtcbiAgICBcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdHJpY3Q6ICdFJyxcbiAgICAgICAgdGVtcGxhdGU6IHRtcGwsXG4gICAgICAgIGxpbms6IG15bWV0aG9kcyxcbiAgICAgICAgc2NvcGU6IHtcbiAgICAgICAgICAgIGNhbGxiYWNrIDogJz0nLFxuICAgICAgICAgICAgdmFsdWU6ICc9J1xuICAgICAgICB9XG4gICAgfTtcbn1dKTtcblxuY29uc29sZS5sb2cgKFwiSW5wdXRUZXh0IExvYWRlZFwiKTtcbn0pKCk7XG4iLCIvKiBcbiAqIENvcHlyaWdodCAoQykgMjAxNSBcIklvVC5iemhcIlxuICogQXV0aG9yIFwiRnVsdXAgQXIgRm9sbFwiXG4gKlxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICovXG5cbihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxudmFyIHRtcGwgPSAnPGlucHV0LXRleHQgIGNsYXNzPVwicGFzc3dvcmRcIiB0aXA9XCJ7e3RpcDF9fVwiICBwbGFjZWhvbGRlcj1cInt7cGxhY2UxfX1cIicgK1xuICAgICAgICAgICAnbGFiZWw9XCJ7e2xhYmVsMX19XCIgY2FsbGJhY2s9XCJ2YWxpZDFcIiBuYW1lPVwie3tuYW1lfX0tMVwiIHZhbHVlPVwicGFzczFcIiByZXF1aXJlZCBtaW5sZW49XCJ7e21pbmxlbn19XCIgdHlwZT1cInBhc3N3b3JkXCIgPicgK1xuICAgICAgICAgICAnPC9pbnB1dC10ZXh0PicgKyBcbiAgICAgICAgICAgJzxpbnB1dC10ZXh0ICBjbGFzcz1cInBhc3N3b3JkXCIgdGlwPVwidGlwMlwiICBwbGFjZWhvbGRlcj1cInt7cGxhY2UyfX1cIicgK1xuICAgICAgICAgICAnbGFiZWw9XCJ7e2xhYmVsMn19XCIgY2FsbGJhY2s9XCJ2YWxpZDJcIiBuYW1lPVwie3tuYW1lfX0tMlwiIHZhbHVlPVwicGFzczJcIiByZXF1aXJlZCBtaW5sZW49XCJ7e21pbmxlbn19XCIgdHlwZT1cInBhc3N3b3JkXCIgPiAnK1xuICAgICAgICAgICAnPC9pbnB1dC10ZXh0Pic7XG5cbmFuZ3VsYXIubW9kdWxlKCdJbnB1dFBhc3N3b3JkJyxbXSlcblxuLmRpcmVjdGl2ZSgnaW5wdXRQYXNzd29yZCcsIGZ1bmN0aW9uKCkge1xuICAgIGZ1bmN0aW9uIG15bWV0aG9kcyhzY29wZSwgZWxlbSwgYXR0cnMpIHtcbiAgICBcbiAgICBzY29wZS52YWxpZDEgPSBmdW5jdGlvbiAobmFtZSwgdmFsdWUpIHtcbiAgICAgICAgY29uc29sZS5sb2cgKFwiQ2xpY2tlZCBJbnB1dFBhc3N3b3JkMSBuYW1lPSVzIHZhbHVlPSVzXCIsIG5hbWUsIHZhbHVlKTsgICAgICAgIFxuICAgICAgICBzY29wZS5maXJzdHB3ZCA9IHZhbHVlO1xuICAgIH07XG4gICAgXG4gICAgc2NvcGUudmFsaWQyID0gZnVuY3Rpb24gKG5hbWUsIHZhbHVlLCBkb25lKSB7ICAgICAgICBcbiAgICAgICAgY29uc29sZS5sb2cgKFwiQ2xpY2tlZCBJbnB1dFBhc3N3b3JkMiBuYW1lPSVzIHZhbHVlPSVzXCIsIG5hbWUsIHZhbHVlKTsgICAgICAgIFxuICAgICAgICBcbiAgICAgICAgLy8gaWYgYm90aCBwYXNzd2QgZXF1YWwgdGhlbiBjYWxsIGZvcm0gQ0JcbiAgICAgICAgaWYgKHNjb3BlLmZpcnN0cHdkICE9PSB2YWx1ZSkge1xuICAgICAgICAgIGRvbmUoe3ZhbGlkOiBmYWxzZSwgc3RhdHVzOiAnaW52YWxpZCcsIGVycm1zZzogXCJib3RoIHBhc3N3b3JkIHNob3VsZCBtYXRjaFwifSk7ICBcbiAgICAgICAgfSBlbHNlIHsgIFxuICAgICAgICAgIHNjb3BlLmNhbGxiYWNrIChhdHRycy5uYW1lLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIFxuICAgICB9O1xuICAgICBcbiAgICAgLy8gdGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBmcm9tIGNvbnRyb2xsZXIgdG8gdXBkYXRlIHdpZGdldCBzdGF0dXNcbiAgICAgc2NvcGUuZG9uZT1mdW5jdGlvbiAoZGF0YSkge1xuICAgICAgIGNvbnNvbGUubG9nIChcIlRleHQtSW5wdXQgQ2FsbGJhY2sgSUQ9XCIrIGF0dHJzLm5hbWUgKyBcIiBkYXRhPVwiLCBkYXRhKTtcbiAgICAgICBmb3IgKHZhciBpIGluIGRhdGEpIHNjb3BlW2ldID0gZGF0YVtpXTsgICAgICAgICBcbiAgICAgfTtcbiAgICAgXG4gICAgIC8vIEV4cG9ydCBzb21lIGF0dHJpYnV0ZXMgd2l0aGluIGRpcmVjdGl2ZSBzY29wZSBmb3IgdGVtcGxhdGVcbiAgICAgc2NvcGUubmFtZSAgID0gYXR0cnMubmFtZTtcbiAgICAgc2NvcGUubGFiZWwxID0gYXR0cnMubGFiZWwgfHwgJ1Bhc3N3b3JkJztcbiAgICAgc2NvcGUubGFiZWwyID0gYXR0cnMubGFiZWwgfHwgJ1Bhc3N3b3JkIFZlcmlmaWNhdGlvbic7XG4gICAgIHNjb3BlLnBsYWNlMSA9IGF0dHJzLnBsYWNlaG9sZGVyMSB8fCAnVXNlciBQYXNzd29yZCc7XG4gICAgIHNjb3BlLnRpcDEgICA9IGF0dHJzLnRpcCB8fCAnQ2hvb3NlIGEgUGFzc3dvcmQnO1xuICAgICBzY29wZS5wbGFjZTIgPSBhdHRycy5wbGFjZWhvbGRlcjEgfHwgJ1Bhc3N3b3JkIFZlcmlmaWNhdGlvbic7XG4gICAgIHNjb3BlLnRpcDIgICA9IGF0dHJzLnRpcCAgICB8fCAnQ29uZmlybWUgeW91ciBQYXNzd29yZCc7XG4gICAgIHNjb3BlLm1pbmxlbiA9IGF0dHJzLm1pbmxlbiB8fCAxMDtcbiAgICAgXG4gICAgIGlmIChcInJlcXVpcmVkXCIgaW4gYXR0cnMpIHNjb3BlLnJlcXVpcmVkID0gJ3JlcXVpcmVkJztcbiAgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICByZXR1cm4ge1xuICAgICAgICByZXN0cmljdDogJ0UnLFxuICAgICAgICB0ZW1wbGF0ZTogdG1wbCxcbiAgICAgICAgbGluazogbXltZXRob2RzLFxuICAgICAgICBzY29wZToge1xuICAgICAgICAgICAgY2FsbGJhY2sgOiAnPScsXG4gICAgICAgIH1cbiAgICB9O1xufSk7XG5cbmNvbnNvbGUubG9nIChcIklucHV0UGFzc3dvcmQgTG9hZGVkXCIpO1xufSkoKTtcbiIsIihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxuLy8gbGlzdCBhbGwgcmVwZW5kZW5jaWVzIHdpdGhpbiB0aGUgcGFnZSArIGNvbnRyb2xlciBpZiBuZWVkZWRcbmFuZ3VsYXIubW9kdWxlKCdTYW1wbGVNb2R1bGUnLCBbJ1N1Ym1pdEJ1dHRvbicsJ1VwbG9hZEZpbGVzJ10pXG5cbiAgLmNvbnRyb2xsZXIoJ1NhbXBsZUNvbnRyb2xsZXInLCBbXCIkaHR0cFwiLCBmdW5jdGlvbiAoJGh0dHApIHtcbiAgICAgICAgdmFyIHNjb3BlID0gdGhpczsgLy8gSSBoYXRlIEphdmFTY3JpcHRcblxuICAgICAgICBjb25zb2xlLmxvZyAoXCJzYW1wbGUgSW5pdFwiKTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLkZpbGVVcGxvYWRlZCA9IGZ1bmN0aW9uIChyZXNwb25zZSkge1xuICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJGaWxlVXBsb2FkZWQgcmVzcG9uc2U9JXNcIiwgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpKTtcbiAgICAgICAgfTtcbiAgIH1dKTtcblxuY29uc29sZS5sb2cgKFwiU2FtcGxlQ29udHJvbGVyIExvYWRlZFwiKTtcbn0pKCk7ICIsIihmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxuLy8gV0FSTklORzogbWFrZSBzdXJlIHRoYW4gYXBwL2Zyb250ZW5kL3NlcnZpY2VzL0FwcENvbmZpZy5qcyBtYXRjaCB5b3VyIHNlcnZlclxuXG4vLyBsaXN0IGFsbCByZXBlbmRlbmNpZXMgd2l0aGluIHRoZSBwYWdlICsgY29udHJvbGVyIGlmIG5lZWRlZFxuYW5ndWxhci5tb2R1bGUoJ0hvbWVNb2R1bGUnLCBbJ1N1Ym1pdEJ1dHRvbicsICdUb2tlblJlZnJlc2gnXSlcblxuICAuY29udHJvbGxlcignSG9tZUNvbnRyb2xsZXInLCBbXCIkaHR0cFwiLCBcIkFwcENvbmZpZ1wiLCBmdW5jdGlvbiAoJGh0dHAsIEFwcENvbmZpZykge1xuICAgICAgICB2YXIgc2NvcGUgPSB0aGlzOyAvLyBJIGhhdGUgSmF2YVNjcmlwdFxuICAgICAgICBzY29wZS51dWlkICAgPVwibm9uZVwiO1xuICAgICAgICBzY29wZS50b2tlbiAgPVwibm9uZVwiO1xuICAgICAgICBzY29wZS5zZXNzaW9uPVwibm9uZVwiO1xuICAgICAgICBzY29wZS5zdGF0dXMgPVwiZXJyLW5vXCI7XG5cbiAgICAgICAgY29uc29sZS5sb2cgKFwiSG9tZSBDb250cm9sbGVyXCIpO1xuICAgICAgICBcbiAgICAgICAgc2NvcGUuUHJvY2Vzc1Jlc3BvbnNlPSBmdW5jdGlvbihkYXRhLCBlcnJjb2RlLCBoZWFkZXJzLCBjb25maWcpIHtcbiAgICAgICAgICAgIHZhciBhcGluYW1lPSAnQVBJJysgZGF0YS5yZXF1ZXN0LmFwaS5yZXBsYWNlKCctJywnXycpO1xuICAgICAgICAgICAgc2NvcGUuc3RhdHVzID0gXCJlcnItb2tcIjtcbiAgICAgICAgICAgIHNjb3BlLmVycmNvZGU9IGVycmNvZGU7XG4gICAgICAgICAgICBzY29wZS5yZXF1ZXN0ICA9IGRhdGEucmVxdWVzdDtcbiAgICAgICAgICAgIHNjb3BlLnJlc3BvbnNlID0gZGF0YS5yZXNwb25zZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gaWYgdG9rZW4gd2FzIHJlZnJlc2ggbGV0J3MgdXBkYXRlIEFwcENvbmZpZ1xuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50b2tlbikgQXBwQ29uZmlnLnNlc3Npb24udG9rZW4gPSBkYXRhLnJlcXVlc3QudG9rZW47XG4gICAgICAgICAgICBpZiAoZGF0YS5yZXF1ZXN0LnV1aWQpICBBcHBDb25maWcuc2Vzc2lvbi51dWlkICA9IGRhdGEucmVxdWVzdC51dWlkO1xuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50aW1lb3V0KSAgQXBwQ29uZmlnLnNlc3Npb24udGltZW91dCAgPSBkYXRhLnJlcXVlc3QudGltZW91dDtcblxuICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHdlIGNsZWFuIGV2ZXJ5dGhpbmcgd2hlbiBPcGVuL0Nsb3NlIGlzIGNhbGxlZFxuICAgICAgICAgICAgaWYgKGFwaW5hbWUgPT09IFwiQVBJY3JlYXRlXCIgfHwgYXBpbmFtZSA9PT0gXCJBUElyZXNldFwiKSB7XG4gICAgICAgICAgICAgICAgc2NvcGUuQVBJcmVzZXQgID0nJztcbiAgICAgICAgICAgICAgICBzY29wZS5BUEljcmVhdGUgPScnO1xuICAgICAgICAgICAgICAgIHNjb3BlLkFQSXJlZnJlc2g9Jyc7XG4gICAgICAgICAgICAgICAgc2NvcGUuQVBJY2hlY2sgID0nJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNjb3BlW2FwaW5hbWVdPVwic3VjY2Vzc1wiO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGEgbmV3IHRva2VuIGxldCdzIHVwZGF0ZSBpdFxuICAgICAgICAgICAgaWYgKGRhdGEucmVxdWVzdC50b2tlbikgc2NvcGUudG9rZW49ZGF0YS5yZXF1ZXN0LnRva2VuO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJPSzogXCIrIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLlByb2Nlc3NFcnJvcj0gZnVuY3Rpb24oZGF0YSwgZXJyY29kZSwgaGVhZGVycywgY29uZmlnKSB7XG4gICAgICAgICAgICB2YXIgYXBpbmFtZT0gJ0FQSScrZGF0YS5yZXF1ZXN0LmFwaS5yZXBsYWNlKCctJywnXycpO1xuICAgICAgICAgICAgc2NvcGUuc3RhdHVzICAgPSBcImVyci1meFwiO1xuICAgICAgICAgICAgc2NvcGUuZXJyY29kZSAgPSBlcnJjb2RlO1xuICAgICAgICAgICAgc2NvcGUucmVxdWVzdCAgPSBkYXRhLnJlcXVlc3Q7XG4gICAgICAgICAgICBzY29wZS5yZXNwb25zZSA9IFwiXCI7XG4gICAgICAgICAgICBzY29wZVthcGluYW1lXT1cImZhaWxcIjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgY29uc29sZS5sb2cgKFwiRlg6IFwiKyBKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgc2NvcGUuT3BlblNlc3Npb24gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nIChcIk9wZW5TZXNzaW9uXCIpOyBcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KEFwcENvbmZpZy5zZXNzaW9uLmNyZWF0ZSArICc/dG9rZW49JytBcHBDb25maWcuc2Vzc2lvbi5pbml0aWFsLCBwb3N0ZGF0YSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGhhbmRsZXIuc3VjY2VzcyhzY29wZS5Qcm9jZXNzUmVzcG9uc2UpO1xuICAgICAgICAgICAgaGFuZGxlci5lcnJvcihzY29wZS5Qcm9jZXNzRXJyb3IpO1xuICAgICAgICB9OyAgICAgICAgXG5cbiAgICAgICAgc2NvcGUuQ2hlY2tTZXNzaW9uID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJDbG9zZVNlc3Npb25cIik7XG4gICAgICAgICAgICB2YXIgcG9zdGRhdGE9IHsvKiBhbnkganNvbiB5b3VyIGFwcGxpY2F0aW9uIG1heSBuZWVkICovfTtcbiAgICAgICAgICAgIHZhciBoYW5kbGVyID0gJGh0dHAucG9zdChBcHBDb25maWcuc2Vzc2lvbi5jaGVjayArICc/dG9rZW49JytBcHBDb25maWcuc2Vzc2lvbi50b2tlbiwgcG9zdGRhdGEpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBoYW5kbGVyLnN1Y2Nlc3Moc2NvcGUuUHJvY2Vzc1Jlc3BvbnNlKTtcbiAgICAgICAgICAgIGhhbmRsZXIuZXJyb3Ioc2NvcGUuUHJvY2Vzc0Vycm9yKTtcbiAgICAgICAgfTtcbiAgICAgICAgXG4gICAgICAgIHNjb3BlLlJlZnJlc2hTZXNzaW9uID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyAoXCJSZWZyZXNoU2Vzc2lvblwiKTtcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KEFwcENvbmZpZy5zZXNzaW9uLnJlZnJlc2ggKyAnP3Rva2VuPScrQXBwQ29uZmlnLnNlc3Npb24udG9rZW4sIHBvc3RkYXRhKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaGFuZGxlci5zdWNjZXNzKHNjb3BlLlByb2Nlc3NSZXNwb25zZSk7XG4gICAgICAgICAgICBoYW5kbGVyLmVycm9yKHNjb3BlLlByb2Nlc3NFcnJvcik7XG4gICAgICAgIH07XG4gICAgICAgIFxuICAgICAgICBzY29wZS5SZXNldFNlc3Npb24gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nIChcIlJlc2V0U2Vzc2lvblwiKTtcbiAgICAgICAgICAgIHZhciBwb3N0ZGF0YT0gey8qIGFueSBqc29uIHlvdXIgYXBwbGljYXRpb24gbWF5IG5lZWQgKi99O1xuICAgICAgICAgICAgdmFyIGhhbmRsZXIgPSAkaHR0cC5wb3N0KEFwcENvbmZpZy5zZXNzaW9uLnJlc2V0ICsgJz90b2tlbj0nK0FwcENvbmZpZy5zZXNzaW9uLnRva2VuLCBwb3N0ZGF0YSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGhhbmRsZXIuc3VjY2VzcyhzY29wZS5Qcm9jZXNzUmVzcG9uc2UpO1xuICAgICAgICAgICAgaGFuZGxlci5lcnJvcihzY29wZS5Qcm9jZXNzRXJyb3IpO1xuICAgICAgICB9O1xuICAgICAgICBcbiAgIH1dKTtcblxuY29uc29sZS5sb2cgKFwiU2FtcGxlQ29udHJvbGVyIExvYWRlZFwiKTtcbn0pKCk7ICIsIi8qIFxuICogQ29weXJpZ2h0IChDKSAyMDE1IFwiSW9ULmJ6aFwiXG4gKiBBdXRob3IgXCJGdWx1cCBBciBGb2xsXCJcbiAqXG4gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKiBcbiAqIFVzYWdlOlxuICogXG4gKiAgIC8vIG1vdXNlIGV2ZW50IHByb2JhYmx5IHBvaW50IG9uIGljb24gYW5kIG5vdCBvbiBidXR0b24gZGl2XG4gKiAgIC4uLiBuZy1jbGljaz1cIkxvY2tDaGFubmVsKCRldmVudClcbiAgICAgdmFyIHRhcmdldD0gYW5ndWxhci5lbGVtZW50KGV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICAgICB2YXIgYnV0dG9uPSBKUWVtdS5GaW5kSW5QYXJlbnQgKHRhcmdldCwgJ2RpdicpO1xuICogXG4gKi9cblxuXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuXG4gICAgICAgICAgXG4gICAgLy8gX2FsbCBtb2R1bGVzIG9ubHkgcmVmZXJlbmNlIGRlcGVuZGVuY2llc1xuICAgIGFuZ3VsYXIubW9kdWxlKCdKUXVlcnlFbXUnLCBbXSlcblxuICAgICAgICAgICAgLy8gRmFjdG9yeSBpcyBhIHNpbmdsZXRvbiBhbmQgc2hhcmUgaXRzIGNvbnRleHQgd2l0aGluIGFsbCBpbnN0YW5jZXMuXG4gICAgICAgICAgICAuZmFjdG9yeSgnSlFlbXUnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAgICAgICB2YXIgRmluZEluUGFyZW50ID0gZnVuY3Rpb24gKGVsZW1lbnQsIHNlbGVjdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBwYXJlbnQgPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICB2YXIgc2VhcmNoID0gc2VsZWN0b3IudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHBhcmVudFswXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNlYXJjaCA9PT0gcGFyZW50WzBdLnRhZ05hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSAgLy8gSFRNTERpdkVsZW1lbnQgcHJvcGVydGllc1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50ID0gcGFyZW50LnBhcmVudCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB2YXIgIEZpbmRCeVRhZz0gZnVuY3Rpb24gKGVsZW1lbnQsIHRhZywgc2VsZWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlYXJjaCA9IHNlbGVjdG9yLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIHZhciB0eXBlICAgPSB0YWcudG9Mb3dlckNhc2UoKSsgXCJOYW1lXCI7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGVsZW1lbnQuY2hpbGRyZW4oKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGNoaWxkcmVuWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2VhcmNoID09PSBjaGlsZHJlblswXVt0eXBlXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gIC8vIEhUTUxEaXZFbGVtZW50IHByb3BlcnRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4ubmV4dCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB2YXIgIEZpbmRCeUNsYXNzPSBmdW5jdGlvbiAoZWxlbWVudCwgc2VsZWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHNlYXJjaCA9IHNlbGVjdG9yLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIHZhciBjaGlsZHJlbiA9IGVsZW1lbnQuY2hpbGRyZW4oKTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGNoaWxkcmVuWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGRyZW4uaGFzQ2xhc3Moc2VhcmNoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gIC8vIEhUTUxEaXZFbGVtZW50IHByb3BlcnRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuID0gY2hpbGRyZW4ubmV4dCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHZhciBteU1ldGhvZHMgPSB7XG4gICAgICAgICAgICAgICAgICAgIEZpbmRJblBhcmVudDogRmluZEluUGFyZW50LFxuICAgICAgICAgICAgICAgICAgICBGaW5kQnlUYWc6IEZpbmRCeVRhZyxcbiAgICAgICAgICAgICAgICAgICAgRmluZEJ5Q2xhc3M6IEZpbmRCeUNsYXNzXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBteU1ldGhvZHM7XG4gICAgICAgICAgICB9KTtcblxufSkoKTsiLCJ2YXIgZm91bmRhdGlvblJvdXRlcyA9IFt7XCJuYW1lXCI6XCJteXNhbXBsZVwiLFwidXJsXCI6XCIvc2FtcGxlXCIsXCJjb250cm9sbGVyXCI6XCJTYW1wbGVDb250cm9sbGVyIGFzIGN0cmxcIixcImFuaW1hdGlvbkluXCI6XCJzbGlkZUluUmlnaHRcIixcInBhdGhcIjpcInBhZ2VzL1NhbXBsZS9TYW1wbGUuaHRtbFwifSx7XCJuYW1lXCI6XCJteWhvbWVcIixcInVybFwiOlwiL2hvbWVcIixcImNvbnRyb2xsZXJcIjpcIkhvbWVDb250cm9sbGVyIGFzIGN0cmxcIixcImFuaW1hdGlvbkluXCI6XCJzbGlkZUluUmlnaHRcIixcInBhdGhcIjpcInBhZ2VzL0hvbWUvSG9tZS5odG1sXCJ9XTsgXG4iLCIoZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8vIF9hbGwgbW9kdWxlcyBvbmx5IHJlZmVyZW5jZSBkZXBlbmRlbmNpZXNcbiAgICBhbmd1bGFyLm1vZHVsZSgnQXBwQ29uZmlnJywgW10pXG5cbiAgICAgICAgICAgIC8vIEZhY3RvcnkgaXMgYSBzaW5nbGV0b24gYW5kIHNoYXJlIGl0cyBjb250ZXh0IHdpdGhpbiBhbGwgaW5zdGFuY2VzLlxuICAgICAgICAgICAgLmZhY3RvcnkoJ0FwcENvbmZpZycsIFtcInVybHF1ZXJ5XCIsIGZ1bmN0aW9uICh1cmxxdWVyeSkge1xuXG4gICAgICAgICAgICAgICAgdmFyIG15Q29uZmlnID0ge1xuICAgICAgICAgICAgICAgICAgICBwYXRoczogeyAvLyBXYXJuaW5nIHBhdGhzIHNob3VsZCBlbmQgd2l0aCAvXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWFnZSA6ICdpbWFnZXMvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGF2YXRhcjogJ2ltYWdlcy9hdmF0YXJzLycsXG4gICAgICAgICAgICAgICAgICAgICAgICBhdWRpbyA6ICdpbWFnZXMvYXVkaW8vJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpIDogJ2ltYWdlcy9hcHBsaS8nXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHNlc3Npb246IHsgLy8gVGhvc2UgZGF0YSBhcmUgdXBkYXRlZCBieSBzZXNzaW9uIHNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlICA6ICcvYXBpL3Rva2VuL2NyZWF0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2ggOiAnL2FwaS90b2tlbi9yZWZyZXNoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgY2hlY2sgICA6ICcvYXBpL3Rva2VuL2NoZWNrJyxcbiAgICAgICAgICAgICAgICAgICAgICAgcmVzZXQgICA6ICcvYXBpL3Rva2VuL3Jlc2V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgcGluZyAgICA6ICcvYXBpL3Rva2VuL2NoZWNrJyxcbiAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbCA6IHVybHF1ZXJ5LnRva2VuIHx8ICcxMjM0NTY3ODknLCAgLy8gdHlwaWNhbCBkZXYgaW5pdGlhbCB0b2tlblxuICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0IDogMzYwMCwgICAgICAgICAvLyB0aW1lb3V0IGlzIHVwZGF0ZWQgY2xpZW50IHNlc3NpbiBjb250ZXh0IGNyZWF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgIHBpbmdyYXRlOiA2MCwgICAgICAgICAgIC8vIFBpbmcgcmF0ZSB0byBjaGVjayBpZiBzZXJ2ZXIgaXMgc3RpbGwgYWxpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgdXVpZCAgICA6ICcnLCAgICAgICAgICAgLy8gdXVpZCBtYXAgd2l0aCBjb29raWUgb3IgbG9uZyB0ZXJtIHNlc3Npb24gYWNjZXNzIGtleVxuICAgICAgICAgICAgICAgICAgICAgICB0b2tlbiAgIDogJycgICAgICAgICAgICAvLyB3aWxsIGJlIHJldHVybmVkIGZyb20gYXV0aGVudGljYXRpb24gICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG15Q29uZmlnO1xuICAgICAgICAgICAgfV0pXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEZhY3RvcnkgaXMgYSBzaW5nbGV0b24gYW5kIHNoYXJlIGl0cyBjb250ZXh0IHdpdGhpbiBhbGwgaW5zdGFuY2VzLlxuICAgICAgICAgICAgLmZhY3RvcnkoJ0FwcENhbGwnLCBbXCIkaHR0cFwiLCBcIkFwcENvbmZpZ1wiLCBmdW5jdGlvbiAoJGh0dHAsIEFwcENvbmZpZykge1xuICAgICAgICAgICAgICAgIHZhciBteUNhbGxzID0ge1xuICAgICAgICAgICAgICAgICAgICBnZXQgOiBmdW5jdGlvbihwbHVnaW4sIGFjdGlvbiwgcXVlcnksIGNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXF1ZXJ5LnRva2VuKSBxdWVyeS50b2tlbiA9IEFwcENvbmZpZy5zZXNzaW9uLnRva2VuOyAvLyBhZGQgdG9rZW4gdG8gcHJvdmlkZWQgcXVlcnkgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICRodHRwLmdldCgnL2FwaS8nICsgcGx1Z2luICsgJy8nICsgYWN0aW9uICwge3BhcmFtczogcXVlcnl9KS50aGVuIChjYWxsYmFjaywgY2FsbGJhY2spO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJldHVybiBteUNhbGxzO1xuICAgICAgICAgICAgfV0pO1xuICAgIFxuXG59KSgpOyIsIihmdW5jdGlvbigpIHtcbiAgJ3VzZSBzdHJpY3QnO1xuICBcbiAgZnVuY3Rpb24gIFBhcnNlUXVlcnlTdHJpbmcgKCkge1xuICAgICAgdmFyIHFkID0ge307XG4gICAgICBsb2NhdGlvbi5zZWFyY2guc3Vic3RyKDEpLnNwbGl0KFwiJlwiKS5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0pIHtcbiAgICAgICAgICB2YXIgayA9IGl0ZW0uc3BsaXQoXCI9XCIpWzBdO1xuICAgICAgICAgIHZhciB2ID0gZGVjb2RlVVJJQ29tcG9uZW50KGl0ZW0uc3BsaXQoXCI9XCIpWzFdKTsgXG4gICAgICAgICAgaWYgKGsgaW4gcWQpIHFkW2tdLnB1c2godik7IGVsc2UgcWRba10gPSBbdl07XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBxZDtcbiAgfVxuXG4gIGFuZ3VsYXIubW9kdWxlKCdBRkJjbGllbnQnLCBbIC8vIFdhcm5pbmc6IEFwcG5hbWUgc2hvdWxkIGZpdCB3aXRoIGd1bHBmaWxlLmpzICYgaW5kZXguaHRtbFxuICAgICd1aS5yb3V0ZXInLFxuICAgICduZ0FuaW1hdGUnLFxuXG4gICAgLy9mb3VuZGF0aW9uXG4gICAgJ2ZvdW5kYXRpb24nLFxuICAgICdmb3VuZGF0aW9uLmR5bmFtaWNSb3V0aW5nJyxcbiAgICAnZm91bmRhdGlvbi5keW5hbWljUm91dGluZy5hbmltYXRpb25zJyxcbiAgICBcbiAgICAvLyBleHRlcm5hbCBjb21wb25lbnRzXG4gICAgJ3VpLW5vdGlmaWNhdGlvbicsXG4gICAgXG4gICAgLy8gQXBwbGljYXRpb24gQ29tcG9uZW50c1xuICAgICdBcHBDb25maWcnLFxuICAgICdKUXVlcnlFbXUnLFxuICAgICdIb21lTW9kdWxlJyxcbiAgICAnU2FtcGxlTW9kdWxlJyxcbiAgICAnVXBsb2FkRmlsZXMnLFxuICAgICdMaW5rQnV0dG9uJyxcbiAgICAnVG9rZW5SZWZyZXNoJyxcbiAgICAnUmFuZ2VTbGlkZXInLFxuICAgICdNb2RhbE5vdGlmaWNhdGlvbidcbiAgXSlcbiAgICAudmFsdWUgKCd1cmxxdWVyeScsIFBhcnNlUXVlcnlTdHJpbmcoKSlcbiAgICAuY29uZmlnKGNvbmZpZylcbiAgICAucnVuKHJ1bilcbiAgO1xuXG4gIGNvbmZpZy4kaW5qZWN0ID0gWyckdXJsUm91dGVyUHJvdmlkZXInLCAnJGxvY2F0aW9uUHJvdmlkZXInXTtcbiAgXG4gIGZ1bmN0aW9uIGNvbmZpZygkdXJsUHJvdmlkZXIsICRsb2NhdGlvblByb3ZpZGVyLCBBcHBDb25maWcpIHtcbiAgICAkdXJsUHJvdmlkZXIub3RoZXJ3aXNlKCcvaG9tZScpO1xuXG4gICAgLy8gaHR0cHM6Ly9kb2NzLmFuZ3VsYXJqcy5vcmcvZXJyb3IvJGxvY2F0aW9uL25vYmFzZVxuICAgICRsb2NhdGlvblByb3ZpZGVyLmh0bWw1TW9kZSh0cnVlKS5oYXNoUHJlZml4KCchJyk7XG4gICAgXG4gIH1cblxuICBmdW5jdGlvbiBydW4oKSB7XG4gICAgRmFzdENsaWNrLmF0dGFjaChkb2N1bWVudC5ib2R5KTtcbiAgfVxuXG5jb25zb2xlLmxvZyAoXCJvcGE9QUZCY2xpZW50IExvYWRlZFwiKTtcbn0pKCk7XG4iLCIoZnVuY3Rpb24oKSB7YW5ndWxhci5tb2R1bGUoJ0FGQmNsaWVudCcpLnJ1bihbJyR0ZW1wbGF0ZUNhY2hlJywgZnVuY3Rpb24oJHRlbXBsYXRlQ2FjaGUpIHskdGVtcGxhdGVDYWNoZS5wdXQoJ3BhZ2VzL1NhbXBsZS9TYW1wbGUuaHRtbCcsXG4gICAgJzxoMT48aW1nIGNsYXNzPVwibG9nb1wiIHNyYz1cImltYWdlcy9sb2dvL3RyaXNrZWxfaW90X2J6aHgyNTAucG5nXCIgYWx0PVwiSW9ULmJ6aCBMb2dvXCIgc3R5bGU9XCJoZWlnaHQ6MTUwcHhcIj4gUG9zdCBGaWxlIFVwbG9hZDwvaDE+PGRpdiBjbGFzcz1cInNhbXBsZS1ib3ggYm94LWNvbnRlbnRcIj48dXBsb2FkLWltYWdlIG5hbWU9XCJhdmF0YXJcIiBjYXRlZ29yeT1cImF2YXRhclwiIHRodW1ibmFpbD1cInR1eC12aXNpdG9yLnBuZ1wiIG1heHNpemU9XCIxMDBcIiBwb3N0dXJsPVwiL2FwaS9wb3N0L3VwbG9hZC1pbWFnZVwiIGNhbGxiYWNrPVwiY3RybC5GaWxlVXBsb2FkZWRcIiBhY2NlcHQ9XCJpbWFnZVwiIHRpdGxlPVwiQ2hhbmdlIHlvdXIgQXZhdGFyXCI+PC91cGxvYWQtaW1hZ2U+PHVwbG9hZC1hdWRpbyBuYW1lPVwibXVzaWNcIiBwb3N0dXJsPVwiL2FwaS9wb3N0L3VwbG9hZC1tdXNpY1wiIGNhbGxiYWNrPVwiY3RybC5GaWxlVXBsb2FkZWRcIiB0aXRsZT1cIlVwbG9hZCB5b3VyIE11c2ljXCI+PC91cGxvYWQtYXVkaW8+PHVwbG9hZC1hcHBsaSBuYW1lPVwiYXBwbGlcIiBwb3N0dXJsPVwiL2FwaS9wb3N0L3VwbG9hZC1hcHBsaVwiIGNhbGxiYWNrPVwiY3RybC5GaWxlVXBsb2FkZWRcIiB0aXRsZT1cIlVwbG9hZCBBR0wgQXBwXCI+PC91cGxvYWQtYXBwbGk+PC9kaXY+PGxpbmstYnV0dG9uIGhyZWY9XCJob21lXCIgaWNvbj1cImZpLWhvbWVcIiBsYWJlbD1cImhvbWVcIj48L2xpbmstYnV0dG9uPicpO31dKTtcbn0pKCk7XG4iLCIoZnVuY3Rpb24oKSB7YW5ndWxhci5tb2R1bGUoJ0FGQmNsaWVudCcpLnJ1bihbJyR0ZW1wbGF0ZUNhY2hlJywgZnVuY3Rpb24oJHRlbXBsYXRlQ2FjaGUpIHskdGVtcGxhdGVDYWNoZS5wdXQoJ3BhZ2VzL0hvbWUvSG9tZS5odG1sJyxcbiAgICAnPGgzPjxpbWcgY2xhc3M9XCJsb2dvXCIgc3JjPVwiaW1hZ2VzL2xvZ28vdHJpc2tlbF9pb3RfYnpoeDI1MC5wbmdcIiBhbHQ9XCJJb1QuYnpoIExvZ29cIiBzdHlsZT1cImhlaWdodDoxNTBweFwiPiBBcHAgRnJhbWV3b3JrIEJpbmRlciBTaW1wbGUgQ2xpZW50PC9oMz48dG9rZW4tcmVmcmVzaCBhdXRvbG9nPVwidHJ1ZVwiPjwvdG9rZW4tcmVmcmVzaD48ZGl2IGNsYXNzPVwiYnV0dG9uLWJveCBib3gtY29udGVudFwiPjxzdWJtaXQtYnV0dG9uIGNsYXNzPVwic2Vzc2lvbi1idXR0b24ge3tjdHJsLkFQSWNyZWF0ZX19XCIgaWNvbj1cImZpLXVubG9ja1wiIGxhYmVsPVwiT3BlblwiIGNsaWNrZWQ9XCJjdHJsLk9wZW5TZXNzaW9uXCI+PC9zdWJtaXQtYnV0dG9uPjxzdWJtaXQtYnV0dG9uIGNsYXNzPVwic2Vzc2lvbi1idXR0b24ge3tjdHJsLkFQSWNoZWNrfX1cIiBpY29uPVwiZmktY2hlY2tib3hcIiBsYWJlbD1cIkNoZWNrXCIgY2xpY2tlZD1cImN0cmwuQ2hlY2tTZXNzaW9uXCI+PC9zdWJtaXQtYnV0dG9uPjxzdWJtaXQtYnV0dG9uIGNsYXNzPVwic2Vzc2lvbi1idXR0b24ge3tjdHJsLkFQSXJlZnJlc2h9fVwiIGljb249XCJmaS1hcnJvd3MtY29tcHJlc3NcIiBsYWJlbD1cIlJlZnJlc2hcIiBjbGlja2VkPVwiY3RybC5SZWZyZXNoU2Vzc2lvblwiPjwvc3VibWl0LWJ1dHRvbj48c3VibWl0LWJ1dHRvbiBjbGFzcz1cInNlc3Npb24tYnV0dG9uIHt7Y3RybC5BUElyZXNldH19XCIgaWNvbj1cImZpLWxvY2tcIiBsYWJlbD1cIkNsb3NlXCIgY2xpY2tlZD1cImN0cmwuUmVzZXRTZXNzaW9uXCI+PC9zdWJtaXQtYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9XCJtZXNzYWdlLWJveCBib3gtY29udGVudCB2ZXJ0aWNhbCBncmlkLWZyYW1lXCI+PGRpdiBjbGFzcz1cInJlc3BvbnNlXCI+PHNwYW4gY2xhc3M9XCJncmlkLWNvbnRlbnQgbm9zY3JvbGwgcmVxIHt7Y3RybC5zdGF0dXN9fVwiPnJlcT0ge3tjdHJsLnJlcXVlc3R9fTwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJncmlkLWNvbnRlbnQgbm9zY3JvbGwgcmVzIHt7Y3RybC5zdGF0dXN9fVwiPnJlcz0ge3tjdHJsLnJlc3BvbnNlfX08L3NwYW4+IDxzcGFuIGNsYXNzPVwiZ3JpZC1jb250ZW50IG5vc2Nyb2xsIHN0YXR1cyB7e2N0cmwuc3RhdHVzfX1cIj5zdGF0dXM9IHt7Y3RybC5lcnJjb2RlfX08L3NwYW4+PC9kaXY+PC9kaXY+PGxpbmstYnV0dG9uIGhyZWY9XCJzYW1wbGVcIiBpY29uPVwiZmktaG9tZVwiIGxhYmVsPVwic2FtcGxlXCI+PC9saW5rLWJ1dHRvbj4nKTt9XSk7XG59KSgpO1xuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 diff --git a/afb-client/dist.prod/opa/images/appli/isnotvalid.png b/afb-client/dist.prod/opa/images/appli/isnotvalid.png deleted file mode 100644 index 057c21502bbf57c5b99ee645d597031e411afb61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11124 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 diff --git a/afb-client/dist.prod/opa/images/appli/istoobig.png b/afb-client/dist.prod/opa/images/appli/istoobig.png deleted file mode 100644 index c3b794be6882ddb64131edc0af24c431493c246c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15144 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 LNkvXXu0mjf8ZJ0k diff --git a/afb-client/dist.prod/opa/images/avatars/istoobig.jpg b/afb-client/dist.prod/opa/images/avatars/istoobig.jpg deleted file mode 100644 index da0f255a923b36eb143693f2db09b6385afd3487..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7204 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 diff --git a/afb-client/dist.prod/opa/images/avatars/istoobig.png b/afb-client/dist.prod/opa/images/avatars/istoobig.png deleted file mode 100644 index c3b794be6882ddb64131edc0af24c431493c246c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15144 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 diff --git a/afb-client/dist.prod/opa/images/avatars/tux-bzh.png b/afb-client/dist.prod/opa/images/avatars/tux-bzh.png deleted file mode 100644 index e2cd2625b088ecacca971761ea9b7302679ddd30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18451 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 JPDHLkV1mxkxtIU| diff --git a/afb-client/dist.prod/opa/images/avatars/tux-visitor.png b/afb-client/dist.prod/opa/images/avatars/tux-visitor.png deleted file mode 100644 index 05698222030535b981d87416ad8ab4a2ee458cb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29307 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 diff --git a/afb-client/dist.prod/opa/images/login/gh-logo.png b/afb-client/dist.prod/opa/images/login/gh-logo.png deleted file mode 100644 index 0ecb071989d8c1f08a2a2678ee765516a520c06b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2779 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 diff --git a/afb-client/dist.prod/opa/images/login/iot-logo.png b/afb-client/dist.prod/opa/images/login/iot-logo.png deleted file mode 100644 index 3fea4f817252e056280ffb02f16cb89b9eb02844..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 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 diff --git a/afb-client/dist.prod/opa/images/login/lk-logo.png b/afb-client/dist.prod/opa/images/login/lk-logo.png deleted file mode 100644 index 11ae02049136240b5ffd90eb21caeb5a5d0348b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 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 diff --git a/afb-client/dist.prod/opa/images/login/ms-logo.png b/afb-client/dist.prod/opa/images/login/ms-logo.png deleted file mode 100644 index 64cd877d1d44a29b84c4fcf113b168eedd5885fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3024 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 SQrs#40000sO+eX=)dEHzU0vLtS# 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 KMNUMnLSTa5Oo|i$ diff --git a/afb-client/dist.prod/opa/images/login/yh-logo.png b/afb-client/dist.prod/opa/images/login/yh-logo.png deleted file mode 100644 index 40c314830374de6bed5ca3b5d330bb3bcb009595..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 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 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 deleted file mode 100644 index e37a9f3..0000000 --- a/afb-client/dist.prod/opa/images/logo/logo_iot_bzh.svg +++ /dev/null @@ -1 +0,0 @@ -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 deleted file mode 100644 index 2bee568032abc944ae4e35f6c0b4e34ebb2eff8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9416 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 w!k5Hr<{9 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 deleted file mode 100644 index 9ec086c..0000000 --- a/afb-client/dist.prod/opa/images/logo/triskel_iot_bzh.svg +++ /dev/null @@ -1 +0,0 @@ - \ 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 deleted file mode 100644 index b7c7db1b4a73f7264dd35e8c5ce1f2f5f4d3c60b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9799 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 Sample Application
\ No newline at end of file diff --git a/afb-client/gulpfile.js b/afb-client/gulpfile.js index 3ec8774..a79835a 100644 --- a/afb-client/gulpfile.js +++ b/afb-client/gulpfile.js @@ -23,7 +23,6 @@ config=require (appdir + "etc/_Config"); // upload user local preferences if any // Run node in debug mode in developpement mode ? var nodeopts = config.DEBUG !== undefined ? '--debug='+config.DEBUG : ''; var frontend= appdir + config.FRONTEND; -var backend = appdir + config.BACKEND; var paths = { application : frontend, @@ -35,7 +34,6 @@ var paths = { partials : [frontend + '/**/*.html', '!' + frontend +'/index.html'], distDev : './dist.dev', distProd : './dist.prod', - scriptsDevServer: backend + '/**/*.js', sass: [frontend+'/styles', 'bower_components/foundation-apps/scss','bower_components/foundation-icon-fonts'], fonts: ['bower_components/**/*.woff'], favicon: frontend+'/favicon.ico' @@ -103,11 +101,6 @@ pipes.builtVendorScriptsProd = function() { .pipe(gulp.dest(paths.distProd+ '/bower_components')); }; -pipes.validatedDevServerScripts = function() { - return gulp.src(paths.scriptsDevServer) - .pipe(plugins.jshint()) - .pipe(plugins.jshint.reporter('jshint-stylish')); -}; pipes.validatedPartials = function() { return gulp.src(paths.partials) @@ -279,16 +272,7 @@ pipes.builtAppProd = function() { gulp.task('help', taskListing.withFilters(/-/)); // clean, build of production environement -gulp.task('build', ['clean-build-app-prod', 'validate-devserver-scripts']); - -gulp.task('run', function() { - // start nodemon to auto-reload the dev server - plugins.nodemon({ script: 'server.js', ext: 'js', watch: ['devServer/']}) - .on('change', ['validate-devserver-scripts']) - .on('restart', function () { - console.log('[nodemon] restarted dev server'); - }); -}); +gulp.task('build', ['clean-build-app-prod']); // removes all compiled dev files gulp.task('clean-dev', function() { @@ -320,9 +304,6 @@ gulp.task('build-partials-dev', pipes.builtPartialsDev); // converts partials to javascript using html2js gulp.task('convert-partials-to-js', pipes.scriptedPartials); -// runs jshint on the dev server scripts -gulp.task('validate-devserver-scripts', pipes.validatedDevServerScripts); - // runs jshint on the app scripts gulp.task('validate-app-scripts', pipes.validatedAppScripts); @@ -363,23 +344,7 @@ gulp.task('clean-build-app-dev', ['clean-dev'], pipes.builtAppDev); gulp.task('clean-build-app-prod', ['clean-prod'], pipes.builtAppProd); // clean, build, and watch live changes to the dev environment -gulp.task('watch-dev', ['clean-build-app-dev', 'validate-devserver-scripts'], function() { - - // start nodemon to auto-reload the dev server - plugins.nodemon({ exec: 'node ' + nodeopts, script: backend+'/server.js', ext: 'js', watch: [backend], env: {NODE_ENV : 'dev'} }) - .on('change', ['validate-devserver-scripts']) - .on('restart', function () { - console.log('[nodemon] restarted dev server'); - }); - - // start live-reload server - plugins.livereload.listen({ start: true }); - - // watch index - gulp.watch(paths.index, function() { - return pipes.builtIndexDev() - .pipe(plugins.livereload()); - }); +gulp.task('watch-dev', ['clean-build-app-dev'], function() { // watch app scripts gulp.watch(paths.scripts, function() { @@ -408,17 +373,7 @@ gulp.task('watch-dev', ['clean-build-app-dev', 'validate-devserver-scripts'], fu }); // clean, build, and watch live changes to the prod environment -gulp.task('watch-prod', ['clean-build-app-prod', 'validate-devserver-scripts'], function() { - - // start nodemon to auto-reload the dev server - plugins.nodemon({ script: backend +'/server.js', ext: 'js', watch: [backend], env: {MODE : 'prod'} }) - .on('change', ['validate-devserver-scripts']) - .on('restart', function () { - console.log('[nodemon] restarted dev server'); - }); - - // start live-reload server - plugins.livereload.listen({start: true}); +gulp.task('watch-prod', ['clean-build-app-prod'], function() { // watch index gulp.watch(paths.index, function() { -- 2.16.6